Last weekend, BlackBerry had an internal hackathon for employees interested in developing applications for the upcoming Q10. The prize for submitting an application was a red, limited edition Z10. For this event, BlackBerry was willing to waive the restrictive intellectual property policy that once governed employee submissions. Thus, all employees were given the ability to keep their IP and enjoy the fruits of their labour. Normally, the IP would be owned by BlackBerry, something that was generally frowned upon.
My application was a standard Planning Poker game, but with some unique features. First, it supported more than just Cohn’s Scale, which doesn’t sound like much. Many of the applications in AppWorld only support one scale, so I added support for six major scales (Such as t-shirt sizing, Fibonacci, etc). My second improvement on this concept was to add the ability for distributed teams to vote. There were a few challenges to this, above and beyond writing a standard client-server architecture. For instance, the current version of BB10 has security in place that disallow the hosting of a socket server. Any client attempting to connect to such a server will be greeted with a Connection Refused socket error and a port scanner will not be able to find any ports open. With no sleep and a looming deadline, this was not pleasant news. While I was told hosting sockets was possible between applications on the same device, having open ports to the world was not to be implemented until a later date. So, instead my solution was to rip out the server code and offer it up for download so that it can be run on a separate server. Not an ideal solution, but one that works for now. The server will be up shortly once I had a chance to clean up the code and test, so stay tuned.
Overall, the hackathon was an interesting experience. My lack of sleep made work on Monday rather difficult. For the future, I’ll consider starting my application a bit early so that I won’t have to endure sleep loss.