Archive for the 'Web' Category

Good user experience for potentially-objectionable pictures

Monday, August 11th, 2008

Alan is continuing to do a great job with The Big Picture. I really like the way that he’s handling sensitive pictures in this gallery covering the Georgian crisis.

The joys of terms of service

Friday, June 6th, 2008

Joel is unhappy about the terms and conditions a community site he was about to join imposed on him.

So I own the content, but they can do anything they want with it, even in forms that haven’t been invented yet. About the only concession that they grant to my ownership rights is that the license is non-exclusive. It says later that you can delete your profiles and that removes your content from the site, but they could still use it anywhere else, perpetually.

This is a hard one. I had to write a similar document for Life Times Voice back in the day, and you have a couple of conflicting issues.

First, if you want to maintain safe harbor under the DMCA, you need to be used just for communication. If you are taking copyright on the content, then you need to police it, and you’re responsible for any copyright infringement. If you don’t claim the copyright, you’re in the clear.

You need to balance that with the need to be able to reproduce it. The copyright owner has to give you explicit right to reproduce it. The rest of the clause is to protect you if you want to also use it in some unforseen format (podcasts of the best posts of the day, for example.)

I hope to be able to find a smart way to balance each of these needs in the new project. I want to do right by the customers (without crippling the business.)

SmugMug and Amazon Web Services

Wednesday, June 4th, 2008

Once upon a time, I was talking to SmugMug about working with Boston.com on a photo project. It didn’t end up happening, but I was very impressed at how much they had their act together and how they were actually making money. In 2004, this seemed a foreign concept to the other companies I contacted.

I’ve been following them ever since, especially as they’ve become a poster child for Amazon Web Services (AWS), the cloud-computing system I’m using for Serendeputy. Don MacAskill, the CEO, just wrote an outstanding piece explaining how SmugMug is using AWS to handle all their document processing.

SkyNet [SmugMug’s main controller] is completely autonomous - it operates with with zero human interaction, either watching or providing interactive guidance. No-one at SmugMug even pays attention to it anymore (and we haven’t for many months) since it operates so efficiently. (Yes, I realize that means it’s probably well on its way to world domination. Sorry in advance to everyone killed in the forthcoming man-machine war.)

Roughly once per minute, SkyNet makes an EC2 decision: launch instance(s), terminate instance(s), or sleep. It has a lot of inputs - it checks anywhere from 30-50 pieces of data to make an informed decision. One of the reasons for that is we have a variety of different jobs coming in, some of which (uploads) are semi-predictable. We know that lots of uploads come in every Sunday evening, for example, so we can begin our prediction model there. Other jobs, though, such as watermarking an entire gallery of 10,000 photos with a single click, aren’t predictable in a useful way, and we can only respond once the load hits the queue.

I’m architecting my systems in a similar way, trying to build everything out so that it’s as decoupled and asynchronous as possible. If I can fire up only the machines I want and only when I need them, then I can bootstrap the organization far longer than I could if I had to buy the equivalent physical machines. The experiments and prototypes I’m working on would be prohibitively expensive without AWS.

Although SmugMug isn’t using it, I’m using SQS for managing all the communications between these instances. Keeping it all in one system reduces my headaches. Now, I just need Amazon to incorporate CouchDB and I’ll be really able to roll. SimpleDB is a start, but it’s not really meeting what I need.

I look forward to hearing more from Mr. MacAskill and SmugMug as they continue to innovate with AWS — especially if I can pick up more architecture hints…