Working with the Bay Area Video Coalition

Hello Internet!! It's been some time since I have blogged, but I can explain why. It all began roughly 2 months ago, when myself and several others started a re-write of Butterapp. It is a tool created to make it easier for non programmers to create web pages driven by Popcorn-js, an HTML5 video framework I am a contributor of. Since we started the re-write, we've been working our butts off to get an app ready for a group of talented young film-makers. They worked tirelessly all summer filming documentaries with the assistance of the Bay Area Video Coalition (BAVC). BAVC is an organization that provides its community with training for, and access to, emerging media technologies.

On August 15th 2011, Scott Downe, Mohammed Buttu, Dave Seifried, Bob Richter and I boarded an Air Canada Flight leaving Pearson Intl. Airport bound for San Francisco, California. San Francisco is the home of the offices of BAVC are located.  After all our hard work, the week of the 15th was the week we had been working towards, and while we knew we still had some things to do to bee completely ready, we stepped off that plane at San Francisco International Airport with confidence and optimism.

After landing at San Francisco International Airport on Monday afternoon, we were picked up by Brett Gaylor.  We drove through the city and across the Bay bridge to Berkeley/Oakland and to the house that Brett, Ben Moskowitz, Brian Chirls and Bob Richter were renting out for the week.  We spent the rest of the afternoon/evening figuring out what we had to do still to get Popcorn Maker working for the kids at BAVC, and we started hacking away at the tickets.  I spent that night fixing various issues and hooking up the importing and exporting of JSON Data. I also did a little overhaul of the UI, changing the way projects are loaded and renamed, as well as removing some useless menu options.

Changing gears momentarily, I'd like to talk about the one thing that hit this week which caused the most trouble.  Layouts.  While we had built in support for layouts, there was a clear and huge gap between what we the developers had envisioned opposed to what others had known and/or let on.  I myself was under the impression that layouts were simply skeleton frames of web-pages with predefined areas for content. This of course was destined to change and be more dynamic in the future.  Unfortunately, for the purposes of the three documentary films that the kids made, we needed advanced layouts running internal scripts and sporting advanced and highly customized editor interfaces for their plug-ins.

And we had 48 hours to make it happen. okay... GO!

The next morning Dave, Scott, Mohammed and I got a lift to the BAVC offices in San Francisco bright and early. It began with a quick powwow in a small room with the students/film-makers and the program directors.  We went around the circle and introduced ourselves with a short blurb detailing why each one of us decided to become "makers".  It was an incredible experience listening to each story. I noticed similarities to my own reasons for why I do what I do in each person who spoke. It became clearer that despite living 3500 KM  away and specializing in  two very different professions (programming, film-making) we all are more alike than we may ever know.

After the powwow we broke it off into two groups, one group would spend a couple hours working on the design of their layouts while the other would spend some time familiarizing themselves with Popcorn Maker.  I was helping the students learn the various function that Popcorn Maker had available while taking note of feedback they had about the design.  It was decided that some of the teams were to use Mohammed's Popcorn Maker FCP Program (FCP === Final Cut Pro ). The app Mohammed made is a really really cool piece of software.  It is able to translate special markers made on FCP projects into Popcorn tracks running in an environment that is familiar to Mac users. Mo had a lot of work to do still to have it fully ready for the kids, but he wes in it for the long haul.  We had an overall a successful day, but it was clear by 5-6 PM that there was a long night ahead for all of us, as many bugs and missing features surfaced...

And it was a long night, we sat around the house on massive coding spree untill about 4 AM, producing a much better product at the end of it than we had just 12 short hours earlier.

While the Previewer module was undergoing a lot of work to accommodate the new layouts, The Event Editor module remained largely the same, requiring me only to fix a couple small sizing and positioning issues.  ( Browser makers take note: When I ask for the width of a windows' document object, please INCLUDE CSS PADDING values!! SRYSLYYYY!!!!! )  Anyways, with the Event editor doing what it needed to and doing it well, my time was freed up to continue working on the UI, tackling interface bugs and hooking up all the bells and whistles (so to speak)

Wednesday was an honest blur, most of us running on empty tanks but still managing to continue our steady progression towards an awesome product.  One thing that stood out about Wednesday and Thursday ( which was a lot like Wednesday :-| ) was this cool dude named Andrew who showed an interest in learning JavaScript and contributing to projects we work on at CDOT.  I did as much as I could to answer his questions and to help him learn more about Popcorn.js as he wanted to create a Popcorn Plugin.  It was nice helping him out, pointing him towards resources for learning basic JavaScript on the web.  One thing I have learned myself that I passed on to him was that the only way to truly understand the languages' quirks is to dive into code and experiment.  I hope he takes that advice seriously and makes a good effort to learn more about programming.

I spent the better part of Thursday adding in the first run menu into Popcorn Maker, which was challenging in itself.  Would have been nice to have had it from the beginning imho but I managed to get it working before days end.  I even modified it to better suit the flow of the App.

Friday I worked more on refining and tuning the UI, adding dimmed backgrounds on several menus. I also modified the flow of the help menu a little, making it cleaner.  I worked for some time on the layout and custom plug-in for the group doing a documentary of the Black Panthers.  While the changes I made seemed small, the students were glad that their project was looking and functioning even better than before, which was very satisfying for me to know.

Things were hectic all week, and all of us wished we could have had that extra week that was lost. It's a known fact that you can't count on things going perfectly 100% of the time, and what we accomplished last week is testimony to how much the team put in, mentally and physically.  I'm proud to say I worked on Popcorn Maker, and Butter.js.  Going to San Francisco taught me a lot about being independent and taking responsibility for promises you've made, in this case, it was giving the kids a tool to make their creations come to life on the internet.  While its not perfect and needs polish, we delivered the best product we could in the small amount of time we had.  Everyone on the team did an exemplary job.  Ben, Brett, Bob, Brian, Dave, Scott, Mohammed ... good work guys, we did it!

Look out for Popcorn Maker when it is formally released.... sometime very soon!