How to Survive Your First Hackathon Part IV: The 7 Tips I Learned as a Newbie

This post is part of a series I created detailing my experience at my first hackathon, to read part I, Setting goals and preparing for my first hackathon, click here. To read part II, Attending my first hackathon and rubbing elbows with the sponsors, click here. To read part III, Surviving a hackathon when failure seems imminent, click here.

Going home around midnight on Day 2 was probably my biggest mistake.  I had realized that night that I would fail in getting my project completed by Day 3.  However, I had gone home at the end of Day 2 with the intentions of waking up by 4am, finishing at least a prototype draft of my project by 10am, and submitting it not to compete, but to get feedback from the judges and sponsors on Day 3.  I did wake up early, but more ill than had I been on Day 2.  Staring at my screen at the wee-hours of the morning made my eyes feel like they were bleeding. I finally gave up, took some Sudafed, and rested.

Overall, I enjoyed being at the hackathon, meeting people, and challenging myself on a project that was out of my comfort zone.  Feeling less intimidated, I already signed up to attend another hackathon, Code til Dawn which is nearby, has more participants, and is only 24 hours.  Though disappointed, I had to remind myself once again on Day 3 that I didn’t go to the hackathon to compete, I went to learn new things.  If anything, I feel like I accomplished that goal.

Attending your first hackathon soon? Here is my advice on what you should do if you are a code newbie:

  1. Come prepared. While most hackathons provide food, wifi, printing, and some utilities, most are BYOD.  If you have an idea in mind of what you want to build, make sure you have all the software you need downloaded before the event.  If you don’t have a hardware resource you need, work the room, and introduce yourself to someone who does.
  2. Be honest about what you don’t know.  I found that when I put my weaknesses on the table, there are usually one or more people willing to help me out. Don’t assume everyone there is experienced, many may be newbies just like you. Leave your ego at the door and prepare to be uncomfortable.  Your ability to build under pressure is the main challenge of participation.
  3. Find at least 3 people who know your language or a language you want to learn.  I’m pretty proficient with python as a language, and I wanted to know more about how others were using it in their projects. I also wanted to learn how to integrate frameworks such as Flask or Django with with my scripts. Unfortunately, I wasn’t able to connect with other python developers based on the participant pool.  However, at larger events, finding one or a few people who you share a common language with shouldn’t be too difficult.
  4. Try to connect and organize a team.  I was at disadvantage because I didn’t have a team to work with and my project was fairly large.  With no one to distribute tasks to, I didn’t finish.  If you’re a newbie, find a group and join a team as soon as possible. Unless you’re a seasoned programmer, a hackathon is not the type of event to go it alone.
  5. Talk with the sponsors, they are potential employers.  Not only did I find the sponsor reps at the event, I introduced myself and asked them questions about their companies. Which leads to my next tip…
  6. Follow up. Blog and share ideas to build online community around issues, themes, and trends discussed at the event.  Don’t just take business cards, do the work in connecting with others afterwards. Stay in touch with your team members and offer to take a sponsor or two out to lunch to discuss internship opportunities.

My final tip and what I learned the most from my first hackathon: don’t beat yourself up.  I went through a period of “should’ve/could’ve/would’ve” thinking that afternoon after I realized I failed.  I could have familiarized myself with python web frameworks to help out on the backend, I should have used tools like Node to assist with coding the javascript, I would have used App Inventor to prototype the app component of my project.  Doing all those things would not have changed anything: I was fighting against time, being sick, and my own high expectations.

As a code newbie, don’t worry about creating the perfect submission or winning. Focus on completing your project, connect with others, and learn new skills you can use later.  Your first experience at a hackathon is whatever you make it.  Only you can decide what you want to get out of it, so make the best of your time.

How to Survive Your First Hackathon Part III:

This post is part of a series I created detailing my experience at my first hackathon, to read part I, Setting goals and preparing for my first hackathon, click here. To read part II, Attending my first hackathon and rubbing elbows with the sponsors, click here.

In Part II of the series, I summarized the type of project I wanted to build: a location-specific news and trending source powered and automated by web-crawled social media data I gathered.  I decided to use the Twitter API to perform search queries based on my region’s lat-long coordinates, create a bot and web crawler to pull tweets and info from that location, and use the data to report trends and news via a web app/site.  A big project indeed considering I only knew how to do 3 of the 5 tasks it would take me to complete it, but somehow I convinced myself I had enough time.  Blame it on a sugar-induced energy spike caused by the delicious espresso powdered bon-bons I was munching on at the event.

As the time carried on, staying awake was the hardest thing for me.  I had been use to getting at least 7-8 hours of sleep even with a busy work schedule, so working throughout the night and early morning was out of the ordinary.  Not to mention, the food there was mostly college dorm junk: candy, pizza, donuts, chips, and lots of soda.  On Day 1, I broke into the facility kitchen to find coffee and munched on an apple and banana, trying to stick to eating healthy and avoid brainfog.  After a while, I dived in and ate whatever was offered to avoid starving.  Big mistake, by 11am on Day 2 of the hackathon, battling food allergies had now been added to my agenda.

I was incredibly optimistic about my chances of finishing the project in less than 24 hours.  Even if I had no intention of entering the competition in the webdev category, I wanted to finish it according to the guidelines set, just to prove to myself that I could.  Another slight setback occurred in the afternoon: we lost our WIFI connection for an hour and half.  Feeling powerless and ill from allergies, I used the time to take a nap in one of the breakout rooms.  When I woke up, I felt even more ill, but I still got up and headed back to my workspace.

By night, I had made progress.  The twitter bot was created, the web crawler program I coded in python was set up, and I had a functioning site mockup with the important widgets I needed to make the crawler work.  I still had a lot to do though: I needed to add content, get the python code synced to the site and functioning on the backend, create my first graphs from the data I had gathered earlier, deploy the app, and upload the site.  Though it seemed like my tasklist was growing by the hour, I still felt optimistic until another setback occurred: the organizers had decided that due to the low turnout of those who entered the competition, the judging would be moved up 5 hours on Day 3, thus moving up the time we were all expected to be finished.  Because I had not entered the competition, I accepted the changes.

Truthfully, I was disappointed in myself because I knew I couldn’t finish my project by the time the hackathon would end.  A friend that I had made at the event encouraged me to carry on with the site after the event, and use it in my portfolio.  I concluded this would be the best route. I continued to work until around midnight, packed up, and went home to try to get some more sleep.

To read my 7 tips for how to survive your first hackathon, (and the final conclusion of what happened at mine), stay tuned for Part IV.

How to Survive Your First Hackathon Part II: Rubbing Elbows and Networking

This post is part of a series I created detailing my experience at my first hackathon, to read part I, Setting goals and preparing for my first hackathon, click here.

One of the best things about attending a hackathon is hearing first-hand from experienced developers and connecting with other participants.  The keynote speakers for the event included Jeremy Packer, a local entrepreneur who founded a social lifestyle app as a college student and has since developed it to become one of the most-used social mobile apps in our region.  Zach Schneider, a Rails engineer at Aha!, a popular road-mapping software, was also a guest speaker.  Both had a lot of informative tips for us in terms of putting together remote teams, partnering with local businesses, and establishing development models that can be easily replicated for growth.  I appreciated the fact that they stuck around that night to answer questions and connect with participants.  I could tell that they really loved what they do, which makes me even more excited about the possibilities of working in the industry.

As the event carried on, the number of participants began to dwindle.  This wasn’t surprising to me.  People attend hackathons for a variety of reasons, the central focus being on the sponsors who are there, the freebies, and the toys. I managed to keep myself from playing with the drone that was there, but they seemed to be everyone’s favorite.  My focus for Day 1 was to meet folks and establish a team.

While most of the participants gathered around the Yahoo reps, I was most interested in Greplytix, a consultant firm that works with companies on producing data analytics and visualizations.  As I’m currently studying python and how it’s used in the data science field, I wanted to find reps from Greplytix quickly and ask them specific questions about their workflow.

By Saturday morning, I manage to corner one of the employees and sit with him in the office while he discussed in detail how Greplytix uses open source and cloud based services to manage a growing clientele.  We also discussed useful tools that would help me with my project in the long run, such as D3.js which I had a chance to demo and really liked.  Greplytix offers software engineering internships and the rep encouraged me to stop by the office throughout the week to discuss them.  I already work full-time, but I made a mental note of the offer, which may be a great opportunity for me to take advantage of this Summer.

I had not met one python developer by the time the actual hacking began, and my hopes of organizing a team to work with were quickly squashed.  I soon found out from a few of the organizers that there were not many participants who entered into the web or mobile development categories.  Even though I saw this as a setback, I remembered that I wasn’t there to compete, I was there to learn.  So I settled on a learning project I had been interested in for a while: producing location-specific social media analytics by hacking APIs and web scraping Twitter.

To find out how my project went, stay tuned for Part III of the How to Survive Your First Hackathon series…

How to Survive Your First Hackathon Part I: Setting Goals

This past weekend, I attended a 3 day long hackathon, organized with the purpose of bringing together 150 of our region’s techies. With the exception of a few conferences and meetups in Chicago, this was my first *official* hackathon.  I had made it one of my goals to get involved more in the tech community by attending hackathons earlier this year.  I figured attending a smaller, local one would be a good introduction for me.

Right off the bat, I was incredibly nervous the moment I registered.  I wasn’t sure if the contributions I made and submitted would be good enough.  Even though I do program in python and have created a few HTML5/Javascript-based apps, I still see myself as a code newbie since I don’t work professionally as a developer (..yet).  Feeling insecure only alleviated the butterflies I had prior to the event.

Therefore, feeling a potential fight or flight situation occurring I set a mental plan of action before going.

  1. I wasn’t going to allow myself to be gender-gated.  I knew in advance that the probability of there being only a handful of women at the event was high.  I didn’t want this to affect my judgement, so I decided that no matter what the diversity of participants (or lack of) was at the hackathon, I needed to accept it and move on.
  2. I wasn’t going to find nor justify excuses to bail. I packed a gym bag full essentials I would need throughout the weekend and had a few people “on call” who volunteered to bring me anything else that came up. I also set a sleep schedule to make sure I got enough of it to function.
  3. I wasn’t going to compete.  I decided in advance that my goal was to learn as much as I can from my team members and participants.  The prizes weren’t important to me, but I did pay attention to the judging criteria any feedback I received from volunteers at the event.

With a plan of action prepared, I set off for the hackathon right after leaving work. Exhausted but excited, I came in and showed my registration ticket.  I was promptly greeted by several organizers with smiles and a swag bag full of goodies.  After brief, friendly small talk, I headed to the main conference area ready to get started.

To read what happened at the hackathon I attended, stay tuned to Part II of How to Survive Your First Hackathon