01. Nov 2017
NDC Hackathon: the developer’s perspective

By Zeljko Sucic

Arriving at the École Polytechnique in Paris, Saclay with approximately 200 people to participate in the NDC Hackathon was both exhilarating and a first time experience for the entire 2e team.

Upon getting settled, the keyboards around us were smoking, which at first was distracting, but after a while the sound of murmur and keystrokes became very relaxing and we went into the "zone".  We had a pretty clear idea of what we wanted to develop from the start, but we were also aware of the time constraints and we really wanted to make something functional and useful.  So we decided to keep things simple and focus on those key functionalities we thought would really matter. 

There were four of us, so it wasn't difficult to split the load and make sure that every team member focused on what they know best, whether it's frontend, backend, data or other. 

We decided immediately that we'd make an app accompanied by a backend service and a management web site. This app would allow end users to request trips based on Eventbrite or Facebook events so that all they need to do is click a single button, and the backend side would follow through on that request by making a real booking using the NDC API and fetching some useful information for the traveler, like destination weather data or potentially information on other colleagues who may be going to the same event.  We didn't want to overcomplicate the challenge and considering we only had a 4 minute pitch, we decided to forgo the management web site in favor of full approval and booking automation based on preconfigured business rules. This meant we had more time to focus on logic rather than on the management UI.

Of course, not everything went smoothly. One of the bottlenecks was our internet connection, which even at the best of times was slow and “laggy”, but we kept our frustration in check and just kept coding. The other was the fact that we weren't able to see each other’s computer on the wi-fi (i.e. the computer network was isolated). This meant that we had to deploy our backend differently than we thought we would, but in the end it worked out OK. It also meant that for demonstration purposes we had to use a USB cable to showcase the app on a real device, which doesn't sound like much, but it was a real challenge during the demonstration.

Our original plan was to finish coding on Saturday at around 11pm, so that we could get a decent amount of sleep and we could have some time to prepare the pitch.  But whether it was excitement, dedication, or something else, we just couldn't stop. So we continued hacking at it until around 4:30 am on Sunday morning, and then just crashed for a couple of hours so that we could be back at
École for the 8 am breakfast.

With only a couple of hours of sleep, we felt like we were "all in" for the contest and we continued working with the same drive regardless of the lack of sleep. It simply became a personal challenge for each and every one of us, and we just wouldn't give in. At around 13:30 we were applying the finishing touches, already very proud of our creation, but without any notion that we might actually win. 

Then at around 14:00 everyone assembled in the main atrium, and slowly, one by one, teams began presenting their solutions. We were second to last on the list of presenters, so we had a long time to mentally prepare ourselves to the idea of pitching to a room full of people. By the time we were called up to present, we were so tired we were shaking.  We had prepared a recording of the app but took the riskier decision to do a live demo.  With the unstable internet connection there was a chance that something wouldn't work and that we would end up there twiddling our thumbs for 4 minutes.  Conversely we thought if we showed that our system actually works and was not just a concept but a real application with real functionality (albeit limited) we would stand a better chance with the judges. 

I have to say that we had great help from the NDC Hackathon mentors who gave us feedback on every step of the way and helped us develop the potential of this idea to its maximum. 

Three days later, we were still catching up on sleep but at least we can say "We'll always have Paris" 

The presentation went great and it seemed that everyone, not just the judges, liked our idea.  During the Q&A we got some really good questions from the judges about the future of the system and its potential for making money. At that point, we felt that we had at least done well.

While the judges deliberated, several of other contestant developers approached us and said that they thought our idea was great and that our solution was something they would definitely want to use. I guess this made us even prouder than if the praise came from a non-developer. In the end, it wasn't about winning or losing, it was about making something you can be proud of.

After about 30 minutes the panel of judges came back and started announcing the winners. When they said that the ubTrippin team has won the NDC Corporate Prize it was like an explosion of emotion. We went down to shake hands and receive the prize and really were left speechless.  It might have been all the emotions or just the fact we were so tired, but it all seemed like a dream.