I’m often told that Software is Sexy and that, for some reason, Hardware is Decidedly Not.
The breakdown in many hackathons support this thought. We don’t have exact numbers on this (though I’m considering putting a survey together), but based purely on anecdotal evidence, I’ve consistently found that software hacks almost always comprise the majority of the hacks submitted at any given college hackathon.
This is, quite frankly, very puzzling to me. I love hardware hacks. I’m personally very, very compelled by an Arduino breadboard, by hand-made drones, and by technology that I can touch, feel, and pull. As such, this large-scale preference towards software has always remained an enigma to me, and I want to figure out the truth behind this.
So I reached out to Casey Spencer (pictured left, awesomely), whose hardware hack ‘Mind Drone’ bagged first place at CalHacks a few weeks ago, for insight on the matter.
You’ve once said that ‘hardware is unappreciated at hackathons.’ When was the first time you noticed that?
The third place winning team at the first hackathon I attended was a hardware team that created a Kinect game which involved a pedal-powered helicopter. When they took the stage to claim their medals, about a third of the participants started chanting “Hardware! Hardware!” over and over. I turned to my teammate, seasoned hackathon veteran Grantland Hall, and asked him what was going on. He explained that due to the relative scarcity of hardware hackers and the resulting rarity of them winning, hardware hackers have developed a sort of comradery that particularly comes through when one wins.
Since then I’ve kept an eye out for hardware hackers, and amongst the sea of MacBooks, you just don’t see many Arduinos, fewer general SoCs, rarely a servo, and only once have I seen a team using an oscilloscope (Excluding the time my team had to borrow one from a local high school).
Why do you think software is largely privileged over hardware? Is software sexier?
As far as I can tell, software seems to be perceived as having more creative freedom and potential, while hardware is seen as more rigid and unforgiving. Really, that’s not totally untrue. The largest boundary on software is the capability and creativity of whoever’s writing it, while hardware is bound to the capabilities of its design. Not to mention that if you forget a decimal while coding, whoops, compiler error. Forget a decimal while designing a circuit? Whoops, fried the PCB.
As far as “sexiness” goes though, that title should go to hardware. Did you see my teammate Tomas Vega with those diodes all over his head? Modern art.
Why should hardware warrant more respect in the hackathon circuit?
Hardware is what raises the bar in a hackathon. The reason why hardware should have a bigger presence in hackathons isn’t because it’s better than software – which it isn’t, it’s because hardware and software are inherently intertwined and co-dependent. At the end of the day, either one is useless without the other, and neglect of one will lead to stagnation in the other.
A common observation amongst participants is that software submissions are starting to stagnate; at every hackathon, “Tinder for X”, “Uber for Y”, and “An Automated Z” are becoming commonplace. In my opinion, this is because of two reasons: as hackathons increase in popularity, more people who are new to coding attend them as a means to practice and learn (Which is great), increasing the amount of teams working on relatively simple concepts, and because no new hardware has been widely adopted as a new development platform. If hackers are bored with what they’ve seen and what they themselves are capable of, it’s because they’ve been on the same platform for too long. Learn how to use an Arduino, and watch how many new ideas you’ll have. Practice with a Leap Motion and Myo, and you’ll find new innovative ways to interact with software you may have already written. Blend all three and add an Oculus – or better yet your own creation – and eventually you’ll flip the script on hackathons.
MindDrone didn’t win because we’re hardware. We won because we mixed hardware, software, signal processing, and the right state of mind (Somewhat literally) into our creation.
How can hackathon organizers raise the bar for hardware?
CalHacks set a great example. Set aside a designated station to accommodate the needs of hardware hackers, and hardware hackers are what you’ll get. Build it, and they will come, right? The typical ban on soldering is understandable – having dozens or even hundreds of people soldering in one small uncontrolled environment probably wouldn’t end well, so create a safe environment for the serious hardware hacker to get dirty. A lot of people took advantage of the available 3D printers as well, which not only enabled multiple teams to see their ideas through, but also inspired future hardware hackers – I met a handful of participants who had never used a 3D printer before CalHacks, and now having been exposed to them will no doubt try to incorporate them again.
People also aren’t very willing to shell out money for something they don’t have any experience with, which is usually the case with new hardware. CalHacks once again did it right: distribute a wide variety of loaner hardware so people can try it before they buy it.
Tell me about yourself. What’s your story?
Born in Los Angeles, schooled in the Bay Area through high school, currently back in LA. As a kid I’d tinker with electronics in the same way I’m sure 99% of whoever might read this did. I wired brushed electric motors when I was 6, and I made an FM radio when I was 8 (I was a proponent of hardware even then), but my first exposure to coding and real “hacking” was actually by trying to cheat in Final Fantasy VII when I was 9. I couldn’t pass a boss, so rather than go back and grind until I could, I opted for the lazy route and used a GameShark. Until that point, video games were just a part of life that I never really questioned. However they worked, I thought, was far beyond my capacity of understanding. Yet here was this gray brick that happened to plug in to some seemingly arbitrary port on the back of my PlayStation that was capable of complete manipulation of the game.
At the time I had no idea what an EEPROM, RAM, or cache was, so the fact that a gray box could somehow manipulate the game intrigued me more than the game itself. Google was becoming commonplace around that time so I looked up how a GameShark worked, and was introduced to hex tables, float values, pointers, etc. I never actually beat FF7, from then on I was all about computers. I kept tinkering with code and modding games through junior high, until I was re-introduced to hardware when I brought home two computers the school would have otherwise thrown out, and combined the best components of the two to create my first personal computer.
After that, my scientific interest started to decay. I had gone as far as I knew how to by myself, but I couldn’t find any fulfilling scientific outlets in school – “computer class” was just Mavis Beacon followed by Quake 3: Arena LAN matches. I really hadn’t done much until a few years ago when I took an interest in drones after finding out how much information was available about them online. I had to fill in a lot of blanks, but after a solid year of teaching myself enough about aerospace engineering, aerodynamics, signal processing, circuitry, and design using whatever information was available online, I built my first semi-autonomous drone out of a $100 foam RC plane from Amazon and my first ground station out of a backpack and camera tripod. Three planes, two quadcopters, and a tricopter later, my latest drone is what we tapped into for MindDrone.
I think OpenBCI, the brain-computer interface platform (team-mates) Tomas Vega and Pierre Karashchuk used to interface with the drone, may be what brings me back to software again.
Post was amended on October 27th, 5:55pm.