<- Part 1: the conference
On Saturday, once everyone had got a good night’s ‘sleep’ (our hotel was just next to a loud club which only got quiet after 3am), we walked over to the Impact Hub.
Before I get started, I’m using the word ‘hack’ in the non-malicious form. Tabloids use the word ‘hacker’ to describe someone with malicious intent who steals data or takes down websites (for example, this article in the Mirror). We use it to describe someone who thinks the best way of learning is by doing. A hackathon is just a group of sleep-deprived developers playing with something new.
The event itself was free – paid for completely by the wonderful sponsors.
Before the hackathon started, not many people knew what they wanted to make (including me). Luckily the sponsors got a chance to inspire us with their products and announce their prizes. There was a variety of companies attending, each with some cracking prizes for the teams making best use of their services.
- Pebble (the e-ink smartwatch) were offering a Pebble 2 for the team with the best Pebble hack.
- Contentful is a content management system which is great for developers. They were giving away a Sphero and some very colourful socks.
- Pusher were there, giving away drones.
- Microsoft have a great set of APIs available to use, taking some really complex computer science problems and making them available for developers. These tools include computer vision (identifying objects from images), face recognition, speech recognition and so much more. What’s better is that all of these tools have a very generous free tier, meaning it’s very easy to get started and keep going as long as your project isn’t used very much. That’s not all that was available: they’ve also made a ‘bot framework’, where you can use the same code to create a chat bot that works for multiple platforms including Skype, Facebook Messenger, Slack and Telegram. Microsoft provided some depth cameras as prizes (think Kinect, but more business-y).
- Algolia provide a lightning-fast search system that refines results as you type.
- Nexmo was the main sponsor of the event. Their systems allow you to programmatically make and receive phone calls and texts. They were giving away a bunch of smart things. More on that in a bit.
- Finally, Proactive Paul (an accountant who did a bit of front end development once) offered Lego to whoever had the right mindset – they might not have finished with something working but at least they gave it a good go.
Once the sponsors’ demos were finished, we were free to get on with it. There was a pretty even mix of people who got into groups and those who wanted to work individually. I was originally planning on teaming up with Marcus, but the sponsor demos gave us both different ideas which we wanted to work on individually.
Nexmo’s demo gave me a really cool idea that I thought was doable within the 24 hours. As you probably know, my main side project is trntxt.uk, the data-friendly site that provides train departure times for phones on GPRS data connections. I blog about it quite a bit. I wanted to use Nexmo’s APIs to set up a phone number for people to call; they would then say a journey that trntxt supports (e.g. “Oxford to Didcot”), then I’d use another Nexmo API to send a text over SMS with the next available departure.
It turns out Nexmo doesn’t currently have any speech-to-text functionality, so when someone says “Oxford to Didcot”, I’ll just receive a sound file from Nexmo. However, this is 2016 – speech-to-text is no longer a problem thanks to one of Microsoft’s many Cognitive Services APIs. The Bing Speech API gives you 5000 speech to text transactions per month for free, so that’s plenty for a small personal project like mine.
I went over to get some help from Nexmo to set my account up to receive calls. On my return, Marcus had already finished his first hack.
Marcus made a site which takes the 100 most recent tweets from a given user and runs Microsoft’s Sentiment Analysis on each to measure the user’s positivity.
Other people used Microsoft’s Emotion API which takes a picture of a face and determines that person’s emotion. If you look sad, this hack can do something about it.
With my project, I was trying to stick the three services together. I wanted to use Nexmo to make a phone call and record what the caller says; then turn the speech into text using the Bing Speech service; finally sending a text back with what the caller said. The first time I managed to get a text back though, Bing didn’t quite hear me properly!
As the night went on, many people left to go back to hotels to get a good sleep, and, well, others didn’t.
By 3am I’d managed to get it to extract the departure and destination station names from a sentence, then send those stations to National Rail’s API (which trntxt did already). The response from National Rail was then sent straight to my phone, which I could understand, but probably won’t be popular with everyone else…
A final call test for “London Victoria to Three Bridges” resulted in Bing transcribing it as “London Victoria to sleep” – well played, Bing – so I found a rather uncomfortable corner and got some rest for a few hours.
The following morning, I turned the National Rail data into English. And that was it, I was basically done. I then had enough time to plan my demo.
Everyone who made something was encouraged to present what they did in 2 minutes. Lots of teams made something, so there were lots of demos, and I knew mine had to stand out. So I borrowed some slides from my trntxt talk a few months back, drew a diagram and took a few screenshots. I wanted to give a live demo but didn’t have enough time.
There were some other fantastic hacks, including an X-wing controlled by the accelerometer on a Pebble watch; an add-on to Netflix where you click on an actor’s face and it opens their Wikipedia page; a collaborative sound mixer; a Pebble virtual assistant using Amazon’s Alexa; a self-navigating model car and a who-can-make-the-happiest-face competition.
After all of these amazing demonstrations came the prizes. All the sponsors left the room for a few minutes to discuss who won what. When they returned, Nexmo announced that I’d won their prize! I’m now the proud owner of an Amazon Echo Dot, Smart bulb, Smart plug and a Bluetooth speaker!
So a huge thanks to Nexmo for all the loot, the help getting set up and for having a really cool set of services; Mike for organising this amazing event; and all of the other sponsors and volunteers. It was epic.
See you at the next last one!
If you feel the need to actually use this service, it is still live. Call 07520631898 from a mobile, then at the prompt say something like “Bath to Paddington”. You should get a text back with the next 3 departure times by the time the call ends!