This past weekend, I had the opportunity to attend my first Hackathon (Aside: Apparently I was the first person to register for the even when it was posted back in July). It was hosted by Marcato Digital Solutions, with many great sponsors. The weekend involved lots of free energy drinks, beer, and great food. Of course there was also a lot of fun coding, and learning. Before reading my experiences, I recommend reading five things i learned from: a hackathon by Leah Noble (@leahcnoble) who was on the winning team (LOLCats). [Edit:] Also read a post from Caroline Louie (@caroline_louie): Marcato Hackathon. Good read from a developer who came with slightly less knowledge and made the experience a great opportunity to learn hands-on.
I participated as an individual, rather than part of a team, in part because I didn’t know many others that were going to be involved, but also because I had a very particular project that I wanted to work on, and of course in my language of choice. For my first Hackathon, this was a good position for me, as I really didn’t know what to expect, and didn’t want to add additional pressure of fear of letting a team down. That said, with this experience now behind my belt, I will definitely join a team the next time around.
I also learned a few more tips to remember the next time around. For one, I won’t forget to bring a paper note book with me. As much as I can design on a computer, nothing helps me to visualize like pen to paper. Letting my hand flow as my mind focuses on ideas is just a method that works for me.
Aim small. The most successful apps were the simplest ones, and from what I could see after the fact, both were at a ‘completed’ stage well before the deadline. Find a simple idea and implement it and give it some polish. In a way I knew coming into this Hackathon that my project was too large and I wanted to implement too much. But I pushed forward anyways and simply omitted features I wouldn’t be able to complete in time. I did get a fair bit implemented but there are still so many more features I want to add to my app as well.
That is one thing I thing I will do, now with as much work as I have into the project I’d like to find some time to clean up what I do have, and add the features that are still missing and get a much more completed app.
Deadline… There was a point set two hours prior to the end of the Hackathon, for coding to stop and presentations to begin. I was working on features until an hour or 30 minutes before that point before switching to a bug fix scramble for the remaining time, right up to the buzzer. Unfortunately, this left me without time to prepare my presentation, and I had to fumble my way through it. When I am well prepared, I can be comfortable while presenting. When I am not, I tend to be very scatter-brained and my thoughts jumbled. Next time I give myself a half hour to an hour to prepare a presentation to “sell” my app to the judges.
While a Hackathon is a good place to meet other developers (apparently all of the 27 people who attended were local, none from out of town as originally anticipated), the environment with everyone in teams or working on their own projects actually mitigates some of that benefit somewhat. I really found out the most about the other developers participating during the presentation stage. Being able to see not only the projects that were presented, but also the languages/platforms, the skill sets of each individual. In some respects this was more interesting to me than the actual app they created itself.
The Hackathon was definitely a success. It was a success for the hosts Marcato, a success for all the participants involved, and success for me on a personal (and perhaps even professional) level. I can’t wait until the next one! With any luck I also helped to generate some interest in a Dart and Polymer talk I’m hoping to hold in November. Would love to get some feedback if people are interested in just a talk and intro to the language or also include a Codelab with some hands-on experience for it as well (which naturally would significantly increase the time of the talk but give some guided experience as well). If you’re interested, let me know!
If you’re interested in seeing a graph on the commit histories, one of the participants Paul Halliday (@01110000) created this page after the Hackathon was completed. At the moment not all projects are represented here, and if you participated and want to see your own I suggest sending him a message via twitter with your github repo that you used for the Hackathon. A side note that my commit graph looks WAY off because I forked a different project, a sample Hello World, used for the server side component of my project. So all that old history was pulled into the graph as well. I should have cloned it and created a fresh repository instead. YALL (Yet another lesson learned).