On the joys of 1.0

In a little less than two weeks, we're going to be releasing Popcorn.js version 1.0.  Our team is pretty excited, not least because we'll be doing the release at the Mozilla Media Festival in London.  We're also excited because getting to 1.0 is a really big deal, and we're happy to have made it.

A year ago I was announcing the release of another joint Mozilla-Seneca project, Processing.js 1.0.  Shipping 1.0 means a heavy investment of time, and the effort and co-ordination of a dedicated team.  It's not typically the kind of thing you see coming out of the classroom and from college students, since most academic projects remain academic, confined to the limits of a semester.  But it's what we pride ourselves on at Seneca's Centre for Development of Open Technology (CDOT), and it's possible because of great partners like Mozilla.

I remember one of the first visits Mike Shaver made to my open source Mozilla class at Seneca many years ago.  A student asked him for advice on taking what they were doing in the classroom into the job market: "What do you look for when you're hiring?"  Mike's response really stuck with me; he said:

When I'm hiring I want to see what you've shipped.  Not what you've started and abandoned; show me what you've taken over the line.  Shipping is hard.  Do you know how to do it?
The way you ship 1.0 in an academic setting, and do it repeatedly, is to use a hybrid approach, and to form a network of support.  In order to make Popcorn.js, we've had 15 students working on it over the past year and a half--some as volunteers, some as class work, some as co-ops, some as research internships.  We've used grants from government (NSERC, OCE) and Mozilla to allow us to hire students and manage the project from CDOT.  We've had strong project leadership (i.e., daily involvement) from Mozilla's Brett Gaylor, who brought everything he knew about film and film making to our development.  We've had amazing technical leadership from Rick Waldron of Bocoup in Boston, who helped us evolve our APIs and joined our team as a daily contributor and code reviewer.  We've had tremendous support from Mozilla on logistics, marketing, outreach, travel opportunities, and industry contacts.  And we've had strong volunteer community support, both from the Popcorn community, and also from Mozilla's developer community.

When Mark Surman initially approached me about working on Popcorn.js at CDOT, he sold it as a technology that could bridge the worlds of film and media, design, story telling, and the web.  More than a year later, Wired writes that Popcorn "could be the next big thing in internet video."  It's incredibly rewarding to see filmmakers, web developers, designers, and others able to come together and collaborate thanks to Popcorn.

To get ready for the Festival I decided to write a plugin for Popcorn that our users have been requesting a lot lately.  Ever since Mozilla's pdf.js project launched, I knew I wanted to use it with Popcorn so that people could render pages of PDF documents on the web in time to media (imagine slides and videos of conference talks).  After writing the plugin I made a small demo that mixes a Justin Bieber video with an academic paper about his tweets, and the real-time #bieber tweets themselves.

The demo itself is about 25 lines of code, which speaks to the power of Popcorn now, and how little development knowledge you need to make it do cool things.

I'm looking forward to the Festival and to shipping Popcorn 1.0.  It's been a lot of hard work by Seneca and all the other developers and project members.  I'm extremely proud of the work, and the team that did it.  I'm also thankful for the continued opportunities Mozilla and Seneca give me to participate in, lead, and help ship real world projects with students.  "Yes, we know how to ship, let us show you some examples."

See you in London.