All hackathons at Lawrence Livermore have common elements—energized conversations; tangled laptop cords; plenty of food, horseplay, and hijinks—but each occasion is still unique. These triannual events pack a variety of projects and new ideas into a 24-hour period. The spring hackathon was sponsored by Computation’s National Ignition Facility (NIF) Computing and Enterprise Applications Services divisions. Organizers included Linda Becker, Dianne Calloway, Luis Cuellar, Chantal Fry, Vinod Gopalan, Jill Souza, and Nancy Spafford.
The 2018 spring hackathon featured individual and team efforts in topics from quantum computing and machine learning to differential equations and cyber security. One group created a log file analysis tool from scratch, while another spent their hackathon time working through an Angular 2 online tutorial.
Twenty-four hours is just enough time to whet the appetite for a new endeavor. This was computer scientist Josh Senecal’s fourth consecutive hackathon teaching himself Swift, a programming language. This time, he began making simple applications with Swift 4.1. “Swift itself isn’t too challenging—same concepts, different language. However, it takes some work to develop an app. You have to comprehend how it all fits together,” he explains.
Senecal sees potential for using Swift-based mobile apps in his work with NIF Computing. But if not, that’s fine. He notes, “Mobile development is a useful skill in many other areas of the Lab.”
Figure 1. Robert Blake (left) discusses National Ignition Facility (NIF) targets with Josh Senecal, whose job with NIF Computing includes target analysis. One of Blake’s projects—born at a previous hackathon—uses machine learning to inspect NIF targets. (Photo by Randy Wong.)
Ideas for Real Life
For some developers, hackathon participation can lead to funded projects. At the kickoff, software engineer Robert Blake described how his project with computer scientists Shiv Sundram and Yuriy Ayzman has matured. A year ago, the trio began working on a program that uses machine learning to automatically label segmentation features of cardiac magnetic resonance imaging results. Blake says the program “worked better than expected” when processing nearly 8,000 images, so the team pitched a larger build to Livermore’s Idea Days committee.
Since then, Blake’s team secured additional funding from the Advanced Simulation and Computing program’s neuromorphic computing project. They are now applying their technology to help select NIF target capsules for inertial confinement fusion experiments and have begun working with General Atomics on another project.
Computer scientist Spafford believes other teams will be inspired by this success, noting, “Their hackathon project grew up to be a real-life project.” She joined a team that combined their skills in iOS development (Kevin Griffin), database administration (Spafford), and Angular and Java programming (Yousseff Abed) with subject matter expertise in the Laboratory’s emergency drill procedures (Sylwia Hamilton and Becker).
The multidisciplinary group produced a mobile app prototype that enables personnel to check in during site-wide emergency drills. The app allows staff to provide critical roll-call information—such as location and any injuries or damage—that helps emergency teams respond effectively. “We hope to participate in the upcoming Idea Days symposium to refine the requirements and improve the functionality of the app,” states Spafford.
Figure 2. A hackathon team settles in for the 24-hour session. (Photo by Randy Wong.)
A hackathon would not be complete without Gary Laguna’s team from Computation’s Applications, Simulations, and Quality division. These developers support the Environmental Restoration Department (ERD), which manages environmental technologies for the Laboratory and the Department of Energy.
According to Laguna, hackathons are crucial for team dynamics. “At the hackathons, we usually find a spot where the entire team can be together,” he says. “We can intermittently converse while we work, providing more insightful understanding of each person on the team.”
These omnipresent hackers have brought nearly 40 projects to hackathons in recent years. Remarkably, 23 of these projects have influenced production code for ERD’s technology solutions. For instance, after exploring Kendo user interface components and the Django web framework at hackathons, the team built them into the ERD software stack.
After a hackathon, Laguna’s team discusses what worked and what didn’t. “Many successful projects are inserted into current activities or plans for future development,” he explains. “Some of our unsuccessful projects have saved us from expending considerable effort on features that were unsuitable or unattainable.”
Figure 3. Rachael Lemos (left) and Devon Bates collaborate on a project for the Environmental Restoration Department. (Photo by Randy Wong.)
The summer hackathon is right around the corner. Senecal plans to continue tinkering with Swift. “I can make steady progress toward my goal at each hackathon,” he says.
As a four-time participant, Blake appreciates the event’s flexibility. He states, “A hackathon costs a day of productivity and is just long enough to see if a project has merit. If the project fails, then it fails early.” He has explored something new at each hackathon and, at the next one, plans to experiment with demos—tiny multimedia programs compressed to use very little memory.
Laguna is eager to add summer interns to the ERD team, stating, “Interns add tremendous energy and technical diversity to the hackathons, and this rubs off on everyone who participates. We believe the hackathons are one factor that causes many interns to return to the Lab as full-time employees.”