Hackathon 2022 @ MOIA
by Laine Bluma, Yannick Block, Mathias Düsterhöft, Max Opperman, Fred, Christian Stangier, and Romina Nikolova
How we organize a hackathon at MOIA
Like many other companies, we have learned how to work and run different events remotely at MOIA. Now the new challenge is to create the best hybrid work experience as possible! At MOIA, we believe that everyone knows best if working from the office or from home fits them more, depending on the work they will do on that day. Therefore, we also followed this approach for the Hackathon.
In 2020, we held our first fully remote Hackathon, which was quite a challenge from an organizational point of view. We tried to address all the concerns and create an experience that would be as engaging and rewarding as a real-life experience. We started with a formation phase, where we collected topics, formed the teams, had coffee chats and This was the year when we got our Hackathon logo, thanks to our design team for that. 🥳 From our point of view, the fully-remote Hackathon was a great success.
In 2021 we took a different approach and decided to announce the ideas and form the teams on the first day of the Hackathon to let the magic happen right on the spot! We introduced lightening talks as a new evening activity, where our colleagues gave 10 min talks about topics of their interest. That was so much fun! 🤩
From our experience, bigger teams tend to get their projects the furthest to completion. To spice up the competition, and appreciate diversity of projects, we introduced 4 bonus categories: most likely to end up in production, the best pitch/presentation, the most cross-functional/diverse team and “You can’t see it but you can feel it”.
On to 2022
With our learnings from the past years, we announced the date of this year’s Hackathon two months upfront so that everyone can plan their time accordingly. We shared the idea backlog from last years for inspiration and asked everyone to pitch their idea a week before the event. Right after the pitch, we started the team formation as one important criterion was that teams have a chance to meet in person. One team met in one of our hubs, another team met in the Hamburg office, other teams met in hybrid, part remote, part on-site setups. Besides the hacking itself, the most appreciated additions from last years were the bonus trophy system and the lightening talks. To keep these additions in place and still give everyone enough time to work on their projects, we kept the two-day schedule clean and crisp.
We introduced even more inclusive categories for the trophy system. One addition was that the trophy system made up 50% of final score, to make it less of a “popularity contest”. It was important to keep the competitiveness and give everyone a chance to win, nevertheless of the team size or how “tangible” the outcome is. Some examples of the objectives we introduced: someone does their first ever git commit, there are team members who haven’t worked together before, do a team activity after the first day of hacking, and many more. This year we skipped the lightening talks, but it is something we do not want to forget about, as it is a fantastic way to close the day and get to know your colleagues!
Let’s wrap up the theory about Hackathons at MOIA and take a closer look at some of this year’s projects to spark your creativity! 🤩
Blinkenlights
Like most “modern” vehicles, you can also let our MOIA vehicles flash (or “blink”) to easily find them in the dark (especially important since they all look the same). The idea of this project was to let them flash in a coordinated way to make it look like an animation.
Each vehicle has a built-in telematic box and can be communicated with via an API, so in our case you need to send the API a “flash” command and ID of the telematic box. We noted down the order in which the vehicles were parked, found out their telematic box IDs and then wrote a little command line tool in TypeScript, that would make a flash command call for each vehicle in the row with a slight delay and then make the same calls in reverse order. We wanted the animation to look like the one from KITT from the infamous 80s television series “Knight Rider”. Judge for yourself:
Conclusion
Some things we didn’t consider sufficiently before were that the vehicles don’t flash once but several times (which makes the animation less smooth) and that you almost can’t see the flashing during daylight, so we had to come back at night with a drone (kudos to our colleague Guus) to film it.
What was really nice was that the participants were all from different teams and had various technical backgrounds, so we could all learn something new. TypeScript was a language we all considered easy enough to use even without any prior experience and that turned out to be exactly the case.
Air Quality
The Awesome Office Air Quality Initiative (AOAQI) attracted a lot of minds in the team forming phase. The idea was to build a complete air quality monitoring system for our MOIA office meeting rooms. We wanted to monitor CO2 levels in the air and notify our colleges to open the windows when thresholds are reached.
Backend and Android developers, DevOps and data engineers wanted to participate and unite efforts to create this system — from setting up the hardware, through shipping the data from the sensors to the cloud, to visualizing it and communicating it to our colleagues. We were all motivated to work on this idea that was not only fun to realize but also has the potential to be beneficial to our colleagues’ health and well-being during their time in the office. On the first day we started with setting up the sensors. First, that required us to roll up our sleeves and solder the pins to the sensors. That was the first soldering experience for some members (fortunately it’s a reversible process 😅). With a steady hand and some practicing, we ended up with three Sensirion SCD30 sensors that measure temperature, humidity and CO2. Next up, we split into three sub-teams: two teams setting up one sensor each, securing a stable connection and ensuring they generate reasonable air quality data. The third team tackled the creation of the AWS resources that would consume the data, and of the Grafana dashboard that visualized the values. As we only had a day and a half to complete everything, this strategy allowed us to focus on working through the challenges in parallel. At the same time, we were also collaborating and exchanging ideas and suggestions.
Naturally, in a project with so many different components that need to be embedded together und time pressure, plenty of challenges will arise and will have to be resolved with some workarounds. For example, when the WiFi firewalls prevented one of the sensors from reaching the MQTT broker, one of our team members provided a quick working solution with a hotspot from his phone.
Despite the challenges and the time pressure, there is always time for some coffee and fun. Adding some hidden easter eggs of a MOIA Pluto vehicle and a grumpy cat displayed between the sensor measurements was time well spent. Additionally, we had a colleague who surprised us with a beautiful magic light show to inspire us. The light show was powered by an electromagnetic field using some of the remaining breadboards and microcontrollers that were lying around.
At the final hackathon presentation, we showed a demo Grafana dashboard, containing the two measurements for CO2 and temperature in the two meeting room locations. Since at MOIA we communicate via Slack, we also integrated a Slack notification, in case of too high CO2 levels. Based on this alert, one would know when to open a window and let in some fresh air.
Build a Pluto
Since we launched our product in Hamburg, we grow up a fan base of younger customers, which love our Pluto vehicle a lot. Every now and then, we even get customer requests for a toy-version of a Pluto. So far, there was only one mini version of our vehicle, which was driving around in the Miniatur Wunderland. During this HHackathon, we decided to build a model out of Lego®, so everyone could be able to build their own toy-version of the Pluto at home.
Of course, we didn’t have all the required blocks at home. We designed the Pluto with software called Studio 2.0, which is a tool to build, render and create instructions for Lego®. This tool also allows multiple people to work on one model in parallel. Our team consisted of five people with completely different jobs at MOIA, but as you know: There are no boundaries when building Lego®.
As blueprint we used photos from different angels and tried to keep every single detail scaled down into a small version of the vehicle: From wheelbase length to height, to lights and lines. It was clear to us that the size of the toy Pluto should allow minifigures to have a place to sit in there.
At the end of the Hackathon, we had a basic model. Sadly, we ran out of time because we underestimated the amount of detail that goes into one of these models. While the outside of our model may look complete, the interior is rather minimal.
BUT! We’re continuing the build in our free time and want to bring this project to life. Keep your eyes open 😊.
These were just a few of amazing projects we had this year. Just imagine how exciting two hours of final presentation are where you can see everything coming together and all the organizational effort paying off. 💚
It feels like we found a format which fits us the most at this moment, but we are always looking for the ways to improve and adapt. Even though we encourage people to meet more in person and build the relationships, we want to be inclusive and create great experience for both offices and the ones who are working from home on that day. We are looking into this not only from organisational side but also from technical set-up.
In summary, at Hackathons at MOIA we celebrate diversity, try to create an inclusive environment for anyone and learn from our experiences, as it is part of our day-to-day culture at MOIA! ☀️