14-Year-Old Wins International Programming Contest 141
marcog123 writes "The International Olympiad in Informatics was held earlier this week in Bulgaria. The IOI is a programming competition for high school learners up to 20 years of age that has a focus on problem solving and algorithms. It was won by 14-year-old Henadzi Karatkevich of Belarus (PDF, list of gold medalists), beating the world's top high school programmers, including 18- and 19-year-olds, to become the youngest winner in the IOI's 21-year history. Competition is really tough, with some countries taking months off school to concentrate only on IOI training. Henadzi first entered the IOI in 2006 when he was only 11 years old and won silver (missing gold by only six points). He won gold in 2007 and 2008. He has the opportunity to enter for the next three years; that is, unless he follows the path of Terence Tao, who won IMO gold at 12 and then went to university the following year. If he continues his current streak, he will easily surpass the current record of six IOI medals by South Africa's Bruce Merry."
Learn as hobby, not at school (Score:5, Interesting)
This just shows more about the fact that those who are great programmers are so not because of school, but because they have interest on it on their own. My own school was kind of a joke - everyone just played flash games during hours and did the least amount needed, while it was quite standard stuff too. I started programming at 8 years old, pretty much after I had learned to read (quick basic stuff obviously, but still). However atleast I had a nice teacher that understood my side aswell and let me do my own stuff like 3D game programming during the hours as long as I did the final test. Truth is most of people are quite non-intelligent about that stuff on schools, unless they do programming as a hobby.
And I can bet I was better at programming at 14 too then they were at 18 (as self conscious as that sounds). Fact is, if you're really interested on things and do it as hobby and just for fun, you will be even better than most adults are . You may lack some experience, but thats 50/50 good and bad. It's what enables you to do new things.
That being said, as this is international programming and problem analysis competition the others we're probably quite good aswell, so lots of kudos for Henadzi for winning it. You will have a good future.
That's curious (Score:5, Interesting)
Re:Learn as hobby, not at school (Score:5, Interesting)
The crux is that you really can't teach programming. A good programmer has an intuitive feel for how to solve a problem. You can't get that from lectures and books. I started programming early as well, and I did stuff in my first year of high school that many first year college CS students would struggle with. Don't get me wrong, in retrospect, it was pretty terrible code, but when push came to shove, it worked, and I got to walk into traps and discover concepts 5-6 years earlier than your average school-brewed programmer.
Getting back to the point, teachers can at best help you teach yourself programming. But even then, only so far.
In that sense, programming is a lot like art (even though I don't consider programming art, it's a craft at best.) You really can't learn how to be a painter from books either. They can set you in the right direction and open your mind to new possibilities, but in the end, practice is the only way to get anywhere.
Re:That's curious (Score:5, Interesting)
Teachers in these countries were expected to be subject matter experts at all levels of instruction, and not just yahoos with lesson plans and an inability to see multiple solutions to a problem (I am speaking from my personal experience with the American public education system here. The fundamental difference comes down to teaching how to find methods to approach and solve different problems vs teaching a method to solve a single problem and requiring little or no understanding of the underlying concepts at play. At least so I am told. It does explain some things.
The descendants of people in this system (I hear at least in Romania the schools are not what they used to be) are reaping the benefits, and over here in the USA kids are worried about being safe in school, getting shot, or being ostracized by their peers for somehow being smart or trying hard (and being punished by the system for the same).
My 2 cents.
Re:Learn as hobby, not at school (Score:2, Interesting)
There is an interesting article here [joelonsoftware.com] which holds up pointers and recursion as two things in programming that a lot of people never really understand.
Re:That's curious (Score:3, Interesting)
Communist regime actively encouraged smart people to work in mathematics, technology and natural science fields.
It is mostly that. Technical education, especially in hard sciences, was always superior in the USSR (can't say about the rest of the Bloc, but I'd imagine it was about the same). It is not quite on the same level now, but it's still strong. There are many specialized "advanced schools" which teach some pretty complicated math in final school years (in the one I studied in, we did path integrals, for example - that was in late 90s).
It also helps that those schools are free, too - so long as you qualify. End result is that the brighter kids, regardless of background, are segregated from the rest, and receive education matching their abilities - and, as I mentioned earlier, there's a strong emphasis on math, physics, and other hard sciences. This definitely helps shape the mind for programming.
Re:Learn as hobby, not at school (Score:4, Interesting)
I agree. I once worked on a project with a group of scientist. There was one guy there that everyone (even other scientists from prestigious universities) talked about with awe. He could keep a thousand details in his head. He developed his software quickly, it worked, and was mathematically correct. However, it was difficult to use or re-use his code. It just didn't have the organization or modularity needed. It takes artistic talent (for want of a better term) as well as mathematical ability to develop good software.
Re:That's curious (Score:3, Interesting)
Absolutely. That's a common thread with geniuses who achieve a lot in life - not only are they born with the intellectual horsepower but they also happen to receive enough tutelage to achieve their potential. e.g. Euler, tutored by Bernoulli, Mozart and Beethoven, tutored by competent fathers. I imagine that the web is both a blessing and a curse - it's very easy to find extra tutelage/learning in virtually every discipline. But now we have computer games and forums to draw in those with the brains and attention span necessary to succeed in those disciplines.
Re:Learn as hobby, not at school (Score:1, Interesting)
Talented and driven individuals were responsible for Google search, Photoshop, Linux, the Amiga home computer and thousands of other high quality products.
Your turn. Name some quality product built by merely "competent" programmers working in a corporate environment.