-
So we wanted to build an app for FixMyStreet. Easy: we just had to make a cut-down version of the website, right?
Hmm, not quite.
In our two recent posts, we announced the new FixMyStreet apps, and their developer Struan went into some technical detail about why and how we built them.
Now he explains a little more about what informed the decisions he made during the apps’ development.
Moving the map, not the pin
When you use the desktop version of FixMyStreet, the first thing it asks for is your location, and there’s a good reason for that. It’s such a good reason that it needed to apply to the app as well.
On the desktop site we ask you to input your postcode or street name. With a mobile app, it’s much more likely that you’ll be reporting a problem that’s right in front of you, so we can usually skip that step and show you a map of your current location.
However, while the accuracy of geolocation technology is pretty good, it’s not perfect, so we wanted to let users fine-tune the location.
On the website you click on the map to drop a pin where the problem is, but we’ve found this isn’t the best solution on a small screen. Fingers are big and the end of a pin is small so it can take several clicks to correctly position the pin.
We quickly realised that having a central static crosshair, and moving the map to the location was a much easier and more accurate way to set a location.
Sending reports made offline
As we explained in the previous post, one of the benefits of the apps over the mobile site is that you can make reports even if you have no phone coverage. The app stores all the details until you get back within range and you’re ready to send it off.
One decision we made, which might seem initially puzzling, is that these offline reports don’t automatically get sent off to the council once you’re back within range of a phone or wifi signal.
There are two linked reasons for this, and they’re both related to the fact that FixMyStreet lets you report a problem even if you don’t know who to send it to.
Simply, before we can work out who to send the report to, we need to know exactly where you are – and that you are within FixMyStreet’s area of coverage (ie, within the UK).
Your location also dictates the categories that we show you. Each council has its own categories, and in areas covered by two tiers of government, each council will deal with different types of report. So for example, your county council might deal with potholes, while your district council handles dog fouling.
Once you’re back online we can check that the location is one we can accept a report about, and then fetch the list of categories for you to pick from.
In effect, this delay is also a second chance for you to check your report before you send it off, although that was never the reason for the decision!
The constant map
The final decision we made was to leave the map in the background at every step of the app process.We initially designed it with the map only appearing when you needed it, but having the map underlying the reporting process provides a nice bit of continuity with the website, and seemed to make the app cohere better too. So, while there’s no particular reason for it to be there, we made the decision to keep things uniform.
If anything else about the app has got you wondering, do feel free to leave a comment below!
Photos by Cali4Beach and Christopher Bulle, and adapted from an image by Premshree Pillai (CC)
-
Yesterday, we announced the new FixMyStreet apps (download here for Apple devices and here for Android).
In this post, we want to explain a bit more about why we spent time and effort on making them, when normally we advocate for mobile websites.
Plus, for our technical audience, we’ll explain some of the tools we used in the build.
The why bit
When we redesigned FixMyStreet last year, one of the goals was to provide a first class experience for people using the website on their mobile phone browsers. We’re pretty happy with the result.
We’re also believers in only building an app if it offers you something a mobile website can’t. There are lots of reasons for that: for a start, apps have to be installed, adding a hurdle at which people may just give up. They’re time-consuming to build, and you probably can’t cater for every type of phone out there.
Given that, why did we spend time on making a mobile app? Well, firstly, potholes aren’t always in places with a good mobile signal, so we wanted to provide a way to start reporting problems offline and then complete them later.
Secondly, when you’re on the move you often get interrupted, so you might well start reporting a problem and then become distracted. When that happens, reports in browsers may get lost, so we wanted an app that would save it as you went along, and allow you to come back to it later.
And the how bit (with added technical details, for the interested)
Having decided to build an app the next question is how to build it. The main decision is whether to use the native tools for each phone operating system, or to use one of the various toolkits that allow you to re-use code across multiple operating systems.
We quickly decided on using Phonegap, a cross platform toolkit, for several reasons: we’d already used Phonegap successfully in the past to build an app for Channel 4’s Great British Property Scandal (that won an award, so clearly something went right) and for Züri Wie Neu in Zurich, so it was an easy decision to use it again.
It’s a good fit for a small team like ours, because as well as reducing the amount of code we have to write it also makes use of the skills we already have in JavaScript, HTML and CSS. We could even re-use parts of the JavaScript from the main FixMyStreet site. There are compromises in using this sort of toolkit, but for our circumstances we think they’re the right ones to make.
We decided to focus on apps for Android and iOS, as these are the two most popular operating systems. Even with this limitation, there is a lot of variety in the size and capability of devices that could be running the app – think iPads and tablets – but we decided to focus primarily on providing a good experience for people using phone-sized devices. This decision was partly informed by the resources we have at hand, but the main decider was that we mostly expect the app to be used on phones.
Phonegap gives you the means to run a JavaScript app on the phone, but it doesn’t provide much else. We used JQuery mobile to handle the UI and Backbone.js for the structure. This worked out reasonably well for us but given the pace of development in JavaScript frameworks at the moment we’ll probably look to see what’s available for any future app projects.
There was one big challenge: the functionality that allows you to take photos in-app. We just couldn’t get it to work with older versions of Android – and it’s still not really adequate. We just hope most people are updating their operating systems! Later versions of Android (and iOS) were considerably less frustrating, and perhaps an earlier decision to focus on these first would have led to a shorter development process.
So, there you have it. The app does what we wanted it to (on the majority of systems), and you can download it right now (Android users go here; iOS here).
On balance though? We’d still advocate a mobile-optimised browser site almost every time. But sometimes circumstances dictate – like they did for FixMyStreet – that you really need an app.
We’d give you the same advice, too, if you asked us. And we’d happily build you an app, or a mobile-friendly site, whichever was more suitable.
Photos by Tup Wanders and Nicholas A Tonelli (CC)
-
Use FixMyStreet? Got a smartphone? Then you might like to know about our recently-improved FixMyStreet apps.
They’ve been available for a little while, but we didn’t make a big fuss when they went live.
We often like to release our new products quietly. This gives us a chance to pick up on any problems and fix them before they go to a wider audience.
But now the apps are ready for more general use. So go for it!
You can download the apps here for Apple devices and here for Android (4.1 and above – please see below for more details).
A bit of background
We first released an iPhone FixMyStreet app back in 2008, which now seems reasonably fast off the blocks – the iPhone was only available in the UK from late 2007.
That app was followed by an Android one and, thanks to our volunteers, a Nokia app too.
Last year, we launched a new design for the main FixMyStreet website. Based as it is on ‘responsive design’ (where the site resizes itself according to the device it’s being viewed on), the site works elegantly within your mobile browser, so we were not too troubled by the fact that our apps had begun to date. People could simply go to www.FixMyStreet.com on their mobiles.
We removed those early apps from the Apple and Android marketplaces until we could allocate our resources to creating something better.
As you’ll know if you’ve accessed FixMyStreet from your phone’s browser, the website works just fine for most circumstances. But there are some times when only an app will do – our Developer Struan will explain more about that in a later post. He’ll also be looking at some of the design decisions we made.
New features
So, what new features can you expect when you download the FixMyStreet app?
- Make reports even when you have no phone coverage Sometimes you’ll want to make a report even when you’re out of phone range. Your report will be saved in-app until you can send it off.
- Retains unfinished reports Close the app, lose power on your phone, get distracted and start something else.. none of it matters – your report will still be saved.
- Allows photographs Take a snap with your phone and attach it – or use an image you already have in your photo roll (you can add photos on the main website too, of course).
- Smooth, new design The look and feel is now in line with the main FixMyStreet website.
A note about Android
At the moment, the FixMyStreet app is only available for Android 4.1 onwards. Here’s why.
Developing for Apple devices is simpler than for Android, because there are only a handful of devices an app will be viewed on – the various iPhone versions, the iPads, and iPod Touch. Android, on the other hand, is used over a massively diverse range of phones, all with different capabilities.
For a small organisation like mySociety, it is hard to test the app across every single Android device, so we’ve taken the approach of releasing the app for the latest version.
We’ve had particular issues with photographs in earlier versions of Android – again, Struan will write more about this in a subsequent post – but we are still working on it. And don’t forget, as mentioned above, you can always access www.fixmystreet.com on your mobile browser for a totally optimised experience on any smart phone.
Shout-out to the testers
We want to give a massive “thank you” to all the people who helped us test the new app – your feedback has been so helpful at every stage of the build, and has informed the design decisions we’ve made.
-
We won’t insist on being addressed this way, but you can now append ‘BAFTA and Emmy nominated’ to our name. We were very chuffed to be nominated for two television awards in the last month: the BAFTA for Digital Creativity in Television Craft, and the Emmy for best Digital Non-fiction Programme.
‘TV?’, you might be thinking, ‘I thought mySociety were all about digital stuff.’ Well, increasingly, of course, the lines are blurred. Television programmes come bundled with their own website, Twitter hashtag, or app. These days, TV is less about being a passive viewer, more about becoming part of an active, engaged conversation online.
Last year, we worked with Channel 4 and TV production company Tiger Aspect to create the app and the website tools that accompanied their programme about empty houses – The Great British Property Scandal. A repurposing of the software that underlies FixMyStreet, the app enabled viewers to report empty homes; the site petition amassed 119k signatures – so the audience certainly got involved.
We were, of course, delighted to have been recognised, along with C4 and Tiger Aspect. In the end, we didn’t need the space we’d hastily cleared on the mySociety mantelpiece, but as the BAFTA went to the incomparable Paralympics, we really can’t begrudge it.
And of course, if you’re a TV company looking for help with your digital tie-ins, we’re happy to help.
-
On Wednesday this week, mySociety’s Tom and Paul were in Southampton, competing in the Geovation finals.
Geovation is an initiative coordinated by Ordnance Survey which gives out funding to projects that help “communities address their unmet needs through the application of geographic data, skills and expertise”. When we discovered that the theme this time was “How can we improve transport in Britain?” we knew we had to enter.
As many of you will know, mySociety has been working for some time on FixMyTransport, a project for reporting problems with public transport. Taking much of what we’ve learned from FixMyStreet, we are, in the trademark mySociety way, building a website that will make the process easy, whilst hiding all the complexities out of sight.
FixMyTransport is well under way, and we’re hoping to launch shortly. But with Geovation funding, we hoped to be able to roll out an accompanying mobile application.
This is incredibly important because, after all, the best time to make a transport report is immediately you experience the problem.
mySociety has, of course, always been into maps and geodata – we use them in what we hope are fun and innovative ways across many of our sites, including (obviously) Mapumental, and (less obviously) TheyWorkForYou and WriteToThem. We’re also rather fond of public transport.
We also really enjoyed meeting the other contestants, particularly Cyclestreets whose project looks like it will be one to watch.
At the end of the day, we were delighted to learn that we had been awarded £27,000 to develop a simple, intuitive, cross-platform mobile application for FixMyTransport. We can’t wait to get started. We really believe it’s going to be of real benefit to public transport users across the UK (and possibly further, given the open-source nature of all our work).
If you’d like to stay up to date with FixMyTransport as we build and launch it, you might want to be one of the very first to “like” our Facebook page or follow us on Twitter.
-
We’ve had reports that our FixMyStreet iPhone app is crashing on iPhone 3.0, and so have withdrawn it from the App Store until we are able to find out what’s wrong and fix it. I’m afraid I don’t know when that will be, as it’s all rather busy at present – if anyone has the skills and would like to volunteer to help, the code is available and should just import into XCode. I can supply some crash logs too.
-
I’m very excited to announce that the iPhone app for FixMyStreet is now live and available for download on the App Store (link opens the App Store in iTunes). You can now record a problem when out and about with your iPhone, using its camera and GPS, ready for checking and submitting to the council. Hopefully people will find this useful! 🙂
-
Obviously it’s always great when any paper gives mySociety coverage – it helps get the word about our services out and helps more people get things done that help their lives.
However, today’s look at mySociety’s 5 years in the Guardian makes a few claims I think it’s important to challenge, so instead of writing to the readers editor I thought I’d just seize the power of Citizen Media(TM) to note them here.
First, has the No10 petitions site had “little notable impact” on government policy? Given that that project appears almost single handedly to have bounced Parliament into developing an online petitioning system and devoting debate time to major petitions, I’d say that it certainly has had some impact. But there is indeed a bigger problem of pointing at No10 petitions and going “That one changed policy.” It’s a problem of two halves: scale, and deniability. Governments almost never acknowledge that they were forced into anything, ever. Policy announcements are almost always framed as if the right course of action was being followed all along. So apart from the fact that I don’t know how one could possibly assess the impacts of so many thousands of petitions without a huge research project, I would expect that even those that do have in impact will still usually be denied by the government, even when shifting policy. I would encourage No10 and the whole of Government to take a look at directly challenging this culture, and employ someone whose job it is to find out which petitions are having an impact, and shout about them in plain English.
Second, the majority of mySociety’s sites are programmed by staff and contractors, not volunteers. The volunteers are super-essential to mySociety running every day, but the sheer size of some of our projects makes it unlikely a volunteer could have built them without giving up their day job for many months. This needs mentioning to explain why it matters if our finances are precarious!
Next – do councils find FixMyStreet an irritation or an asset? Well, last time we did a count a few weeks ago, we had 4 complaining emails from councils, and 62 supportive ones, with several linking directly to us. As for the Customer Relationship Management at councils, we’d be delighted to send reports straight into their databases without going via email first, it’s just that only one council has set up such an interface so far. I hope that FixMyStreet can put pressure on councils and their suppliers to build a small number of standardised interfaces for the good of everyone. And yes, we are building FixMyStreet for iPhone and Android, and I’m happy to talk to anyone who wants to build UIs for any other phones.
There – hope that doesn’t come across as too ungrateful to Michael Cross et al. See you at the next birthday party, I hope!
Update: I also meant to mention that I’ve never been a ‘Downing Street Insider’. I was a junior civil servant in the Prime Minister’s Strategy Unit, which is not in Downing Street and more loosely affiliated than the name might suggest.