Our 2018 Internal Hackathon: Things Built and Problems Solved
Just like last year, the team behind Semaphore took 2 days off from our usual jobs and went on to work on the things that excite us, but are not part of our day-to-day work. Read on to find out about the things we've built and problems solved over these two days.
When the Fruit Hangs Low
Team members: Igor, Nemanja, Marko, Milan
Half a dozen engineers huddled together and decided to work on a bunch of smaller tasks. These were feature requests that looked like they could be completed within the Hackathon limits.
Many a fruit has been picked: a new Semaphore CLI tool in the SSH session, a prototype for custom Slack build notifications, and a prototype for shields.io build badges.
Possibly the most interesting thing that this team worked on was experimentation with running Test Boosters, our tool that can automatically parallelize Rails CI builds, on Docker-based projects. The team managed to successfully split an RSpec test suite into 30 parallel jobs, where each test run was executed in a Docker container.
As a team member says, “We wanted to […] bring as much happiness to our users as possible.”
Semaphore and Open Source
Team members: Milana, Nikola, Petar, Anton
Open source is something the entire Semaphore team supports and loves — that’s why we offer free plans for open source projects, and why Semaphore itself works on quite a few of them. The engineers and designers in this team wanted to improve how Semaphore’s open source projects are presented to the world.
While there were no major obstacles to achieving this goal, learning how to create a simple Vue.js application and overcoming its single file components proved to be an interesting challenge for the engineers.
For this team, Hackathon 2018 brought an ”opportunity to work on something we are passionate about, while learning a thing or outside of our daily tasks.”
The two days ended with success — the team managed to deploy the first version of the Semaphore’s open source projects website!
Make Semaphore User Onboarding Friendlier
Team members: Marija, Sonja, Ivana, Petar, Aleksandra, Dunja
Completely devoid of engineers, the team consisting of Customer Success and Marketing was a bit stumped during the first day of the Hackathon, but we didn't let that stop us. To start with, we knew that we wanted to make the onboarding experience for new users friendlier. After pacing the room, going back and forth, and thinking deeply about what we could do in a relatively short time, the team came up with a plan of updating the Semaphore docs and our trial onboarding emails.
The ultimate goals were to make a guide for new Semaphore users, spruce the docs up a bit, and also to cut back on the number and ramp up the usefulness of the emails our new users receive in the week or so after signing up (we’re not big fans of receiving unnecessary emails either).
On the second day, we managed to hijack one of our designers and come up with an in-app notification to help new users get to a green build faster.
Tables, and charts, and graphs
Team members: Milica, Ervin
This two-engingeer team focused on beautifying Semaphore’s data — more precisely, they decided it would be useful to have a visual representation of raw data in just a couple of clicks. For this, they used Elasticsearch Logman and Kibana.
This will be useful for Semaphore’s internal use, as well as for future blog posts like the one featuring the most popular open source language versions used in commercial projects in 2017.
Semaphore All Over the Place
Team members: Katarina, Andreea, Tamara
An HR manager, an analytics specialist and a graphic designer walk into a bar — well, not a bar, not really (it was more of a Zoom meeting). They teamed up to figure out where the Semaphore team could spend a few days working from afar and make a 2017 Year in Review infographic.
We had some fun in Mokrin house, where we spent 2 days working far, far away from our offices — so why not do it again? We plan to have these working-away outings yearly, and February proved to be a great month to scout for locations.
The infographic was a fun way to see what 2017 meant for Semaphore. We included many highs and accomplishments — some of them are mentoring five RailsGirls workshops, launching Boosters, and joining the GitHub Marketplace.
What this team loved most about this hackathon was the spontaneity of it: “We haven’t really planned any ideas much in advance. In the end, we just wanted to do something that can be useful for all of us.”
Semaphore + Helm
Team members: Predrag, Damjan
It’s no secret that Kubernetes is great — we’ve been using it for a while. So, the team was very curious to try out Helm. The two engineers in this team wanted to see if Semaphore could use Helm for deploying Semaphore environments.
The 48 hours of work included assessing Helm, identifying workflows, creating charts for deployment (both for individual services, and in a referent environment), using two different deployment strategies, eating cake, figuring out if the bean bag is comfortable enough to work from, and other highly demanding tasks.
The team was satisfied: “We engaged in something interesting and new for which we would never find time in our regular schedule.”
Many a pizza was devoured, and many a bucket of coffee drunk. In the end, we managed to do some work that made us happy. For us, it was the fun of doing exactly what we wanted to do, without stand ups, meetings, and other day-to-day tasks. For our users, we can now (or pretty soon) present some new and improved Semaphore tidbits.
What was the last hackathon you took part in, and what did you make? Feel free to share your stories in the comments below.