20 Feb 2015

Revisiting Photo Storage

(Disclosure: I work for Google, but not on anything photos-related.)

Apple’s new Photos app for the Mac brought photo storage to the news again. And reminded us that we don’t have a good photo storage service yet.

Existing apps like iPhoto, Lightroom and Aperture are confined to a single computer, as if we’re still living in 2005. You can’t access your photos from another device, and if your PC crashes, you lose your photos.

Then there are web services like Flickr and Facebook Photos, which are fine as far as web sites go, but a poor substitute for a native app. Native apps can work with local data, have zero latency, work offline, and offer far more powerful categorisation and editing features. And they have top-quality interfaces, rather than the second-best ones found in web apps.

Google’s Picasa is an exception, comprising both a native app and a web app. Unfortunately, the Mac app is neglected and doesn’t look or feel like a native Mac app. It’s awkward to use, and never gets less so. The web app (picasaweb.google.com) is also neglected, and plays second fiddle to Google+. If you don’t care about Google+ and don’t have a G+ account, Google’s web experience for photos is mediocre, too.

Besides, Picasa and Picasa Web don’t work together. For example, I’d Picasa shows photos on my local disk, and not a combined view of photos on the local disk and photos on the cloud, as I’d expect.

So, all the existing photo storage apps and services are mediocre. What would one expect from a better one?

To begin with, it should be the best of both worlds — the cloud and local. This means native apps on all platforms — OS X, Windows, Android and iOS. And an excellent web app. Your photos would live on the cloud, and you’d be able to access them using any of these apps.

You can also choose to have your photos synced down to your computer, so that you have zero-latency access, offline access, can open them in other apps, and so on. Think Dropbox or Google Drive — you can choose to have all your data synced down to your PC. Or only some folders. Or no folders at all, and access it directly from the cloud. In any case, you can access all your data from any of your device.

The only wrinkle with Dropbox and its friends is that you have to use a different interface depending on whether what you’re accessing has been synced down to the PC you’re using. If it has, you can use the filesystem to access it. If not, you have to use the Dropbox web interface.

Our photos service can do better — no matter where the photos are stored, you’ll be able to use the native app to access them, and they’ll be transparently downloaded as needed. You won’t have to worry about what’s been synced and what’s not. The app will take care of it.

You can still choose to take control, and ask the app to sync all your photos to your PC. Or specific collections of photos, like your trip to Bombay. Or just leave it to the app to take care of the syncing.

Needless to say, you’ll be able to add photos to your collection using either the PC or the mobile apps. You’ll also be able to set up the mobile apps to automatically upload new photos you take to the cloud, like Dropbox and OneDrive.

Having your photos live on the cloud gives you multiple advantages: you’ll be able to access your photos from anywhere, including devices with insufficient storage to hold all your photos. You’ll have a backup if your PC breaks or is stolen or crashes. And since your photos live on the cloud, you’ll be able to easily share them with your friends.

In addition to syncing your photos, the app should automatically organise them for you, using data like EXIF tags. Existing apps like Lightroom are dumb, making me painstakingly organise my photos myself. I shouldn’t have to create a ‘Bombay’ album when the app can figure out what photos are from Bombay. If I visited Bombay multiple times, say in 2008 and 2014, I shouldn’t have to create two albums.

This location-based organisation should let me see my photos at any level of granularity, like Bombay, or Maharashtra, or India, or Asia. This matters if you have thousands of photos from Asia, in which case the app should help me intelligently group them by country, rather than throwing the raw data in your face and leaving it to you group it. And if you still have many photos from India, the app should intelligently group them by state and city. And even locality, if you have hundreds of photos from a particular city.

I shouldn’t have to painstakingly create multi-level folder hierarchies (or collection hierarchies in Lightroom) to approximate what the tool should do for me.

And it should get as granular as I want. If I have a couple of hundred photos from Bombay, the app shouldn’t throw all of them in my face and leave it to me to navigate it. I should be able to see photos from different areas like Marine Drive or Andheri. Or even a particular point on Marine Drive, like Nariman Point. If I remember a beautiful photo I took there, the app should let me find it in seconds, rather than make me painstakingly flip through hundreds or thousands of photos to find it, or give up.

This goes for time-based organisation as well. Apple’s new Photos app does this very well — you can see photos from 2014, or from 2014 Oct, or from 2014 Oct 17th. And the right level of granularity depends on how many photos you have. You shouldn’t have to create a folder / album / collection called Night Photography, for example, since the tool should be able to read the timestamp in the files and figure out what’s night.

In addition to location and time, the app should intelligently organise photos by people (“show me photos with Poornima”). And even objects in the photo, using computer vision, so you should be able to ask for photos of the Golden Gate Bridge even if there are no EXIF tags in the photos.

So, the app should automatically organise your photos as much as possible, by place, time, people and landmarks. But if the automatic organisation falls short, we should go for the equivalent of Smart Albums in iPhoto (or Smart Collections in Lightroom, or Smart Folders in Finder), where you just define rules, and the app shows you matching photos. This is like a saved search, and is far superior to manually adding photos to albums, because a saved search can never get out of date.

For example, I can define a Smart Album named Long-exposure photography, which matches all photos with an exposure of 1/5 second or longer. This will always match all such photos, and never match photos with a shorter exposure. When you add a photo to your collection, it will automatically show up in the Smart Album if it should. Whereas, if I define a plain album, or a folder in Finder, then I’m taking on the onus of keeping it up-to-date — I may forget to add some photos to this album that I should have, and conversely, I may accidentally add photos that don’t belong there. When I add new photos to my collection, I should remember to add them to this album if they meet the criteria.

Which becomes hard if I already have an album named Goa, for example. Now, if I do some long-exposure photography in Goa, should I add the photos to the Goa album, or to the long-exposure photography album? Or both, which makes it even harder. Keeping thousands of photos organised is hard enough when a photo belongs to one and only one album. Now, if I should keep track of all the albums a photo belongs to, it becomes even harder to manage.

Smart Albums avoid all these problems. A photo appears in all the Smart Albums whose criteria it matches, and this is never out of sync.

You should be able to non-destructively edit your photos, so you’ll be spared the drudgery of making a copy of a photo before editing it, just in case you don’t like your edits. And virtual copies, so you can try two different edits without actually making a copy of the file in storage.

In conclusion, this is what I expect from a top-notch photos service: apps for OS X, Windows, Android and iOS. And a web app. Your photos live on the cloud, and can be accessed from any of your devices. The app should automatically organise photos by location, time, people and landmarks, and at multiple granularity along these axis (Asia vs India vs Maharashtra vs Bombay vs Marine Drive vs Nariman Point). The app should organise photos automatically to the extent possible, and if manual organisation is needed, this should be in the form of rules or Smart Albums, to reduce the tedium of maintaining the organisation.

Unfortunately, no one has yet built such a service, as far as I know. But it’s clear what it takes to build a top-notch photo storage service, so we have to wait for someone to do it.

No comments:

Post a Comment