Features:

Forking Popcorn for a Journalist Audience

The Team Behind KettleCorn on Their Open Source Process


At the Mozilla Festival last fall, a team from the Broadcasting Board of Governors launched KettleCorn, their fork of the Mozilla video-editing tool Popcorn. The team answered some of our questions about their approach and process in open source development.

Working in the Open

Q. We’d love to learn more about how open source projects and development work at BBG and any suggestions or questions you have for other news organizations doing open source work.

Adam Martin: Our office is I think, unique inside of BBG, we have a lot of freedom to explore new ways of doing things. We’re challenged with finding ways to reimagine how U.S. International Media connects and engages with audiences around the world. For our product teams, that means being active in the dev and design communities that are constantly pushing boundaries and experimenting with new technologies and where that’s happening is with open source projects.

So whenever we begin working on a new project, the tech team starts with a set of principles in place to try and make sure what we deliver is flexible, extensible, and scalable while also being mindful of costs and our responsibility to the public to be as transparent as possible in our work. That thinking most often leads us to develop on open source technologies. Hosting our code publicly on GitHub has also just made us “better” at writing clean code and good documentation.

Q. You didn’t start off by forking Popcorn, you actually started with training. Could you talk a little about how and why you picked Popcorn as a training tool and how you went about developing your “hacktivity kit” curriculum for journalists?

AM: We were already familiar with popcorn.js and had used it in a few prototype projects at our office and a few of us were at MozFest in 2012 for the launch of Popcorn Maker 1.0, which got us really excited about its possibilities. When we got back, we decided we wanted to do a “Hack Jam” style bootcamp for people from our newsrooms to introduce them to something we thought could bring a lot to their storytelling. We saw Popcorn Maker as way to enhance the work our journalists were doing in a fun way that would invite audiences to engage with our content through remixing. The hacktivity kit we put together borrows A LOT from the kits created by people like Nicola Hughes and Laura Hilliger (thanks!), we just added in a few things we thought would work for our journalists and some of their unique needs being in an international, multilingual news environment.

Q. As you explained, the feedback you received from journalists during and after the trainings was that Popcorn as it existed didn’t fully meet their needs. How did you decide your next step from there, why not try out more trainings rather than changing the tool?

Joe Flowers: After those initial trainings the team came back to meet with the developers and discuss some options. We considered enhancing the trainings and providing more “wow” examples using the existing tools but there was a feeling that there was a ceiling to the adoption of Popcorn Maker in our newsrooms if we didn’t begin to customize the environment based on some of that feedback. Since we had already built a Storify plugin, we were confident we’d be able to do even more. We were also eager to contribute back to the Popcorn Maker project since that team had done such a great job building something awesome in the first place.

Project Buildout

Brian Williamson working on KettleCorn.

Q. Could you walk us through how you decided to fork the project?

Brian Williamson: During the training we identified two challenges to increasing adoption among our journalists.

  1. We needed to dramatically reduce the time to publish new projects by streamlining common tasks.
  2. We wanted to redesign the look of Popcorn projects to make them look and feel more like the stories our journalists tell.

We quickly realized we’d need to fork the project in order to accomplish those goals. Forking and setting up our own instance really allowed us to experiment and tailor the features to the needs of our journalists.

Q. What was the staffing, timeline, and process like for building out KettleCorn?

BW: In June the team started having conversations about what “Popcorn Maker for journalists” meant. By the end of the month we’d written up a one-page manifesto for our goals for what we had started to call, “KettleCorn.” In July, we wrote a really lightweight functional spec, sketched out workflows, and launched our own instance of Popcorn Maker. August and September were spent nose down, working through the features in the backlog. Throughout the project, we worked in 2-week sprints with a small team that worked very closely together: I was the product lead and also did a lot of the design changes for the UI, Joe and Lisa Backer were our developers, Son Tran was our scrum master and kept everything going, and Ahran Lee was our graphics intern who turned in some great work.

Q. You have a great post about the development of KettleCorn. Did you encounter any roadblocks in the development?

JF: The biggest development roadblock was the amount of ramp-up time it took to get familiar with the architecture of Popcorn Maker. We’ve typically worked with PHP and MySQL on the server side rather than NodeJS and SQLite, so understanding the backend required taking some time to familiarize ourselves with those technologies. On the front end, the Popcorn Maker developers did a great job of separating the presentation from the logic, which is certainly a best practice, but it did take us some time to understand how all of the pieces of the client-side architecture fit together.

Continued Work

Talking KettleCorn at MozFest 2013.

Q. What is your ongoing plan for developing and staffing KettleCorn?

AM: We’re excited to see some of the new projects people are creating using KettleCorn and we want to be able to continue to support that creativity with new features, especially ones designed for international audiences. So we’ll continue to put resources behind the project in 2014. Longer term we’d like to figure out ways to keep contributing to the Popcorn Maker core so any features the community finds useful are well supported and available to everyone, whether they use KettleCorn or Popcorn Maker.

Q. Do you have any lessons to share about forking, developing, and maintaining an open source project?

JF: I actually got to meet with the Popcorn team at the San Francisco stakeholders meeting in late 2012 and immediately felt our presence was very welcome in the development process on the Popcorn ecosystem. Since we knew it would take a while to get KettleCorn to a point that we wanted to show other developers, we hesitated to reach out to the Popcorn team for feedback on what we were building until late in the game. If we were starting over, we’d reach out earlier in the process and get more of their expertise in the development process, even if that was as simple as hanging out in the IRC channel or participating more in the community discussions.

AM: Definitely agree with Joe about reaching out earlier and being more active in the community. I think with any open source project you start or that’s a fork of someone else’s project, you have to commit to not just follow best practices in how you document and comment your code but also how you have a conversation about your work and engage with the community that you want to develop and build with.

Q. What are the best ways folks can contribute? Are you looking for developer help, newsroom adoption, journalist feedback?

AM: We welcome anyone to contribute to our open projects in whatever ways they can. Brian’s been promoting KettleCorn in our newsrooms but we’d love to partner with other news orgs and have them use it in ways we haven’t thought of yet, share their projects back with us and again, really grow a community of journalists who are excited by this type of storytelling. I think devs that are interested in improving the project should follow what the core Popcorn Maker team is doing and look to contribute there. We’re hoping in the future some of the features we’re developing make it back into the core Popcorn Maker project and we’re excited about the development of the webmaker platform.

Q. You shared your roadmap, what parts of the continued development are you most excited about?

BW: One of the most important developments we’re looking forward to is improved support for mobile and tablets. For our audience, especially in some of the emerging markets, phones and tablets are the only way people connect to the internet so being able to experience all the features of a KettleCorn project is important to building that community of makers. We definitely want to improve the custom features we’ve developed and add some new ones but growing the community and getting more journalists involved is our big goal in 2014.

People

Organizations

Code

Credits

Recently

Current page