On March 15th our office was unlike a regular office on a regular Friday. Instead of going home after a week of hard work on software development, plenty of us stayed and worked even more. All because of a hackathon, during which we created new features of Chamberlain - Merixstudio proprietary system for booking conference rooms in our software house’s office in Poznan.
To tell a full story of our hackathon we need to go back in time to 2017, the year when we packed our bags and moved from Wilda to Zawady. Since our new office was much bigger and contained 8 new conference rooms, we needed a system for room booking.
Chamberlain - tailor-made solution for modern office
After thorough research, we found out that unfortunately there was nothing that suited our expectations. But then it struck us - why look for something that might respond to some of our needs when we can create a system that will respond to all of them! With that in mind, we organized a hackathon, during which we've created Chamberlain. Not only we could make something tailor-made for our software house, but we also could create a little party out of it!
Chamberlain is an IoT-based system that allows us to book specific conference rooms via Google Calendar or by using Raspberry Pi B touch screens located at the entrance of each room. You can read more about our project and details of frontend and backend tech stack in Radek's article.
The second hackathon - development of new features
It's no surprise that with time came progress, which brought the need for adding new features. Also, since this summer we will have an additional 850 square meters of new office space (which includes many new conference rooms), we found out that upgrading our solution is more than welcome. And is there a better way of doing so than during an internal hackathon?
To ensure that the time spent working on Chamberlain was not wasted, we divided ourselves into 6 teams:
Wanting the final product to answer the needs of everyone, we composed those groups to consist not only of software developers and QA specialists but also representatives of each department at our software house. We started the process by getting together and brainstorming - which features we want to implement, what needs upgrading, which solutions will respond best to our needs.
Our work during this stage was based on our own experiences of using Chamberlain and on the feedback received from the whole office. In the week preceding the hackathon, everyone was able to thoroughly think the matter and write down their ideas on what needs to be changed/implemented.
With these ideas neatly written on the whiteboard, everyone voted and chose the ones they deemed most necessary. We not only knew what should be done in the first place but also had a list of things we can implement during future hackathons. Then came time to get into work and work out how to transform our ideas into a finished product.
In the second part - we focused on making our ideas come to life. To do so, we worked with tech-stack containing:
What exactly did we improve in Chamberlain?
Adding a button ending the meeting
The first team worked on the issue of ending the meeting earlier than anticipated (and therefore making the booking shorter). With that, we could avoid having falsely occupied rooms and ensure that the view in our calendar is factually correct. The solution to this problem couldn’t be simpler - all we needed to do was to add the proper button on the touch-screens located near each room.
Changing the method of starting a meeting
The second issue we wanted to fix at the hackathon was the User Experience of starting the meeting via touch-screens. Up until now, to do so you needed to check the box displayed next to your meeting in the calendar. If omitted, the meeting was deleted from the calendar 15 minutes its start time, which ensured that everyone in the office could see the factual state of booked rooms. To make the matter easier, we decided to use the cards everyone has for entering the office. After all, swiping a card is easier than checking the box. The dedicated group worked hard in the solution and plans to finish their work during the second part of the hackathon. Can’t wait!
Simplifying the way of displaying the room’s status
As you know, our office is not as small as it used to be a couple of years ago. To simplify the process of searching for the room when you want to have an unplanned meeting, our LED team worked on the system that will display different colors of the diode when the room is occupied, free, soon-to-be free, or soon-to-be occupied. With it, if you have an impromptu meeting all you need to do when looking for a room is to take a quick glance around the office space.
Implementing the booking features in Slack
A group that I worked at focused on Slackbot - we wanted to implement a variety of custom commands that will help everyone to book a room. After all, Slack is one of the most popular tools in our office and using its different bots is like a second language for everyone at Merixstudio!
After familiarizing ourselves with the implementation, we brainstormed how to make the commands as simple yet effective as possible. Among others, we worked out the way to book a room and invite coworkers for the meeting via Slack, which we want to implement soon.
Developing a system for touch-screens management
The last thing we focused on was monitoring the state of touch-screens. While our ultimate goal is to develop a Django management system, during the hackathon one team worked on creating a way of alerting us when some device encounters an error.
A team-building reason behind the hackathon
Even when everyone at our software house loves what they do, staying after work on Friday could be a demanding task. Luckily, we also really like each other, so spending time together and coming up with solutions that will make our lives at the office easier was an easy choice.
While working, we were chatting, having a laugh, drinking beer, eating pizza - sound more like a party than work, right? Well, that’s because we pride ourselves with our ability to create a great atmosphere and want to include an element of fun in everything we do. With that, we’re sure that the second part of our hackathon, when we will work on some finishing touches of the solutions we introduced, will gather even more people. And we even have a proof of that - a photo album on Facebook filled with photos from this both productive and fun evening! Now it’s only one thing left to say - to be continued!