Tags: fundamentosweb



Community service

I returned from Spain at the weekend after a really enjoyable time at Fundamentos Web. The conference was very well organised and had a nice grassroots feel to it (helped, no doubt, by the very, very reasonable ticket price of just €130 for two days!). My sincerest thanks to Encarna, Martin, Andrea and everyone else who helped put the event together. It was an honour to be invited.

After the conference proper, Tantek taught a one-day microformats workshop. I might be a bit biased but I thought he did a great job. But I think I was even more impressed with the audience and the smart questions they were asking.

In fact, the best thing about the conference wasn’t any particular presentation or panel—it was the people. The language barrier didn’t get in the way of having a good ol’ natter with fellow geeks. I was introduced to a Spanish web standards community called Cadius. They have meetups in various parts of Spain to drink and discuss design and development… my kind of people.

I count myself very fortunate to live somewhere where there’s a vibrant real-world community. As I’ve said before, Brighton seems to have an inordinately high number of geeky gatherings. Why, on the very night that I got back from Spain, I found myself playing Werewolf thanks to Simon and Nat. The night after that, I had the pleasure of attending a talk by Steven Pinker (hey, language geekiness is still geeky).

The most recent Brighton geek meetup I attended was the £5 App where local entrepreneurs and developers get together to showcase things they’ve built. This time, it was my turn. I gave a talk on the past, present and future of The Session.

As it turned out, I had quite a lot to say. Without really intending to, I spoke for about two hours, occasionally demonstrating a point by playing a quick jig or reel on the bouzouki. I’m sure I must have bored everyone senseless but once I got started, there was no shutting me up. I touched on some of the technical aspects of the site but mostly I focussed on the community side of things, recounting how sites like Fray inspired me to start getting stuff out there—if there was one downside to being at Fundamentos Web last week, it was that I didn’t get to see Derek Powazek who was in London for The Future Of Web Apps.

I decided to forego slides for my £5 App presentation but I did put together an outline of points I wanted to make. I hope I managed to put the site in context of the aural and written history of Irish traditional music, focussing in particular on the rip-roaring tale of . For the record, here’s the outline in format:

  1. Irish traditional music
    1. Itinerent harpers, e.g. Carolan composed tunes.
    2. Traveling dancing masters. Pipes, fiddles, flutes and whistles.
    3. Dance music:
      1. Jigs—East at Glendart
      2. Reels—The Wind that Shakes the Barley
      3. Hornpipes—The Rights of Man
      4. Slip Jigs—Hardiman the Fiddler
      5. Polkas—Jessica’s
      6. Slides—O’Keefe’s
    4. Usually no known composers.
    5. Aural transmission.
  2. Francis O’Neill
    1. 1848: Born on August 28th in Tralibane, County Cork.
    2. 1865: Ran away to sea. Mediterranean, Dardanelles, Black Sea.
    3. 1866:
      1. Liverpool to New York on the Emerald Isle (meeting his future wife, Anna Rogers).
      2. New York to Japan on the Minnehaha.
      3. Shipwrecked on Baker’s Island.
      4. Rescued by the Kanaka crew of the Zoe: 34 days to Hawaii.
    4. 1869: Teaching in Missouri before moving to Chicago (sailing the Great Lakes).
    5. 1873: Sworn in as a policeman. Shot a few months later by a gangster (bullet never removed).
    6. 1901: Chief of Police.
    7. 1903: The Music of Ireland.
    8. 1905: Retires.
    9. O’Neill’s 1001: “The Book”.
  3. Pub sessions
    1. 1947: The Devonshire Arms, Camden, London.
    2. No set lists. Not the same as jamming.
  4. Folk Revival
    1. 1960s: Sean O’Riada, The Chieftains, Planxty.
    2. 1970s: The Bothy Band.
  5. The Internet
    1. Mailing lists like IRTRAD-l.
    2. ABC format.
  6. The Session
    1. 1999? Original site with no domain
      1. Very little interaction.
      2. Weekly updates: a new tune.
      3. Email subscribers.
    2. Relaunch, June 3rd 2001, thesession.org
      1. Member profiles and tunebooks.
      2. User-submitted tunes, recordings and links.
      3. Discussions.
    3. Incrementally:
      1. Sessions.
      2. Events.
  7. Community management
    1. One rule: Be civil.
    2. A little attention every day.
    3. Benevolent dictatorship.
  8. Tech specs
    1. LAMP: Linux Apache MySQL PHP
    2. Edit in place for admins… just me.
    3. JavaScript for progressive disclosure, faux pop-ups for forms
    4. Ajax for pagination.
    5. Lean, mean standards-based markup is good for SEO.
    6. Minimal use of graphics means speed, even on dial-up.
  9. Show me the money!
    1. Tip jar.
    2. Amazon shop.
  10. The Future
    1. More network effects from more user data.
    2. Travel section?
    3. Ratings?
    4. Better back-end code. An API?
    5. Expose more data like most popular tunes.

Lock up your data

There have been a number of experiments carried out to investigate the effects of video on communication. I recall hearing about one experiment done with mothers and babies. The mothers were placed in one room with a video camera and the babies were placed in another room with a monitor showing a video feed from the mother. The babies interacted just fine with the video representations of their mothers. Then a one second lag was introduced. The babies freaked out.

I was reminded of this during the closing panel on day two of Fundamentos Web. Tim Berners-Lee dialed in via iChat to join a phalanx of panelists in meatspace. Alas, the signal wasn’t particularly strong. Add to that the problem of simultaneous translation, which isn’t really simultaneous, and you’ve got a gap of quite a few seconds between Asturias and Sir Tim’s secret lair. The resultant communication was, therefore, not really much of a conversation. It was still fascinating though.

Some of the most interesting perspectives came from George and Hannah—the people who are working at the coalface of social media. George asked Sir Tim for advice on the cultural side-effects of open data—how to educate people that publishing on sites like Flickr means that your pictures can and will be viewed in other contexts. Interestingly, Sir Tim’s response indicated that he was more concerned with educating people in how to keep their data private.

This difference in perspective might be an indication of a generation gap. The assumption amongst, say, teenagers is that everything is public except what they explictly want to keep private. The default assumption amongst older folks (such as my generation) is the exact opposite: data is private except when it is explictly made public. The first position matches the sensibilities of Flickr and Last.fm. The second position is more in line with Facebook’s walled garden approach.

I was really glad that George raised this issue. It’s something that has been occupying my mind lately, particular in reference to Flickr.

Flickr provides a range of ways of accessing your photos; the website, RSS, KML, LOL… and of course, the API. It’s a wonderful API, certainly the best one that I’ve played with. I had a blast putting together the Flickr portion of Adactio Elsewhere.

Using the API, I was able to put together my own interface onto my photos and the latest photos from my contacts. There’s nothing particularly remarkable about that—there are literally hundreds, if not thousands, of third-party sites that use the Flickr API to do the same thing. However, a lot of those sites use Flash or non-degrading Ajax. But I use Hijax. That means that, even though I’ve built an Ajax interface, the fundamental interaction is RESTful with good ol’ fashioned URLs. As a result—and this is just one of the benefits of Hijax—the Googlebot can spider all possible states of my application.

You can probably see where this is going. It’s a similar situation to what happened with my pirate-speak page converter. Even though I’m not providing a direct interface onto anyone’s pictures, Google is listing deep links in its search results.

This has resulted in a shitstorm on the Flickr forum. Reading through the reactions on that thread has been illuminating. In a nutshell, I’m getting penalised for having search-engine friendly pages. I, along with some other people on that thread, have tried to explain that Adactio Elsewhere is just one example of public Flickr data appearing beyond the bounds of Flickr’s domain—an issue tangentially relatred to intellectual property rights.

In this particular sitution, I was able to take some steps to soothe the injured parties by creating a PHP array called $stroppy_users. I also added a meta element instructing searchbots not to index Adactio Elsewhere which, I believe, will prevent any future grievances. As I said in the forum:

If a tree falls in the forest and Google doesn’t index it, does it make a noise?

I think the outburst of moral panic on the Flickr forum is symptomatic of a larger trend that has accompanied the growth of the site’s user base. Two years ago, Flickr was not your father’s photo sharing website. Now, especially with the migration from Yahoo Photos, it is. If you look at some of the frightened reactions to Flickr’s pirate day shenanigans you’ll see even more signs of this growth (Tom has a great in-depth look at the furore).

As sites like Flickr and Last.fm move from a user base of early adopters into the mainstream, this issue becomes more important. What isn’t clear is how the moral responsibility should be distributed. Should Flickr provide clearer rules for API use? Should Google index less? Should the people publishing photos take more care in choosing when to mark photos as public and when to mark photos as private? Should developers (like myself) be more cautious in what we allow our applications to do with the API?

I don’t know the answers but I’m fairly certain that we’re not dealing with a technological issue here; this is a cultural matter.

Web Fundamentals

Day one of Fundamentos Web just wrapped up here in Gijón.

I got my talk out of the way pretty early on: I was the second speaker, right after Bert Bos. He invented CSS; I… um… build websites… sometimes.

Not everyone was listening to the simultaneous translation. I estimated that less than 50% of the audience were wearing headphones (I’m assuming that they weren’t all listening to their iPods). Either way, I made a conscious effort to speak slowly. In fact, I overdid it a bit and over-ran. If recollection serves, that’s something I’ve never done before.

I played it pretty straight, leaving out a lot of jokes and culturally-specific references. I couldn’t tell whether the audience was completely bored or just paying close attention. People came later and told me they liked it so I hope it was the latter.

One person who told me that I made Ajax understandable was my interpreter. I thanked her for the compliment but I was kind of surprised. When I’ve talked to interpreters, I got the impression that the key to simultaneous translation is to become a conduit—to remove yourself (literally your “self”) from the equation. So I’m amazed that my interpreter, Priscilla, was able to translate and pay attention to the content at the same time. But then, I’m somewhat in awe of the ability to do simultaneous translation. As Priscilla said, when it’s done really well, it’s invisible—kind of like what Jared says about good design.

I wonder how Priscilla managed to cope with the talk after mine. If you’ve ever seen Jeff Veen talk, you’ll know that he’s quite animated. I must find out how she translated “Tingle Fizz.” Jeff managed to out-do my pitiful attempt at localisation: I just translated some slides; he gave a short speech in Spanish (although that’s still not quite as impressive as Joe’s Icelandic benediction).

The day wrapped up with an impressive panel of representatives from browser vendors: Microsoft, Mozilla, Opera, Konquerer and Nokia, moderated by Bert.

I noticed a certain dichotomy in the panel (dichotomy is a milder word than hypocrisy).

There was a lot of talk about standards and innovation and debates about what features browsers should implement. The general concensus was that browsers should implement what the developers are asking for… or, even better, implement what developers are actually doing.

That’s fine. It sounds great in theory. But the reality that I saw was that each browser vendor had their own hobby horse. For some, it was SVG. For others, it’s canvas. The actual technology is irrelevant. That reality conficts with the theory: instead of implementing what’s relevant, browser vendors sometimes push their own agendas. That’s all well and good but the real problem arises because those browser makers are W3C contribitors. Those hobby horses don’t get checked at the door. The result is that browser verndor politics end up having a big influence on the W3C process—they become W3C politics. And who gets the blame? The W3C.

I started typing this in the hotel bar in Gijón and, as I was writing, the browser representatives one-by-one showed up. So now I’ve ended up having this rant IRL as well as having a good ol’ blog rant.

Ah, that feels better.

Update: You can download the slides of my presentation and scoff at my attempts at localisation.


I’m about to head off to Gatwick airport and catch a flight to Spain. I’m going to the Fundamentos Web conference in Gijón in the prinicipality of Asturias, somewhere I’ve never been. I was asked to speak last year but it was right after Web Directions South and I didn’t want to cut short my trip to Oz. This year I face no such dilemma so I jumped at the chance.

I’ll be speaking about Ajax. Nothing new there. What is new is that most of the audience will be non-native English speakers who will be relying on an interpreter for simultaneous translation. I wonder if I should adjust my presentation style accordingly (like, maybe slow down a bit). I’ve already tried to localise my slides; because most of my slides consist of one great big word, I’ve tried to get that word translated into Spanish (of course that doesn’t apply to coding terms like XMLHttpRequest). It remains to be seen how successful my attempts at cultural sensitivity turn out to be.

I’ll be landing in Asturias fairly late this evening and then speaking early tomorrow so I’ll need to hit the ground running. Pre-presentation nervousness has already begun and I haven’t even left Brighton yet.