Orchestrate brilliance.



 

In the Limelight - Blog
Pages:
Categories:
Archives:

Five Questions with Alex Daley, Microsoft Photosynth

Microsoft recently launched Photosynth, a web application that uses client and server side technology along with cloud storage to create three-dimensional views of scenes or objects by fusing digital photos. We recently sat down with Alex Daley, Live Labs group product manager for Microsoft, to discuss the public’s response to the new technology and how Limelight Networks played a key role in the successful launch of the service.

What is Photosynth?
The Live Labs team is really excited about Photosynth.  Available at http://photosynth.com, Photosynth is an entirely new visual medium that uses digital photos to create a three-dimensional view of a scene or object.  It fuses together a group of digital photos, analyzes each photo for similarities to the others, and uses that data to estimate where a photo was taken from.  It then re-creates the environment and uses that as a canvas to display the photos.  The end result is a three-dimensional, 360-degree experience, where any viewer can feel as if he or she is right there in the photographer’s shoes.

For example, this synth of a boxer lets you explore the environment in a way not possible with a single photograph:

How does Photosynth make these cool synths?
What makes Photosynth so interesting from a technology perspective is the unique blend of two great technologies. First, there is the ability of the “synther” to reconstruct a 3D scene from a set of 2D photographs, which is basically the inverse of normal graphics problems.  Microsoft and its academic partners have been working for years on the research to enable this, and in particular, Photosynth’s unique approach to using the 3D data as a way to explore the individual photos in context was inspired by a joint research project with the University of Washington and Microsoft Research. Second, when working with these large collections of photos, you need a much better way to download and view these multi-megapixel or gigapixel spaces—clicking back and forth between 400 thumbnails and large copies, waiting for each individual item to download, just won’t work. With our Seadragon technology under the hood,

Photosynth users are immediately immersed in the environment that the synther creates.  Photosynth uses this multi-resolution technology to break the dependence on the size of the image for rendering, and instead, downloads just the parts of a scene it needs at any time, in real time.  This means that the performance of downloading any media is no longer proportional to the size of the file, but instead is simply related to the bandwidth available and the size of the screen.  To deliver these large amounts of data effectively to the client with this much speed, Limelight was a critical part of the infrastructure.

Photosynth uses a Software plus Services architecture to make all of this possible.  On the client-side, Photosynth takes advantage of the processing power on the local machine to create the 3D environment—an important distinction, as without this edge computing, Photosynth would be far more difficult to scale.  Creating a synth is not a few millisecond operation like a web search, but rather can take from 2 to 10 minutes of heavy use of a machine’s resources.  So, we use the edge for what it is best at, computation.  And we use the network for what is best for, connecting people to information and each other.  After all, that is what Photosynth is all about, creating a community where people can share these new experiences.

Could you describe the launch day demand?
We have been incubating Photosynth in Live Labs for the last 18 months, so we all were eagerly anticipating launch day.  The first 24 hours after we flipped the switch saw an incredible amount of traffic.  We saw millions and millions of images uploaded in the first few days from people around the world.  People showed an incredible range of creativity and ideas for how to use Photosynth, so we were blown away by the reception.

But as your readers have probably read about already, we weren’t as ready as we thought we were.   A glitch in the way we configured our systems brought us down for a few hours—but we were able to repair it quickly and get service back online soon.  At Live Labs, we bake risk into our funding model and the way we evaluate software for release—we have to with such novel and complex architectures like you see with Photosynth.  So, while we did everything in our power to keep the service available, we were also as prepared as possible for the unlikely event the service hit capacity.  The rules we set for ourselves in planning for the scenario were simple:  Fail gracefully, don’t leave customers hanging; Keep it to minutes or hours, not days; and, Be transparent about causes and remediation.

And we were happy to have Limelight with us when the unlikely occurred.  Instead of just failing with a “500 server error” or “host unreachable”, instead we gracefully rolled over to a static implementation of the site where users could install the client and view a dozen or so of the most incredible synths.  The Limelight failover solutions made a difficult experience much more pleasant for customers and let the team concentrate 100% on addressing the problem.

How did Limelight Networks support the launch?
Our relationship with Limelight Networks was critical.  The assistance and knowledge Limelight Networks provided were crucial to making this launch a success.  With a team of only a dozen people, Photosynth was as resource constrained as any startup.  Not only that, we were delivering an entirely new, bandwidth intensive, digital medium at large scale with that small team.  Limelight’s expertise was crucial in getting us to market as fast we did, in helping us cope with the issues we faced on launch day and in scaling the service to support the incredible demand we continue to see post launch.  When the systems on our side were stretched to the limit, Limelight didn’t even break a sweat.

What advice would you give to another company that plans to launch such a bandwidth, server, and storage intensive consumer-grade application?
Be ready for success. Don’t accept failure as inevitable at a certain scale. Partners like Limelight can help you scale far more effectively, handle unanticipated demand better and in addition, you benefit from their experience. Oh yeah, and do more load testing on your database configuration…

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Reddit
  • Twitter

Leave a Reply