This is a detailed post that has been a long time coming. In summary:
- Popcorn has achieved a lot in the last 5 months
- We’re discovering that our template model is creating too much complexity
- We’re realizing that Popcorn is a powerful media literacy tool
- We’re increasing our focus on Popcorn Maker as a remixer
0.2 - Ghostbusters
0.3 - Breakfast Club
0.5 - Pulp Fiction
What we’ve been working towardWe articulated a design philosophy of Popcorn Maker in February:
- Let people create great delightful interactive video experiences - quickly
- Always stay human readable: HTML, CSS and JS.
- Let users walk away with the source and hack it.
- …and importantly, encourage the maximum amount of flexibility and generativity*.
For Popcorn Maker, we saw the potential for generativity withinin templates. We imagined templates would be the vehicle that would let new contributors create an infinite variety of different interactive video experiences - essentially a video app factory. By creating a base template, we would invite webmakers to modify these templates, submit them to us, and create a virtuous circle of invention and creativity.
What we’re learningWith the launch of Mozilla’s Summer Code Party, a series of events designed to kickoff the webmaker program, we are in a great place to test our assumptions and see how people are using the app. We’ve learned a lot, but two things I want to call out:
- Generativity generates complexity
- Popcorn is an interest based learning tool
1- Generativity generates complexityWhen we imagined the innovation that templates would foster, we didn’t (but probably could have) imagined the engineering problems that would emerge as a result. Each template created a chain reaction of bugs, Quality Assurance problems, and testing issues. To ship the 4 templates we created for the summer campaign, we ended up playing whack-a-mole with bugs and features began to slip.
A case in point is the Robots template that we produced for Storycamp. Our process worked like this:
- The storycamp team (Laura Hilliger, Ben Moskwoitz, Jacob Caggiano, Kate Hudson and I) decided we wanted to teach students “procedural storytelling” - that a story can be told by changing a set of variables
- I created some content by remixing video from the Internet Archive
- Kate created a template that would allow learners to remix this content by adding popcorn plugins - change the google maps plugin and the robots invade your home town, change the flickr plugin and they’re pursuing different humans. Most popular - a new popcorn plugin that used speak.js to allow you to make the robots say whatever you want. Fun!
- The problem started when this new template begun crashing browsers. Turns out that each time the robot talked, it actually needed to start a new computing process in the web browser to transcode a new audio file. Each time the bloody robot would talk, 300 mb of RAM was being used up! Slower computers fell to their knees. Solutions were proposed, teeth were gnashed. (note: this was our implementation, not the fault of the very cool speak.js library).
- We ran into problems with our manual tests. Could you swap in youtube? Would that work on export? Turns out that CSS animation is crashing Firefox. Is it crashing Chrome? Omygod have you seen this in Safari?
- you get the picture.
#2 - Popcorn is a great learning toolSince the Mozilla Summer Code Party would be a coming out party for Popcorn Maker, we were pretty nervous when 50 or so kids assembled, ready to use the app. I filmed them using it:
A few things became apparent right away:
- Kids get it. Aside from a few annoying papercuts (timeline zoom, our event editor),they found the interface intuitive
- They got the idea of mixing video with web content. To the point that they didn’t understand why we thought this was cool :)
- They got excited when we let them work with existing Youtube content. They (naturally) thought their project was cooler when it was based on their favourite pop star or TV show
It was clear at the Toronto event, though, that there was some pretty interesting learning going on. While the kids naturally took to remixing using video, it was definitely the case that none of them had ever used a web app to combine video and 3rd party APIs before.
Looking at the first draft, its clear that Popcorn does address many of these proposed literacies. I circled the literacies I felt were relevant to using Popcorn Maker.
Of course, there’s a fine line between which literacies we depend on vs which ones we teach - but clearly Popcorn addresses many of the “soft skills” of webmaking. And it raises for me a central point of this whole initiative - we aren’t only teaching people to code - we’re teaching people how to express themselves on the web. I’ve never been a coder, but you’re damn straight I’m a webmaker. We need to make sure our tools address not simply how to right semantically accurate HTML and CSS, but that they make you understand that the web is a malleable thing.
From the webmaker website:
"Mozilla believes it’s crucial that we give people the skills they need to understand, shape and actively participate in [the web] instead of just passively consuming it."Douglas Rushkoff sums this up in the nice (and gleefully bombastic) turn of phrase “program or be programmed”.
Watch this clip from my 2008 documentary Rip! A Remix Manifesto - Mark Hosler of Negativland sums up culture jamming - you can stop after Mark raises his fist :)
Hosler’s desire to remix media, to participate in culture rather than consuming it, is the same impulse that led Atul to create the X-Ray Goggles. Whether you’re remixing a commercial or hacking the HTML of the New York Times, you’re reflecting on why and how a piece of media is being crafted. And both are a path towards creating your OWN media - to be a participant.
Or as Faisal Aziz, a webmaker who had arranged a mozparty event in India described when he realized he could remix the Robots template to include a Bollywood film
"OMG!!!!!!! That is totally awesomeeeeeeee!!!!!!! ,…the reason i why i love this tools is freedom to select videos which resembles regional cultures, we can experiment with our local videos and make learning easy,interesting and entertaining."
Popcorn Maker as remix appLooking at the kinds of creations people have created with Popcorn through this remix-as-learning lens, we realized that the most successful projects have in fact been remixes. A few examples:
The Pop up Video template:
Talk back to any video on the web - cheekily add comments or context
History In These Streets
Mix together Google Street view and a narration hosted on soundcloud
Ryan Merkley, our COO at the Mozilla Foundation, demo’ed Popcorn at Ted Global using a custom newscaster template. He created a mock newscast that drew dynamically from Google Maps, weather information, and flickr.
These creations all had a few important things in common:
- They’re created by combining media from across the web - including 3rd party APIs
- They’re relatively quick to make
- They completely fill a constrained, rectangular layout
- To further highlight Popcorn as a learning tool, and to evaluate how it’s used by casual webmakers, we’re aiming to host the app at webmaker.org as soon as possible
- we’re rethinking the interface to make it dead simple for people to quickly remix their favourite videos. Rather than a nice to have, support for hosting sites such as youtube become high priority
- we’re focusing on one universal layout/template, and ensuring all of our popcorn plugins work with this new layout. This will simplify our development, speed up QA, ensure that popcorn creations work embedded in 3rd party sites, and reduce odd interface requirements such as target areas and certian plugins only working with certain templates.
Taking a cue for our colleagues in the thimble app, we’ll also replace “templates” with “projects”, which are essentially pre-populated starter content that demonstrates how to use the app in a creative way, and which invite the user to jump in and remix. We think that THIS is where the generativity lies - showing people different and creative ways to use our app, and providing them with starter content that lets them get to work immediately. It is also a key goal of the Mozilla Foundation in 2012 to provide easy ways for contributors to get involved in our projects - this will help.
We’ve updated our roadmap to reflect these new priorities. The best place to interface with our roadmap is via individual milestones in our Lighthouse issue tracker:
…though we’ve updated the popcorn roadmap etherpad for quick digestion.
It also worth looking at how these new priorities are being translated into UX changes in the app - here is Kate’s most recent summary.
This post is the first of many on this subject - and is meant to start conversations. Please leave some comments, and thanks for bearing with me!