Working closely with others under tight deadlines and amid chaos is challenging, but rewarding.
This past weekend I participated in a hackathon (as the title of the post suggests). It’s something I knew would be challenging, but had no idea what to expect, having never done anything like this before. All I knew was that I’d be working together with students from the Front End and Ruby cohorts to create a web app over the course of a weekend. As if that wasn’t intimidating enough, I had heard a fair amount of horror stories from Iron Yard alums, suggesting there would be an overwhelming workload, little to no sleep, technical problems aplenty, and a very real possibility of nervous breakdown. Needless to say, I wasn’t feeling overly enthused.
Fortunately, I was put on a team with some really great people who really knew their stuff. I designed as best I could, tried to pull my own weight, and for the most part kept myself out of trouble. In the end, I was pretty proud of what we accomplished, given the amount of time we had to work with. Bottom line: I survived. And now that I’m on the other side of it, here are some thoughts about my experience.
Five Things I Learned From My Hackathon Experience
A Renewed Respect for Web Developers
I’ll be honest: since I started at The Iron Yard I’ve stepped up my HTML & CSS game a bit. I’ve learned some cool stuff and made some cool things. I had gotten to the point where I would get to the end of a project and look at all the code I’d written and just think, Wow, I can’t believe I wrote all that in just a few hours. But when I started working with the Front End and Ruby peeps, I was blown away at how much code they wrote. Over the course of the weekend they probably wrote hundreds, if not thousands, of lines of code. It’s not even comparable to what I do.
The Power of Working in Close Proximity
I was fortunate to be in a group that stuck together the whole weekend. We all worked at the same table, pretty much the entire time. It’s so much easier (and faster) to communicate in person than basically any other way. Some other groups split up and tried to work remotely, and struggled because of it. In a project like this, communication is key. And working in close proximity fosters communication a lot better than any alternative.
The Agony of Setbacks
In a project of this magnitude, setbacks are a reality. My team learned that first hand when we lost several hours of our weekend to a minor misspelling. One typo among hundreds of lines of code is hard to find, and it can halt progress for a significant amount of time. Everyone makes mistakes; it’s to be expected. However, that doesn’t make them any less frustrating.
A Healthy Fear of the Power of Git
This one’s pretty short: Git is no joke. It’s amazing what a powerful tool it is. And while I realize merge conflicts are part of the process, I still feel a little anxiety about the possibility of a major “spaghetti code” type merge scenario.
The Value of Camaraderie
I’m not gonna lie; this weekend was hard work, and parts of it were stressful. There were a few times when I wondered if I was going to get my portion of the work done on time. But there were a lot of good times, too. The ability to band together as a group really makes the whole hackathon experience less intimidating.
I’m not sure what I was expecting going into this hackathon. I suppose I was expecting it to be hard, and it was. Technology let us down. Instructors were conspicuously absent. At times it felt as if we were being set up to fail. But in the end, we figured out workarounds, we were forced to be resourceful, and we learned a lot in the process. And at the end of the day, that’s what the whole thing was about: learning.
- My First Three Months at CROmetrics
- What The Criterion Collection Taught Me About Design
- Dear Startups, Stop Asking People to Work for Free
- CSS Crash Course
- Daily UI
- Simple Dynamic Navigation in Jekyll
- Designing for Mobile
- CSS Zen Garden
- Type Study
- A New Adventure
- Avoiding Jargon
- Fail Forward