The Challenge Phase throws off a lot of newcomers to the TopCoder competition arena. While the Coding and System Testing phases replicate real world situations that most coders are familiar with, debugging someone else’s code in the Challenge Phase is a task that may be unfamiliar to many new coders.

By making you look at other people’s code and evaluate the best way to break it, the Challenge Phase forces you to flex your brain in new and different ways from normal coding. Some coders just don’t have a knack for challenges, and they rely on quick, accurate coding to get them through the contest. Others, however, are masters of finding those little bugs in a person’s code that invalidate their entire solution and make their 75 minutes of hard work meaningless.

These coders make up TopCoder’s list of the 25 best challengers. I talked with two coders on this list — and one who is almost on it — about what the Challenge Phase means to them, their memories of challenges past, and how they got to be so good at breaking people’s code.

(full article)