First, happy Programmers Day!
I was in an IRC chat today discussing the idea of hacking with some fellow programmers. In my opinion, modern hackathons are too focused on end-goals. Most hackathons have challenges you are expected to try to complete, or at the very least a theme that restricts the realm in which you can work. Pessimists might say that company-sponsored hackathons are a cheap way for corporations to out-source new ideas for their industry.
Here’s a quick anecdote about my first ever hackathon. It was BostonHacks 2017 and my group made the conscious decision to not try and compete for prizes through solving a given challenge, but to instead create something fun using tools we were interested in. We ended up creating an app that would call your phone every time someone tweeted and read the tweet out loud to you. We called it “Spitter” because it “spoke twitter”. During its creation, we learned to use two APIs we had never touched before (Twitter and Twilio) and were extremely proud when it came time for us to present it to the judges. Take a look at how happy we were in this photo:
I will never forget the Judges reaction. They wore an extremely puzzled look on their faces as they asked “who will you market this to?” We didn’t really have an answer, because it wasn’t really something we ever thought was marketable. The judges couldn’t wrap their heads around the fact that we had created something merely to see if we could, and we were equally befuddled by the fact that they felt our project had to have a purpose.
We ended up making up some bumbling explanation that it could in theory be a useful tool for the blind. Suffice it to say we did not win any of the competitions that day.
In Steven Levy’s book Hackers: Heroes of the Computer Revolution, he explains that the origin of the word “hacker” can be traced back to 1959 where it had an entry in the MIT Tech Model Railroad Club‘s dictionary. The TMRC is famous for being an incubator of sorts to some of the first notable hackers in modern times. The entry for the word in the club’s dictionary is as follows:
1. an article or project without constructive end
2. a project undertaken on bad self-advice
3. an entropy booster
to produce, or attempt to produce, a hack
one who hacks, or makes them
In this article written by Richard Stallman, he gives his take on the word:
It is hard to write a simple definition of something as varied as hacking, but I think what these activities have in common is playfulness, cleverness, and exploration. Thus, hacking means exploring the limits of what is possible, in a spirit of playful cleverness. Activities that display playful cleverness have “hack value”
. . .
Around 1980, when the news media took notice of hackers, they fixated on one narrow aspect of real hacking: the security breaking which some hackers occasionally did. They ignored all the rest of hacking, and took the term to mean breaking security, no more and no less. The media have since spread that definition, disregarding our attempts to correct them. As a result, most people have a mistaken idea of what we hackers actually do and what we think.
I find it interesting how the original meaning of hacker eventually got twisted to refer to someone who subversively enters restricted systems, but now with the rise of hackathons, it seems that the word is being brought back to its original meaning. Hackathons generally seem to regard hacking as a close parallel to what people do in the “maker” culture.
Another view on the term comes from this article from 2004 by Y Combinator and HackerNews founder Paul Graham (who, according to Wikipedia, Steven Levy refers to as a “hacker philosopher”). Here are a few choice snippets:
It is by poking about inside current technology that hackers get ideas for the next generation.
. . .
Hackers are unruly. That is the essence of hacking. And it is also the essence of Americanness. It is no accident that Silicon Valley is in America, and not France, or Germany, or England, or Japan. In those countries, people color inside the lines.
. . .
Hackers are invariably smart-alecks. If we had a national holiday, it would be April 1st. It says a great deal about our work that we use the same word for a brilliant or a horribly cheesy solution. When we cook one up we’re not always 100% sure which kind it is. But as long as it has the right sort of wrongness, that’s a promising sign. It’s odd that people think of programming as precise and methodical. Computers are precise and methodical. Hacking is something you do with a gleeful laugh.
I guess the point of this post is that I would love to see more hackathons that take hacking back to its roots — just hacking for the sake of hacking. To me, the process is what is most important, not the end result.
I am happy to see that there is at least one hackathon that has this mentality: The Stupid Shit No One Needs & Terrible Ideas Hackathon. Some great ideas (re: hacks) have come out of that group including:
- Zen Volt — A meditation aid that shocks you when you don’t relax.
- NonAd Block — a chrome extension that blocks all web content that isn’t an ad.
- VR Fireplace — a virtual reality experience where you look at a fireplace on a TV.
If those aren’t quality hacks, then I don’t know what is.