Baby’s First Hackathon

That time I participated in a hackathon 3 months after starting to code

Let’s make one thing clear, my dear blog family. I am new to all of this web development stuff, and have no idea what I’m doing.

This includes the classes I take online one day to the next, the events I attend, and what might seem like anything even remotely resembling a career path.

Nope. I’m just saying “yes” to everything, murmuring a prayer under my breath, and putting on a big smile while I march off into unfamiliar territory.

Granted, this has been working fairly well for me so far. In fact, I might even say that I’d advise other people to do the same. I mean, we have nothing to lose, and everything to gain… so why not?

A networking night full of industry professionals and jargon that is way over my head? Bring it on. A tutoring opportunity? Sure. I probably know more than my mentee, despite my self-deprecation. A… hackathon…? Uh… well… I think I have a thing that night.

Sigh. You know what? Fuck it. Yes. Let’s do it.

And so it was written. With less than 3 months of intense self-taught back-end programming experience under my belt, I participated in my first hackathon: the Puppet Labs and Nike We Code Women’s Hackathon in Portland, Oregon.

The opportunity came up one evening via one of my Meetup groups, Women Who Code, and I felt the familiar process of self-pressure. By this, I mean that nobody ever pressures me to do any of these things, besides myself. It’s up to me to keep on top of goings-on and sign myself up for this kind of thing.

What the hell is a hackathon?

I had no idea what a hackathon was, in retrospect, and it sounded a lot more intimidating than it ended up being. I envisioned individuals covering up their code, tongues out in intense concentration while pounding Mountain Dew and writing incredibly concise, clean, and functional code — also way different than the reality. Hackathons are most often a team sport. Learning to work in a group on large, challenging tasks is one of the best valuable skills an individual in software engineering can pick up, in addition to being highly valued by companies. I wasn’t going to be alone in this, and that made me feel a lot better.

I identified myself readily as a back-end web developer on the ChallengePost(used to track participants and their skillsets, as well as submit the final project), with primary skillz in PHP and databases.

Was this going to be needed? Maybe? I had no idea. And then… I waited. Actually, no. I forgot that I had signed up for it until the week before when I was in Miami, and then scrambled to see if anyone else was able to participate with me. I announced that I was doing it to pretty much my entire social network, so there was no backing out.

This is a really important thing to know before coming into your first hackathon: “hacking” involves presenting an idea alongside a working prototype. It is not expected that your prototype will do everything you set out to accomplish with your larger idea, but rather to offer a demonstration.

We had until 3:30 pm to produce what we decided would be a landing page, maybe a nice logo, and a working prototype of our messaging boards. Per regulations, we had exactly three minutes, timed to present our project and convince the judges that our project was worthwhile. Judging criteria was pretty straightforward:

  • Creativity and Innovation The project should meet the challenge in a unique way and solve a problem that is not being addressed by currently available software products. It should offer a fresh perspective and utilize data, content, or technology in a new way.
  • Benefits and Impact The product should demonstrate the potential to improve the lives of its target market, as well as the ability measure these results.
  • Consumer Experience — (design, ui, ux) The content and features provided by the product should be presented to your target audience in a way that is easy to use, approachable, and aesthetically pleasing.

Challenge #1: Actually going to the hackathon

Despite some game-day jitters, I made my way to Puppet Labs on Friday night, and was one of the first 20 or so participants to show up. Signing in was super-easy, and I got my participant swag bag: a sweet Nike t-shirt reading “CODE IS QUEEN” that became virtually unreadable once it was stretched over my ample bosom, and a water bottle reading “WE CODE” (with a female symbol as the “o”) on one side, and the Puppet labs logo on the other. So far, so good. If I got nothing more out of this experience, I had a water bottle and an article of clothing to add to my increasingly-depressing wardrobe.

Being an introvert, I immediately moved to the back wall to scope out my surroundings. I noticed that a table was set up for Nike and Puppet recruiting, so I checked them out first. Then I saw someone with beer, and immediately sought out the source.

Within 30 minutes, the room was full, and I was pushing myself to chat casually with anyone that made eye contact with me. Lots of first-timers, some veterans, and all ages represented. Opening ceremonies were pretty typical, then we got to the nitty-gritty.

Our challenge? “Build a creative website or mobile app that embraces, encourages, and inspires diversity using public API’s and open source technology.”

Now, the Puppet Labs offices are pretty huge. Regardless, we ended up in the first tiny conference room we could find, and my new team of 8 got situated. We started out with introductions and warmed up quickly, then jumped straight into brainstorming. We had 2 hours of planning time, and 6 hours of coding time the next day. What were we going to build?

Challenge #2: Identifying and planning your project

One of the best ways to approach this initial hurdle, as it turns out, is to draw from personal experience. We were all women in technology to some varying degree, and it was almost certain that we had seen some shit. That morning, I had experienced some frustration with the Men of The Internet on Stack Overflow, and had been continually seeing non-constructive commentary on my questions (like “don’t spoon-feed her!”) if someone perceived that I was being given the answer. I had posted my Gravatar image (the same one as on my blog) as a profile picture, and ended up taking it down because I simply wasn’t getting any valuable assistance.

This is a problem that is decidedly unique to women, and at the end of the day, it discourages us from asking the questions that help to make us as strong at web development technologies as our male counterparts. It’s been recognized as an issue on such sites, but the discussion naturally turns in a useless direction.

If members of the Stack Exchange community are recognizing that there is a problem with women “lurking” but being too turned off from participating in discussions, then why haven’t they done something about it?

The answer to this is complicated, and none of us could quite provide a complete answer. Something involving lack of motivation to solve the problem, because there are enough men out there to answer men’s questions… and the fact that men in an anonymous virtual environment just don’t exhibit the soft skills to welcome women into such spaces.

We decided to push forward with this idea, and after about an hour, had a whiteboard covered with various problems and potential solutions. Frustration with finding strong woman mentors in technology. Embarrassmentover what could be perceived as “stupid questions”. And a strong desire to change the state of affairs.

By 10:00 pm, the first night was over, and the only thing left do was write some code. Arguably, the hardest part of all. But at least we had a solid idea to roll with, and we’d figure the rest out.

Challenge #3: Building the thing

At 9:00 the following morning, after having woken up with a bit of a sinus infection going on (ugh), I shambled into the Puppet Labs offices in desperate pursuit of coffee. My team was already mostly assembled in our space, and as I expected, there was a lot of thinking going on the night before in regards to our project. Within 15 minutes, the whiteboard was filled up again with mock-ups of how our site would look and function. There was some re-organization of features and priorities, and even that was ambitious.

Despite being a more skilled back-end programmer, I again broke out of my comfort zone and volunteered for front-end work (HTML/CSS), helping to design the landing and question feed pages. We moved out into the open space and began our work — first separately, then together. A name was chosen: “Ask a Code Queen“. Our more design-based teammate produced an awesome logo. Commits were made frequently to the GitHub repository, helping us to keep our code unified.

By around 2 PM, we had most of the framework together, and I began working on the presentation in Google Slides. Our back-end team was using some pre-fab Node.js graciously provided by Nike to get our Q&A capabilities up and running. It was starting to look like an actual website at this point. Before I go into my next hackathon, I’ll definitely be brushing up on my CSS, as this was hands-down the most frustrating part of the entire ordeal for me. I’ve always been outspoken regarding my personal dislike of CSS and design, but when it’s what your team needs… you do it with a smile, damn it.

A few minutes before our 3:30 deadline, the project was submitted. As it turns out, this is the most important part of the whole ordeal: actually submitting something. With that action comes a great sense of relief and accomplishment, but we weren’t done yet.

Challenge #4: Presenting the project

Being team #13, we were the last team to present. I was incredibly impressed with the work all of the other teams put forth, and personally voted for another project as People’s Choice. One of the judges had a laptop screen pointed toward us with a timer counting down from 3 minutes, and off we went. What problems were we looking to solve? How did we aim to solve them? A quick demo of our project, and ding, it was over. Just like that. All of that work for 3 minutes of presentation time.

The judges went off to deliberate, and about 45 minutes passed. At this point, we were all feeling much more relaxed and I was happy with myself for actually completing a hackathon.

And then something crazy happened…

The winner is us.

Well… we won first place!

(Technically, we won first place AND the People’s Choice, but we couldn’t take both.)

We were all incredibly surprised! What this probably means is that judging from the nodding in agreement we saw in the audience, there were an awful lot of women out there who had experienced this unfortunate bias when working in coding forums. A mixed blessing, indeed.

This experience ended up being so invaluable for me. First off, I actually set my mind to doing something that I was initially very uncomfortable with, and came out the other side intact. Coding may kill me one of these days, but at least I know that a hackathon won’t.

Overall, my teammates and I had developed an excellent rapport, communicated well, and had a lot of fun while we were at it. I strongly believe that I’ll be in contact with these Code Queens in the future, and perhaps we’ll even collaborate on some projects!

And what’s next for Ask a Code Queen? My co-participants on the Twitters have been asking if this is going to be a live project. I’d certainly love to see that happen. What do you think? Leave me a comment with your thoughts, or hit me up on Twitter at @lavie_encode!

LaunchPad Scavenger Hunt

HOW TO PLAY

Rockets are scattered across the website, waiting for you to find them! Each rocket grants 20 coins. 

When you find one, click it to receive your reward! Rockets reset every day.

ROCKETS DISAPPEAR IN

Days
Hours
Minutes
Seconds

[gamipress_leaderboard_user_position id=”69390″ current_user=”yes” text=”You are in position {position}!” not_ranked_text=”You’re not yet ranked—go find some rockets!“]

[gamipress_leaderboard title="" id="69390" hide_admins="yes"]

Just one more step to download I Want to Learn to Code—Now What!

Total transparency: You’ll get your guide, and also be subscribed to my dope weekly newsletter, Life in Code.

You can always unsubscribe (but I don’t think you’ll want to). :)

Just one more step to download 10 Things You Need to Learn BEFORE Learning to Code!

Total transparency: You’ll get your guide, and also be subscribed to my dope weekly newsletter, Life in Code.

You can always unsubscribe (but I don’t think you’ll want to). :)

Just one more step to download 5 Steps to Solving Code Challenges!

Total transparency: You’ll get your guide, and also be subscribed to my dope weekly newsletter, Life in Code.

You can always unsubscribe (but I don’t think you’ll want to). :)