Hackathon - superfast software writing and instant engagement.
Besides personal development, team building and having fun with the cause, we also achieved tangible results.
Voice, websockets & API links + unburdening & support.
Last Friday, we all organised our first real hackathon, a neologism of 'hacking' and 'marathon', of this year. During such a hack marathon, people work on software in groups under extreme time pressure for a particular purpose or theme.
At 8am then, we all stood, some fresher than others, waiting curiously for the day's themes and assignments. Once divided into three groups, we were briefed on the purpose of the day and put to work.
The themes of our hackathon were; 'Voice, web sockets & API links and decongestion & support.'
These themes, realised in 3 specific assignments, are linked to bottlenecks and business areas where there is still much to be gained to make things easier for our customers.
In this way, hopefully by the end of the hackathon, we will not only have learnt, toiled, laughed and coded - but we will also have devised and built concrete solutions for our collective growth and flourishing.
Three balanced teams, of all abilities.
We put the 'Cube' into three evenly matched teams, equipped with all specialisms, then challenged them to complete a task. All for a best trophy, the coveted bicycle pump.
Each multidisciplinary team was then given a specific assignment for a product, and then from 8.30 to 5 they went all out to demonstrate this product as completely as possible. At the end of the day, all results, experiences gained and solutions found were shared with the company through presentations.
The first round of coffee was through, the assignments handed out and Job gave the starting signal.
'All this, of course, has to be done with good design, smart technology, and of course - teamwork!'
Team #1 - build an internal dashboard for Cube.
The first team had 8 hours to build a dashboard that will display real-time useful information for project managers and colleagues on a widescreen, on-the-job screen.
So to do this, the piece of software needs to connect to our timesheet (Harvest), our internal chat programme (Discord) and retrieve information from other services (Pingdom & Forecast) we use.
Goals for the day:
Show real-time data using web sockets or streaming.
Harvest timer and hours on a daily basis show per employee.
Use thePingdom API to make failures visible.
Discord notifications that match a certain profile.
Show progress of projects.
See who is in the Cube building.
Team #2 - build an environment where customers can create support issues.
The second team was tasked with building a portal in one day where Cube's customers can log in, and then easily raise project-related issues.
For instance, our customers should be able to easily and quickly report bugs, submit RFCs (Request For Change) or request hotfixes. The portal should look neat and tidy, and use existing Gitlab functionalities as much as possible. To fit in well with our current working methods.
Goals for the day:
Customer must be able to log issuesIssue intake with fixed setup of fields (bug, RFC, user request)
Preferring to take workflows into account
Customer must be able to send labels along to Gitlab
Customer must be able to view issue overview
Admin environment where accounts must be created and linked to Gitlab repositories
Customer must be able to log in (with associated procedures)
Speech-controlled issue input using Google Speech
Customer must be able to log in (with associated procedures)
Speech-controlled issue input using Google Speech
Issue intake with a fixed structure (bug, RFC, user request).using Google Speech
.
Team #3 - build a voice-activated app that can create Gitlab issues
The third team was put to work with today's most challenging question. Namely, developing a mobile application, which using Android's Speech Assistant and iOS' SiriKit, can send voice-controlled tickets to Gitlab.
One of the reasons this was quite a challenge is the fact that it had to be developed in Google's Flutter framework, which was unknown to us.
Goals for the day:
Developing voice-controlled app
Creating issues using voice commands
Be able to labelssues using voice commands
Work hard, play hard + code even harder.
If hefty focus is expected for a day, you undoubtedly need to arouse relaxation too. Otherwise, at the end of the day, you'll have a bunch of sour faces and nothing to hack!
During the deluxe lunch, with brutal sandwiches, a veritable pirate ship was blown up in no time. Teams could earn a few extra points by traversing this assault course as many times as possible.
After all, we do need physical relaxation after spending a morning taking care of our screens.
Team 2 got away with the win.
The first hackathon in the new premises is a fact, and so is its winner.
In just eight hours, Team 2 managed to incorporate practically all the assignment requirements into a working prototype. During the presentation, an account was created, project information was retrieved and it was easy to walk through a flow to help the customer make a clear support request.
Information could even be put into the ticket by voice, unfortunately only in English!
This was also the problem team 3 ran into during the hackathon. For the Dutch language, there is no good speech → text conversion software yet. In addition, the brand-new code language Flutter was a hurdle, which also did not make interfacing with existing services easy.
Finally, Team 1's dashboard was a relative success; these die-hards achieved a solid dashboard in one day, which, however, fell just short of Team 2's spiky portal.
Cube is more than a name.
It is literally a space where we develop talent, experiment and work on digital products that are profitable for our customers. Through days like this, we continuously try to push our pillars in the business.
Be inquisitive
Take responsibility
Learn by doing
Make others successful
Today was another day of taking responsibility, celebrating curiosity, learning by doing and collectively encouraging everyone's success.
A rattling result.
Besides personal development, team building and having fun with the cause, we also achieved tangible results.
After this, our developers will have less to do with trying to interpret customer problems through the winning team's portal. Project managers will also have less work to do with this soon, so we can dedicate our time to a better end product!
Our project managers and staff will soon be able to see at a glance who is present today, if there are any housekeeping announcements and which projects are almost over the hours budget. This dashboard will also hopefully start saving time, allowing us to create smarter & stronger software!
We also gained valuable knowledge about the Flutter framework, its strengths and teething problems, compared to the builds known to us on React Native. For now, we will not make the move from web to native just yet, based on the generous research of the "losing" team.
In the end, we all win.
Ready for the next step? We are too.
Do you like working with us? Let's connect.
Worth reading next...
How organisations can prepare for the Digital Product Passport (DPP) regulations.
A conversation with Bob: How Cube ensures security and data integrity.