JIN: Let them eat theory

You’ve seen the pictures, you’ve heard the news: There was a hackathon two weekends ago. “Cool,” you mumble, “sounds interesting.” A thousand participants! $30,000 in prizes! “Those are some pretty big numbers,” you say, slightly more impressed.

Those are big numbers indeed, especially when put in context: It’s Yale, the bastion of the liberal arts. A hackathon is a group of people convening to haphazardly hack web services and phone apps over the course of 24 hours. Heavy consumption of caffeine is a defining characteristic, as is atrocious neglect of hygiene and sleep deprivation.

But since when did Yale even care about tech? And more importantly, since when did enough techies care about Yale to make its first-ever hackathon more successful than established events at schools like UPenn and MIT?

The answer to Y-Hack’s success marks a shift in the tech world that has been a long time coming. The recent wave of hackathons, Y-Hack included, is merely a symptom of these changes. Because — get this — in the year 2013, programming suddenly became cool.

It all started with the new wave of young entrepreneurs. With the mainstream success of Facebook, Snapchat, Twitter and Dropbox, the computer science major has enjoyed a leap in popularity. At Yale, enrollment in 100-level computer science courses has been steadily increasing. Even my friend, majoring in film studies, took Intro to Programming. “Because I thought it’d be a good skill to have,” she said.

While our faculty is top-notch, Yale’s Computer Science Department is notoriously theoretical. Critics often cite this heavy emphasis alongside its relative smaller size as a weakness. But students studying computer science here at Yale know what they’re signing up for. They want to produce beautiful algorithms, and they want the analysis to back up their heuristics.

If they want to learn how to code, they can do it outside the classroom, the way anyone, anywhere, goes about it: practice.

And that is precisely why hackathons matter — they give students a venue to gain experience in the practice of programming. With the rise in popularity of Silicon Valley start-ups, hackathons have naturally developed as the college equivalent, a giant venue to meet like-minded people and bump heads with the next Zuck. A few years ago, there was one hackathon per year; now, there are multiple hackathons on any given weekend. And alongside this expansion, there are enough participants to sustain the growth, meaning more and more students are starting to take advantage of opportunities to learn outside the classroom.

This also means that the rift between what is taught and what is “used” is becoming increasingly justified. While students need some coding experience in order to put theory in context, spending too much time teaching students different languages is a waste of precious time. If students want to learn how to code, they can instead go to a hackathon.

In fact, 24 hours is plenty of time to learn a new web framework or become familiarized with a scripting language. As the organizers of Y-Hack, we actively encourage those with zero coding experience to participate in the hackathon because they often have the most to gain. At the end, most will emerge able to build at least two basic websites. Even seasoned veterans will pick up a language or two. Since the entire point of a hackathon is to tinker and learn, there isn’t much fear of failing.

It is absurd to expect any respectable computer science program at a university, especially ours, to teach languages instead of theory. These are called computer science programs, not programming programs, for a reason. Any professional programmer is constantly learning new languages — sooner or later, students will have to understand how to do that for themselves. What they won’t be able to learn themselves from the ground up, however, is how to optimize code for different architectures or which algorithm runs faster and why.

So is it surprising that Yale held one of the biggest hackathons of the year? Perhaps. But as the dropout-turned-billionaire trope becomes increasingly acceptable and obtainable, the onus to learn to program has shifted to the individual. Linguistics majors will script in Matlab, economists will use R, English majors will learn Drupal and WordPress. Coding as a skill is becoming ubiquitous.

Learning to code used to be contingent on our willingness to lock ourselves away with a few friends for a weekend. Now, a community has united with the specific purpose of supporting aspiring coders.

So please, when it comes to our education inside the classroom: Leave our theory alone.

Charles Jin is a sophomore in Silliman College and the co-founder of the Yale CS Hacker Organization. Contact him at charles.jin@yale.edu.

Comments