Wednesday, 19 September 2012

It’s broken because we designed it that way

Scott Hanselman’s recent post, on a week of annoyances caused by troublesome software, was entertaining because we’ve all been there. Thankfully it managed not to indulge (or at least I could stomach) the allusions to a lack of “passion” and “craft” and the comments were mostly sane, albeit I didn’t necessarily agree. I must confess to occasional astonishment at how much does work, not only in the world of IT but the world in general; yet we can do better, and if we didn’t think so then what’s the point?

xkcd: Good Code
It doesn’t have quite the same impact, but many of his gripes would be more accurately described as “less than perfect” rather than “broken” and it strikes me - in development, now more than ever - that “less than perfect” is not only allowed, it’s actively encouraged - I’m thinking of “release early, release often”. For example, I like Agile - since customer requirements will evolve it’s helpful to have an adaptive method that anticipates this - but it comes with an understanding that what’s initially released isn’t the finished article. Ironically the separation of concerns afforded by such patterns as MVC and MVVM not only enable this, but necessarily come with additional code you’d expect with any abstraction.

One can argue the difference between internal and external releases, and there is a balance, but if we don’t release early then any perceived advantage from user feedback becomes moot. The point here is that “less than perfect” is something we accept, as quicker and better is expected in the long term. The business challenge is to ensure as much effort is extended to the updates as the early release - which in turn requires challenging (or should that be refining?) an “if it ain’t broke” mentality.

A further confession: I’m not particularly understanding when “less than perfect” hits me; though yesterday’s example was a bug. In creating an online account to manage my Barclays mobile phone insurance I discovered the password format validation was different to that on logging in; the latter was strictly alphanumeric, the former allowed for what would have been more secure. Thus the telephone call I’d hoped to avoid by creating said account became inevitable; not that I could explain the problem to the person on the other end.

Friday, 14 September 2012

London in 2012, not London 2012

Harry Potter studio tour The British Museum The Shard
The Millennium Bridge The London Eye feet The Houses of Parliament
The London Eye Big BenDowning Street
Think of this as a bump... with pictures.

Tuesday, 28 August 2012

Amazon’s square peg, round hole

This post is hardly cutting edge; a search shows people asking the same question as my mother, only three months ago. Not quite the same, my Mum’s phone call said she couldn’t find the option to switch off the radio on her Kindle; it wasn’t until after we’d hung up, having agreed to her stopping by after church because I had no idea, that I realised she meant wireless. And indeed this wasn’t a case of her forgetting how, or having lost the hand-written instructions she makes for every device, be it DVD player, iPod or this, her latest device. The wireless on/off option had disappeared. It wasn’t on the main menu, nor had it moved to the settings sub-menu.

Only of course it had. If I’d looked more closely at the blurb under ‘Airplane Mode’, which I’d briefly registered as not having seen before, or if I’d even given some thought as to what ‘Airplane Mode’ might be, I’d have realised this was the wireless option, relocated and renamed and with the on/off options therefore reversed. Presumably done with the noble intention of consistency with other products, the iPhone for example, that’s still a crap user experience.

An iPhone has several functions transmitting a signal and ironically, depending on the aircraft operator, since ‘Airplane Mode’ isn’t standard, it allows you to re-enable the Wi-Fi independently. So if Amazon is determined in its effort to be consistent, to a term that isn’t, it needs a specific option for switching the Wi-Fi on/off, in addition to its ‘Airplane Mode’ - which on my mother’s Kindle can only switch the Wi-Fi off/on. Or perhaps Amazon should concentrate on applying patterns where they fit.

Tuesday, 14 August 2012

Understood by all and with value to none

The closing ceremony of the London 2012 Olympics was what I’d feared of the opening ceremony. An antithesis of that glorious spectacle it was a mess of ideas, a shambles, a ‘history of British music’ degraded to a party or some such excuse. Early on we were treated to an extended montage of athletes crying, and with subtlety suitably bludgeoned it was on with the show.

Fashion supermodels in the Olympic closing ceremony
And what a show; the stage imaginatively made up in the style of the union flag, the athletes were kettled within and encircled by several billboard trucks driven to the tune of David Bowie’s Fashion. From each truck emerged the fashion supermodel pictured who then, to prove his or her versatility, walked to the centre of the stage and posed fashionably. Some marvelled, some wondered. It was this sense of the unknown, this crazy sense of danger that kept me watching; here, some supermodels standing upright; there, a middle-aged pop group aboard a flatbed, none of whom wore seatbelts, one of whom, the saxophone player, dangled from a wire; it was madness.

Or was the highlight Liam Gallagher and his new band, whose ‘new arrangement’ of an old Oasis ‘classic’ amounted to singing out of tune? Not a problem with recorded slots, of which there were several including the aforementioned Bowie, and of course John Lennon whose challenging contribution - “Imagine there's no countries, it isn't hard to do” - caused the more enlightened athletes to vanish in a puff of logic.

Not to be outdone, George Michael - who was able to attend - in a paean to the great days of Top of The Pops, mimed to a recording of his new song. It’s an outrage, suggested various commentators afterwards, to use the occasion to plug your latest single, and who presumably thought the Spice Girls and The Who had appeared for philanthropic reasons. There were lights, there were fireworks, an emotional time was had by all. I’d liked Michael’s performance, preferable anyway to the adoration inexplicably given to five wannabe pop stars screeching “spice up your life”, which was my daughter’s favourite moment; my daughter is ten.

Saturday, 11 August 2012

Medalling

Mo Farah. Olympic 10,000m champion. Olympic 5,000m Champion.
The party is almost over and as befits two weeks of almost non-stop entertainment, I am due an almighty hangover. I’ve enjoyed the Olympics so much that a verbing medal no longer perturbs; though a podium probably would; small steps and all that. So good, I couldn’t manage the upset required at Aiden Burley’s asinine comments on multiculturalism during the opening ceremony, nor the daft notion that ‘super Saturday’ - a day on which Team GB won six gold medals - somehow proved the Conservative MP wrong. He was wrong, but the ‘proof’ was equally silly.

So many sports, some of which I was only barely aware, yet sensible to this: whilst it has been fun, I am no more motivated to get on my bike, take up running, dive back into the pool or punch or kick someone for sport; at least, no more inclined than I was before all this started. Many I know, will be; some of whom may medal in the future. You see, I am trying.

Monday, 30 July 2012

The isle is full of noises

London Olympics. Voldemort versus Mary Poppins
I’ll admit to wincing when I heard there would be an NHS section, it sounded a little too ‘eastern bloc’ for my taste - workers of the state perform for your entertainment - yet what we got was fun, not light hearted fun - that came later with Mr Bean’s Chariots of Fire - but creepy fun, the much reviled American NBC commentary were right about that, it was kind of creepy and all the better for it. My biggest concern was a rehash of the tried and tested, some bland brightly coloured offering understood by all and with value to none. Instead nurses jived around beds before settling their charges down for the night; J.K. Rowling began with a reading from Peter Pan, from which sprouted imagined terrors, ghouls from every corner, the child catcher, the Queen of Hearts, Voldemort towering over all. Who would save the children? Why a band of Mary Poppins, of course.

Even the lesser segment - into the digital age - effectively a performance to a rock-through-the-ages concert, avoided the temptation to delve into the merely popular but kept faith with those providing an alternative, an independence, or who, if I may indulge in cliché, have stood the test of time. I don’t like rap but for a few short minutes I was a Dizzee Rascal fan. And there were so many other great touches; the Queen and James Bond featured together, illuminated doves cycled around the stadium to the Arctic Monkeys singing The Beatles’ ‘Come Together’, and at the end of it all the lighting of the torch, itself a wondrous architectural achievement.

London Olympics industrial revolution
All of this, all of it, was set up by an extraordinary opening 30 minutes. First the orchestra playing Nimrod from Elgar’s Enigma Variations, then the countdown until we were ‘live to the world’, starting with a terrific recorded opening sequence taking us from the source of the River Thames into the Olympic stadium, live. Songs followed representing the constituent parts of Great Britain and Northern Ireland - my daughter joined in for Flower of Scotland - topped and tailed with Jerusalem; Nimrod then Jerusalem, two of my favourites, how did they know? This was a precursor to an economic history of our country, the history I was taught at school; the tearing up of land that forged the industrial revolution which in turn would lead to Victorian riches and place us at the centre of the world. From Kenneth Branagh’s inspiring lines from The Tempest, his Brunel strode the stage as six stacks sprung from the ground to power a new forge; ‘molten iron’ blazed a path to a ring, tempered then lifted glowing into the sky to converge with four others.

A shame that some were unable to watch this without political context, and thus judged based on whether this self-constructed context matched their own; how narrow a life they must lead. Personally it made the hairs on the back of my neck stand up. It was entertainment, it was history lesson. It was magnificent spectacle without losing its humanity. It was, as another of J.K. Rowling’s creations might say, bloody brilliant.

Thursday, 26 July 2012

Sharing via AddThis

A long time ago I decided to add some ‘social sharing’ into the blog; the how in this instance being more important than the why. I didn’t care for the layout of Blogger’s own set of share buttons so hacked an alternative, adding in the Google +1 button when it became available. Sometime (or was it immediately?) after the launch of their new social networking platform the +1 button was extended to “recommend on search, share on Google+”. Whilst this was kind of OK - platform first, then API - it twisted the metaphor; when, I wondered, would Google+ have a function dedicated to “Share”? It happened so quietly - back in April - I hardly noticed; the share buttons on YouTube had altered, specifically Google+ no longer referenced +1. This is much better; the lack of direct sharing must have further limited people’s use of Google's offering.

My first thought was to enter the HTML jungle representing this blog - in which there has been far too much messing around - and code up a new button. My second thought, which occurred shortly after escaping said jungle, was to look for something else. Something unobtrusive and easily configurable, I settled on AddThis. Using their “Install Blogger Widget” option places some HTML-generating JavaScript in a widget. Done this way it’s easy to remove - always reassuring - and still relatively easy to customise, of which there are a plethora of options.

It's early days, but so far I've only three gripes. Visually I'm not keen on the two-column pop-up menu showing the other bookmarking and sharing options, and I don’t really want to spend time overriding the styling. Having said that my two other concerns are addressed if I hide the menu header. The first of which is if I select one of the services the header changes to “Share successful!” irrespective of whether I have shared. The other is something that happens in Chrome (but not IE or Firefox) as a result of the following piece of AddThis code:
<a id="at15sptx" href="#" onclick="return _atw.clb()" onkeydown="if(!e){var e = window.event||event;}if(e.keyCode){_ate.maf.key=e.keyCode;}else{if(e.which){_ate.maf.key=e.which;}}if(_ate.maf.key==9){ addthis_close(); _ate.maf.sib.tabIndex=9001;_ate.maf.sib.focus();}else{alert(_ate.maf.key)} _ate.maf.key=null" tabindex="9000">X</a>
Keycode alert
It took me a while to track down as I hadn’t noticed that I’d explicitly closed the menu, and then I assumed I’d left some code of my own hanging around; it is in truth the kind of thing I’d do in testing. Then I noticed this behaviour everywhere. For example, using the Chrome browser I tried this out on the official London2012 page detailing the Olympic opening ceremony: Hover over the “Share” icon, explicitly close the pop-up menu by clicking on “X”, then press a key, (almost) any key; I typed “A”. Well, it made me smile.