We have already blogged about the ways to share expertise and knowledge inside your organisation However, there is one more way. That’s something we call a codefest or hackathon. Codefest is an opportunity to work for two days on any project you like using any technology of your choice. Also, it’s a chance to work with people you don’t have on your project.
Codefest enables people to try different roles. Indeed, a person who is normally spending their day writing code, can become a Product Owner or an Architect by coming up with a project idea. Before we start Codefest we already have a list of potential projects. Anyone who wants to propose a project needs to write an elevator pitch description and mention its possible technology stack. Later on when teams are formed and a codefest has started, the proposer needs to convey their vision of the project to their team mates in more detail.
Each of us has something to teach other people, we can also learn a lot from the others. At codefest you can finally work with all those people you chat to in a coffee corner and share your expertise with, that you don’t work with on projects day to day.
Some people might treat codefest project more like a journey not a destination. In other words, they might put more emphasis on working with new people and using the latest cool technologies. However, a hackathon project can become a commercial or an open source product one day. For instance, some of my colleagues worked on a Sonar plug-in for Scala, which was open-sourced later.
I’d better just leave a quote from one of my colleagues – Alex Mordue. The last codefest he and a few other guys worked on a project whose goal was to give an alert when there was no milk in the fridge using a programmable light bulb...
‘NCRs Codefests give me the opportunity to work with new technologies, software and hardware that I would not normally use in my IT and Infrastructure role. As long as you can get a small group enthused about your idea you can spend two days creating whatever you like. For the previous two Codefests, of which I’ve taken part, I created electronic sensor platforms to get real world physical data into our projects. I’m looking forward to the next Codefest and hope I can think up some reason to use a 3d printer’
This is probably the ultimate codefest project, as it checks all the bullet points from working with new people to doing something totally different while having tons of fun. However, the main point of the project was to ensure that developer’s productivity is never hindered by the sudden absense of milk in the fridge. The team went on a challenging endeavour of combining different pieces of technology together – digital scales, Philips Hue light bulbs, an Android tablet, and a Python/Django server application.
You can read more about this project in this blog post.
This was another project undertaken during codefest. Instead of writing all about the project, here is a link to the blog post of my colleague, Henry Coles.