5 ms·
I'm curious; what's the point of competitive programming? It strikes me as opposite to our actual goal of programming in collaboration/the metrics applied do no
by rf15 9y ago
I'm curious; what's the point of competitive programming? It strikes me as opposite to our actual goal of programming in collaboration/the metrics applied do not seem to further the
general quality of our work and output.
- mtobi 9y agoProblem solving is fun and people like to compete.
- overlordalex 9y agoYou can think of it as a hobby, almost like a sport. It's more about testing your problem solving skills, and ability to apply learned concepts in novel (and sometimes not so novel) ways. The type of problems found in competitive programming are closer to the sort of things scientists would be looking at, rather than your normal corporate coder. For example, placing lightning detectors to improve accuracy while minimising the number of detectors. This is something that you're unlikely to find in a normal business, but is fun to solve. The grand idea is that competitive programming helps you view problems from different angles, to chase optimisations, and to practice application of algorithms and data structures. Also, team programming challenges illustrate delegation of tasks based on strengths, and often require teamwork to solve difficult problems. This collaboration obviously carries over to general work. Source: I was a competitive programmer in university
- DonorBear 9y agoIt provides a great way to explore different areas of math and cs.
- rf15 9y agoWhich is why I enjoy the questions, but not the competitive mindset surrounding it. It's like casual cycling vs racing.
- jasode 9y ago>It's like casual cycling vs racing. If you're offering up that analogy yourself, I guess I don't understand why you're asking, "what's the point of competitive programming?" The point of "competitive _anything_" is The Competition itself. What's the point of competition running?!? Shouldn't running be a utilitarian function of escaping an angry lion in the African savanna? Therefore, what's the point of Usain Bolt competing in sprints?!? It's the competition. Same reasons for competitions in spelling (spelling bees), cooking (Iron Chef), etc. Humans just like to compete. You don't have to enjoy those competitions to understand why other people participate in them.
- rf15 9y agoGood conclusion. Yeah, I don't think I understand competition as a whole, and this is just another facet of this.
- chillee 9y agoIt heavily improves your raw problem solving skills.
- rootlocus 9y agoI agree with the other comments about sharpening your problem solving skills, but I'd like to add a more ironic reason: preparing for interviews.
- loudouncodes 9y agoI teach several competitive programming high school teams. On one hand, I hate it, for exactly some of the reasons on this thread. On the other hand, high school bands compete for trophys too... who ever thought to have competitive orchestras? people are competitive, and competitions motivate. They aren't for everybody, but for some, they find it valuable. The competition and the coding ability are two separate life skills, forced together in the crucible of the high school education system. I cannot criticize the motivation, or the fact that my students in high school can solve problems many professionals I know cannot. I can criticize that the competitive spirit marginalizes some of the groups we need to Encourage more.
- loudouncodes 9y agoI teach several competitive programming high school teams. On one hand, I hate it, for exactly some of the reasons on this thread. On the other hand, high school bands compete for trophys too... who ever thought to have competitive orchestras? people are competitive, and competitions motivate. They aren't for everybody, but for some, they find it valuable. The competition and the coding ability are two separate life skills, forced together in the crucible of the high school education system. I cannot criticize the motivation, or the fact that my students in high school can solve problems many professionals I know cannot. I can criticize that the competitive spirit marginalizes some of the groups we need to Encourage more.
- thiagovas 9y agoBecause it's fun! :)
- Klockan 9y agoCompetitive programming is good practice and makes you a better programmer if you solve the problem before you start writing any code and then just implement your solution to prove that it works. This creates good habits and also shows you how trivial it is to implement something once you know what to do.