Carson Summit Part 2: Cal Henderson - Flickr

This looks like a really old post (I mean, it's from 2006 for goodness sake). Stay for the retro vibes but be aware any information in this post is likely way out of date.

Building Flickr

Cal looks at 10 things which he sees as being instrumental to Web 2.0 from the point of view of Flickr.

Collaboration

Allowing people to list friends on Flickr enables a social network to develop, making the site better for them and for you. In addition, people within the network can add metadata to each other's photos so giving added benefit to all.

Aggregation

Having multiple types of data for each item (date, tags, geolocation, 'interestingness') means you can display it in lots of different ways.

Open APIs

Start with a basic API (ie ready-only) and work up to a full-featured one. The advantage of APIs is that it allows others to build features for you that you have neither the resources or inclination to build yourself. In addition it forms a free marketing tool as people who use it will talk about it.

A selfish reason for building an API is that it makes getting at your data easier so reducing the number of people grabbing your data by more invasive methods such as page-scraping.

Clean URLs

2 out of 2 for this one! Cal adds that once given a nice url, it should never be changed as it will have been bookmarked and linked to. Obvious but worth re-stating. He also mentions that as urls become cleaner more people will start to manipulate them, so Flickr for example shows the hierarchy of the information within the url. He goes on to say that it's worth making sure your urls will scale with the site.

AJAX

Not the first time this will be looked at today, this enables load on the server to be reduced (something which was raised later was that you might experience increased server load as your users interact more with the site - but that's all good!).

Unicode UTF-8

It's all about internationalisation and localisation, baby! Cal points out the difference between the two (enabling storage vs output in differnet language).

Desktop integration

Bringing the website out of the browser means your site has more reach and makes it easier for users to interact with it (dragging & dropping files is one task which is far easier to accomplish on the desktop). Build widgets to allow uploading of files, plugging into the API. Allow email to be a delivery tool for publishing content.

Mobile

WAP really hasn't changed our lives, but many of the newer phones have browsers based on Opera. Cal's main point here is that it is a different type of user who is going to be using a mobile to view the site and so you should re-purpose your content to suit; swapping out the styles may no longer be enough.

Open Data

This is important stuff for service sites - allow your users to feel that they can leave with all their data at any time (and that includes any metadata which they may have added while using your service). All this can be accmplished via APIs allowing 3rd party sevices to add more value.

Open Content

Again important stuff. The data belongs to the user along with all the rights, unless specified by the user by Creative Commons or suchlike. The site cannot use or modiy the data without their permission.