I attended my first hackathon a few weeks ago.* It was organized by the Atlanta, Tampa and Greenville networks of Women Who Code, a nonprofit focused on helping women advance their careers in the software and tech industries.
It was awesome. For the first time, I wasn’t terrified of not knowing something, of being found inadequate, or of not being able to contribute to a team. As a mid-life career changer, I’m still a relative noob when it comes to programming. The Women Who Code hackathon organizers did several things to help myself (and many others!) get past our fears and do good work at our first hackathon.
- They organized a pre-hackathon orientation session Friday afternoon, in which they ran through what to expect, team roles and how our final products and pitches would be scored. Knowing what to expect helped me settle in and focus on how I could help my team and not worry about hitting ill-defined performance targets.
- They had mentors (subject matter and programming language experts) available throughout the hackathon, to help teams get past knowledge sticking points.
- Food – we were NOT going to starve. There was lots of non-carb food, coffee, and caffeine, all necessary for sustained work.
- Finally, everyone presented. Didn’t matter how big or small the final application was – you talked about it.
So – what was it like?
I had attended my first open data hackathon in Mississauga, ON, the previous May. I wasn’t terribly useful to my team at that session, as
- I didn’t know what to expect; and
- my coding skills weren’t sufficient for the team project that our lead programmers brought to the hack.
I ended that hackathon glad that I went, but firmly resolving not to go to another until I had done more hands-on programming. (this has been an issue due to other commitments.)
I left Birmingham, Alabama to drive into Atlanta at oh-dark-thirty, arriving just in time for opening announcements. I slipped into the back of a meeting room at the Tech Square Labs, where around forty women were listening to opening remarks from Joey Rosenberg, Alaina Percival, and Regina, Wallace Jones, Facebook’s Head of Security Operations. She told us that software engineers are storytellers, that is was important to have mentors as we developed our careers and the importance of networks. It was inspiring to have her there.
As I looked around the room, I saw young women, older women, women of color and transgender women. There were also a few men. (I learned later that most were there as recruiters and company representatives; one was presenting a pre-hackathon talk on wearables and the Internet of Things.) (talk slides are behind links).
After the opening talk, we had the choice of workshops; I attended Lance Gleason’s presentation on the Internet of Things. Although I’ve been messing around with using Arduinos as controllers, I ultimately elected to join a team focusing on social issues. (I thought that any applications developed could potentially have more societal impact – and to me, that’s important.)
How hackathons work
Next was a walk through what to expect at a hackathon, by Erica Stanley.
Some of the things I learned:
- At most hackathons, you have 54 hours over an extended weekend to organize, research, plan, code and deliver a prototype application.
- A hackathon team should be 5 – 7 people and consist of:
1 x product manager
3 – 5 devs
1 x designer
1 x scrum master (optional, but nice to have)
- We then started to sort ourselves into interest groups, discuss possible projects and form teams.
We then broke off for food, drinks, and visits with various sponsoring companies and recruiters, before heading down the street and around the corner to the Advanced Technology Development Center where we would be working over the weekend. Additional (more experienced) attendees joined our teams. The conference and meeting rooms, which gave the teams room to spread out, talk, focus and work, without interfering with the other groups.
My team, lead by Hannah Molette, wanted to develop a mobile app to help teens develop and connect with their “squad”, the team they assemble for themselves to help them reach for and attain their goals. The app, TeenSquad, is designed to help connect teens with supportive friends (their squad), any needed social services, career counseling, job coaching and help applying for college and post-secondary programs. While the goals are serious, the feel is not, using gamification to add incentive to do the right things, and having a light touch while doing serious stuff.
Our team members were:
Hannah, an experienced project manager, had a clear vision of what she wanted in the app, and kept us on track regarding how we spent our time.
We quickly determined that some of the things we would need for the app already existed (Aunt Bertha – a social services connection website and application), but weren’t targeted specifically for teens. We used Pokemon Go as our sample target for gamification rewards. We also determined that the programming language that most of the team had in common was Java.
The tools we used were:
- InVision – a mobile development prototyping tool
- Photoshop – for logo development and some image retouching (Gimp is a good tool too)
- Google Fonts
- Heroku – web server for hosting our databases and code
- Sublime – programming tool
- Eclipse – programming IDE (integrated development environment)
- Excel – Initial use case test data development
- Powerpoint – for our presentation on our app
We didn’t complete our app in the time allocated over the weekend, but we got most of the planning done, initial databases and had a first pass at the coding required to run the app.
A’nita did some amazing work regarding the look and feel for the app – she’s worked on a few projects that are getting national attention.
Having mentors available was extremely useful – it allowed us to get past two specific sticking points regarding running Java on a Heroku server instance.
See our presentation here, and the Women Who Code press release over here. It was a lot of fun, I learned a lot about how teams work, and after much discussion during the work, have a better idea of what to expect within the software development workplace. I made some important connections, have an invitation to job shadow, and got a couple of callbacks from recruiters. I would do it again in a heartbeat.