HOUGHTON - Despite facing stiff competition from larger universities and skilled opponents, one team of three Michigan Technological University students has earned a place at the International Collegiate Programming Contest. Computer science students Tom Holmes and Eric Rinkus and math major Ryan McNamara will travel with their coach and computer science PhD student Jason Hiebel to Ekaterinburg, Russia, in June for the competition after finishing fifth in the semi-final competition.
"It really is difficult to qualify," said longtime coach Dave Poplawski. "The fact that Tech has been able to do that four times in the past 11 years is a real testament to kids at Tech. I'm the coach but coaching programming teams is not like coaching hockey or football. I'm around more for emotional support and logistical support - 95 percent of the credit goes to the students themselves and Tech and its computer science program. We train good students."
During the competition, Poplawski explained, each team of three students is given a set of eight to 10 problems. Working from a project description, the team must write a program to accomplish a specific goal.
Photo courtesy of Michigan Technological University
Ryan Richards, Nicholas Smolinske and Mikola Lysenko work on a problem during the finals of the 2008 International Collegiate Programming Contest in Banff, Alberta, Canada. In 2014, computer science students Tom Holmes and Eric Rinkus and math major Ryan McNamara will travel with their coach and computer science PhD student Jason Hiebel to Ekaterinburg, Russia, for the competition.
"There are three people on a team and they have one computer to share. It's not connected to anything else - no internet or outside sources. It's a stand alone kind of like the old days when computers didn't connect to anything," Poplawski said. "They are allowed some limited resources - they can bring in some printed materials like sheets or textbooks."
It is not unusual for multiple teams to complete the same maximum number of problems, making speed and accuracy important determining factors for where each team will place. If a team completes a problem and sends it to the judges only to find that their program didn't work, they are given a 20-minute penalty. They are also not told where in the program the problem occurred.
"Computer science is mostly about how to program computers. The first thing our students learn is how to program and then they expand on that in their later classes," Poplawski said. "Programming is basically problem solving. In terms of the competition - which is a little different than the kind of programs you're used to - they just get some numbers and data coming in that they have to manipulate in some way for a specific output."
Michigan Tech has sent four teams to the finals in the past 11 years. Getting there can be especially difficult for a small school competing against much larger regional components. This year, the team beat out universities such as the University of Iowa, the University of Minnesota and the University of Nebraska. At the finals, however, they face teams from all over the world and the Tech teams tend to finish in the middle of the pack, Poplawski said. Only 120 teams from across six continents make it to the final competition.
"Eastern Europeans, Russians and Chinese teams have basically dominated in the last few years," Poplawski said. "They are finding talented kids and cultivating them early. It's like we do with hockey in the U.P. - we're playing hockey at age 3 and they're programming. We dont do that so the fact that we can compete is amazing."
This year's final competition will take place from June 22 to 26. For more information, visit icpc.baylor.edu.