Would you like to learn how to be a better, more efficient programmer? Do you want to build optimized code that runs faster than anything you thought you could create? Then you might find that entering programming contests helps you sharpen your skills. Keep reading as we take a close look at what you can gain from pitting your programming skills against your peers from around the world.
Programming Contests: Why Bother? - The Contest (Page 2 of 4 )
In essence a programming contest most of the time tries to sort the participating members by their abilities to program and their comprehension of algorithms at that moment. The winner takes it all; state of mind is important, as everyone is fighting to show that he can do better, or he may go for the prize.
In practice, however, the aptitude required to pull off something like this is a little more complex. The most restrictive element of the environment is not programming ability or comprehension of algorithms. It is time. Remember, many are capable of writing code in front of their computer at home along with a cup of café.
The situation changes dramatically when you have just a short, stressful period in which to finish a couple of algorithms with as few mistakes as possible. Here you will have little time for debugging purposes or demonstrating that the approach you may have used is the best. Most of the time, when you look back at contests, you understand that there is plenty of time to implement the solutions, but not much time for debugging purposes.
In this situation, intuition is one of the most prized traits. Moreover, for most of it you absolutely have to work at your time management, as you will not want to waste too much time with a problem.
By now, you may already say that I've listed enough reasons for you to just run away whenever you hear about a programming contest. However, before you do this, let me present the benefits also.
In return for the effort and time, you just may get into an algorithmic mindset that will help you to overview complex applications more easily and get them done in an efficient way with little cost in time. Understanding a few basic, most appropriate solutions for a few basic/traditional problems can never hurt.
You will learn to react in a short time that, together with the previous benefits and a few proofs from contests to add a little color to your curriculum vitae, will certainly improve your chances to get a better job.
Additionally, this can get you a scholarship at some major university. The prizes and the trips around the country and/or world are also worth mentioning. Now, if you've decided to involve yourself in entering programming contests, I will list a few contests that exist all over the world, so you know where to look for them.