Opportunities for intensive collaboration
programmers take part in a big data tutorial at the hackathon

Fall Codefest Draws a Crowd

Tuesday, December 1, 2015

On November 12 and 13, staff members from nearly every division of the Computation Directorate turned out for the fall hackathon, held at the High Performance Computing Innovation Center on the Livermore Valley Open Campus. The event’s organizers, Esteban Pauli and Thomas Stitt, noted that the latest session of this triannual codefest was among the best-attended non-summer hackathons, drawing about 70 participants; summer sessions generally draw the biggest crowds thanks to student attendees.

Hackathons, intensive one- or multiday events in which teams of programmers race to complete projects of their choice, have become ubiquitous in the software development industry and at universities, where they often serve as corporate recruiting events. Part of what makes Livermore’s event special is its atmosphere of collaboration and inclusiveness, rather than competition, something newbies and hackathon veterans alike appreciate. Steven Magaña-Zook, a first-time participant, observes, “My impression of hackathons was that it was a young(er) person’s game. In the past, I had always pictured people staying onsite all 24 hours, which did not appeal to me as much as getting home to my wife and two daughters.” Experienced hackathoners assured him that staying all night was definitely not a requirement, and rather than feeling out of place at the event, he found his experience was valued.

Steven used the hackathon as a venue to teach a well-received introductory class on big data tools, attended by more than 30 people, that used a data set from the Environmental Restoration Department. Notes Robin Goldstone, “Steven’s hackathon project provided a great opportunity to expose new users to Hadoop and Spark and empower them to begin exploring how they can apply these tools to problems in their mission spaces.” Adds Steven, “Partnering with the Hackathon was a good opportunity to refine the course materials, garner feedback, and hopefully add to the growing body of personnel at the Lab with experience in the emerging field of big data.”

Not only do hackathons offer computer scientists an opportunity to learn or practice a new skill or to explore an idea they might not otherwise have time to develop, they also provide a chance to connect with colleagues with similar interests and ideas. Collaboration helped motivate Adam Moody and Chunhua (“Leo”) Liao’s “Talk to Hack” project. Adam, a hackathon regular, says, “I don’t get to work with Leo much on a day-to-day basis, because we don’t have any common assignments or meetings. The hackathon was a perfect way for both of us to set aside time and sit down in the same room to focus on this idea.” Their project—one of some two dozen at the hackathon—aimed to exploit recent improvements in speech recognition and natural language processing to create a prototype “code assistant” that would allow a source code editor to turn natural language into coding. Notes Adam, “In my experience, I often reuse the same or similar patterns over and over again in my projects. It’s tedious and error prone to retype this code all of the time, but the segments are too small to bother adding to a software library.” A code assistant tool, they observed, would provide significant time savings.

Some of the ideas explored at the hackathon will be retooled or further explored at future hackathons. Others will likely be embraced by Computation, and after more development, used by staff as part of their daily work. And a few may be put to rest now that the event is over. But as Adam observes, “Even the projects that don’t live past the hackathon are fun. I find I always learn a lot at hackathons and build stronger relationships with people.” Steven adds, “Hackathons are a terrific venue to bring together people from across the Lab who may have never met one another, but who foster the same interests. Everyone should come away from the hackathon with new skills and connections that will enhance their programmatic missions, strengthen the Lab as a whole, and hopefully expand opportunities into new areas for the next group of summer interns to pursue.”