Skip to main content


Showing posts from 2013

Text adventures in 3D

Educational games It's time to lighten the tone and take a look at a project from almost a decade ago! Source code, screenshots, documentation and (old!) binaries are now available in the openbook-v2 GitHub repository.

It was 2005(-ish), I was fresh out of uni and I had my first job. It was a part-time job, so I had the time to dream of setting up a company to write and sell educational games. I was pretty enthused about the power of text adventures to drive up literacy and plenty of other problem-solving skills in kids - but it was clear to everyone who looked at any text adventure game that they were just visually very unappealing!

OpenBook v1 To that end, I decided I would write a new interpreter, focussed entirely around the UI. Enter OpenBook! I wrote the first iteration in C to prove to myself it was possible.

The results weren't awful, but I knew I wanted to do more with it.

Inform Inform is a VM written for interaction fiction that dates back to 1976! Nowadays it has …

Hack Highlight #4: How Did We Do?

This is the fourth in a series of blog posts highlighting hacks from Hack the Police.

Rory was the first person to explicitly state in his presentation something we were all thinking:

Police officers care deeply about the victims of crime.

That's why they go out every day to do what they do - to face not only danger, crime and disorder, but also the endless reams of bureaucracy and paperwork, seemingly invented to prevent the police from helping people.

The police service currently relies on paper-based feedback, or telephone calls to find out just how well teams, departments and officers are performing. That makes it very difficult to record and analyse the thoughts, feelings and opinions of large swathes of those who interact with police - simply because there isn't the capacity.

Rory's solution is much better suited to scaling quickly and much easier for members of the public to participate in - making it quick, easy, and cheap to give, receive and analyse feedback - and…

Hack Highlight #3: AroundMET

This is the third in a series of blog posts highlighting the hacks that came out of Hack the Police.

Emergency services need to find things in a hurry!

That may seem obvious to you.

This hack was mine - and it's something I've been trying to put together for a while now. As I was running the event, I didn't have all the time in the world for coding - so I stuck to what I know best: Maps

I deliberately kept my goals modest, and the product simple. It's a map. It shows you where you are, and it shows you what you're trying to find - be that police stations, custody suites, defibrillators, or other locations of interest to police officers on the front line.

Did you know there are over 1,300 publicly accessible emergency defibrillators distributed around London?

As it turns out, the act of wearing a police uniform does not automatically bestow on a person the power to determine where those are. (Hint: if you ever need one, run to the largest store or shopping centre you …

Hack Highlight #2: Mobile Data Terminal 2.0

Haje brought his knowledge and skills as an entrepreneur, a software developer, a writer, and a special constable to Hack the Police - and produced something extraordinary.

He's written about the design and the thought process that went into it in a blog post of his own: MDT 2.0.

What problem was he solving?

Haje tackled the issue of Mobile Data Terminals - often referred to as MDT.

These terminals are built into Police cars and offer a disappointingly '90s experience.

Police officers can use MDT to perform a small range of actions. They have access to some forms of police data from PNC (the Police National Computer) for running checks (ie. on IDs or car number plates), can receive jobs, and can type updates to their CAD (the emergency services' dispatching and incident management system).

Of course, nothing is smooth, so the mapping system uses an arcane and counter-intuitive selection of swipes and taps to move around, and the maps themselves are cluttered and difficult …

Hack Highlight #1: Secure evidence recording

This is the first in a series of blog posts where I'll be highlighting the hacks that came out of Hack the Police.
Tim Perry came to the hack with an open mind. He asked many people about where the opportunities were to build an app that would have the best impact on crime fighting and victim care - and then settled down to assemble a Secure Evidence Recorder.
Tim's app is a lightweight software alternative to taking paper notes, and waiting for a physical camera to arrive on scene to take photographs. It allows an officer to take their notes, photographs and video evidence with a mobile device - such as a smart-phone.
Some of the challenges of secure evidence recording are: Where do you store the data once it has been recorded?How do you show when and where that data was recorded?Does the data stay on the device?If so, will the device be seized as evidence?How do you make these actions quicker and easier than pen, paper, and physical camera? Tim's secure evidence recorder a…

Google Play Services with Android Studio

Edit: This post is extremely deprecated -- with prejudice! It was written in an era when Google Play Services were not well integrated with Android Studio project work, and Android Studio itself was in its infancy.

This is a very quick guide to incorporating Google Play Services with your new Android Studio project.

Edit: [16:20 22/05/2013] I'll investigate the runtime NoClassDefFound error reported in the comments, and follow up later!

Edit: [23:17 27/05/2013] I'm coming to the conclusion that - as many have already pointed out - you really do need to include the entire library project in your solution. I'll post an update once I've fully tested this. 

In the meantime, please consider the advice below to be deprecated!

The first thing to say is: I fully expect the advice and guidance about how to work in Android Studio to change over time. Android Studio is in early access preview right now, and I'll bet my bottom dollar (is that a thing?) that over time it becomes m…

We hacked the Police!

Over the weekend of the 27th and 28th, the Metropolitan Police hosted the first UK policing hackathon, Hack the Police!at Google's Campus London.

hackathon is an event for software developers - who compete over a weekend to create cool new applications ('hacks'), and enter them in categories to win prizes.

In my capacity as special constable and software developer, I was privileged enough to be co-running the event with some extraordinary people from a group called the Commissioner's 100A/Sgt Neil Beet, A/Sgt Dave Weir, PC Rory Geoghegan, and Insp Tor Garnett - all of whom put themselves on the line for this event. Neil invested a staggering amount of his personal time to make it happen, and it was worth it!

When the Commissioner's 100 posted a short note on the Metropolitan Police intranet, asking for support and ideas for apps that could help people or save the police service time and money, the response was overwhelming. Hundreds of emails came through in th…

Hacking the Police

In my capacity as both volunteer police constable and developer I'm lucky enough to be running the first UK Police hackathon: Hack the Police!

I'm working with a group of excellent and motivated people - and between us we hope to reach out to both the developer/hack-day community and the policing world, to create some really cool and exciting new apps for front-line and community policing.

This is real green-field work, and that's what so exciting about it. The apps that come out of the hack day will be the first of their kind - and they'll be directly addressing real world problems - some of which are currently solved by lengthy and time-consuming paperwork, and some of which just didn't seem possible until now!

We're half full after a couple of days, so if you're in London on the 27th and 28th of April, you're a developer or app designer, and you fancy a challenge - sign up now for Hack the Police, while places last!

I'll be posting some more deta…

Disaster recovery

My Macbook Air died today. At first, it just had a crack on the screen. Then I took it down to tech support for a little conversation about what we should do. Tech support transferred the hard disk into another shell, whereupon it died its final death and refused to start again.

Tragedy, you'd think - but in fact I am completely unaffected. Why? Because all my data is in the cloud. My personal stuff is on Dropbox, my music is on Google Play, and my work stuff is on Google Drive. I hadn't even been planning for a hardware failure when I started using them - it's just so useful to have my stuff synced across whatever I'm working on.

I'm using another laptop right now and I'm completely unaffected.

Don't wait to be caught out: Install BoxDropbox or Drive now and move your stuff onto it before it's too late. It's easy, and shouldn't cost you a penny.

Obligatory appropriate Penny Arcade: