Here is what really happened during the last Codefest
CodeFest. Hack-a-thon. End of term blow out. Two days – your imagination. All these have been used in the past to describe NCR Edinburgh’s CodeFest. In case the descriptions above don’t explain, this article will endeavour to do so. CodeFest is an event that happens twice a year, over a period of two days. The staff form teams and work on little (sometimes) and fun (mostly) projects designed to enhance office life and provide entertainment. It starts sedately, but by the end of it, the atmosphere is frantic and there is much pulling out of hair. It is also a competition, so the main topic of conversation for two days is how well the other teams are progressing, and what can be done to trip them up.
Winter 2015 CodeFest was hyped up to be the best one yet. There were several projects from previous years, just waiting to have the finishing touches put on so that they could finally claim the title. Newcomers were also aplenty, ranging from the useful to the downright ludicrous. The real talk of the event started a few weeks before, during the Sci-Fi inspired planning period, The Proposing. A grand total of 23 projects were put forward and championed during the weekly town hall meetings. These included the practical (Open Boiler 1.0), the odd (Connections Gaming) and the silly (The Reverend). They were then graded to find out what people were really interested in and wanted to take part in. A few ideas were mercilessly culled at this stage, and it is only right that we spend a few words to remember the fallen.
TaskLOG, you braved the world by combining the need for tracking tasks and a very large piece of wood. You aspired to be Agile, but unfortunately those in the know decided you were more like Waterfall.
Taps Aff 2.0, your only goal in life was to amuse us all with very Scottish descriptions of the weather. Sadly, you were left out in the cold and up the Forth without a paddle.
Simple Headphone Mind, you would have made an excellent spy, listening to the office’s music tastes and relaying it back to your superiors. The office had other plans, and you were hanged for treason.
The Reverend, you were there to help those in need, offering automated comfort to the sick, the injured and the sneezy. It turns out, religion and development don’t mix. Bless you and go in peace.
The Thumb 2, you wanted to refine an existing process, making Lean Coffee meetings even more productive. Really, nobody wanted to work during CodeFest.
Fix NCR Recruitment Site UX, your name does say it all, but you were a bit of a mouthful.
Got all the Milk?, you wanted to improve engineer’s productivity by telling them if there was enough milk for caffeinated beverages. Apparently, they weren’t awake enough to rally behind you.
Once the ashes of the fallen had been swept under the rug and tears of their creators dried, everyone returned to the joyous task of preparing for the main event. Teams were put together, rivalries were formed and brains were engaged, mostly with the help of the aforementioned caffeinated beverages. Although the quantities of milk available were to remain unknown.
On the first official day of CodeFest, Thursday 17th December 2015, the 15 teams gathered, each finding a space in a part of the office. The biggest space was taken over by Arcade Table who needed somewhere to wield saws, drills and generally make a mess. The mess was worth it, as a usable arcade table was later produced. Most teams also had contact with the self-contained Hardware Lab, where our two resident hardware gurus were on hand to provide extra help, access to the 3D printer and a place to collect hardware items. Some software based projects also stuck their head through the door, to track progress of the previously ill-fated Robo-Justin 3: Justin’s Head, a robot head with enormous ears, designed to replace a full time remote worker.
Settled, everyone started scratching their heads, coming up with implementation ideas and shouting them to their teams across the room. One of the more vocal teams was Mario Kart, Part 2, who were determined to cram as many features as possible into their software, despite having stumbled at unrealistic goals at Summer 2015 CodeFest. The question on everyone’s lips was would they finish in first place, or would they crash and burn?
By mid-morning, all teams had decided what they were doing and were quietly settling in to make it happen. The rest of the first day seemed to remain quiet and focused, punctuated only by the sight of Edinburgh employees climbing on tables and fitting a webcam into the ceiling. The employees in question would argue that it was for a higher purpose, mainly the acquisition of tasty edible items, via CakeWatch, Part Un.
Day Two saw some big changes for a number of the projects. Concierge was supposed to integrate smart text boxes with digital banking, so you could see where, when and how you had spent your money. In hindsight, the team admit that they over-aimed, but were surprised to find that the CodeFest Fairy has visited them overnight and that a completely new program awaiting them on the second morning. Magic seems to have worked as the program was able to successfully show the levels of spending on food and drink of one particular member of staff!
Office Radio, which would allow the whole office to choose what to listen to and vote on the merit of individual songs, unfortunately ran into some trouble. The idea of the project relied on creating a fancy interface that people could log into. Sadly, none of the team members had much design experience. However, a working mock-up was achieved, showing that NCR Edinburgh really can do anything if they set their mind to it.
WebRTC Integration was a much more sedate project, aiming to use the NCR Edinburgh website to call people for face to face chats. Not all their goals were achieved, including that of randomly calling someone, without fully being aware of who may answer. The team were however pleased with the outcome, as unlike other projects, they had a well-designed, but more importantly, working product.
Another project who achieved their goal was the Acronomicon, designed to demystify the numerous acronyms used within the organisation using three well known 19th century novels. Acronyms were successfully transformed into explanations, with frequent reference to words such as “pirate”, “gentleman” and “chivalrous”. Although a highly entertaining tool, it is possibly not one to be used by newcomers to the company trying to work out what project they are working on, as “Fruit Season Gizzard” is perhaps not the best description of the services provided.
CodeFest Automation was also designed to make life easier, especially for the organisers of CodeFest. A lot of work went into the product, trying to cram three months-worth of prep into two days. The team were fairly successful but only managed to implement the first few steps. This may mean that the next CodeFest is only half-prepared and slightly chaotic, but judging by the performance of some of the teams, this may not make much difference.
It was early afternoon on day 2 that Connections Gaming suddenly became a visible presence in the office, storming around, muttering unrepeatable words under their breath. After a full day of unsuccessfully trying to use ATMs to play classic arcade games, using a convoluted system involving the Connections platform, the realised that there was a much simpler solution. Some of the mutterings included “We’re only going to be able to have noughts and crosses.” and “I have just wasted a whole day of my life.” 
About the same time that Connections Gaming were losing the plot, FLS Productionization started popping up everywhere with ladders, drills and loitering around toilets. FLS obviously stands for Free Loo Service, so that everyone can know if a toilet is occupied or not, even when they are not on the same floor as said toilet. A classic system of lights (on for occupied, off for free) announced to the entire world that you were seeing a man about a dog, or any other local euphemisms.
The Football Management Information System (affectionately known as FMIS) also attempted to streamline a tedious process, specifically that of organising football games and avoiding the unpleasantness of being rained upon. The final product did manage to track all the requirements, but the different components did not talk to each other, making for a very disjointed output.
By this point in the process, most teams were starting to wrap up and prepare their presentations. Few teams were close to a working prototype, therefore mass panic was involved. One team however were so far ahead that they decided to field test their product. Mobile Mountaineering would tell hikers if they had reached the summit of a hill. The well-known local “Tesco Express Hill” was used as the first point of reference but later tests did venture to Arthur’s Seat, showing that NCR’s very own rambler did indeed reach the summit.
When it came to presentations and the all important winning, surely nobody could top climbing a mountain?
Alas, it was not to be.
The winning team truly stood out. On their first day, they fried a sensor through erroneous wiring. They had no data to speak of. Showing their determination, the OpenBoiler 1.0 team overcame these setbacks and produced a product that was capable of interfacing directly with the boiler and control the temperature of the room. Thankfully, they have not abused their new-found power and keep the temperature of the office at a comfortable working level.
The two days of CodeFest were over. Everyone was exhausted but elated as they had all attempted something new, even if not always triumphantly. The idea was to get staff to interact and have the freedom to code as they wanted for a couple of days. In this, the event was a real success and we are all eagerly anticipating the next one.
 Citations may or may not be fully accurate. 
 The US contingent of the office may have mentioned something called Tic-Tac-Toe instead.