An ethical new age for technology

One of the biggest challenges to my digital practise of late has been a creeping cynicism I’ve been feeling. It’s hard not to really. The excitement and promise of an open, accessible technology enabled future is something that I’ve been inspired by since the first time I snuck onto Prestel as a child. It’s why I pursued a career in the digital industries, and why I have spent most of that career advocating for it. Yet it’s increasingly beginning to feel like we’re in the bad future – that we’ve gone William Gibson instead of Arthur C Clarke. Powerful corporate technocracies, ever distant remote controlled wars, a media which is struggling to monetise and is therefore diminishing it’s own core values, and of course the post Snowden realisation that we’re not paranoid, we’re not over-stating it, there really is a huge structural system of surveillance which is beyond the dreams of Orwell. It’s a sobering time, and so I been finding that, for the first time in years, I haven’t leapt on the Gartner futures list or excitedly watched TED talks.

That is, until I saw Aral Balkan’s article on ethical digital design, and watched his (superb as always) talks on the subject. I’m not going to understate this, I think this is the most important thing that I have read about Being Digital since Negroponte.

I’ll leave the manifesto to speak for itself, and there is good debate around it’s points happening elsewhere. What I would like to focus on in this post, however, is the response from technology to this challenging and liberating ethos. When I read this manifesto, and in particularly the Maslow-style hierarchy of user needs, I excitedly forwarded it on to various networks, including an internal technology team here. There was a good response from the UX and design departments, those that are traditionally focussed on user needs as much as the brands. From the developers though, barely a peep.

This is a problem.

The experiences which we create for people to use are ultimately built in a technical stack, and for far too long, developers have focussed entirely on the technology itself. In fact with the front-end technology stack becoming ever more immersed in software engineering practises with the rise of Node, React et al, I am concerned that this is becoming more and more the case. The traditional ‘unicorn’ client-side developer used to be one that bridged the gap between design, UX and development. More than ever, it’s one that works across the full technology stack. This is good for technology, but bad for our users. I’ve already been witness to long discussions about technical design which utterly ignore what we’re actually trying to achieve for the people of the world that will consume these experiences.

If the vision of the ethical design manifesto and it’s human-centricity is to be realised, then it is vital that key figures within the front end technology community start to talk a lot more about their end user, and (slightly) less about the virtues of functional programming versus classical inheritance.

Those of us working with technology for a better end user experience are working in a golden age of frameworks, tooling and techniques. It is a huge mistake to think of the ethical design manifesto as only being a strategic, design or experience solution. It lies at the absolute core of what we are actually trying to achieve when we build websites, apps or other digital products. Even with regard to middle-ware or service layers there are lessons that can be learnt from this approach, for instance, in the design of your micro-service suite in alignment with the needs of the users rather than the needs of the application or architecture.

In short, we need to be just as excited about this stuff as our design, strategy and UX driven colleagues and I really hope that we see some traction amongst technologists. A good many of us seized on the promise of digital to create a better world and the fight is far from over.

Partisan technology reporting

Rory Pyatt linked me up to an article on Techcrunch today about HTML5 vs native application development. It annoyed me, a lot, for a number of reasons. Here are a few:

#1 and this is the biggy – HTML5 is not an application development framework and it is not “in competition” with native platform technologies. If you really need help in deciding which technology framework to build your application on, then you haven’t thought enough about that application’s architecture, ux or strategy. Hence my vehement hatred of the “let’s do in HTML5” thing that technologists often hear from buzzword-wielding product owners without fully understanding what that means or why it might or might not be appropriate. Without wishing to add to the reams of debate on the HTML5 branding issue, HTML5 is still, essentially, a MARKUP specification. That is all. Even if you add the “and related technologies” tagline, it’s still mostly covering the UI alone, and not an application framework.

It amazes me the imbalance of coverage on HTML5’s usefulness as an improved semantic markup spec versus canvas and video (and related techs like CSS3, webkit transitions and javascript frameworks, particularly the latter which have been around long before HTML5)

#2 That article is, like most tech news lately, deeply partisan and not doing anyone any favours. Apple have become the Fox News of technology and Steve Jobs is their Bill O’Reilly (ok, that’s a bit inflammatory but I hope you see my point). This shouldn’t be a battle between advocates of native application development and advocates of the front end stack. What then happens is that the methodology is placed before the actual needs of the customer, the application or the platform. This will be a common theme for many working within complex organisations.

#3. The political manoeuvring of the big tech companies is largely PR and market positioning, and not a crib sheet to the future. Whilst we should always listen to what the industry and it’s analysts are saying, our primary responsibility at the creative coalface, is to the message we are communicating and to the end-user. We will build in whichever technology delivers the best experience. Besides, a developer will have a short career if they are not pragmatic about their toolkits, particularly given how fast things can change. Seb Lee-Desisle’s recent blogposts about flash vs HTML5 should be required reading on this point.

I think the most telling line from that article is Hewitt’s tweet: “I want desperately to be a web developer again, but if I have to wait until 2020 for browsers to do what Cocoa can do in 2010, I won’t wait.” If you wish to be a web developer again, then I’d suggest building experiences within the web toolkit. Cocoa is not designed for the web. It’s designed for it’s own platform. That’s a little bit like me saying I’d like to build Half Life 2 in VRML. If you are building native platform experiences (like the awesome, paradigm shifting music applications that we’re starting to see on the iPad), then native platform it is, along with the considerable resources it requires to do so. If you are building a glorified RSS reader, then HTML5 is your friend…and there are many wrappers available to push to the appstore if that is part of your business strategy.

tl;dr: you don’t use a hammer to fix a pair of glasses – the world is a developer’s oyster at the moment. Use all the technologies – use them wisely.

HTML5 – the cat is amongst the pigeons

This post was originally written for the internal Sky Creative Technology blog.

Last night, Google put up a blogpost on it’s Chromium blog which may have wide-reaching implications for the way in which we publish video. In this post they outline their plan to drop support within the HTML5 <video> tag for the much-utilised H.264 codec in the Chrome browser, in favour of the open-source WebM and Theora codecs. This effectively means that future versions of Chrome will not be able to playback h.264 encoded video, except in 3rd party plugins (such as Flash).

For a major browser vendor, with it’s product in the ascendent, to suddenly drop support of the most widely used video codec on the web, however might not be as crazy a move as it first appears. Google are most certainly playing a long game over standards, and it’s a ballsy move for sure…but h.264 is not, and never has been free to adopt, and businesses, particularly those which might make commercial propositions out of their video content, are exposed to a liability by using it. Google clearly believes that a long-term adoption of an open-source standard is a better bet, than just going with what’s being used. This is similar to the replacement of GIF by PNG a few years ago. We might not have agreed at the time, but the better standard won out. They are also not alone – Firefox also does not support h.264.

This is, obviously, a gift for Adobe. Whilst the browser vendors beat their drum over open-source, licensing and standards, Flash will, for now, be the only sensible method of deploying cross-browser (excluding iOS), hardware accelerated (very important in the adoption of HD video) video. Plus, they will be supporting WebM in the near future. The much-trumped future dominance of the HTML5 video tag may have been a little premature. I suspect that our workflow for now will be h.264 video into flash, with fallback to HTML5 for iOS devices…and not a lot else, until the desktop browser standards war settles down.

WebM is a promising technology, but I don’t think it’s there yet. There’s no hardware acceleration for it at present which will be problematic for HD publishers, and a quick test in our dev team shows serious processing overhead on the client PC when playing back a youtube webM video. My biggest concern is that no production workflow for broadcast currently has WebM on their radar. I’m confident that few people outside the open-standards geek corps will have even heard of it. No commonly used production tools support it, and, of course, there is the small matter of our legacy video that is currently deployed. Fortunately, we haven’t done a massive amount of HTML5 video deployment in our team…apart from device specific work (such as the iPad version of which won’t be affected by this change.

Of course, our users and clients don’t really care about standards and technology platforms. When they click on a video, they expect it to play on the device of their choosing. In the short term, this is almost certainly going to create a lot more work for us as we struggle to support multiple platforms and multiple standards – the expectation of the end user is that they receive the content they have requested. We will have to work out how we are going to deliver that.

Whichever way you look at it…begun this standards war has.

MySpace and it’s descent into irrelevance

This is a comment intended for this thread on Quora – sadly Quora’s account creation is a bit b0rked in Chrome so I thought I’d post here as well.

MySpace is, in almost every way, irrevocably broken now and I can’t see what it’s way out now is.  For my money, it’s management has utterly failed it – key decisions that needed to be made about it’s API, it’s useage and it’s purpose have not been addressed and the site is not only falling into irrelevance, but have actually dented the case for social media tools as marketing devices.

Every serious musician I know now uses Soundcloud.  With it’s useful services and it’s careful restrictions over spamming and community management, it is gradually usurping MySpace’s position as the go-to page to hear new music.

Speaking as a once dedicated MySpace user in my capacity as a musician, rather than my capacity as a web developer, MySpace’s biggest problem was not the design and brand of the site, but it’s handling and filtering of messaging between users.  Far from being a useful tool to manage your fanbase, the site has devolved into a spam machine.  This failure to manage the signal to noise ratio has left it unusable, either as a social network or as a marketing tool – it left it’s communication channels far too open to abuse.

Part of the blame for this lies with MySpace’s failure to manage it’s API which led to third-party friend-finder type applications having free reign to harvest friend additions, and a poor set of account management tools to allow users to manage their preferences, friend additions and filter the communications they recieve.

The vast majority of activity on the site is now worthless – literally just bands (and bots) screaming at each other to buy their record or come to their event (regardless of whether or not you even live in the same city or like the same music!!).  I have left my band page up as a shopfront, minimising the information on there and just providing a landing page for those curious about our work – MySpace still has some cachet in this area and it’s probably still worth maintaining a presence on the site for most artists.  The page management tools and the look and feel of the site have been vastly improved, however I fear that this is too little too late, and if they had spent more time actually understanding the importance of managing the flow of information in a useful, user-centric manner, they would not have fallen into the well of irrelevance they now find themselves in.