And so to Boston to act as steward sidekick to JP Rangaswami on stage at the Enterprise 2.0 conference. Where we tried something new, and where I ended up befuddling many in the largely besuited audience. Herein something of an apologia for my part in my downfall.
A couple of years ago JP encouraged Osmosoft to make something to accompany his talk at Le Web 3 Fourth Edition '07 — those numbers are important! Believe! Worried about the vagaries of Wi-Fi at large conferences we built the agenda into a TiddlyWiki and handed them out on USB sticks allowing audience members to make notes offline. Note takers were able to automatically share their thoughts using RSS as the interwebs wafted in and out across the hall. The project dubbed RippleRap evolved over a series of conferences and ended up being integrated with Confabb.com. JP's talk is online along with a transcript, but sadly the video with a blushing Phil Hawksworth demonstrating RippleRap in the background no longer seems to be resolving. Also tweets from then are unreachable from Twitter paging and search so in effect have fallen into a memory hole. C'est Le Web!
Daunting odds are stacked against any new project gaining traction during a conference, and whilst RippleRap chimed with a number of note takers, especially those already familiar with TiddlyWiki, the number who were willing to use an unfamiliar tool to record their experience wasn't likely to generate a network effect. I think we learned a lot from the RippleRap experience and the resultant set of plugins have been reused by the Osmosoft and the TiddlyWiki community in a number of other projects.
So when JP approached us to consider a "RippleRap 2.0 for Enterprise 2.0", we were pretty clear in our constraints: we wanted to build something we could reuse elsewhere, something more interactive, and something which engaged an audience using their current preferred tools. How that should manifest itself led to some fairly wide ranging discussion which boiled down to a desire to increase JP's connection with the audience by capturing attention data either from people clicking on a local copy of the slides, or by tweeting hashtags for each part of the talk and then feeding that attention data back to the audience by highlighting areas on a map.
As we talked, we spiraled inextricability towards a single large zoomable Cecily landscape. The background would be one of my über-doodles. This wasn't without risk given prior experimentation with Cecily and large bitmaps or SVG versions of GITSCOB hadn't performed all that well
Then of course getting JP to close down a talk with enough time in advance upon which I could build a dedicated drawing was risky. Well that's unfair. JP is a just-in-time speaker; a constant deep thinker, he has a repertoire of ideas to assemble and his talks tend to form the evening before. Pinning him down a week or more in advance could be a little like trying to bottle Hooghly river mist.
So to match JP's just-in-time style I undertook to text mine confused of calcutta, with the intention of illustrating each of the concepts and key phrases discovered by eye and N-Gram. We considered some automatic layout, such as treemapping or clustering but that wasn't making most of this being a performance. So during the talk I would find and draw attention to relevant doodles, resizing them based on relevance. At the end of the talk I'd zoom out to unveil a pictorial doodle-tag-cloud of the presentation.
For interaction with Twitter, we'd project tweets as growl notifications above the landscape and I'd curate interesting comments for JP to respond to. In essence, I would play the role of a visual jazz accompanist to JP's free-styling voice
Finally we'd host the visualization on TiddlySpace, a hosted version of our open source project. This was important not only as a useful deadline for a soft-launch of our service, but so others would able to build upon and resuse our code in their own presentations.
There were several problems with this approach, not least that. days before the conference I was very unhappy with many of the doodles I'd come up with: they were essentially very clip-arty. Drawing on the move was problematic. My workflow for moving drawings from my Moleskine into SVG tiddlers fell apart without daylight or my trusty scanner, and the vagaries of hotel Wi-Fi meant uploading everything took much longer than one would hope.
Finally, and predictably, when we spoke the night before, I was excited to hear JP's outline, whilst simultaneously horrified that I didn't have that many drawings covering subjects raised by his talk!
I'd tried to test my laptop with the projectors the day before but the room was in the process of being built so it fell to the morning of the talk, and just before the kick-off for us to wonder on stage to check out the A/V. I plugged my laptop in and a brilliant and super-helpful techie popped up and confidently changed my display settings. He knew what he was doing. We were in safe hands. Phew!
But then I turned around to leave I watched, as if in slow motion, JP disappear over the edge of the stage. JP had tumbled a good couple of feet from the stage flat onto his back on the floor! He barely had more than a couple of minutes to dust himself down before returning up on stage, and unfalteringly walking straight into his talk. What a trooper!
But there was another problem: me. On stage I relaxed, sat back, listening and enjoying JP stride into his talk, waiting for my laptop to be projected on the large screen behind me. I ran Firebug, debugged and fixed a typeo in the code and waited. I composed a frustrated tweet, "why aren't they projecting me?" and waited. I gestured frantically at the screen behind, but couldn't spot my friendly techie's face or indeed see any faces in the audience due to the dark room and stong lighting. It was then that I dashed backstage to work out what was happening only to realise I was indeed projecting on sidescreens out of sight from the stage and of course, on the webcam, beamed to a large audience including my colleagues back at base. What a pillock!
By rights I should have realised what was going on from the Twitter stream, but that was frankly overwhelming. JP is highly quotable, and the audience were clearly enjoying quoting his talk as tweets. Then those tweets were being retweeted. A lot.
I'd say there were upper hundreds of tweets during the 15 minutes we were on stage, and then a sustained 1000 tweets an hour being generated containg the hashtag "e2conf" for the duration of the conference. When I later sat down and make sense of it all, amongst the tweets which included "Rangaswami" or "@jobsworth" and which hadn't fallen off the back of Twitter search, I spotted:
That bug I'd treated the audience to fixing turned out to be rather esential: a keyboard shortcut to clear the display of tweets!
My troubles with the projector didn't go unnoticed and there was some fair criticism:
"Confused of Calcutta" maybe - I'm confused of Boston right now - hard to follow on-screen @jobsworth #e2conf
— Nigel Fenwick
Live use of back-channel highlights how confusing dynamic presentation is 4 the audience via Tweet onscreen @jobsworth #e2conf LOL
— Nigel Fenwick
Good opening speech by @jobsworth but nothing added by distracting images #e2conf
— Nigel Fenwick
#e2conf #keynote not sure what the other guy on stage is projecting on screen while @jobsworth talks, but its very distracting
— Kapil Qupta
But it wasn't all bad, there were some hopeful comments:
@jobsworth has his own DJ... awesome.
— Megan Murray
@jobsworth great content side screens drive focus back to him #e2conf 'design for loss of control' and boundaryless ... #e2conf
— jholston
@jobsworth is enjoying the Twitter screen backchannel while he's talking #e20conf
— Andrea Meyer
He illustrates an instance of the kinds of changes we are seeing by being onstage “playing the instrument that is his voice, while [a colleague] plays an instrument called the screen.” (The screen images were distracting, but then it’s possible that it is I who is not yet fully capable of living in this new world.)
— Patti Anklam
As if my being unprepared for the tweets wasn't bad enough, my plan to build a landscape fell apart. At one point JP mentioned the Twitter backchannel, and I brought up his post on the Hecklebot. Unfortunately the act of searching the TiddlyWiki cleared the story, and I was left to rebuild the doodle tag cloud from scratch. Ach!
So there were some simple things which would have made things better.
Looking at tweets when I could, revealed that for the most part members of the audience were generating en mass, a chanting, unthinking echolalia of retweets. I should have anticipated and embraced the tweeting and retweeting to highlight parts of the talk which grabbed the audience.
During the talk, bringing mass retweeting to JP's attention wasn't all that useful. Every now and again someone out there would react or respond with an snarky aside or comment, often without the conference hashtag. What would have been cool would have been to be able to quickly find and bring interesting reactions from outside the room to the attention of the speaker and the room during the talk.
Highlighting individual tweets by bringing up a separate tab worked well. Given my time again, I would have moved the tweeting into a separate page and flipped between tabs, rather than put too much on the screen at once.
As for the visualization, avoiding a sea of clip art was a challenge, but it turned out the poor performance of Cecily was mostly because of gradients and drop shadows. Removing expensive text decoration sped things significantly and offered hope for some more complex zooming über-doodles.
So I think it's fair to say I didn't do a great job; mea culpa for not being on top of the room, or ahead with the sketching.
It's obvious JP's talks standup by themselves, and don't need slides or gimmicks but given his desire for greater interactivity, I think the idea of a ZUI blog explorer and a backchannel curating compère, able to bridge the gap betwixt speaker and audience may have merit.
I'm motivated to keep experimenting with and refining the visualization of confusedofcalcutta.com at confusedofcalcutta.tiddlyspace.com [it's large, a complete copy of the blog in a single TiddlyWiki so you'll need browser with good JavsScript and CSS3 support, Safari 4, Firefox 3.5 or Chrome work best].
I'll explain more about how to author your own version of this presentation tool and other ways you might find TiddlySpace useful in following posts.
With apologies to anyone who loves Neil Young; how often our grand schemes are killed by a schema:
William set an interesting challenge Square Peg, REST Hole, which unusually I decided to pickup and in a timely fashion. It's worth noting, I'm not a REST purist rather a Web practitioner which will hopefully colour my approach differently to the other fazillion answers this will no doubt generate:
Long-lived operations. You can’t just hang on for a synchronous response. Tim Bray best described the situation, which he called Slow REST. Do you create an “action in progress” resource?
Consider a phone call: a HTML form POSTs two phone numbers to make the call. Phones ring and you're returned a link, or redirected to a page for the call-id. Refreshing that page (using GET) tells you the status of the call: how long they've been talking, how much its cost so far, etc.
If you really want to avoid polling for when the call ended, then there's the Comet hack. Until they release the Websocket doomsday virus.
Query: how do you query for “all the instances of app foo deployed in a container that has patch 1234 installed” in a to-each-resource-its-own-URL world? I’ve seen proposals that create a “query” resource and build it up incrementally by POSTing constraints to it. Very RESTful. Very impractical too.
Um, I don't see the impracticality given how common this is on the Web; a GET form which searches for patch with two fields "container URI" and "patch-number". That returns a list of URIs for each application containing the patch. Asked to do the search today on a large dataset I'd probably use something like CouchDB map reduce, but that's a detail of implementation. For power-users you could offer an advanced options form, or even a SPARQL query form, like http://data.gov.uk This seems so trivial, so I'm starting to worry I'm falling into a trap!
Events: the process of creating and managing subscriptions maps well to the resource-oriented RESTful approach. It’s when you consider event delivery mechanisms that things get nasty. You quickly end up worrying a lot more about firewalls and the cost of keeping HTTP connections open than about RESTful purity.
I'll ignore the Firewall issue, given that's the same for WS-*, but "Event delivery" is a matter of either polling or web-hooks and these days pubsubhubbub has traction, and are certainly easy to understand, implement and scale. If you need a way to aggregate fragmented message flows, then Salmon is worth a look. Really Webhooks, Pubsubhubbub and Salmon are just trendy names for patterns observed working on The Web. A long time ago, I built a system using two RSS feeds for a message queue, one said "here's a list of data items for you", the other on the subscriber said "here's a list of data items I've secured".
Enumeration: what if your resource state is a very long document and you’d rather retrieve it in increments? A basic GET is not going to cut it. You either have to improve on GET or, once again, create a specifically crafted resource (an enumeration context) to serve as a crutch for your protocol.
You have quite a few options: offer the ability to address a portion of the resource, using, say, a query string, e.g. http://example.com/video?start=1:20&end=2:20 or use the Content-Range HTTP header. I prefer bookmarkable URIs you can easily try out in a browser, so would suggest serving the entire document and identifying the portion using a fragment-identifier until it really hurt.
Hmm.. this seems so trivial, I guess I've missed the point, again. Are we talking about long documents, or paging through results, which is a very common pattern on the Web, you've used Google, right? The trick to making this programable is not to say ..?page=2, but put something stable in the URI, ?item=1024&nitems=100.
Filtering: take that same resource with a very long representation. Say you just want a small piece of it (e.g. one XML element). How do you retrieve just that piece?
Ah, maybe I've mixed up this with the last question. Or maybe they're the same question. I'll say as above.
Collections: it’s hard to manage many resources as one when they each have their own control endpoint. It’s especially infuriating when the URLs look like http://myCloud.com/resources/XXX where XXX, the only variable part, is a resource Id and you know – you just know – that there is one application processing all your messages and yet you can’t send it a unique message and tell it to apply the same request to a list of resources.
Write a form which POSTs or PUTs a series of IDs to be changed. Alternatively send a value to modify a collection in one step: e.g. POST status="paused" http://myCloud.com/resources/status/thrashing. You can write an "endpoint"^W CGI^W resource handler^W thing to do anything to anything. I'd consider exposing operations on a set of tags, a search results, whatever, so the collection can be in the eye of the consumer.
The afterlife: how do you retrieve data about a resource once it’s gone? Which is what a DELETE does to it. Except just because it’s been removed operationally doesn’t mean you have no interest in retrieving data about it.
I avoid DELETE precisely for this reason, or at least reserve it for the nuclear option. As with the phone-call example, hanging up isn't a DELETE, rather a POST or a PUT to change the status of the call to "terminated".
So given William is significantly brighter than me I'm sure I've just set off all the booby-traps, and now have pie all over my face. Hopefully I'm going to learn something as a consequence.
I recently came across Andy Clark's could you be a dick competition. Andy's book "Transcending Web Design" is a lovely explanation of the value of graded browser support which together with his advocacy of Microformats, his open letter to Taylor Swift and the CSS3 and Web typography goodness on for a beautiful web has made me something of an unashamed fan. I already have a S&N pin and a chance of contributing to his next book was too good to miss.
But, and you must have known there was a big fat but coming, I don't have sufficient ready cash, hard-disk space or time to play Adobe Photoshop updater tamagotchi. Like many people, I make stuff using a browser and not vendor tools from a parallel universe. It's an approach outlined in Andy's own presentation: "Walls come Tumbling Down". All this led to a self-corpse-munging of a conflicted Robby The Robot-esque proportion: a business card .. as an image .. for a Web design book .. a business card as an image .. for a Web design book ..
That conflict cost me time and now the competition is closed with the results declared. So I've put what I might have entered here:
http://whatfettle.com/2010/01/Hardboiled/
This is just a bit of HTML marked up as hCard meaning you can use Firefox operator or a service such as h2cx to download vCards.
As you can probably tell I'm no rock-star Web designer and am scared silly by the notion that means I should COMPLY WITH STANDARDS. I did however, have a bunch of fun playing with some of the new CSS properties appearing in modern browsers. These work to varying degrees in a different browsers as illustrated by a collection of screen shots:
I also took the time to ensure the page contained valid CSS and valid HTML 5.
The source, including attributions for fonts and the couple of royalty free images used is up on github. If someone cared enough we could start adding in hacks and work-rounds to solve some of the glitches for the hard of browsing. What would be cool is if the markup was the same across all the cards, independent of the stylesheet used. I guess that's my next challenge.
Of late, I've been enjoying the effect on my addled sensorium from re-rediscovering The Medium is the Massage. Inspired by this wonderful book and how The Web means we now all happen to have Mr McLuhan right here led to massaging a bunch of quotations about television:
Twitter is chewing gum for the eyes— Frank Lloyd Wright
Imitation is the sincerest form of Twittering— Fred Allen
Twitter is the triumph of machine over people— Fred Allen
Twitter is a new medium. It's called a medium because nothing is well-done— Fred Allen
Imagine what it would be like if Twitter actually was good. It would be the end of everything we know— Marvin Minsky
We are drawn to Twitter the way we are drawn to the scene of an accident— Vincent Canby
The human race is faced with a cruel choice: work or daytime twittering— anon
Twitter has raised writing to a new low— Samuel Goldwyn
Don't you wish there was a button on Twitter to turn up the intelligence? There's one marked 'Update' but that doesn't work— Gallagher
If there's anything unsettling to the stomach, it's watching actors on Twitter talk about their personal lives— Marlon Brando
Thanks to Twitter and for the convenience of Twitter, you can only be one of two kinds of human beings, either a liberal or a conservative— Kurt Vonnegut
Twitter news is like a lightning flash. It makes a loud noise, lights up everything around it, leaves everything else in darkness and then is suddenly gone— Hodding Carter
When you consider Twitter's awesome power to educate, aren't you glad it doesn't— New Yorker cartoon
Twitter is more interesting than people. If it were not, we would have people standing in the corners of our rooms— Alan Corenk
Twitter is the first truly democratic culture – the first culture available to everybody and entirely governed by what the people want. The most terrifying thing is what people do want— Clive Barnes
Twitter has proved that people will look at anything rather than each other— Ann Landers
Twitter is the lava lamp of the 2000's— Doug Ferrari
I can think of nothing more boring for the American people than to have to sit in their living rooms looking at my face on their tweetdeck screens— Dwight D. Eisenhower
Twitter enables you to be entertained in your home by people you wouldn't have in your home— David Frost
My father hated television and could not wait for twitter to be invented so he could hate that too— Peter De Vries
I suppose I should get an RSS reader, but the only thing I like about twitter is its ephemerality— P.J. O'Rourke
Twitter is for appearing on - not for looking at— Noel Coward
Update: more quotes selected from wikiquote as suggested on, um, Twitter:
Twitter? The word is half Greek and half Latin. No good will come of this device— C. P. Scott
It used to be that we in films were the lowest form of art. Now we have something to look down on— Billy Wilder
Twitter is like taking black spray paint to your third eye— Bill Hicks
Sex on Twitter can’t hurt you – unless you fall off— Woody Allen
The best that can be said for Twitter is that it gives you the sensation of a coma without the worry and inconvenience— Bill Bryson
Twitter is simultaneously blamed, often by the same people, for worsening the world and for being powerless to change it— Clive James
I hate Twitter. I hate it as much as peanuts. But I can't stop eating peanuts— Orson Wells
Twitter has changed the American child from an irresistible force into an immovable object— Laurence J. Peter
The revolution will not be on Twitter. The Revolution will be no retweet brothers. The Revolution will be live.— Gil Scott-Heron
This post was brought to you by the q element combined with a currently invalid use of cite element. It definitely does not use the b element to designate a person because let's face it, that would be nuts. I'm unlikely to incite a riot, but do think the HTML 5 spec should be massaged if it wants to reflect HTML as she is wrote; the riot words in the rote order
— James Joyce.
As in previous years I'm really looking forward to the XML Summer School, which after skipping a year is being held in Oxford on 20-25th September. More "tutorial" than a conventional conference, the emphasis is on learning by hanging out with the highest calibre of lecturer. Each year I've come away buzzing with new ideas and improved technical techniques, and this time I'm particularly keen to sharpen my semantic chops in particular light of Osmosoft's involvement with wiki-data.
For my part I'm putting together two talks: an introductory compare and contrast of SOA, REST, Web services and The Web and a practical explanation of how to survive the perils of Rich Internet Applications, especially for those of us who believe in a Web of documents and data.
The RIA rant is for the Trends and Transients Track, which based on previous years is an excellent day worth attending alone, and something I'm excited to be a part of, especially warming the room up for Rich Salz talking about plume cloud computing and Tony Coates on how we could have averted the recession with XML, both of which sound great!
I've a couple of ideas for some interactive learning fun, but sadly had to give up on the idea of SOA-duku. Nothing I could come up with could possibly live up to that egregious pun!
And there I should stop, because there's not much I can say about the school which hasn't already been better said by the likes of Jeni, Lauren, Eve, Bob, Duncan, Priscilla or @me Enough of the fanfare: Join us!
A present for Michael — inspired by http://☃.net
Blame JP, who asked me to put together a poster on behalf of Osmosoft to celebrate the Traveling Geeks visiting BT. The brief was to "incorporate said geeks, BT and Cool Britannia". After some head scratching, and a wrong turn involving The Merry Pranksters, I landed on this attempt at a John Norden map of things which might interest a geek visiting Britain, seen from the perspective of the BT Tower.
The original plan was to have copies to hand out at the event, but after leaving it up until the wire, and a saga involving a taxi dash and two broken scanners — it's hand drawn with pen and ink on A2 cartridge paper — we went with a photograph blown-up to B0 which the geeks signed on the night.
It's fair to say the reaction from the geeks on seeing my pathetic attempt at representing them as angels and cherubs was a little "mixed", but what the hey, I did have fun trying!
A cleaned up high scan of poster is available on flickr under the creative commons and as a PDF for print which is dedicated to the public domain, so fee free to copy, clip, mash it up however you see fit, and although it's pure vanity to demand attribution, the odd link to this blog post would be nice!
As for the locations, I'm particularly indebted to Simon Willison's London for Geeks Google map and the lovely O'Reilly Geek Atlas which has greater depth and a wider scope, but actually no map! There are quite a few references with one or two allusions, in-jokes and random acts of love to be found in the drawing, and given the density of the picture I don't think I'll be able to use flickr notes to build the annotations as with my other drawings, rather I've a cunning plan involving Project Cecily. So watch this space!
And so to ETSI*, the august telecommunication standards body in Sophia Antipolis. I was kindly invited to by BT's Keith Dickerson and ETSI's Margot Dor to present during a board meeting session entitled "Hell's Kitchen: IMS and Web 2.0 Compete or Complete?" — an attempt to provoke fruitful discussion ahead of defining strategy for topics which included The Web and open source. I was encouraged to adopt a rather provocative position, one in which I was clearly representing open source and The Web and not necessarily a formal position from my employer. Oh my!
For those innocent in the ways of the telco, I'd position ETSI as a place where large companies, operators, vendors and regulators coalesce, publishing large rock-solid specifications for communications. Mostly these are things which most of the planet uses every day: SMS being a prime example, a small part of the enormous GSM which when printed is a foot or so high and yet just works. Web developers can learn a lot from organisations whose outputs are so solidly interoperable and deemed trustworthy enough to be used as inputs to legislature. But I wasn't here to praise The Romans and their functional viaducts. I was here to warn them about the Web 2.0 Vandals amassing outside!
Recently a significant part of ETSI's focus has been on something called IMS. I'm willing to wager few ordinary IT folk have heard of IMS, but for many in the telco industry it's a big bet, one predicated on being able to exploit the strong relationship between a punter and their operator. IMS aims to build an IP based multimedia platform from which vendors and vested interests will be able to innovate. I'm no fan of IMS, a prejudice re-enforced by hearing use-cases which sound like water companies standardising how to pipe around coffee and soup. That along with being someone who advocated BT's Web21C SDK eschewing Parlay-X, gave me a strong sense of putting my head inside the lion's mouth.
The session started with polite, understated views, mainly from the IMS perspective, from TISPAN chair Rainer Münch of Alcatel-Lucent "IMS needs to engage the Web 2.0 community" and OMA Technical Plenary Chair Mark Cataldo of France Telecom/Orange: "our standards need to emerge quickly to remain relevant". This was followed by Vince Pizzica of Thomson, the company who invented mp3 and a myriad of other technologies the likes of Apple have innovated upon to great effect, capturing a mass-market not so much by great engineering, but rather through great design, marketing and service. I particularly enjoyed his observation that there are plenty of more profitable sectors for a technology vendor than conventional telecoms!
All good stuff, but it was Roland Montagne who really piqued my interest in a great presentation around broadband adoption and observations from rolling out fibre to the home (FTTH). Experience from trials of fiber in Hong Kong has revealed people tend to upload more data than they download, which is in direct conflict to the premise of ADSL. It's a vision I've heard Kevin Marks and JP postulate many times, so great to see it's coming true! I was therefore amazed to hear someone joke: "if everybody's uploading more than they download, what happens to all the packets?" as if data was subject to double entry bookkeeping, or there was a law of data entropy: packets cannot be created nor destroyed! This made me realise not everyone is on the same page, anticipating a world of people uploading high definition home movies, streaming telemetry data to aggregation services, hosting video conferencing and participating in peer-to-peer data sharing such as a distributed cloud, along with a multitude of other innovations only possible in a symmetrically connected world. I was reminded of the old, apocryphal quote from a Kodak executive dismissing digital cameras and their poor quality with "people love photos", when in reality it's the taking of photos that people love. Sometimes it's hard for an incumbent with large sunk costs and a vested interest in business as usual to foresee and embrace change. Indeed for a telco or large commercial software vendor the best way to predict the future is to prevent it.
So the pitch was prepared for this web kitteh to take the stage — herein an attempted explanation the selection of my usual slides assembled to accompany this talk:
My background is in communications, by which I mean data integration for large companies. A while ago I found myself representing BT at the W3C in the area of Web services. If you're lucky, you will never have heard of Web services, a manifestation of Service Oriented Architecture, snake-oil devised to further the dependency of organisations on vendors and their tools.
Web services, not to be confused with The Web, evolved through privileged people in smoke filled rooms writing specifications which they then attempted to rubber-stamp in a number of different consortia.
A tennis circus of standards representatives were then dispatched to trot the globe, competing and resolving the same issues in different ways in different working groups. The result was a raft of incompatible specifications which at best were incoherent.
Nothing but the simplest of scenarios worked, so they formed the Web Services Interoperability Organization to write profiles removing the more esoteric features and to email corrections to themselves, elsewhere. Seven years later, and some of the simplest use-cases interoperate across a handful of toolkits. Sometimes.
My take from participating in this process was that stanardization is really hard, but such an approach to standardization comes directly from a time when vendors ruled the earth, and IT strategy was mostly a matter of reading the runes of vendor roadmaps and trying to divine the lowest common denominator. Those days are over, in no small part thanks culturally to open source and architecturally to this thing called The Web.
After a few years of hand-waving about the WS-Emperor being chilly, I decided I was ineffectual in my supposed role as BT's Chief Web Services Architect and failing in my self-appointed role as a Moral Compass, and maybe it was time to move on.
Lucky for me BT bought a small company Osmosoft, a team of impassioned developers who articulate the values of The Web, developing innovative collaborative tools, such as TiddlyWiki, with the express purpose of fostering innovation through open source. On joining the team Jeremy Ruston encouraged me to produce a poster explaining my experiences with the Web and Web Services. The result was a doodle: The Web is Agreement, which you may or may not find useful!
When I mentioned ETSI to my colleagues, I was surprised by their positive reaction. One enthused how he visited their site most everyday, another that a friend of his girlfriend actually used them to make a modest living. It was then I realised we were talking about etsy.com a Web 2.0 arts and crafts marketplace.
On explaining what ETSI actually was, I was met with a stony response. Yes, I was headed to The Ministry of Telco, and I had their sympathy!
You see I think there is a real difference in how Web and traditional Telco people see the world, and it's about freedom and acceptable points of control.
Now I'm all for defending the solidness of GSM, and how 3G is changing people's lives. An eight hour battery life and mobile broadband means I can work anywhere, but to use my 3G dongle when traveling to France costs an eye-watering £3 a megabyte! My mobile phone, which even if I were allowed to tether to my notebook, has similarly punative roaming costs. So I opened my laptop in Nice airport for a spot of Wifi. Only instead of being greeted by the usual Safari "Top Sites" panel, I was faced with a parade of pages from a WiFi paywall demanding my credit card for €6 an hour. I suspect this man in the middle attack now has a nice collection of most of my private session cookies.
I've heard it said many times, most recently today, that operators have the closest relationship with their customers, one that should be better "exploited". It's certainly true there's a relationship that's being exploited — an abusive one with large incentives to break on my side. All I see are operators blocking the way between me and the application I really care about: The Internet. My closest relationship is not with them but my social network and these days they're on The Web, people who I know by name but not necessarily as numbers in my phonebook.
I think these anecdotes serve to illustrate why the thrust of my talk which is on the cultural rather than technical differences between IMS and Web 2.0.
Matt Jones recently put together a great presentation entitled "The New Negroponte Switch" where he took Nicholas Negroponte's flipping of TV and Telephones from Wireless to Wired and vice versa to apply to products and services, examples being objects we currently hold dear such as cars becoming services, e.g. zipcar and services such as websites appearing as desirable objects. This flipping is a cycle, where there is money to made anticipating and taking the tack early. Listening to Vince a moment ago talking about Application stores I was motivated to sketch this slide: open and closed flipping. But it's a point I regret making because forever the optimist I believe everything is destined to become more open!
Speaking of being open, I like to use a back-channel at events like this where only one person can speak at one time, so looked on Twitter for people mentioning ETSI, but just some Greek and myself. I understand there is a chat.etsi.org, but I don't have a scooby what to do with an .exe file.
Anyway, the subject on the card is Web 2.0 …
… and we've two Tims to to thank for that: Tim O'Reilly, who coined the "2.0" term and Tim Berners-Lee, who invented the Web. Of course Timbl didn't actually build the Web. We all did that collectively! But it was him and a few notable grey-beards who provided the architecture of participation, enabling distributed extensibility, and from its heart offering great rewards for openness and concurrence. Timbl is a visionary, and having in no small part fathered the Web, has spent a number of years working on that difficult second album — The Semantic Data Web.
If Timbl knows where we should be be, Tim O'Reilly knows exactly where we are now, something he's able to do by assembling a formidable social network, which he brings together through publishing books and holding conferences, most exclusively the annual Foo Camp. Much of the substance of Web 2.0 comes from a series of books on social science, including The Wisdom of The Crowds and The Long Tail, and the fantastic The Cluetrain Manifesto in which BT's JP Rangaswami has a chapter in the ten year anniversary edition. Then there are books which post-date Web 2.0, but owe much to its culture, such as Everything is Miscellaneous and Here Comes Everybody and Black Swan.
I guess the odd one out is "Black Swan" with its warning that the next big thing is unlikely to be in the place you're looking, rather out there in the long grass. Disruption is indeed a clever girl!
I'm irritated by people saying "nobody knows what Web 2.0 is" when it's actually a carefully set-out series of astute observations on The Web in 2005, well documentsed in a single paper. The name isn't great, but it's one devised, trademarked and controlled by O'Reilly, and certainly more tangible and real than, let's say, "SOA".
Something else which irks me is when people say "Web 3.0", as if that actually meant something real, which we all agree upon. It doesn't, and we don't. I'm happy for language and ideas to freely evolve, but Web 3.0 isn't an evolution of Web 2.0, it's a subversion. We really need Versioning 2.0.
So it's The Web which is interesting, and not plays which are specific to a network or device. What the phrase "The Web as a Platform" actually means depends on your definition of a platform, but from my perspective it's an information architecture, populated with and by the people, and you ignore them at your peril!
One challenge to the notion of an open, free platform, independent of any device is the current success of the Apple iPhone store, which is predicated on a "trusted" path between Apple.com and that seductive, locked down device in my pocket. A device I'm unable to install my own software upon, let alone put my fingers into to hack or repair. This troubles me because whilst it's great to see such an vibrant ecosystem of innovations and toys and bedroom coders being paid money for software, that "trusted path" can never be trusted so long as it belongs to a single vendor. A multitude of per-vendor store-stove pipes isn't what we want to see either. So as the forever-open-optimist I suspect this is really a short term scenario, and something which will break down as more open alternatives emerge.
Not many people know it, but America has a machine which turns wheat into cars — it's called Japan. As engineers we like to employ engineering to solve problems, whilst mining the wisdom and madness of crowds is the solution to many of the hardest problems, for example recommendation: "people who bought that, also bought this" and other forms of "intelligence" where the reality is you're not dealing with a machine, rather a multi-person mechanical Turk. One of the nicest explanations of collective intelligence in the context of Web 2.0 is Michael Wesch's video, The Machine is Using Us:
Another favorite explanation of collective intelligence and Web 2.0 comes in the form of a rapid, dense and beautifully pretentious talk from Jeremy Keith — The System of The World which I'd highly recommend listening to:
I'm sure the phrase "Data is the next Intel Inside", must make our colleague from Intel very happy! Having mentioned the name, do I now need to hum the Intel sonic logo?
Web 2.0 companies are built upon data, and are very aware of which data they should give away, and what they should keep and capitalise upon.
Google spend a lot of money buying maps, something of a valuable commodity, which they then spend money publishing on The Web. This is a great service, one I quite often use whilst still logged into Google mail. Whilst I'm slightly unnerved by how much Google is learning about me and my map use, it's something I can live with in return for a better service. Of course if they betray our trust and weird us out, we'll stop using them! More recently we've seen entire Web 2.0 databases becoming freely available for download, for example Stack Overflow and Yahoo! Geo Planet, which I think highlights the point — the data isn't as valuable as knowing how people use it, either personally or usually more importantly, en masse. It's also in all our interests to see how people innovate with data. More on that in a moment.
Many people who haven't read Tim's paper think of Web 2.0 as being about company names without vowels, shiny logos, rounded corners and Ajax. As important as Web site design is, along with innovations in interactive Web clients, they are in essence simply other aspects of The Web as a Platform. Some see Flash, Silverlight or even JavaFX (yeah, right!) and think they're the future, when in reality they're little more than echos of the past. These closed blobs of binary are desperate last acts of lockin to development tools from vendors no longer in control. Flash is fine for natty games, but most RIA plugins lack the very features which made Web pages such a huge and immediate success: hyperlinking, cut and paste of simple text, no need for developer tools, ubiquitous clients and most important of all: view-source. Luckily Flash is increasingly becoming little more than a device driver, back-filling for features missing from the Web, a stop-gap while the winner emerges: the open evolution of HTML, CSS and JavaScript.
Perpetual beta and lightweight programming models, manifest themselves in sites which evolve before our eyes. In many ways this approach has become the new orthodoxy and anyone involved with software development can't have escaped the agile development movement. Many agile methodologies involve elevating The Customer into a position of despotic authority. This works well, where The Customer is a single person, usually the person paying for the development. Where it breaks down, is where The Customer attempts to represent a community of users for a product or service.
The above photo is from the Apollo 13 control centre, soon after hearing the famous words "Houston we have a problem". Here, small teams worked well to solve problems, and although the teams, often self-forming, behaved in an agile manor, it was one man's grand vision to have that moon-shot, and a hierarchy which made sure it happened according to plan.
All well and good, but not so if that one-man's vision and the apparatus of control are not working in the best interests of the community — misguided or misinformed, as as in Mao's Great Leap Forward?
Enter open source!
Clay Shirky gave a great talk at Supernova 2007 where he described a Shinto shrine, which although more 1,300 years old, was rejected as a Unesco world heritage site because it's made of wood, which not having the greatest longevity of building materials meant that the building couldn't possibly be that old. The monks knowing this, periodically ritually tear down the temple and rebuild it with wood gathered from the same forest. Clay points out how this is like open source projects who only exist due to their communities rebuilding their code each and every night, and whose detractors often don’t care that it works in practice because they already know it doesn’t work in theory. The rewards for participating in an open source project are not usually monetary, so Clay dubbed this new approach to collaboration: The Love Economy.
An alternative to empowering The Customer despot, is to form the collective committee. and engage in a spot of what is to all intents and purposes standardization.
But as my WS-* rant described, this can go badly, too and descend into Design By Committee, where the outcome is invariably a collection of options everyone hates the least.
There is little glamour and there are few rewards for participating in a committee. Possibly justifiably!
So, although I've just advocated against the despotic role of The Customer, most open source projects have such a person in control: the Benevolent Dictator For Life or BDFL.
However the big difference between The Customer and a BDFL is central to how open source functions. Most projects are driven by contributions, and it is the role of the BDFL to edit and exercise his design authority and taste in selecting which contributions become a part of the project. It's rare for someone to contribute code just for the heck of it, so contributions provide an excellent set of requirements. This is sometimes dubbed Itch Driven Development.
It's important contributors don't feel disenfranchised and are able to continue to use their contribution even if it doesn't become a core feature. For this reason most open source projects have good models for supporting extensions and plugins.
This feedback process is also employed in part by Web 2.0 companies who observe closely how their community of users behave, and use this practical experience to guide the direction of their service. Observation and editing of patterns exhibited in wild is also central to Web standards communities such as Microformats. In the past, keeping an open source project together under a single repository was key to successful collaboration, and threats to fork a project would be a way of keeping a BDFL in check. In someways this cohesion is being challenged by the latest generation of distributed revision control systems such as git, which simplify and actively encourage forking code-bases. This additional freedom is already starting to change the dynamics of a number of open source projects. Interesting times! Forking is also a challenge to Web 2.0 services, where competition is the control that keeps most services honest. Should, a service behave badly, everyone will quickly jump to another, better service. This is one of the new tenets of social networks: that they aren't "sticky" or tied to a single service: they are highly mobile. Finally, let me end on something obvious, but very important. Call them new business models if you must, but closed and restrictive licensing is incompatible with open source. Unreasonable and discriminatory licenses such as RAND seriously limit the adoption of technologies on the Web. So, in a nutshell, here is a tick-list for an architecture for participation: I've published a manifesto for this approach in the form of a gnomic sampler on http://standeace.com, a contraction of "Standards" and "Peace": I felt bad and had been possibly a little too rude to my hosts, so admitted to having an alter-ego who attended Web conferences to extol the value of phones concluding: GSM is cool. Fibre to the home is way-cool. Please keep doing that! APIs and IMS? Um, not so interesting! The pain points ahead for the Web are video streaming which will introduce new kinds of bottlenecks and Web friendly messaging and eventing. Build us a great infrastructure, a strong architecture of participation from which we are all free to innovate upon, using The Web, and from the edge of the network. Over dinner I was luckily enough to engage with some of my more robust inquisitors, and had some great conversations around privacy and the economics of open with some formidably smart people. Just as I was retiring, shaking hands with my combatants, I was left with "as much as I enjoyed your presentation, I didn't understand a single word", and "I looked at your Twitter, what a load of rubbish!" both of which made me laugh like a loon. Oh well, I may not have saved The Empire, but I had fun trying.
Another year, and another quiz sheet for our local school Spring Fair. Rather poignantly, this is probably our last one given our youngest leaves the school this term. The theme of this year's fair is "Make do and Mend", so in this quiz each picture represents a WWII poster. And of course I had to include Mrs Sew and Sew. As usual, I'll post the answers after the prize draw.