|
|||
|
Our nerds in NirvanaWhen the worlds smartest supergeeks gathered in Orlando, Fla., the guys to beat were three computer whizzes from the University of Waterloo.By Sean Silcoff | April 17, 2000Its March break in Florida. The state is teeming with university students who are here for three main reasons: to get tanned, get drunk and get lucky. Donny Cheung has arrived in Orlando with other plans, however, and he doesnt think much of his surroundings. "If theres anything in this town that doesnt make me want to vomit, take me to it now," the 21-year-old University of Waterloo math major quips. Cheung hasnt packed a pair of shorts, but he did bring his laptop computer and a stack of textbooks. Given the choice between partying and sitting in his hotel room writing computer code, hed much rather be programming. Yes, Donny Cheung is a nerd. But if all goes well this weekend, he could be much more than that. He, along with his two U of W computer science buddies, Jeff Shute and Ondrej Lhoták, could be Nerd Champions of the World. This isnt your average spring fling, and Cheung, Shute and Lhoták arent your average university students. They happen to be three of the worlds most brilliant university-level computer programmers, and, like many people who specialize in the arcane machine languages of C, C++ or Java, theyre more interested in discussing algorithms than twisting by the pool. Theyre here to defend their schools world championship title in what can best be described as the Olympics for propeller-heads: the 24th annual Association for Computing Machinery (ACM) International Collegiate Programming Contest, which has taken over Orlandos Radisson Hotel Universal during the citys busiest time of the year. The contest pits three-member teams from 60 universities around the worldthe finalists from a field of 2,400 teams culled during a series of regional competitionsagainst one another in a five-hour battle of wits and bytes. The goal: to solve up to eight complicated problems by writing programs that run quickly and bug-free in the machine language of your choice. The margin for error is slim as teams from some of the worlds best computer science schoolsRussias St. Petersburg State University and Harvard, to name but twowork against the same clock. There are all kinds of university-level competitions, but few are as high-stake or as closely followed. Just by qualifying for the ACM contest, team members have proven theyre suited for some of the most coveted computer programming jobs in the world. If they win, they could put themselves in line for millions of dollars worth of stock options and a chance to work with some of the most brilliant minds in computing. The stakes are reflected in the competitions world-class organization. Its parent, the ACM, is the oldest and largest international order of computing enthusiasts, with 80,000 members. The corporate sponsor is IBM, and the US$80-billion information technology colossus takes the contest seriously. This is IBMs single best recruiting opportunity of the year, and the company easily spends upwards of $350,000 to put on a slick four-day program leading up to the competition on the final Saturday. This year it has sent three recruiters to Orlando (last year the company hired about 20 contest participants for summer or full-time jobs), but many of the young computing experts already have jobs lined up with start-ups and IBM competitors. The rest can expect a line-up of prospective employers when they return home. "Were aware that not every student who participates in the competition will get or want a job with IBM," says Gabriel Silberman, program director with IBM Canada Ltd.s Centre for Advanced Studies and the companys contest sponsorship executive. "What were looking for is mind-share. We want them to have a good experience and a positive image of what IBM stands for." But Cheung and his crew have other things on their minds. For the past seven years, Waterloo has dominated the ACM competition in the same way the New York Yankees dominate major league baseball. The university has made the top 10 every year since 1993the only team to do soand has won the competition twice, in 1994 and 1999. Back home, the reputation of Waterloos prestigious math facultyand its computer science department rests in part on how its team fares at this international code-writing showdown. The team, which has practised for close to 100 hours since January, has a lot to live up to. Any finish out of the top 10 will be a major disappointmentparticularly to coach Gordon Cormack, whose palpable nervousness is a constant reminder of the impending battle. "The other teams seem to be scared of the name Waterloo," says Cheung. "I think they finger us as one of the teams they just have to beat." For most contestants, the road to the ACM competition began before they turned 10, when they captained their first TRS-80s or Commodore 64s. Compared to them, Donny Cheungwho immigrated to Winnipeg from Hong Kong with his parents at the age of threewas a late bloomer. He only started programming when he was 14 (on a 386remember those?), and didnt think much about computers before he hit university. Instead, Cheung showed an early aptitude for math. When he was six, teachers recognized him as a prodigy. At 10, he mastered trigonometry, followed by calculus two years later. Despite a modest upbringing (his mother is a nurse, his father a short-order cook), Cheung spent his grade school years at Winnipegs elite private school, St. Johns-Ravenscourt, on a full bursary. As he puts it, "I wasnt born with a silver spoonit was shoved into me later." Cheung had other interests in high school: he wrote, debated, and sang for school choirs (his squawky, breaking voice belies a deep bass range). But his math prowess gave him the status he otherwise lacked. "I dont want to speak ill of my high school, but its designed to turn rich peoples kids into rich people," he says. "But if you can help them with their homework, theyll do anything for you." Like Lhoták and Shute, two skilled programmers from middle-class southern Ontario backgrounds, Cheung is the nerd equivalent of the kid who breaks away from the gritty mining town in northern Quebec because he can skate and shoot a puck. A decade ago, Cheungs career path would almost certainly have led to an academic career in mathematics; indeed, that is now where he sees himself heading. But like those hockey players with a gift for the game, his combined math and computing skills make him a valuable commodity. It will be tough for him to resist the lure of the lucrative job opportunities that are sure to come his way. Throughout his teens, Cheung honed his math skills by entering contest after contest, with outstanding results. In 1995, he placed first in the Canadian Mathematical Olympiad; a year later, he won the Descartes competition for Canadian high school seniors. Waterloo administers most of the high-profile math contests across Canada (including the Descartes), and the university uses these competitions to scout up-and-coming math geniuses in the same way top US colleges comb high schools for athletic prospects. In 1996, Cheung and 63 other Descartes contestants (including Lhoták) were invited to a week-long mathematics seminar on campus. For Cheung, it was all the convincing he needed to make Waterloo his No. 1 choice. In late September 1998Cheungs third year at Waterlooa friend coaxed him to try out for the ACM contest. Dozens of programmers, including Shute and Lhoták, showed up to vie for a spot on one of two Waterloo teams that would compete in the regionals that November. To win one of the six available spots, students had to individually solve up to 10 computing problems over a six-hour period. Cheung, Shute and Lhoták all scored highly and were split among the A and B teams. Pitted against more than 100 others from across northeastern North America, both teams did well: Lhotáks team placed first, while Cheung and Shutes came fifth. Lhotáks A team advanced to the world finals, taking Cheung along as a spare, and won the 1999 championship in Eindhoven, Netherlands. At this seasons preliminaries in September, Jeff Shute placed first overall, making him a shoo-in to represent Waterloo. Lhoták and Cheung also performed strongly, and Cormack, who handpicks both U of W squads, saw a powerful combination of experience, brain power and chemistry in the three students. They would be this years A team. Cormack wasnt disappointed. On Nov. 13, the trio posted one of the strongest regional showings ever. Cheung, Shute and Lhoták solved all eight problems with half an hour to spare. Their nearest competitor, the University of Toronto, solved five. Once again, Waterloo was looking like a leading contender heading into the finals. It seems that just about every other team in Florida has its sights set on Waterloo. At a banquet lunch the day before the competition, Australias University of Melbourne team sits down to eat with the U of W crew, putting on their best competitive airs. "Theyre not going to win, you know," says team member John Dethridge in a loud whisper. His chum, Andrew Rogers, who looks more like a rugby player than a programmer, boldly announces that the Aussies will "be very disappointed if we finish outside the top five." The Waterloo team isnt impressed, to say the least. But they take it all in stride and outwardly, at least, show no sign of anxiety. When theyre not talking about math (and sometimes, even when they are), the motor-mouthed Cheung plays group jester, with his herky-jerky motions, uncontrollable cackle and seemingly endless supply of jokes, wordplays and irreverent remarks. When hes around, the more stoic Lhoták and the bashful Shute guffaw a lot, coming across as a brainier version of Beavis and Butt-head. Lhoták, the son of Soviet-era Czech refugees to Canada, is the most eloquent and mature member of the group. Every time you look over, hes tapping away at a wireless BlackBerry pager, sending e-mails to his girlfriend. The youthful 43-year-old Cormack is almost like a fourth member of the group, indistinguishable from the students except for his constant, half-joking reminders that his team has come to Florida not to have fun, but to win. There are slightly more than 12 hours to go until the competition, and the Waterloo team is sitting in a middle-of-the-road family restaurant across from the hotel, waiting for dinner. Cheung is sucking back an astounding amount of Coca-Cola. "I have to get my caffeine buzz now because tomorrow Im not going to drink this much Coke," he says, simultaneously sipping out of two straws stuck in two different glasses. You have to wonder how hes ever going to sleep tonight (he eventually finishes off seven glasses of the stuff), and apparently so does Lhoták, who winces every time Cheung orders a refill. The conversation turns to everybodys favorite topicproblem-solving. At issue is a question from the finals two years ago, about how to determine the common area of two overlapping polygons. The discussion is difficult to follow, but fascinating to observe. For this group, conversations about algorithms can become as impassioned as late-night debates between friends over the meaning of life. "Algorithms are like that," observes Cheung. "Theres always more than one way to skin a cat." But tomorrow, there will be little time for musing or arguingonly right answers. The ACM contest gets under way just before 9:30 a.m. in the hotels main ballroom. The teams, sitting in rows of linen-covered worskstations, rip open their envelopes and start silently reading through the eight questions. (This isnt much of a spectator sport, but there are a good 50 observers standing watch in a roped-off area.). Spread out before them are textbooks, binders and previous assignmentsbut no calculators. In five hours, the winning team will be the one that has solved the most problems. In the event of a tie, first place will go to the team with the fewest penalty points. You get one penalty point for every minute that passes before you submit a correct answer (each answer is clocked from the beginning of the contest) and 20 points for each incorrect submission. The questions range from basic geometrical exercises to real-life problems a programmer might be asked to solve. In Problem H, for example, students must write a program that helps a supply store ship a package of rubber stoppers using the least amount of space and packing materials. Most teams skip that one, however, and head straight to F, a fairly routine problem that asks them to determine the shortest average path between a series of points. Within five minutes, Lhoták is furiously typing away. Waterloo has split up the questions, and according to the plan, the first person to find one he can do quickly grabs the computer. Since there is only one terminal per team, it is crucial to know when to give up the hot seat at the keyboard. With Lhoták toiling on Problem F, Cheung and Shute hunch over a round table, whispering to each other as they start scribbling out code. After half an hour, six teams have produced their first correct answers. Waterloo isnt one of them. When a squad gets an answer right, a contest official grabs one of hundreds of multicolored helium balloons at the front of the room and ties it to their desk for all to see. As the contest enters its second hour, Waterloo is struggling. Lhotáks first submission for F has been rejected and Cormack is stewing helplessly in the gallery, about 25 metres from his team. "I suspect theyre doing F because they know how to do F," he says with a loud sigh. "I dont remember if they started this slowly last year." Ninety minutes into the contest, St. Petersburg has the early lead, with three correct answers. Waterloo is now 0 for 2, and showing the stress. "I cant believe what is happening," mutters University of Alberta coach Piotr Rudnicki. "I know them very welltheyve never done anything like this, having two wrong submissions in a row for extremely simple problems." An hour later, the competition is half over. Waterloo is out of the top 20, far behind St. Petersburg, which is putting on quite a show. The Russian team has just received its fifth balloon of the day. Trailing it are Germanys University of Ulm and Hong Kongs Chinese University, with three correct answers each. Waterloo has only one. Its beginning to look like a disaster for the defending champions. Hanging over the Waterloo team like a dark cloud is Problem F. Lhoták has tried it twice and still hasnt cracked it. The problem should be the easiest of the contest, but its confounding a lot of teams. What most of them dont realize is that theres something wrong with the data. But Lhoták doesnt give up. He figures a way around the discrepancy. At the 156-minute mark, the judges accept his submission, giving Waterloo its second correct answer. Relief. Twelve minutes later, Waterloo scores its third. Excitement. The team is back in the game, and suddenly in fifth place. Seventeen minutes later, Cheung solves the rubber-stopper stumper. The team vaults into second. Jubilation. Over in the stands, Cormack looks like a new man. But other teams are gaining. At the four-hour markwhen the scoreboard is frozen until the contest endsWaterloo has dropped to seventh place, stalled at four correct answers. But Cheung and the boys are on a tear. Waterloo gets another correct submissionits fifth. Cheung pumps the air with a fist and issues a loud "Yes!" With about 30 minutes to go, the team nets its sixth correct answer. More air punches and high-fives. But Lhoták looks around the room and sees other teams starting to collect their sixth balloons. Still, he knows Waterloo is destined for the top 10; with one more correct answer, they could be the champs. With only 10 minutes left, Cheung submits the teams seventh answer and springs from his chair, allowing Shute to take his place and start coding No. 8. Two minutes later, the judges have ruled on Cheungs answer. It is wrong. Shute bolts up and Cheung takes over control of the computer. He has a fix ready, and pounds it out in mere seconds. He resubmits, and with less than five minutes to go, the answer comes back from the judges: Correct. Lhoták rocks up and down in his chair like hes on a bucking bronco, his face clenched in glee. Cheung, standing in his stocking feet, starts to shuffle about in a victory dance similar to what a cocky wide receiver would do after catching a touchdown pass. Shute remains focused on the computer, however, trying to type in the lone remaining answer before the final countdown. With 40 seconds to go, he submits his program. If this ones right, theyre guaranteed winners. Moments later, the answer is rejected. It doesnt matter. The contest is over. Cormack bursts onto the floor. "Im so proud of you guys," he gushes amid bearhugs and handshakes. "I cant imagine what you were thinking two hours ago." Any hopes of winning, however, are quickly dashed. A St. Petersburg team member comes over and reveals that they, too, got their seventh correct answer in the final hour. With so many penalty points amassed against Waterloo for all their late answers, theres no way theyll topple the Russians. But they beat everyone else. No other team in the room has managed seven answers, although fellow Canadians from the University of Alberta and the University of Toronto post respectable 10th and 15th place finishes. Tonight there will be free rides at Universal Studios, courtesy of IBM, and tomorrow the Waterloo team members will claim their prizes: US$1,500 and an IBM laptop each for their second-place showing. For now, though, all Donny Cheung wants to do is get a Coke and sit by the pool for the first time since he got to Florida three days ago. RESOURCE
CENTRES
|
|