A humble suggestion for HTML5 video

May 24, 2011 | 1 comment

This is an embedded Flash video from latakoo Flight:

If you’re viewing this post on an iOS device, or anywhere else where Flash isn’t supported, you’re not going to see the video. I’d dearly love to use the HTML5 video tag, which iOS devices do support, but I can’t – at least not without some extra work.

Here’s what the HTML 5 video tag looks like:

<video src="video_location" type="video_type">
	Some fallback content if the browser doesn't support the video tag

WebKit browsers – those on iOS devices, Chrome and Safari – play H.264 MPEG-4 files natively, as does Internet Explorer 9. Firefox and Opera, meanwhile, play videos stored in the open source OGG format. As it happens, I only have an H.264 MPEG-4 copy of my video, but that’s okay, right? Because we’ve specified the <video> tag’s type attribute, Firefox and Opera will understand that they can’t play it, and they’ll use the fallback content!


What actually happens is that the user sees a great big “X” indicating that the video has failed. The only way to use the HTML5 video tag in this way is to either provide multiple versions of the videos encoded with multiple codecs, or to use JavaScript to selectively decide whether to use the Flash or HTML5 video player depending on what kind of video we have. The latter case would be fine, but I want my videos to be embeddable, like I’ve done here.

So in reality, what I need to do is provide an <iframe> tag that in turn loads a page containing a bunch of JavaScript that controls video playback. Yep, we’re using frames for content, just like in 1996. This isn’t a minority kludge; this is what YouTube does. (It’s also what latakoo Flight will do when we make our video embedding public, very shortly.)

May I suggest another way?

It seems to me that the browser should fall back whenever it can’t play the video. That includes when the codec is mismatched, or when there are connectivity issues. The fallback content can contain a Flash player, and of course, Flash embed HTML also contains a fallback for when it doesn’t work. The result is the HTML equivalent of this nested if statement:

if (the browser can play the video) {
	show HTML5 video player;
} else if (we have Flash installed) {
	show the Flash player;
} else {
	show HTML5 fallback content;

This would help clean up the mess caused by web video’s current codec issues, and ensure that the user always sees something sensible. Unlike the kludgey situation we have today.

Why you should not build an open source startup

May 21, 2011 | 1 comment

Teambox’s post about why you should build an open source startup is doing the rounds right now. It’s a great piece, but I thought I’d reply with a few reasons why you might want to think long and hard about it:
  • Free (as in speech) software has an accounting value of $0.
  • Professional services typically don’t substantially capture value in a company. Don’t sell one-to-one services; sell something you can replicate and grow.
  • Open source ecosystem companies – i.e., firms that use your software but don’t contribute to its development – have an obvious competitive advantage over you. OpenSource.com regularly declares that open source business works by pointing to the success of this sort of company.
  • Providing managed, pay for the best unlimited hosting is a common strategy, but, again, this can be undercut very easily by non-developing competitors.
  • Even though it’s open source, your team is probably going to be doing most of the development.

None of which is to say that open source can’t be a viable business model – but hold something back. Unless you’re building a lifestyle business (something that’ll keep you living well but doesn’t necessarily need to grow), you need to capture value. At its best, open source can be great for marketing, and great for the product. But don’t think it’s enough to be open and awesome; your business, ultimately, has to be worth something to survive.

Hacking culture

May 19, 2011 | Leave a comment

Ben talks sense

I’ve always thought that the term “the cultural sector” was a bit disingenuous, because it makes the assumption that science, engineering and everything else under its umbrella can’t for some reason be a part of “culture”. Ditto “creatives”: it doesn’t take much thought to disprove the conceit, but theatre, music, fiction writing and so on are inherently thought of as creative, while fields like software development and structural engineering are not. What a bunch of hooey.

So I was proud to be a part of Culture Hack Scotland, the first cultural hack day celebrating both the Scottish cultural sector and the country’s incredibly talented tech community. Principally organized by Rohan Gunatillake, my brilliant partner in crime over at the Edinburgh Festivals Innovation Lab, in conjunction with Get AmbITion and Trigger, it was seamlessly organized, beautifully presented and, in many ways, utterly revolutionary.

During my first-ever meeting about becoming Geek in Residence at the Innovation Lab, I made it clear that I wanted to highlight Edinburgh’s independent developer scene, who I believe are every bit as creative as the city’s festivals. Edinburgh contains some of the largest arts festivals in the world (including the largest). The University of Edinburgh also has one of the best-ranked Computer Science courses in Europe. Both are propelled by the fiercely independent, anarchic, creative energy that pervades the city, and while it sometimes feels like the city’s infrastructure wants to stub this out, Culture Hack Scotland embraced it in a way that was both fun and greatly respectful to everyone who came. The outputs speak for themselves.

There is a division between the cultural and technical sectors, which has traditionally led to abusive relationships between the two. Organizations that look down on developers and cowboy digital agencies that see cultural organizations as cash cows are definitely still around, but I think they’re diminishing, in part because these sectors need each other – and they’re merging. Cultural organizations need to have in-house digital knowledge; as technology improves, the digital agency skillset begins to incorporate storytelling, animation, game-playing, music and more. Case in point is the meteoric rise of Apple, which famously describes itself as being at the intersection between technology and the liberal arts.

Regular readers will remember that last year I was involved in an event called Intersection: Publishing, which aimed to do something similar for the publishing industry. Earlier this year, one of my co-organizers, Perini’s Paul Squires, and I hatched a plan for Book HackDay, which took a different tack by exploring the form of the book itself rather than examining how technology could save the industry. With support from a raft of excellent partners, it was a great success. My contribution was to design and establish BookHackers, a social community that aims to provide a permanent space to discuss the evolution of the book. It’s not affiliated with my Edinburgh Festivals work, but I believe it’s in a similar spirit.

I’m doing this as part of Idno, my social technology imprint. If publishing companies can have imprints, why not developers?

Image: Ben talks sense [hah!] by festivalslab, released under a Creative Commons license.


May 15, 2011 | Leave a comment

Things have been quiet on this blog lately, and they will be for a few days more. I have a lot to talk about:

  • Culture Hack Scotland, which was not just a blast, but a groundbreaking event for both the Scottish cultural sector and its technical community
  • Impref.me, my product from the above, which is a kind of Gravatar for dietary preferences, accessibility requirements and personal favorites
  • BookHackers, a site I’m running (on Elgg) to support digital exploration of the form of the book

But it’ll have to wait. I’ll be updating from my new base, in the vicinity of Silicon Valley, later in the week.