News
Computing Applications News

Coding as Sport

Programming competitions help identify and reward those who excel in coding.
Posted
Coding as Sport, illustrative photo
  1. Introduction
  2. Getting in the Game
  3. The Gender Gap
  4. A Collaborative Approach
  5. Further Reading
  6. Author
  7. Figures
Coding as Sport, illustrative photo
The team from the St. Petersburg National Research University of IT, Mechanics, and Optics came in first in the 39th Annual ACM International Collegiate Programming Contest (ICPC) World Finals last year in Marrakech, Morocco.

At most colleges, you are likely to find sporting events taking place each weekend throughout the year. In the fall, you have football and lacrosse; in the winter, basketball games and wrestling matches are commonplace, and in the spring, tennis, softball, and track and field events rule the season.

For colleges and universities with computer science programs, however the sporting season runs year-round, and brain matter, rather than muscle matter, is being tested and strained against the competition.

Indeed, sport coding—which is the process of competing in competitions in which participants must write computer code that will solve a problem or problems within a time limit—have become de rigeur for ‘serious’ coders at the secondary school and collegiate levels. These competitions usually feature a problem or series of problems that typically revolve around an algorithm or mathematical structure, and must be solved quickly and efficiently. Like their athletic counterparts, these competitions feature highly driven participants who see these events as a pathway to self-improvement, as well as a bit of fortune.

“A lot of our students come to us and say ‘I have a prestigious degree, I have a good career, but I just love coding’,” explains David Yang, co-founder of the Fullstack Academy, a New York City-based provider of programming courses, and of the Grace Hopper Academy, a tuition-deferred, all-women focused coding program.

“[Participating in coding contests] is a hobby that people can be really passionate about, but also has financial benefits,” Yang adds. “It’s kind of the same reason people do a Tough Mudder [a series of obstacle race/mud run events designed by British Special Forces]. They intentionally punish you, and make you feel that intensity and pain, but out of that you get team bonding, you test your personal limits, and you have fun doing it.”

Back to Top

Getting in the Game

Coding competitions are highly varied, ranging from local collegiate events to large national and international events with thousands of participants. Some of the largest, most popular events include ACM’s International Collegiate Programming Contest (ICPC), Facebook’s Hacker Cup, TopCoder’s Java, C++, and C# competitions, and the Russian Codeforces competitions. As an incentive, many of these events offer cash prizes to the winners; Topcoder, for example, has awarded more than $70 million in prize money over the past 15 years.

The main drivers of these competitions are easily understandable: they offer the thrill of competing against others, allow participants to benchmark their progress and, perhaps most importantly, provide them a way to showcase their skills to prospective employers.

“Testing your skills and trying to improve your skills is a major part of it,” says Mark Lewis, a computer science professor at Trinity University in San Antonio, TX. Lewis competed in the ACM ICPC when he was a college student, and still occasionally competes in TopCoder events when he has time.

“People say, ‘Hey, if I do really great here I might win’,” Lewis says. “And maybe, I can go land a good job with a good company as a result of this. There is no doubt that it is part of the attraction.”

Still, some in the coding world have maligned coding competitions, noting these competitions are largely based around completing a task as fast as possible, says Valerie Barr, a computer science professor at Union College in Schenectady, NY, who also is involved with the Women’s International Hackathon run by Microsoft.

“The competition model rewards the kind of thought process that has the ‘aha’ moment, the ‘I can code this really quickly, even if it’s ugly’,” Barr says. “Diversity of thoughts and approaches—the competition model only encourages a small set of those [elements]. Someone who has a thoughtful approach to development, maps out their design, does a lot of desk checking, and does everything with paper and pencil first; that’s not rewarded in a competition model.”

Back to Top

The Gender Gap

Moreover, coding competitions—as well as the computer science field as a whole—are largely dominated by men. “I believe that hackathons are mostly male,” says Julie Gabler, a fourth-year Information Technology and Criminal Justice major at the Rochester Institute of Technology. “There are, of course, female participants, but teams of four will usually not have more than one female, from what I have seen.”

This male domination appears to be rooted in the way computing was marketed in the early 1980s. According to a segment aired on National Public Radio’s Planet Money show, women were very active in the computer programming field from 1970 through 1984. In the early 1980s, the narrative first emerged that computers were for boys, and they were marketed almost exclusively to boys and men.

Furthermore, the notion of the “computer geek” also began to emerge during this period, with TV shows, movies, and video games generally relegating the computing field to boys (think about Anthony Michael Hall’s character in The Breakfast Club, versus Molly Ringwald’s character). This led to parents being more likely to buy computers for boys than girls, and many more boys had experience programming prior to entering college. As a result, many young women felt like they were already significantly behind their male peers from the start, and without the proper encouragement and support from peers and faculty, they left computer science programs in droves.

That seems to be changing, thanks to the increasing number of coding events that are designed not to be cutthroat, winner-takes-all affairs. These events are organized around a team-based approach and are focused on solving a real problem, which is why they are often sponsored by large companies looking to crowdsource solutions. Furthermore, events such as these tend to be more inclusive, attracting more women participants, as well as those from outside computer science.

For example, Mount Holyoke College, a liberal arts school for women, hosts HackHolyoke, a 24-hour hackathon founded by two students in 2014 that specifies a 1:1 gender ratio for its participants, and allows and encourages even non-computer science majors to participate. Because it is based on a team-based approach to solving a problem or creating a product, not everyone needs to be an expert, or even a computer science major, in order to participate.

“It’s a very friendly competition to beginners,” according to Jo Martin, director of employer relations at Mount Holyoke’s career center. “The encouragement is certainly such that anybody that hasn’t participated in the past would certainly be welcomed.”

Indeed, say Eva Snyder and Katie Ho, co-organizers of HackHolyoke, existing hackathons and coding competitions were primarily made up of men, most of whom were hardcore coders. “It was obvious to us that there were very few women there,” Ho says, noting the gender disparity at a hackathon she attended prior to starting HackHolyoke. “We wanted to create this more inclusive, more welcoming environment.”

Back to Top

A Collaborative Approach

Austyn Hill, a Lead Java Instructor at The Software Guild who participated in a coding competition while she was a student at the Massachusetts Institute of Technology (MIT) a decade ago, noted that alternatives to coding competitions such as coding jams and hackathons are often seen as being more attractive events to some coders, since they focus on exploration, cooperation, and collaboration, and less on competition. She competed as part of a team at MIT’s Battlecode, and found that while the prize money and notoriety associated with winning were incentives to participate, the main draw was the opportunity to work with her friends.

“It was a fun project for me and some of my dormmates to work together, and have a project that was independent of grades and everything else like that,” Hill says. “That was probably my biggest motivation.”

Ultimately, whether structured as an intense, single-person coding competition or as a team-based hackathon, these types of competitions are and likely will continue to serve the needs of ambitious students, coding enthusiasts, and the organizations that sponsor them.

Coding competitions are “a place where students can learn to work in teams and develop ideas in a short amount of time,” says Melissa Young, a fourth-year game design and development major at the Rochester Institute of Technology. “Larger companies love the idea of challenges, as it can help them determine skill levels of their applicants and what people’s thought processes are. Quite a few employers actually use online programming tests as part of their technical interviews.”

Most importantly, regularly competing in any type of programming competition is likely to impress potential employers, as it demonstrates a willingness to address coding challenges outside of a school or work setting.

“I put that I participate in these competitions on my résumé, because I think it shows that I care about computer science beyond completing my coursework,” says Kylie Moden, a computer science major at Trinity University who competed in her third year in the regional ACM programming competition. “If you excel, it’s definitely a good thing for employers to see.”

Morgan Keiser, a second-year computing security major at RIT, agrees, noting one need not be at the top of the leaderboard to reap the benefits of participating in coding challenges and hackathons. “I haven’t been ignored by companies offering mentorship just because I may not be as good as others around me,” Keiser says. “I’ve also made a few connections through hackathons with company recruiters, not for recruiting, but just as professionals.”

Indeed, the best and most lasting benefit of coding competitions and hackathons may not be the results, but the skills that are often most required in the workplace: efficiency, time management, and the ability to collaborate to complete a project.

“It’s just about beginning to breach the fact that coding is not something to fear, because it makes life easier and more fun,” Gabler says. “Like anything, it takes practice, but it is much easier and more rewarding to learn and apply that knowledge with other people and get real-world application to your technical knowledge, no matter what your experience.”

Back to Top

Further Reading

FromDev coding contest lists: http://www.fromdev.com/2014/09/best-programming-contest-sites.html

A gender-balanced college hackathon: www.HackHolyoke.org

What is a Hackathon?: http://www.fromdev.com/2014/09/best-programming-contest-sites.html

Back to Top

Back to Top

Figures

UF1 Figure. The team from the St. Petersburg National Research University of IT, Mechanics, and Optics came in the first in the 39th Annual ACM International Collegiate Programming Contest (ICPC) World Finals last year in Marrakech, Morocco.

Back to top

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More