There are a great many developer and tech conferences to got to and the numbers are increasing. Some of these conferences are free or free if you speak or volunteer, some are relativley cheap and some you may be able to persuade your company to pay for. But why should you even consider going to a conference in the first place?
I’ve added a new work to my vocabulary: Hacklag. Hackference Birmingham left me totally exhausted and yet once I had recovered I was highly motivated to try the things I had experienced there. So I am sharing my experiences from the weekend hackathon of fun, discovery and glorious food.
Previously I shared my experiences of the Hackference polyglot conference, detailing what I learnt from the great talks there.
Hackference Birmingham was the first event I had been to that was both a conference and a hackathon. Both parts excelled my expectations. Its also the first big event I’ve been to in Birmingham outside the national exhibition centre (NEC) and the developers in Birmingham made me feel very welcome.
This is a reflection of what happened at the conference part of Hackference Birmingham.
Hackference Birmingham at the end of August is a great opportunity to discover new ideas from polyglot developers at a one day conference, then try those ideas out over a weekend hackathon.
As a judge at Hacked I was amazed by all the developer talent concentrated into one weekend Hackathon. There were lots of great ideas realised into apps in such a short space of time. With 500 developer making up 74 teams, it was a challenge to pick out winners.
As Heroku were a major sponsor we decided to give out prizes to 5 teams, even then it was still a challenge to choose only 5. We also gave out lots of swag and the t-shirts and moleskin notebooks went down a storm.
With so many diverse creations on show Hacked really lived up to its tagline: Learn ,Build, Share.
I ran a workshop introducing Heroku, a service to allow developers to deploy there apps quickly without worrying about complex scripts or managing servers. There were lots of questions about Heroku, Postgres database on demand and other addons. It was great to see enthusiasm from developers wanting to make the most out of the cloud.
I also ran a workshop on Git, so everyone could put their code up on Github or deploy on Heroku. As Heroku uses Git for code deployments, then once you are comfortable with basics of Git, deploying in this way seems very natural.
@neilmiddleton also gave a workshop on the new Heroku API, allowing you to create apps, scale them and monitor them from your own applications.
The BBC, Nokia and lots of other sponsors also gave great talks and help with their APIs. The BBC had a whole bank of TVs available to hack real TV apps on.
Everyone pretty quickly got into teams to start hacking. There were physical hacks, api hacks, music hacks, TV hacks and some really bizzar hacks going on all through the weekend.
When not running workshops, I interrupted teams hacking away to find out what they were up to.
The Heroku team had a few spare minutes free to build an app too. Using the Heroku API, we built an app that would show a snippet of your logs when ever someone connected to one of your running apps, showing the location of the users IP on a map.
It was great to get so many teams sharing their amazing creations. The diversity of the crowd produced a feast for the eyes and ears. I’ve only captured a few of my own highlights in this post.
One of the apps I liked the most was the Event board for organiser by @EChesters as running developer events on the scale of Hacked is a big challenge. The Hacked team did very well, although having a good app to managing all aspects of an event in real time would help any team run a event more smoothly. I especially liked the real time alerts mobile app. Lets hope this team takes the app further.
There were many hardware hacks at the event, especially with node copters, micro node copters, nano node copters and copters controlled by Playstation Move controllers. My favourite amongst these was Wild thumper, a node copter that could follow a remote controlled car just by attaching a small ring of lights to the car, that was really cool. Arduino powered controller for remote controlled car, with Raspberry Pi camera driving the copter.
Other cute hack involved a knitted darlek and a chrome extension that changed any pictures on a web page to that of a cat… great fun if you do a Google image search for dogs and watch them all change to different cats!
It seems the Hue Light boxes from Philips caught a fair bit of attention. These were a 3 bulb array that you could connect to over WiFi or Ethernet and control the colours and sequencing of the lights. The most useful hack for me was the BusBulb. This hack tapped into Transport for London open data on transport and gave you a lighting countdown to when you needed to leave for your bus. This would save me a lot of checking of my phone for the time and save batter.
It was tough deciding on winners when there were so many great submissions to choose from. I spent time finding out what the teams were building as its hard to get a true picture just from the 90 second demo at the end.
There was one app that all the judges quickly agreed was the winner, FlashMed. This app was quite simple but provided a very important service, managing a medication regime for the elderly. Most elderly people have to take a range of medicines and these are all colour coded to help them. However its easy to forget the schedule you need to take. So the app connects to a Phillips Hue lightbox and displays the colour of the medication at the time you are supposed to take it. Once you have taken it then the light will switch off. If you fall asleep then the light shows which medications you need to catch up on. Simple and effective
The peoples choice went to the crazy kids who won two giant lego Starwars kits, the death star and millenium falcon. That should keep them busy next weekend.
@theNeomatrix369 created a wrapper around the Heroku API to help Java developers create cool applications easily with the Heroku API.
The API Unifier is a lightweight Java library that brings together a collection of RESTful APIs under one roof! This simplifies the use and maintenance of dependencies on external APIs. This library creates an abstraction layer between your application and APIs from disparate vendors to increase cohesion, reduce coupling.
MusicMatch is a social music competition where you need to guess the correct 10 second clip to build up points to get you up the leader board. The quicker you answer the more points you get, but get the answer wrong and you and you lose points.
The application was developed with Nodejs and uses Nokia music API to get the music tracks. Redis (Heroku addon) is used to manage the leader board and the app was deployed on Heroku.
This app is a really fun idea and adds a different dimension to the experience at an event. With Boomerang you take a picture and throw it out there and see what picture you get back in return. You never get your own picture back, so you get to experience a little of what everyone else at an event experiences.
The team built this as a native android application with a back-end service running on Heroku to manage which images you received. The app could also be passed to your friends or strangers at the event if they have a NFC enabled phone.
This app helps people develop their ideas and get thought the barriers to turn those ideas into apps. 99hours connects people with those ideas to those who can help them out. The goal is to create a highly collaborative place to nurture ideas into projects. This collaboration is realised in features such as feedback from the community on ideas by up-voting, or providing a variation on the kick-starter model and allowing direct donations to a project you want to support.
Tom Morris created an app called pidgeon as a kind of location brokarage service, a personal api for your location. Deployed on Heroku, this app has a simple API to post location information into forsquare to give real time updates of where you are. To display map information on the website, the hack was written using Rails and used MapBox, OpenStreetmap and MogoLab Heroku addon. Sometimes you want to hide your location, so the app also had rules to hide your location when you are at home or other personal locattions. To test the app, Tom also used Macosx controlPlane to simulate different networks.
It does take a few days for the adreneline and lack of sleep to balance themselves out after a Hackathon. Lucklly then there is a few weeks before Leeds Hack. Leeds hack is great, especially if you want to get your children involved in coding.
I’ll be at Hackference Birmingham next, the first event of its kind in Birmingham, so it should be a great event. I’ll be doing workshops around Heroku & Git and it seems there is lots of interest around Clojure, functional programming on the JVM.
Its not often you get a chance to make a difference the way people live their lives. As my role of judge at the recent Accessibility hackathon by Barclays I met lots of teams spending their weekend doing just that.
The hackathon started with an amazing set of stories from the charities involved. These stories gave the teams a great insight into the challenges people in these communities faced. The presence of the the accessibility community through the hackathon helped teams stay focused and create relevant apps that would make a significant difference.
With all the great ideas generated by the teams taking part, it made the judging quite tough. Although not as tough as hacking an app together in less that one weekend :)
At the end of the hackathon, each team had 3 minutes to present there app, which is really no time at all. However, as a judge I had been going round the teams over the weekend to get to know them and find out what they were doing. This also gave me insight into how they had progress over the weekend. One of the things we were looking for was if the team could carry on developing there apps afterwards, so their capability and cohesiveness played a factor in our final decision.
It was vital to have members of the accessibility community on the judging panel to be able to judge the impact of each app presented. There were several judges who had physical challenges who related closely to the value of each teams app.
With 19 teams to choose from, the judges had a challenge on their hands to come up with 3 winners. At one point we asked if there could be a couple more prizes. The apps that really stood out for me though were:
- Soundbyte - filtering out noise for different types of hearing loss
- Visual-eyes - creating a very detailed and highly accurate description of the scene in a pictue (fantastic concept)
- Gesture Touch - controlling HTML5 apps and games simply
- Elephants, ears for everyone - transcripting conversations in real time
- Real assistance - guiding peoples journeys and assisting the last meters
- Say what you mean - navigate the web by voice
- MemoryBox - helping those suffering dementia to recall memories easily
What follows is a summary of what I thought of some of the apps presents.
I really liked the concept this team opened wiht “We have all experienced sound loss”, it helped make the project very relevant. Also the way the team got everyone to stand up and clap to simulate the experience was very striking.
The project itself was great. Having a smart phone as a hearing aid takes away some of the stigma around the hearing impaired. Although phones can cancel out background noise in phone calls, this Android application can eat the sounds that you don’t need. As the app cancels out the background noise in near real time, you can then listen to only that which is valuable, based on filters defined for different types of hearing loss. The team had already created a number of options to help you find out the best sounds based on a persons hearing ability and situation.
This was a very striking project and is high on the list as it also has implications for a wider audience, not just those with hearing loss. As the app was available on the Android Play store in about an hour after they presented, the project seemed very sustainable.
This team only came together at the hackathon and found a vision inspired from talks given by the charities. There vision was simple and very relevant to the theme of the hackathon. Photos are everywhere and people love to share them with family and friends. However, its not possible to share photos in an easy way with those who are visually impaired
Their app, Visual Eyes, returns a meningful description of any picture provided. I liked that the team used random images from Facebook as they are representative of the images people share. As the images were random, then you saw how credible the software was at describing the images. I was very struck how detailed the descriptions could be, including if people were wearing sunglasses!
This app was very impressive and therefore high on my list due to the detail of description of each picture. The team had already integrated it their app with Facebook and there were many other integration possibilities. I was very confident this team would carry on developing their app.
The team were looking to open source the whole processing so that costs from 3rd party services are taken out of the process. The team are also considering the use of tags to help make the description even more relevant.
This app stood out immediately. The ability to record your favourite journeys and play them back to help you find your way seemed like a real win for those with vision issues. It would give those people a lot more confidence when they are navigate to their favourite places.
This app could also be useful for a wider audience, for example to help navigate to a place in a new location or a foreign country.
This app really stood out when the final part of the app was shown, the assisted guidance for the last few meters. To be able to call someone who can direct you using the camera on your mobile device and be guided in real time was a great idea. It can be a challenge finding entrances and then navigating steps and doors, so this is a great way to deal with that issue too.
The app uses existing phone technologies and WebRTC so the team seemed to have a fully working app come time for the demo.
The team had an eye on future features, such as pre-program points of interest (Banks, restaurants). This demonstrated that they are willing to take this app further.
The team created a way of helping those with physical challenges to interact with HTML5 based apps, especially games. The team created different modes and controls to help users find the best way of interacting.
I liked that the team had simulated using their app using a device that restricted movements in the hand and what they produced looked quite effective.
This team also had future plans for their apps, including integrating voice recognition, so it seems that they will carry on with their development efforts.
The team develop a real time transcription of conversations taking place, aimed at those with hearing disabilities. They had tried to get hold of some Google Class equipment so that they could have had real time sub-titles when talking to other people.
The team instead created a simple and clean mobile app, allowing you to open up a “channel” in which two or more people could talk and the text of their conversation would be displayed in a similar form to modern text apps.
The team did a great demo, although there was some doubt about how effective this would be if there was background noise. The team seemed keen to keep on with the development if they got positive feedback, so if they can also include filtering of the background noise I believe they have a valuable app.
I appreciated that the team invested time in the experience of being blind and accessing the web. That they discussed ideas with the people from RNIB helped them identify a real need, that the key desire people had was to go faster. Screen readers linearised the experiences when people acutally wanted a content driven experiences
The app had a very simple user interface, press a key and say a word. You are then sent to a link that matches that word. This is acceptable for websites your are familiar with.
For other sites you don’t know well, then its used like a search that returns the links at the start of the page so you don’t have to go hunting for them.
As their app works as a browser extension, then it works for all web sites without specific configuration.
It was great that the team have considered future functionality, like related terms and filtering search criteria. I can see this app being quite useful to many.
The team had a great presentation and I really appreciated the use of using Alice as a persona to help us understand who the audience was the were trying to reach.
The concern they were talking was memmory loss which affects a great number of people. Without a good memory your experiences from a human perspective is about having your independence.
The team continued to tell the story around the persona. Alice does not always eat properly, because she forgets if she hasnt eaten. The app the team developed reminds Alice of key meals, helps her select from different meals and talks her through the making of the meal she has selected. The meals can be put together by family members, doctors or nutritionist, to give more diversity to Alice’s diet.
Although this was a great concept, I felt that the team had not developed the application far enough in the time they had. There were unanswered questions and I hope that the team are able to get more of the app developed.
The team chose a really powerful sounding topic, remenicance therapy. This was a great technique for helping family and friends to engage with those with dementia By creating a wide range of media to form a collection that would trigger memories about events and people, it would help those with the condition feel more positive and help them relive experiences.
The challenge was to create something that would easily create this experience and be significant improvement on the basic photo collections you can do with many online services. The app would need to help the supporting family members create these collections easily and relate them to specific memory categories. An app would also need to help the family members by relating images to each other automatically, I guess in the same way that Amazon relates other products.
The sole developer on this personally driven project - his grandmother has difficulties with her hands and finds interaction with computing devices almost impossible. However, she has a very active mind and the developer wanted a way to help her engage with the Internet which most of us take for granted.
The project was quite simple, more like a proof of concept as no real substantial application was created. The developer used an open source project and a Chrome extension to support the leap motion device. Whilst this is a great device, I was looking for something specific to be built from this concept.
Although this was a enthusiastic developer that may create some good ideas, he didnt really create much of an app to realise this concept.
I liked the idea of improve accessibility of other apps by identifying libraries that apps that are used, then sending in patches to make them have accessibility features. This was a great effort by one developer, although if its only one developer I was not sure on the impact. This wasnt an app that made it easier for people to improve libraries or even encourage other developers to get involved.
Its a very worthwhile effort on this sole developers behalf. I would have like to have seen something that would help lots of other developers do the same thing.
Luckily Github was not down for long. As git is distributed, we were able to save our changes locally or topped up on Coffee whist we waited a few minutes for Github to come back. # Dancing robot, curious developers Everyone’s instant favourite project seemed to be the NVO robot. Its an amazing piece of kit. Essentially a programmable robot that can by default can play Japanese music and do Tai Chi. You can program the robot visually, by dragging and dropping actions and wiring them up together. You can create a sequence of positions and get the software to work out the moves necessary to go from one position to another. Just like digital animators use in software like blender. You can drill down into each of these actions and program the robot in python or several other languages.
The robot has stereoscopic cameras and can do face recognition, in that it recognises a face when it is in front of it. This means the robot will talk to you when you when it looks at you, although it cant tell one face from another by default. The robot has pressure sensors and fingers so it can interact with its environment.
There were a lot of developers from LSug group and they ended up split into three smaller groups to focus on different problems.
Some of the team were working with MongoDB, some working on the RSVP via meetup. All the events displayed on the Lsug website can now be joined directly, without having to visit the meetup site. Perhaps the total number of Yes RSVP’s can be added to each meetup?
Coding Board is a small web application allowing developers to share code with each other in a hands-on session. When we want to talk about the decisions we took as we approached a problem, its nice to have the code itself shared on the screen in a syntax highlighted way.
- Scala and Scalatra
- Twitter Bootstrap for the front end framework
- Selenium Webdriver and Specs2 for “testing”
- Heroku developer cloud service for easy deployment
- and no persistence whatsoever..:)
The project is under an open source license and the code is available on Github for you to clone and fork.
Read a blog of the days events for this project from Balint Pato himself.
Two of us helped out a developer relatively new to Clojure, although they did have some past experience with Lisp. We helped them get ther environment set up, which was a bit more of a challenge as the were running Windows 8.
Luckily its still fairly easy to set up a working Clojure environment on Windows, although just about every command seemed to ask for the Administrators password! On the Leiningen website, there is reference to a 3rd party bat file for getting going with windows. The problem with this bat file is that its dependant on either wget or curl, neither of which were available on this machine.
We got round the problem by manually doing what the leiningen bat file did, downloading the .jar file and putting it in ~/.lein/self-install/…jar
A problem still remand with running lein. The version in the .bat file was different from the ..jar file, so lein attempted to use and download a different version, which it couldnt find. As we didnt have curl or wget to download the version in the bat file, we simply changed the bat file manually.
Some other aspects to setting up Clojure on windows 8 included:
- make sure javac is on the path, we only had java and lighttable failed
- install leiningen - there is a bat file or use cygwin
- install lighttable
- use lein to create a new project and connect to a REPL
Another team formed around the Salesforce platform. The were developing a tool to extract data from charity sites like Virgin Just Giving, helping fund raising organisations improve their fund-raising capabilities and getting a better view on where funds were coming from.
The data captured is filtered for the valuable data and the tool would allow you to match the incoming data with existing information you have.
The project is open source and available on Github.
A team was also working on Java and some of the technical activity around the Java Community Process (JCP). The JCP is a way for others to help shape the future of the Java language and define the specifications for the language.
I did wonder at one point if we would still be here coding through Sunday as there were teams coding well into the evening. By about 6pm everyone had got headed off into the beautiful London night.
Come along and join the fun. If you are a developer who likes to learn and share experiences with others, then all you need is a laptop and some enthusiasm (laptop optional).
Sign up at either:
Monki Gras conference has only just had its second outing and already its become a bit of a legend. Its one of those conferences that is highly social and highly stimulating and also quite exhausting in a good way. Here is some of the excitmemet I managed to capture.
Its been a cold week in London so its great to see so many venture out to the latest meetup of the London Salesforce Developer community.
Thanks to our hosts, Make Positive, there was plenty of pizza to warm everyone up and plenty of drinks to cool everyone down again. Make positive have a very roomy office to work in and its a great space to talk to other developers and admins involved in forcedotcom projects.
Bringing developers with similar experiences and interests together is a great way to organise a Hackathon. At the latest Heroku hack, it brought together developers from media companies including the Financial Times, RBI, UBM, TicketMaster, Precursive and Tquila.
As this was the first event, I am very grateful to the 20 developers that braved the awful weather that day.
The evening started with a chance for developers to “talk tech” over free beer & pizza and discuss what challenges they wanted to work on that evening. In the end we split into teams based on the main language they wanted to work in and each team worked on a different application.
As most of the developers were new to Heroku, went over a check-list to get started. As its so easy to use Heroku then this only took a couple of minutes.
Thanks to the developers at Salesforce, we also had a “Heroku mentor” for each team to help them get going. Once everyone was over the initial steps with Heroku, the only challenging part was to work together to build their application in a short space of time.
The different teams chose to develop applications with Java, Ruby and Node.js.One team was quite ambitions in trying to build a location based app for seeing where the most popular tweets were coming from. Using Heroku Postgres they quickly extracted the data they needed. The location information would be shown using Google maps and unfortunately they introduced a bug they didn’t quite fix in in time that stopped those locations showing up as pins on the map.
The other teams created a voting application and an “all I want for christmas” wish list, similar to Amazon.
So every team got something deployed live to the Internet, some teams even got more than one app live!
The hackathons go on and the next one will be an all day Hack the Tower at one of the tallest buildings in London, Tower 42. Salesforce has an office with amazing views and we 50 developers signed up across different technical communities.
Update: December 2013 - HackTheTower has now moved to the Salesforce Tower in London, previously known as the Heron tower.
By popular demand, I’m also planning some Heroku workshops at Tower42 (where I am also running “Hack the Tower”). These workshops will give developers the experience needed to help them deploying their apps naturally and give them an effective deployment workflow with other common tools such as Github.
The workshops will also give developers insight into how they can learn other cool technology such as MongoDB & Redis without the hassle of installation and configuration.
Sign up for free to the London Salesforce Developer community to keep up with these events.I am also planning a talk for the London Java Community (3,000 members) on “Heroku for Java Developers”. This will help give developers a good overview of the platform capabilities, the developer workflow & tools as well as add-ons and cool technology they can easily try out.