"They might seem opposed, but it's really a love-story" - Over the Air 2011 at Bletchley Park (30 Sep/ 1st Oct)

This post was written 7 years ago.
Thu, 06 Oct 2011

With the heading I don't mean Over the Air and Bletchley Park, as the meeting and the venue seemed really well suited from the start. In fact, I heard from quite a few people, and I would join in with that, that the event should be held here next year, too. No, I have taken this message from a presentation by Dominique Hazaël-Massieux about the somewhat strained relationship between native mobile apps and web apps. He likened this relationship to that between the UK and France, which is also really a love-story (where of course the French are the superior party, just as are web apps compared to native ones ;) )

But let me start at the beginning. My decision to attend Over the Air was quite a spontaneous one, as I felt quite exhausted, and I also didn't know of anybody I knew who was going. But spontaneous decisions can be the best, and this one was especially good.

I heard some brilliant talks (see below). About HTML5 and its implication for mobile, about the native - web dilemma, which in all the talks was acknowledged to be far from black and white, or even either/or; about APIs, open government data and mobile app security. In addition, there where tours around Bletchley Park and the National Museum of Computing. That in itself was quite an experience, and we had an extremely knowledgeable and enthusiastic guide who didn't hide his pleasure at for once having an audience that he could explain the technical things in detail to. Not ending there, there was an Ignite event on the first evening. I met really nice and interesting people. It was the last days of summer, and we were in lovely surroundings.

Really the only thing that you could perhaps complain about whas the flaky wifi. It did not affect me very much, because I did not have my netbook, and did from the start decide I would not try to get involved in any hacking. But it restricted some of the attempts of the people who actuallly were in the position to cook up an app overnight.

But build they did, and it was really impressive what the different teams presented at the end of the event. Apart from that there was also a demonstration of an enigma machine built with garden hoses, glasses and some round objects that were not marbles (they wouldn't have fitted through the tubes), but I can't remember what they actually were.

The Ignite event was also really good, with talks by Terence Eden about QRpedia, one by Chris Monk called "Kids can't code" (they could, if we taught them), and another one I particularly liked was about cryptic crosswords by Imran Ghory. How many differenct clues for "mobile" can you find??

After that people stayed up very late as expected, consuming part of a tower of pizzas sitting in the marquee. I went to "bed" uncharacteristically early and slept surprisingly well in a sleeping bag on the floor of the ballroom.

lake in Bletchley park

And then there was the tour the next morning. Before going on it I just about knew that Bletchley Park was the "home of the codebreakers" during the war, and I was not really sure what Enigma actually was. It was fascinating to hear about this part of history, the part it played in the development of computing, and also what a big role 'human error' played in the deciphering of code. For example, after transmitting Enigma-encoded messages, the operators would exchange unencrypted Morse code to have personal chats, along the lines of "How is Gertrude in Munich?". These conversations were all logged at Bletchley park, and they sometimes gave clues to what operators would use as the first three letters in their messages - the letters that determined the setting of the Enigma machine. There was also a Lorenz machine operator, who had to resend a message and didn't bother to change the key setting when he transmitted the message again - a shortened version of it. "In cryptography, receiving two different messages sent on the same key means you're in" as was pointed out to us. Apart from that the rebuilt - working! - Bombe machine and especially the Colossus were really impressive. What dedication it must have taken to put these machines together again.

Did it matter that I was German? Very little. It did come up at one point when our guide showed an example message and asked if anybody knew German. When I said yes and added that I was in fact German, there was a brief murmur, then somebody said - yes, you guessed it - "Don't mention the war", and we just all laughed. Later I realised that more time has passed since that Fawlty Towers episode was first aired (1975), then had passed then since the war. I think this is becoming less and less of a topic. There are really other things to worry about, aren't there?

There's a lot more in Bletchley Park to discover than I have seen, and I definitely want to go back there.

Some of the talks I heard - building for the mobile web, bridging the gap between web and native

This was a multi-track conference, and sometimes I found it difficult to choose from the different talks. For example, I feel sorry to have missed the talk on the BBC Public digital space, "debugging web apps on mobile devices" (but just had a look at the slides and think they will be really useful, too, should I attempt such a thing!) and Developing a better world one startup at a time.

But I was very glad to hear the ones that I did. One of the highlights for me was Lyza Gardner's talk "Crap, it doesn't look quite right.." as it seemed to encompass all that I'd ever heard or thought - plus some new things - about how to develop websites for mobile with the necessary pragmatism. One point that came up in the discussion (and not only at this talk) was how to adapt images for the small screen. It is by now clear that the "Responsive design" approach is not the definitive answer here (see the "Fools gold" article - written by a colleague of Lyza's, as I just noticed). This is an occasion where it makes sense to use device detection. It was interesting to hear Lyza's aproach, wich was to use the Wurfl database to detect screen size, using breakpoints to determine which cached resized image to use. Between those breakpoints she uses the "responsive" technique to resize the images. Somebody also pointed out that you would get a caching problem if you had too many different sizes of pictures.

I heard two talks about HTML5/CSS3/Javascript, the one mentioned above, and one by Bruce Lawson. Both were very informative and entertaining. Dominique pointed out that websites have influenced very much how native apps work while web apps can learn from native apps (and will, through the new APIs). He said web apps need to become "first class citizens", they need an application list and application switching as native apps have. Also, there should be the possibility to isolate cookies for the individual apps. It looks in fact like web apps are gaining ground, so this will hopefully become a reality.

So what does it look like in practice if you want to build a mobile web app? James Hugman from future platforms explained how they built the very successful app for the Glastonbury festival. The app should run on iOS, Android and Nokia. James pointed out that Android users don't like to have iOS-like user experience on their phone, you need different interfaces for different phones. But they did not want to develop three different apps, and wanted to use web techniques. So they looked at the Titanium framework which supports iOS and Android. But there were some difficulties, like the lack of tooling. Eventually they developed their own framework called Kirin, which uses native presentation layer and native platform, but the application layer is written in Javascript, MySQL etc. My notes on this are very scarce, so check out the slides which will be up after DroidCon. Sure worth a look.

Another mobile app built with web technologies is the app for the BBC World Service. The app runs in 27 languages, including languages with right-to-left writing. "What do you use, native or web? As so often, the answer is 'It depends'", said David Vella who gave a presentation about the app. It became clear in several talks, that while it would be good to build everything purely with HTML5 and related technologies, it is not always practicable to do this. And native and web need not be mutually exclusive, as you can write a web app and then repackage it as a native app. In this case, David and colleagues used HTML5 in combination with CSS, jQuery and iScroll plugin, but the code grew and grew and they eventually switched to the Backbone framework for the Javascript. The plan is to make the app downloadable by repackaging it with PhoneGap, but also make it available just as a URL. I really enjoyed this presentation by David Vella, have a look at the slides.

This was a really well organised conference with a great athmosphere and great people. Hopefully there will be an Over the Air in Bletchley Park in 2012.

This post was written 7 years ago, which in internet time is really, really old. This means that what is written above, and the links contained within, may now be obsolete, inaccurate or wildly out of context, so please bear that in mind :)
Comments

VolunTree - Ideas for an app matching volunteers with causes

This post was written 7 years ago.
Mon, 07 Feb 2011

This is my report back to Local by Social, following an event in Bristol on 29 and 30 January 2011 that I took part in. The event was about using Open Data to improve services to the public. The first day consisted of a series of talks, followed by a brainstorming session about what comunity apps we would find useful. The second day was a 'hack day'. The ideas by then had been distilled down to five projects, which about 30 people worked on. (The audience at the first day had been at least a hundred.) Ours had a varying number of participants, but I think the final number was three: Mark Braggins, Tim Winship and me. It fell to me to present our ideas at the end, and write it up.

In our group we outlined what our app should do and how it could work, but did not get to the point that we discussed the practicalities of building it. Part of our time was devoted to hearing Tim Davies explain about Open Data, including his Open Data cookbook, and the differentiation to Linked Data. This was very worthwhile, and I will attach some notes at the end of this post. But first:

VolunTree - a future volunteering app

Initial ideas

We started by discussing our ideas of what a "volunteering app" should do. The consensus was that it should be a matching service for both people wanting to volunteer, and organisations (or even individuals) in need of helpers.

We also agreed that it should, at first, be restricted to a local level, that is, Bristol, and that it should be integrated with already existing services.

What is already out there?

We had a look at some sites that were providing services in the volunteering sector:

UK-based:
Do-it
i-volunteer
Reach
Timebank

US-based:
Volunteermatch
Hands on Nashville
Groundcrew

iPhone apps: 
Volunteermatch, iLocate, vinspired

In Bristol:
Voscur
bristolvolunteers

What service does the app provide that's not already there?

Many of the existing sites let organisations looking for volunteers post their profiles and their needs. People willing to offer their time can then scan these posts and contact the organisation in question. Our idea was to let potential volunteers enter profiles including their skills, interests and availability, and give organisations the opportunity to contact the volunteers, based on these profiles. I subsequently found that there are some websites that use volunteer profiles (VolunteerMatch, Reach), so part of this has actually been done. 

What does the app do?

Volunteers

  • provide contact details
  • select categories they are interested in (children, arts, IT etc.)
  • indicate whether they want to donate time as a one-off, on a regular basis, or occasionally
  • indicate when they are available

There could be some additional 'rating mechanism' where volunteers collect rewards for volunteering. We had slightly differing opinions here. I thought there should just be a reward for having turned up and done the job, while my 'colleagues' thought a star-rating by the organisation that had requested help would be good.

Charities, or even individuals

  • provide contact details
  • select the categories that apply to the work they've got
  • have option to post when they need help for a specific event, project

The app can be used by volunteers to match the posted work against their profiles. Also, there could be the option that when an organisation posts about a one-off event or project they need help with, a text/email/other kind of notification goes out to those volunteers that have a matching profile.

As mentioned before, there could be some rating mechanism, and we were also thinking that sponsors could donate 'rewards' that could then be given to the 'best volunteers'.

Further thoughts

We did not get to the question "How do we realise this technically". As these days were about Open Data, how could these be used? There is certainly the element of locality. Which places where volunteers are needed, are near me? But could there be more to it? Charities are pushed to publish more data, especially on how they use their money, how much organisational overhead is there, what part of the money does actually go to the causes themselves? Could these data become part of the app? And how about the volunteering being done for the charity? Perhaps the data on how many volunteers worked for a charity could also become part of the Open Data. Eventually, could data about where, when and how many volunteers are needed, be fed directly into the app from the charities' sites? We are certainly a long way from that, and it would be more a case for Linked Data, and Linked Data that can be published easily and routinely.

Apart from the technical aspects, there is a lot to consider here. If you include skilled workers, and people working with children, there is the problem of having qualifications verified and CRB checks carried out. Could a service be integrated that checks the volunteer, and, once this is done, allow their profile to be marked as "checked"? All of us agreed that the current situation where a CRB check for one school cannot be used for another is creating a lot of unnecessary work and is just annoying for both the applicant and the employer. But as long as the situation is like that, should one perhaps restrict the app just to unskilled work without special requirements? And, what's more, how could such a service be funded?

Conclusion

Our group had quite a few ideas about this app, although we didn't build anything. It would have been great if we could have started on that, perhaps by pulling existing data from the web, but there was little time, and admittedly we also did not have the expertise in this topic to achieve something like that in one day! To have such a service would certainly be desirable, and considering that people aged 16-24 are the main age group offering to volunteer, an app seems the right format.

Funnily enough, while I was looking for the Guardian article, I learned about the website for vinspired (see above). And it seems to do exactly what we had in mind, including the rewards scheme (and there is an iPhone app!) - but only for 16 - 25 year olds. Vinspired seems to be quite successful and working well, which is good to see. It could perhaps be an inspiration to build a similar service for people of all ages, and an app that works on all mobiles..

 

Tim Davies talking about Open Data and Linked Data

I have to admit that my notes on this are a bit sketchy, so if I get anything of this wrong, it is definitely my fault, not Tim's! Also, our little group joined in only half-way through, so I did not catch all of what he was explaining.

When you look at Open Data, the first thing to consider is the different formats that data can be in. One of the main objectives of making data available to applications is to turn data present in a human-readable format, into data understandable by machines.

The simplest way to present data in a human-readable format is in a spreadsheet. However, if you use Excel, you might use different colours that communicate additional meaning, and sometimes you have more than one piece of information in once cell. To make these data machine-readable, the first step is to convert the extra meaning into completely "flat data", as you would have it in the non-proprietary format CSV.

A good tool that can be used to 'clean up' data in that way is Google refine.

I think at that point we started talking about Linked Data, and how those were related to Open Data.

Open Data can come in all kinds of formats, while Linked Data is always in the form of RDF.* But that is just the technical aspect. The idea of linked data was to get context back into the data, to create self-describing data. You get the context by data linking to other data (as the name says).

If you want to create Linked Data, you describe it using RDF. As for the terms that you use for describing your data, you first look at what other people have used before. The namespaces definining the properties you can use are those belonging to so-called ontologies. There are well-known ontologies like FOAF (to describe people) or Dublin Core (to describe resources, among others web pages). If the terms you need for describing your data are not in an existing ontology, you can just create your own. There is a guideline describing how to author new ontologies, called OWL.

An important aspect of Linked data is that each item has its own URL. Each ontology has a URL, too. There is a service called prefix.cc that lets you look up existing ontologies.

The main characteristics of Open Linked Data are summed up in the 5 stars of Open Linked Data. (There could also be Linked Data that is not open**)

Going back to Google Refine, this lets you import all the properties from a namespace by providing the URL for that namespace. Another helpful tool Tim mentioned is Geonames, which gives you coordinates and other data for place names.

One of the listeners remarked that in the local councils there was a lot of scepticism about the use of Linked Data. Mostly because of the resources you would need to create this form of data. And what benefit did you get from it? Tim replied that indeed at the moment there were few simple use cases for Linked Data. But that in areas where there were standards emerging (as is the case with spending data), it would get easier to publish data, and that the benefits would become more apparent.

One aspect that can make a difference is certainly to make data viewable. One example is the Comparator tool that is part of the Young Lives Data project that Tim did. The site also includes a good description of the process of making data available in that way.   

As Tim concluded, in the future the best way to publish your data might be to provide it as linked data, but then also transformed back into CSV and made viewable.

So basically, the data goes on a loop, but afterwards it is linked, and that could make quite a difference.

-----------------------------------------

*Actually the term format is not totally correct when you talk about RDF. As Tim pointed out, RDF is more a model than a format. The standard format is RDF/XML, but the data can be presented in other formats like N3 or also inside an XHTML document as RDFa. The data can also be hosted in a so-called Triplestore.

**This article is also quite interesting in that respect: Open Data, Linked Data & the Semantic Web)

This post was written 7 years ago, which in internet time is really, really old. This means that what is written above, and the links contained within, may now be obsolete, inaccurate or wildly out of context, so please bear that in mind :)
Tags: open_data / linked_data / apps /
Comments