Sunday, August 16, 2015

How to have fun with sport programming

It's summer morning and you are thinking about having some fun, but you don't have enough time to go diving in a sea neither you have a partner to play chess. Let's imagine that you also want to have some new experience, to play something new and you also think it would be good to play something intellectual and work-related.

If you have three hours of spare time and you can code using any of the common programming languages you can participate in a programming contest. It will take about 2 hours to participate and maybe one more hour to compare your result with others and maybe to find something new for yourself in programming. So the deliverables are to get some exercise for your brain, to develop some skills in programming, maybe become a champion and also to get a new record for your CV, and of course to have some fun. There is no age limit here - you can participate is you are 10 or 80 and you can participate via the Internet while being at home or on a seashore. Oh, I've just forgotten to add that you can earn some money participating. There are a lot of programming competitions where you can earn several hundred or thousand dollars.


What you need to participate:
  • Some programming knowledge. If you can code - you can participate. There are different levels of the contests, when you participate you will get a certain rating and you can participate in contests according to your rating. Accepted programming languages are C, C++, Java, Python, Ruby, C# and some others depending on platform used. Usually champions use C, C++ and Java, but maybe you will be the first world champion in programming that uses Ruby. I hope that the first champion using Python will be me, maybe over 20-30 years when I retire;
  • Select a platform for web competition. Some good examples are codeforces.com and topcoder.com. My family for now uses codeforces.com. Therefore, register on a platform's website;
  • Explore previous competitions, solutions and results. Talking of Codeforces, you can go to http://codeforces.com/problemset to find all problems solved in the past. You can sort these problems by the number of participants who had solved them and you will find the simple ones on the top. For each problem you can find solutions that can be filtered by the programming language. Also, you can propose your own solution end test on Codeforces in real time;
  • Prepare IDE for competitions. I have installed python 3 and pyCharm and it was enough to start.
Codeforces - how to explore past contests' problems and solutions

The contest itself is very similar to the process of testing your solutions for previous problemsets. You should register for contest and when it starts you will have 2 hours to solve as many problems as you can.

Enjoy!

Some useful links:

No comments:

Post a Comment