13 Feb 2004

i want a photo-sharing application

i've been thinking about this problem for a while now. i just felt like fleshing it out on my blog. before i start, you're probably suprised that finally i'm saying something that is more than a link to a couple of funny websites!

now, think about this common situation. you go out with a bunch of friends, each friend has their own digital camera or phonecam, takes a whole load of snaps. now, there is no good way for everyone to share their photos. one way would be to register for these free photo uploading sites. each friend registers on a different site, and some need passwords to view, or other stupid mechanisms. some limit how much you can upload. some people email them around, some people just never share them, etc. in short, it is a nightmare.

now lets look at something else, peer to peer networks. the definition for peer to peer networks is murky, but basically, it means those apps like kazaa, morpheus, directconnect, edonkey, limewire, winmx, bittorrent. those work on the basis that what you share or download is also valuable to other people. it is a great way to share files (music) and movies with people you don't know. thats fine because it's just a big anonymous network (ok, don't argue with my about anonymity, i know you are never truely anonymous on the internet.) but we can't really use this network for file sharing because of a couple of reasons.

1. no one will download your files to share with others (unless you're some sort of porn star)

2. no one will you know will be able to find you on those networks. for instance, how many of you know someone else's handle on kazaa or directconnect. you can't browse the person's damn share list, how are you doing to search for the photos you want to see. eg "christmas party 2003."

3. those file sharing architectures are badly designed for sharing small files, they are designed to share popular and large(-ish) files, like bittorrent.

4. the interface on these programs are really really bad for sharing photos. there is no concept of thumbnailing, previewing or transcoding. for instance, if i want to check out some photos from a friends, i don't need their 2048x1024 size photos, i just want a small preview 120x90 to check if i really want that photo, and then i can download a slightly bigger one i can put into my album (eg. iphoto) or wallpaper size. i might also want to add comments to the photo (eg. EXIF tags), like a collaborative annotation for photos, add metadata, etc.

so now we see why traditionaly file sharing applications don't fit my desire for photo-sharing. but there is one app that comes halfway to my goal of seamless photo sharing. that is iphoto4. sorry guys, if you don't use a mac, you haven't experienced this superb application. i've got about 3000 digital photos, all organised nicely in my iphoto, i can find all sorts of photos there, no need to go thru directories to try and find my photos. need to retouch my photos, no problem, sort by date, rotate, etc, all done in the same app and easy to use interface. quickly launch a slide show, no problems, add a soundtrack great!. all it needs is some sort of content based retrieval and a revamped keyword system (i'll gripe about their keyword system in a later post.)

now that is fine for organising your photos, your life, but we want to share our photos, share our life. iphoto4 goes a small way to solve this problem using rendezvous. it allows shared albums just like itunes' shared playlists. you can share the photo albums on your computer with the others on your own network. this is fine for sharing photos among a family or some dorm room. but if i want to share photos with my girlfriend who is 11000km away in sydney (hi teresa!) this is a bad solution. for example, the assumption is that you have high speed links between the sharing computers, because they are on your local area network. but in this case, they aren't. there are things like network beacon which allow you to bridge rendezvous domains, but this doesn't solve the bandwidth problem.

so there seems to be a clear need for a very specialised program, or maybe even a plugin to iphoto4 to allow some smarter sharing. i've listed all the bad things about the current solutions, and probably the first attack at me would be, "now you come up with a better solution!"

and so i am trying to find how it would actually work. there's a gold mine of feature requests in the above passage that i've written. in some time later, i'll start to nut out my proposal for the ultimate photo sharing application and the design considerations that need to take place. i'll also look at some apps that are designed to solve similar problems like this like Madster and Groove.

You can reply to me about this on Twitter: