Archive for April, 2013

Reading list

Some very meaty stuff this week, so it’ll last you 2 weeks (next week I’m in Las Vegas for Future Insights Live conference – use the discount code “Bruce to get 10% off the ticket price).

Web Standards



Poetry corner: Emily Dickinson

Emily Elizabeth Dickinson (December 10, 1830 May 15, 1886) was a prolific American private poet; fewer than a dozen of her nearly eighteen hundred poems were published during her lifetime.

Most interestingly, however, is the fact that many of her poems can be sung to the haunting melody of “The Yellow Rose of Texas”.

I investigate further.

Eating well, cheaply

When the horsemeat scandal was all over the papers showing that lots of readymade and fast food is really nasty, I said to some friends that I was glad that my family always buys real meat, and fresh vegetables and prepare them ourselves (we don’t do it to save money, we just hate junk food). Some of my friends told me that’s because I’m comparatively well-off and that many poorer people can’t afford to do that.

I decided to cost up a favourite meal of ours: free-range roast chicken with all the trimmings: roast potatos, roast pumpkin, carrots, parsnips and frozen peas (life’s too short to shell peas). We also had Yorkshire pudding, even though this shocks traditionalists who clam they exclusively accompany beef.

This easily serves five (including two ravenous teenagers) so that generally we don’t need an evening meal if we eat this at lunchtime.

  • Free range chicken, £4.99 (1.5 kgs)
  • Yorkshire Puddings, 55p for 15 (we used 7, so 26p)
  • 1kg Potatos (90p at our local shop)
  • roast pumpkin, 79p (we used half, so 40p)
  • 1 bag Aldi baby carrots, 49p (put them raw around the chicken so they slowly absorb the chicken juice and cook that way)
  • 3 Parsnips (half a 79p bag, so 40p)
  • Sainsbury’s Sage & Onion Stuffing, Basics 85g, 15p (we’ve tried the posher stuff but the kids like this best)
  • broccoli, 79p
  • frozen peas, 99p/ kg. approx 250g, so 25p.
  • Small amount of sunflower oil – say 25p
  • 1 Knorr chicken stock pot to mix with veg water to make gravy (8 for2.40, so 40p)

The sum total of the ingredients was9.67.

Running a gas cooker costs £7.24 a month to cook for a family of 4, so let’s divide that by 30 days and estimate that it cost 25p in fuel to cook this meal.

To go with the meal, we had a £3.59 bottle of Toro Loco Tempranillo 2011 (which won a silver medal at the International Wine and Spirit Competition).

This makes the ingredients, fuel and wine cost13.51, or2.70 a head. I can’t find the pre-recall price of Findus “beef” lasagne ready meals, but a search on Tesco website for “ready meal” suggests that the cheapest are about1 for about 300g of food, which wouldn’t satisfy me let alone growing kids. My meal was at least double that size – each person had 200g of roast spuds as well as all the other stuff – and included a large glass of wine each for the three adults (and a good glug into the gravy).

Therefore, I’m going to stick my neck out and say that it certainly isn’t more expensive to eat properly, and is much better for you (although it took me about an hour of prep time rather than 5 minutes to microwave).

Reading List

If you fancy coming to Future Insights Live in Las Vegas 29 April 2 May 2013, use the discount code “Bruce” to get 10% off the ticket price.

Web Standards




A cake for Thatcher’s legacy

My daughter’s Easter holiday homework was to design and make a commemoration cake. Like most of her class, she had planned to make an Easter cake, until the day when Margaret Thatcher died.

She researched her life and found a graph of unemployment figures during the Thatcher premiership which resembled the letter “M”. Add a swift “T” for the initials of The Great Helmswoman, the dates of her life in icing over a home-made Victorian values sponge and we have an edible commemoration of a true “Let them eat cake” politician.

cake commerorating Mrs Thatcher

My daughter felt it important that the cake be entirely factual. There were other graphs and statistics we considered, many of which contradict the hagiographies that are being circulated by the right wing at the moment.

For example, her Right To Buy scheme turned the UK into a nation of homeowners, we’re told. Actually, a third of ex-council homes are now owned by rich landlords rather than their occupants. Because councils were forbidden from building new housing with the cash they received from selling their old houses, we now have a huge housing problem, with many young people unable to leave home at all.

It’s a similar story with the utility privatisations which were to make us a nation of shareholders and participatory capitalists. “Small British shareholders have no influence over the overwhelmingly non-British owners of the firms that generate and distribute power in Britain.” writes the London Review of Books:

when local electrical engineers dig up the roads in London, they’re working for East Asia’s richest man, the Hong Kong-based Li Ka-shing … In north-east England, they work for Warren Buffett; in Birmingham, Cardiff and Plymouth, the Pennsylvania Power and Light Company; in Edinburgh, Glasgow and Liverpool, Iberdrola; in Manchester, a consortium of the Commonwealth Bank of Australia and a J.P. Morgan investment fund.

Like the American neo-cons she was so friendly with, her fiscal policies were laissez-faire but she believed in government small enough to fit into the bedroom. She was deeply socially conservative and enacted the shameful Section 28 legislating that a local authority “shall not intentionally promote homosexuality or publish material with the intention of promoting homosexuality” or “promote the teaching in any maintained school of the acceptability of homosexuality as a pretended family relationship”.

You might believe the way she treated striking miners was justified, but her contempt for the working class is demonstrated by the Hillsborough cover-up.

There was no economic miracle: British GDP has grown in line with Germany and France, neither of which had the twin blessings of North Sea oil or Thatcher.

Statistical analysis in 2012 shows Britain has some of the lowest social mobility in the developed world; only Portugal is more unequal with less social mobility:

Social mobility hasn’t changed since the 1970s – and in some ways has got worse. For every one person born in the 1970s in the poorest fifth of society and going to university, there would be four undergrads from the top fifth of society. But if you were born in the 1980s, there would be five.

Yes, yes, Thatcher stopped the unions “bringing the country to its knees”. Then she delivered it to the bankers’ exemplary stewardship. Her Big Bang city deregulation paved the way for casino banks with decreased reserves, so the financial crash could happen.

If only her legacy were as easily swallowed and as quick to demolish as my daughter’s delicious cake.

Farewell, hgroup

The <hgroup> elements is removed from HTML 5.1. It was defined as “typically used to group a set of one or more h1-h6 elements to group, for example, a section title and an accompanying subtitle.”

I shan’t be sad to see it go; in November 2010, I argued that it was too hard to grasp; if you want to indicate that something is a subtitle or tagline, you want to indicate that on the tagline itself, rather than on an element that groups a tagline and non-taglines.

More recently, Alex Russell and I had a conversation in which he argued that elements without a UI are likely to fail (more of that from him, later). I think he’s right in this case; <hgroup> is used solely to preserve the outlining algorithm which itself is esoteric.

So how do you now mark up taglines and subheaders? Simply: as you always have. The spec now discusses this in the Common idioms without dedicated elements section.

Three methods are suggested. The simplest is simply with punctuation:

<h1>The Lord of the Rings: The Two Towers</h1>

The second is by using a <span> inside a heading element that allows you to style the secondary part, for example with h1 span {display:block; font-style:italic;}:

<h1>The Mothers 
   <span>Fillmore East - June 1971</span> 

The third (and the one I use, because a tagline doesn’t feel like a heading to me, but does belong with one in the <header>):

<h1>The Mothers</h1>
<p>Fillmore East - June 1971</p>

Expect HTML5 Editor Steve Faulkner to blog about this for HTML5 Doctor when the jet-setting roister-doister returns back to Blighty next week.

Reading List

Web Standards



What does the web platform need next?

The web platform has advanced out of all recognition, and continues to evolve at a frankly bewildering pace (I’m paid to keep track of all this stuff, and if I take a fortnight’s holiday I scramble to get back on top of it).

Four years ago, if you wanted to access your device’s GPS information, you pretty much had to use a native app; now, the W3C Geolocation API is available in all browsers, on most classes of devices.

The advancement of what marketing and the press like to call “HTML5” (but mostly isn’t just HTML5) is closing the gap between the capabilities of native and web. But it isn’t there yet.

In 2011, Joe Hewitt (original Firebug developer and Facebook person) wrote a great blog post called Web Technologies Need an Owner, which I quote here but is worth reading in its entirety:

The arrogance of Web evangelists is staggering. They take for granted that the Web will always be popular regardless of whether it is technologically competitive with other platforms. They place ideology above relevance. Haven’t they noticed that the world of software is ablaze with new ideas and a growing number of those ideas are flat out impossible to build on the Web? I can easily see a world in which Web usage falls to insignificant levels compared to Android, iOS, and Windows, and becomes a footnote in history. That thing we used to use in the early days of the Internet.

My prediction is that, unless the leadership vacuum is filled, the Web is going to retreat back to its origins as a network of hyperlinked documents. The Web will be just another app that you use when you want to find some information, like Wikipedia, but it will no longer be your primary window. The Web will no longer be the place for social networks, games, forums, photo sharing, music players, video players, word processors, calendaring, or anything interactive. Newspapers and blogs will be replaced by Facebook and Twitter and you will access them only through native apps. HTTP will live on as the data backbone used by native applications, but it will no longer serve those applications through HTML. Freedom of information may be restricted to whatever our information overlords see fit to feature on their App Market Stores.

I disagree with Hewitt’s suggested remedy – that there should be one rendering engine with “competent, sympathetic, benevolent leaders” and therefore no standardisation forum – but I share his worry. I want web to win.

I’ve been musing on what’s still missing from the web platform to make it more attractive to developers, and asked for people’s reasons why they chose native app development which I recorded in a gist.

Many of their “missing pieces” are actively being worked on in W3C and other standards bodies. DRM is controversially being worked on, specified by Google, Micrsoft and Netflix. I argue that “DRM” a necessary evil to prevent the web platform becoming irrelevant to a company like Netflix (which by itself constitutes a third of American peak-time internet traffic), but I mistrust its plugin architecture (without having the wit to suggest something better).

Hardware access is being looked at by the W3C sysapps group, which is working on things like Bluetooth API, Calendar API, Device Capabilities API, Network Interface API, System Settings API.

Camera access (and microphone) is handled by WebRTC, implemented in Chrome and Firefox. Presto-based Opera allows access to the camera with the getUserMedia API (a subset of WebRTC).

A Notifications API exists, but it’s not implemented anywhere as it’s incomplete I’m a liar; Web Notifications is supported by Chrome. (Correction courtesy of @simevidas) However, the spec only allows native-style notifications to show while the user has the relevant page open.

Offline working is very important – we see that in developing countries, web sites offering Java apps are very popular because of games that can be played offline. Although the current Application Cache is good enough for simple offlinerification, it isn’t powerful enough for industrial use. Jonas Sicking of Mozilla has a proposal to improve appcache.

One spec that also needs a mention here is the badly-named Indie UI spec. I assumed it was about User Interface and was therefore bound to fail (who would take seriously an attempt to standardise UI?) but it’s actually about User Interface Independence, abstracting away the “how” a user attempts to scroll (scrollwheel? swipe? pen? joystick? keyboard down-arrow?) from their intention. It’s like W3C Pointer Events taken further:

Independent User Interface (IndieUI) is a way for user actions to be communicated to web applications… IndieUI will allow web application developers to get these events from different devices without having to recognize how the user performed the action. With IndieUI, AT will have a simple set of events to control web applications, and web application developers will have a uniform way to design applications that work for multiple devices and contexts.

The adequacy of the Web platform depends on what kind of apps you’re making. The UK Government Digital Service recently cheered my cold, cynical heart by saying

Our position is that native apps are rarely justified … Stand-alone mobile apps will only be considered once the core web service works well on mobile devices, and if specifically agreed with the Cabinet Office … For government services, we believe the benefits of developing and maintaining apps will very rarely justify their costs.

When it comes to mobile, we’re backing open web standards (HTML5). We’re confident that for government services, the mobile web is a winner, both from a user and a cost perspective.

Apps may be transforming gaming and social media, but for utility public services, the making your website adapt really effectively to a range of devices’ approach is currently the better strategy. It allows you to iterate your services much more quickly, minimises any market impact and is far cheaper to support.

This is about informational or transactional apps, rather than super high-performance games or heavily media-centric apps. But the latter aren’t the majority, even if they are higher-profile – according to yesterday’s HTML5 vs. Native vs. Hybrid. Global developer survey 2013. (Beware reading too much into this survey, as it’s commissioned by a Microsoft-centric company, so the respondants may have different perspectives than other app developers.)

Games developers benefit from the huge performance increases in JIT JavaScript engines, WebGL and Mozilla’s asm.js project looks very interesting. Whether this is enough, I don’t know; I neither write games or even play them. (Disclosure: Opera has a game engine product called Sphinx that I’ll talk about soon.)

Monetisation feels like a big deal to me. The Mozilla guys have an API called navigator.mozPay() but as far as I can tell this is only for Firefox OS and not the open web, so not relevant to this discussion at the moment. Hopefully, it will feed into the W3C Headlights project, which has identified Web Payments, HTML5 Performance and “Closing the Gap with Native” as areas for urgent study.

It seems to me that if reach is your goal, the Web Platform is your better choice – it works in lots of places. If getting paid for your app is your goal then currently native or hybrid development is your better strategy. We need to stop looking queasy when people want to get paid, too; free stuff isn’t an inalienable human right.

What can you do if you want the web to win? Use it, and nurture it. If you’re prepared to spend hours debating whether rebase or squash is considered harmful (and you should, because using tools well is the mark of a professional), then be prepared to spend 41 minutes considering whether your markup makes sense – the code that the browser runs is your product. As Confucius would undoubtedly have said, “Don’t just be on the web, be of the web”.

Hassle me, and other representatives of browser companies to get new standards agreed, and implemented. Vendor co-operation, clueful devs, Device APIs, open Operating Systems that don’t lock users into one browser, and (crucially) auto-updating browsers are the cornerstones of an open web.

(Added Friday 12 April: .net magazine interviewed me after reading this, where I reiterate and elaborate some of my points.)

(Last Updated on 17 April 2013)

Open Web Standards for One Direction fans

Inspired by the excellent Thatcher for One Direction fans, here’s my guide to Open Web Standards for fans of the finest band since .. like, ever!


Imagine that you and your bezzies save up and buy a brand new guitar for Niall. You write to the fan club, and they send you VIP tix for a gig and ask you to present it to Niall on stage for him to play it at the encore! Swoonsville.

You give it to him, on stage in front of thousands of jealous fans; he hugs each of you to say thanks (and his lips brush your cheek when he whispers his gratitude!) and then – OMG! disaster!! – the standard jack plug that every other guitar uses won’t fit in the one you’ve bought him. He shrugs, puts your guitar down, picks up his old one and all the audience laugh at you in a totally bitchy way!

Horrible, I know. Why didn’t the standard lead fit into your guitar – rubbish! Web standards are standard ways for different parts of the web to fit together, so web sites from Microsoft and Google play just as well in browsers from Opera and Firefox as they do in browsers from Microsoft and Google, YGM?


So, imagine that Simon Cowell wants to get a new member of the band in. Impossible to improve on total perfection, I know, but this is, like, imagination, yeah?

So what would he do? He can’t sack one of the boys … so he gets a 6th member in! And it’s George from Union J! Perfectomundo! And that’s like HTML5: it just improves on what went before, without losing anything!

Now, imagine that instead of getting George in as well, Simon sacks Louis and Zayn and gets in Nathan and Jay from The Wanted instead. The magic’s gone. That’s what XHTML2 tried to do – it wanted to improve the web, yet breaking what we love while it did it. That’s why Tim Berners-Lee (he’s like Simon Cowell, for the web) called XHTML2 “a total barfmare” and told all those guys to get real!

So we love HTML5: the initials even stand for “Harry, Three Men, Liam” – and there are five of them! HTML5 FTW, LOL!

No plugins

Imagine Harry sends you an advance CD of the next album (to make up for the guitar disappointment). But when you listen to it, there’s no singing – just the music! There’s some loose electronic stuff in the envelope and a note (written by Haz himself, sigh!) saying “to hear the vocals, just install these chips into your CD player”. But you can’t – there’s nowhere to add them, and they might break your CD player when they’re added, anyway.

That’s what plugins are like – extra stuff to add to your web browser. Open web standards want the browser to be able to deal with all the content without having to muck about with extra stuff, so you can listen to the dreamy sounds of the boys’ new songs anywhere you can surf the web!

Open web standards: that’s what makes them beautiful!

Open collaboration

OK, we all know that “Live While We’re Young” is the finest song ever written – except for all the other ones the boys recorded, natch! But if every song sounded the same as that it would quickly get boring, right? So what Simon and the boys do is get new writers in, to bounce ideas around, mix it all up, and make sure that there are constant new ideas so the boys stay the best band in the universe.

And that’s open collaboration does for the Web – keeps it fresh, shakes it up, and ensures there’s something for everyone. That’s why we say to open web standards: it’s Gotta Be You, One Way Or Another!


DRM stands for Digital Rights Management. Imagine that you find a DVD on eBay of the best performances on the American leg of the Take Me Home Tour. None of your m8s even knew that this DVD existed (some fans they are!) You wait for ages for it to be shipped from the states, and all gather round your DVD player at home, to find … the DVD flashes the message “wrong region” and won’t play at all!

Just imagine if DVDs were artificially locked to certain regions … oh.

I gratefully acknowledge the help of my 14 year old daughter for her insights into the world of One Direction. Even though she like totally hates them.

Goodbye Thatcher

Goodbye Mrs T, friend of Pinochet and the Khmer Rouge, homophobe, opposer of sanctions in South Africa and destroyer of the domestic mining industry.

It’s bizarre that a grand funeral is planned, when she believed that “there is no such thing as society” and that the state should be rolled back.

I hope that her funeral will be a huge demo against the savage austerity policies her successors are enacting. Let’s also note that her City deregulation allowed the casino banks to behave so recklessly before they collapsed, causing the financial system catastrophe that (apparently) requires the current attacks on the poor.

She was long ago irrelevant. But her legacy is vile, and current.