03 November 2009

Get on The Wave!

Our new viral video site for Stop Climate Chaos was a lot of fun to build and is creating quite a stir... Get on The Wave!

Towards the end of September, Stop Climate Chaos approached us with an idea for a viral video site, featuring user-generated content, promoting The Wave, a massive public demonstration in London on Saturday 5 December 2009 ahead of the crucial UN climate summit in Copenhagen.

With a brief including the design and build of the campaign microsite itself and the production of rich media banners both for mainstream publishing networks and coalition member organisations, and with launch of the microsite required by 19 October to tie in with the PR campaign, it was clear that we had to adopt an agile, flexible, collaborative approach and leverage existing tools wherever possible, rather than building from scratch.

Pandastream, a Ruby app, made what could have been the trickiest part - allowing users to upload their clips in hundreds of possible formats, and converting / resizing / compressing it into compressed web-ready video - into a three hour job of reading the docs, installing and testing.
The second part of the application is a simple web app giving Stop Climate Chaos a dashboard of the newly converted videos. They click a preview, decide whether or not the video is appropriate, and mark it as approved or rejected. Either way, the submitter gets an email notification.
Because submitters want to see their videos go live as quickly as possible, and SCC have limited time for moderation, it was important to let them preview and approve / reject lots of videos on one screen. Admins can also weight videos, so that cool ones are seen earlier in the stream.
We built this app in Django, an open-source Python framework which - among its many nice features - makes it very
easy to build admin interfaces on top of your databases. As well as the admin interface, the Django app has the important job of returning a list of all the live videos, in XML format, to the Flash front-end.
The bit the user actually sees is a Flash app, which requests a list of clips from Django, using a fairly complicated algorithm which is mainly random but includes a coolness weighting. As you watch clips, the next screenful are lined up just in time to give the impression (hopefully) of an endless stream.
We built the Flash app using Flex, another open source framework which provides lots of components for common features - video players, form fields, talking to XML data etc. Flex also has the advantage that the same code can be used to build off-line, cross-platform desktop applications although that feature wasn't relevant in this project.
The site is hosted "in the cloud", using Amazon Web Services. This project is a great example of how the cloud can help online campaigns launch quickly and cheaply.
We asked Stop Climate Chaos to set up an AWS account and to give us access: an hour later we had a virtual server running with all the bits that we needed on it. We used three of the services Amazon offers: EC2 for the virtual servers (for converting video, the admin app and spitting out the XML for the Flash front end), Cloudfront for hosting the video files themselves (fast, reliable and cheap file serving) and Simple DB for a no-frills, scalable database.
If the site is as madly successful as we hope, we can quickly add more virtual servers to share out the work, then turn them off again when usage dies down, all without any downtime.

Panda, a Merb app, made what could have been the trickiest part - allowing users to upload their clips in hundreds of possible formats, and converting / resizing / compressing it into web-ready video - into a three-hour job of reading the docs, installing and testing.

The second part of the application is a simple web app giving Stop Climate Chaos a dashboard of the newly converted videos. They click a preview, decide whether or not the video is appropriate, and mark it as approved or rejected. Either way, the submitter gets an email notification.

Because submitters want to see their videos go live as quickly as possible, and SCC have limited time for moderation, it was important to let them preview and approve / reject lots of videos on one screen. Admins can also weight videos, so that cool ones are seen earlier in the stream.

We built this app in Django, an open-source Python framework which - among its many nice features - makes it very easy to build admin interfaces on top of your databases. As well as the admin interface, the Django app has the important job of returning a list of all the live videos, in XML format, to the Flash front-end.

The bit the user actually sees is a Flash app, which requests a list of clips from Django, using a fairly complicated algorithm which is mainly random but includes a coolness weighting. As you watch clips, the next screenful are lined up just in time to give the impression (hopefully) of an endless stream.

We built the Flash app using Flex, another open source framework which provides lots of components for common features - video players, form fields, talking to XML data etc. Flex also has the advantage that the same code can be used to build off-line, cross-platform desktop applications although that feature wasn't relevant in this project.

The site is hosted in "the cloud", using Amazon Web Services. This project is a great example of how the cloud can help online campaigns launch quickly and cheaply.

Within an hour of having the AWS account set up we had a virtual server running with all the bits that we needed on it. We used three of the services Amazon offers: EC2 for the virtual servers (for converting video, the admin app and spitting out the XML for the Flash front end), Cloudfront for hosting the video files themselves (fast, reliable and cheap file serving) and Simple DB for a no-frills, scalable database.

The site is creating a real buzz already, with lots of excitement on twitter and a number of high profile coalition member organisations - including Torchbox clients Greenpeace UK and WWF UK - featuring The Wave on their homepages. If the site is as madly successful as we hope, we can quickly add more virtual servers to share out the work, then turn them off again when usage dies down, all without any downtime.

We like...

Dynamic Auto-Painter

Dynamic Auto-Painter

Algorithmically transform your photos into a variety of painterly styles.

Fever

Fever

Fever takes the temperature of your subscribed feeds and shows you what's hot.

750 Words

750 Words

A simple, fun and inspiring website for getting into the habit of writing 750 words a day.