A couple of years ago when I was still a graduate student in NUS, I used to have regular drinks with my good friend Andreas Keil. Those were evenings well-spent as we exchanged lots of views over lots of topics.
One evening over a couple of Tigers, Andreas ranted about solving some cool problems posted in the internet, using a language called Python (that was the first time I heard of it) Thus I was introduced to Project Euler (named after Leonhard Euler (pronounced as “Oiler”). When trying to solve these problems, I soon discovered the limits of my knowledge in R and also some areas of mathematics. This provided a great stimulus to try to cover existing gaps, and to learn some new stuff as well. I think the questions are great exercises when one is learning a particular programming language, as it breaks the monotony of typical textbook problems and pushes one’s skills to the limits.