Coaching a computer juggernaut in your spare time

Balloons are generally associated with glee and merriment, as in birthdays and the like. Gordon Cormack, University of Waterloo’s computer programming coach, could be forgiven for seeing them as a stressful reminder that his teams typically start-out slowly.

Cormack gleaned this impression from successive International Collegiate Programming Contests. The annual competition, run by The Association for Computing, pits the world’s top university computer programming students against each other. After a team answers a question correctly, a coloured balloon representing that question is attached to the side of their table. Early on in this year’s competition, the University of Waterloo had only one balloon while a team from St. Petersburg State University was floating five.

“[Cormack] looked like he was about to have a heart attack,” said Donny Cheung, one of U of W’s three team members.

Coaching all started back in 1996 when Cormack decided to tag along with the team to the finals. “I went as a sort of mascot,” he said. The coach at the time, Jo Ebergen, was going on leave and needed someone to take over the team. “He asked if there was anybody who was interested and I said I might take it on,” Cormack said.

It was an appropriate passing of the torch for Cormack.

“I got into computing in the first place probably because of a competition.” When Cormack was a first year undergraduate he was trying to decide which science discipline to focus on. He entered a contest held by the computer science department and met the staff and faculty. The chance meeting became one of the major reasons he chose to go on to study computer science. Cormack originally thought of computers as just a tool and didn’t expect the subject to catch his attention. He was wrong. Decades later he is still at it.

Entering the world of coaching

His recent foray into coaching is a natural extension of his own world of academia. “I have always been interested in competitions; in some ways all of what I do in research is a competition to discover stuff.”

Cormack’s background is also well founded in academia. His father is a physicist and his mother is a school teacher. He was born in Saskatoon but moved to Winnipeg in 1967 when he was 12. He did his high schooling, undergraduate and graduate work all in Winnipeg. In 1981 he got his PhD in computer science from the University of Manitoba and moved off to Montreal to work at McGill University. After two years there he accepted a post at the University of Waterloo. Except for a sabbatical year in 1992, when he worked as chief architect with Systems House’s technology network, he has been at the university ever since. Today he is a full professor in the department of computer sciences, where he teaches mostly systems-oriented courses.

Like many in the academic world, his major hobby is his occupation.

“Occasionally I climb down from the ivory tower,” he said, tongue planted in cheek. “But mainly I like to try to do things that have never been done before and the university affords me that opportunity.

“University work is not only teaching, though that is an important and fulfilling part of it, it is the whole idea of knowledge discovery as well,” he added.

steering a juggernaut

Though the ACM computer competition started in the 1970s, University of Waterloo did not get actively involved until the 1990s. Schools from around the world compete in regionals, with a total of 60 teams going to the finals.

In the early years American schools dominated but recently the top 10 has been a veritable global smorgasbord replete with schools from China to Germany, from Australia to Japan.

For a juggernaut like the University of Waterloo, choosing a team is no easy task. Since the school first made the finals in 1993 it has managed to finish in the top 10 every year, with victories in 1994 and 1999. In the fall there are two three-hour contests at the university to help Cormack decide who will be on the A and B teams. Those two compete in the regionals (schools from Eastern Ontario and states like Pennsylvania, New York and Michigan) and on more than one occasion the A and B groups have finished first and second. Each university can send only one team to the finals.

At this years’ finals in Orlando, Fla., Cormack, along with three other technology coaches, received an award of excellence from one of the competition’s sponsor, IBM.

“There is a community here that does an incredible amount of work, they do it just because they love doing it, they do it for the students, they never do it for themselves and they get very little recognition,” said Gabby Silberman, program director for the centre for advanced studies at IBM’s Toronto research lab.

“We said, maybe we should feature some significant recognition for the coaches and the award ceremony seemed to be the right place to (give them the awards),” Silberman said. Giving Cormack the reward was not a difficult decision.

“They have consistently been able to bring teams to the finals, ” Silberman said. “Yes, you could have a lucky year and have great students that year and have a very strong team, but to do that on a consistent basis says something about the coach.”

practice, practice, practice

Like any coach, a great deal of the job is preparing the team for competition.

“It is my job to make sure they are not surprised so, to that end, I read through a lot of problems from old contests,” Cormack said. That job is getting easier, Cormack said, because many of them are available on the Web, through he added there are probably a thousand old questions to sift through.

And during the competitions? “My role is to be nervous and helpless,” he said. “There is nothing I can do – at least watching a child in a ball game you can jump up and down and scream and yell.”

During the competition coaches are here not allowed to communicate with their team in any way. “You can watch and wonder what they are thinking about, and try to figure out why they haven’t done that question, but you can’t really do anything to cheer them on or to really lessen your own nervousness.”

Which brings us back to those balloons. Since a team is penalized for each minute, after the start, it takes to answer a question (answering a question an hour gives you 60 penalty points), having a team far ahead early on in the competition is nerve racking. A tie won’t win since your team has invariably accumulated more penalty minutes.

“I think he was pretty worried,” Cheung said. “He doesn’t have to shut off the pressure, he can afford to pull his hair out.”

Waterloo managed to close the gap but could not overtake St. Petersburg. Waterloo ended up in second place, hampered by the early accumulation of penalty minutes. St. Petersburg has steadily improved over the years, so next year’s competition should be every bit as nerve racking. “Their average rank isn’t quite as high as Waterloo’s but we are looking over our shoulders,” Cormack said.