Last weekend, I worked alongside dozens of NYC women and girls at the AT&T Women in Tech Hackathon. Held at the Center for Social Innovation, this two-day hackathon challenged developers, designers, and other creators to build web and mobile applications for social good.
My team built ADIONA, a mobile application to help women and girls quickly send their location to trusted friends and family while they walk alone at night. The idea came from a Girls Who Code alumna who created a web version of the app this past summer. My team, four GWC alumna and four adult iOS developers, quickly joined together to discuss how to take the idea to the next level. We started by creating a Trello board and breaking down the app into small tasks for each teammate. We also created a Slack channel to quickly share information with each other as we worked.
The app consisted of three buttons on a main initial ViewController, one to send a text message to a friend or family member, one to call 911, and another to send a location to a dispatcher. A map using one of NYC OpenData‘s APIs allowed users to view past crimes in order to select a safe route home. The app uses CoreLocation, MapKit, MessageUI, a CocoaPod called JBButton and NSUserDefaults for emergency contact information.
After two days of coding and collaborating, my group presented ADIONA to the judges. We ended up winning Best App by a Mixed-age Team and tied for Audience Choice overall!
I came away from my first hackathon with a few takeaways.
Diverse Perspectives Are Advantageous
In working on a team with three adults and four girls from Girls Who Code, our ability to problem-solve was stretched in many directions. The four GWC alumna were working in Swift and Xcode for the first time, but having programmers with only web experience on our team allowed us to question what could be done with our mobile app without regard to what us mobile programmers already knew how to do. In other words, our diverse coding backgrounds allowed our team to think outside of the box.
Hackathons: a 48-hour Dose of Inspiration
Everyone I met at the Women in Tech Hackathon brought passion and a limitless dedication to learning, growing, and pushing boundaries in tech. I found inspiration in every corner with team projects ranging from retirement home accountability applications to mobile app vision testing to hotel service applications for LGBT travelers.
Did I mention the GWC alumna used Swift and XCode for the first time? There was never a question of whether they could do it. They simply asked “Ok, so what program do I download to code in Swift?” and then went on to research how to write Swift.
My adult teammates also took on tasks for the first time including CoreLocation, UI, and CoreTelephony.
Version Control during a Hackathon is a Special Type of Hell
By the end of the hackathon, at least one branch was 68 commits behind the master branch. We started out by sharing a single team repository on Github and hours into coding and pushing to Github, our merge conflicts became more and more complex, with some teammates on the master branch and others unable to see various files. The conflicts severely slowed us down as some of us waited to get the latest version in order to build on it. By the end of the first day, we had wasted a lot of time trying to reconcile the different versions we all had. By the end of Day 2, we had a single driver and started adding all of the additional files and code to a single computer.
In the future, I would take more time in the beginning of the project to devise a plan on how to tackle version control in a fast, time-crunched timeline.
The fifteen minutes leading up to pitches were rife with last-minute adjustments and fixes—it was by far my favorite part of the hackathon. We momentarily thought we could not show an entire Navigation Bar and consequently a key ViewController during the pitch due to a change in initial View Controllers. I quickly added a button to the NavBar and reset the initial View Controller to the main view again. As the first group got up to make their pitch, we huddled in the audience seats testing our app to make sure we could see each page. And we could! The final product was not a perfect app, but we were all proud of what we had accomplished in two days.
Do you have any thoughts on Hackathons? Been to any really great ones? Leave a comment — I would love to hear about it.