Many apologies to my nearly 3 readers. This post runs fairly close to 2,000 words in length, which is a great deal longer than anyone should every have to read anything non-fiction. Nevertheless, here you go.
Hey Facebook,
Recently (sometime in December) I was hanging out on an invite-only room on IRC when a buddy of mine got online and started talking about the Apple TV2. He and a fellow hacker who was working for GStreamer made an unexpected discovery. Hiding behind the published ATV2 (Apple TV 2) video decoding API was a unnamed (and far more powerful) video decoding API. And the two of them had figured out how to use it.
My buddy’s name, at least according to IRC lingo, was Davilla. The room was the official Team XBMC chat room. What happened next is a story worth knowing.
To understand that story, at least from my perspective, you have to understand a few things about Open Source software development and the Team XBMC developer work ethic.
Linux, Ubuntu, XBMC, MythTV, MediaPortal, etc., etc. are all labors of love. They are programs created by a bunch of people, typically men, who see absolutely nothing wrong with coming home from a day at work and spending the next 2 to 6 hours continuing to work.
Except none of these people really sees any of this as work. XBMC started as a potentially illegal hack of the locked down Microsoft Xbox. Though Microsoft never came down on the XBMC people (and a rumor even exists that Microsoft created a signed version of XBMC that successfully ran on the original Xbox but never got distributed), there was always a certain amound of excitement, fear, and other mixed feelings in the concept of renegade coding software that made the world a better place.
In the minds of the developers of XBMC, when they came home and booted up their computers to the XBMC source code, they were finally getting a chance to make a difference in the world, to connect with people who thought exactly like them, to do something absolutely, thrillingly brilliant that millions of people all over the world, speaking hundreds of different languages could all enjoy.
Google famously gives their coders 20% of their work day to code whatever they want. This is called their 20% time. For the developers of XBMC, every moment is part of our 20% time. Each developer is doing only what he wants, and working for as long as he wants.
Needless to say, when we aren’t dealing with real life, or enjoying family time, or working for our countless bosses across the US, Europe, Asia, the Asian sub-continent, Australia, New Zealand, and even Africa, we are talking about XBMC. At this point, it is a part of who we are and how we think.
Over the years, the potentially illegal part of the XBMC equation has died down. The Microsoft Xbox was unable to play the highest definition videos (typically called 1080p videos), and those high definition, 1080p videos were becoming ever more popular. The Team had to branch into newer, better hardware to keep up with the times. The fact that we all personally preferred watching high definition video helped in this decision. The Team started coding XBMC for Home Theater Personal Computers (htpc’s) that ran Microsoft Windows, Linux, or Apple OS. Three different groups broke off entirely from the Team and made new products with the source code called MediaPortal, Plex, and Boxee.
Even as we abandoned it, the Xbox remained a never forgotten holy grail, because it spoke of the promise of an ultra powerful media player that worked better than any DVD player and looked better than any presentation of any movie house, all while costing less than $100.
Say what you will about Home Theater PCs, none of them cost less than $100. The company NVIDIA started producing a chipset that could play 1080p video in cheaper computers and everyone was overjoyed because these “cheaper” computers cost a mere $200 to $350! (Note the sarcasm. It’s highly intentional.)
So picture a room (a virtual room, where 30 or 40 different people from almost every continent are all looking at the same screen and having the same conversation in real time). A guy named Scott Davilla, the lead programmer of the Apple Mac version of XBMC pops up and says (to paraphrase), “Guys, I’ve just figured out how to make a machine both run XBMC and decode 1080p videos. It’s the Apple TV2, and it only costs $99.”
I’d love to say we all went berserk with joy…
but nerds that love programming don’t really do that. Instead, mostly we just made a lot of jokes and probably changed the subject to Battlestar Galactica or something. Mid-December was a strange time for Davilla to drop this bombshell. We were about to FINALLY release XBMC 10.0 approximately 8 months after we’d planned. We were eyeballing the Computer Electronics Expo. Lots of exciting work was happening in the DVR code, skinning code, and our awesome new addon framework.
Still, in the back of our collective minds, we knew that $99 would probably mean more, in the short term, to more people than almost anything we were doing. So we all left Davilla and Amet (another XBMC coder) alone to work on that project.
Everyone else proceeded like nothing had happened. The 10.0 release of XBMC came and went. Downloads of the program shot through the roof, as they are known to do during a major release.
TheUni (another developer and our Public Relations coordinator, whose actually name is Cory [no relation to Haim or Feldman]) spent a little time chatting with Sigma Designs, a hardware manufacturer who was interested in putting XBMC on their next machine, and Zotac, who already bundles XBMC with some of their HTPC machines.
And then, from January 5th until January 20th, the team officially went silent. On the forums, we’d still answer questions, give advice, make hilarious comments, etc., but absolutely nobody in the world, with the exception of Davilla’s friend at GStreamer and TheUni’s girlfriend, knew what was about to happen.
Davilla and Amet worked around the clock as we all completely ignored them and/or made devilishly hilarious jokes at their expense. An early, and not very surprising, discovery was the realization that anything that worked on the ATV2 would work equally well on the iPhone 4 and the iPad. All three systems had the same chips on the inside and ran the same software (called iOS). This meant that all three devices would equally be able to run XBMC, when it came time to release.
This also meant that we had to up our workload once again by contacting the fine people at Cydia. When you jailbreak your iPad and/or iPhone, you are doing so for the express purpose of running apps that Apple doesn’t like. Cydia is the “app store” for those who think Apple’s app store is too limiting. The Team had little doubt that Apple wouldn’t like an XBMC app, so we decided to first put it on the Cydia app store. This process, it turned out, was a fairly painless one.
As release day approached, three events occurred.
First, we sent a working ATV2 to Engadget for their reviewers to mess about with. Early on, even before CES, we planned on giving Engadget an exclusive review. The team spent a little bit of time worrying about this decision. Engadget had been swamped by CES. Gadget news in January is always at a fever pitch. Would they be able to make time for us by the time we were ready for launch?
Second, Davilla spoke with TUAW.com (aka The Unofficial Apple Weblog), who was to be the official announcer of the release. (Some of us also pushed to get Gawker into the mix, particularly the Gawker publication Lifehacker, whose editors absolutely love XBMC, but we’d run out of official things to give exclusives on. Fortunately, Gawker was pretty speedy in coming up with a how-to article, so good for them.)
Third, Davilla and Amet started to change their avatars in the forums to increasingly obvious ATV2 references. I personally made the beautiful “ATV2 is a glimmer in this cat’s sunglasses” picture for Davilla! Other great references included a hockey puck (many people refer to the ATV2 as a “puck”) and the always tricky “just-posting-a-picture-of-an-iPad-have-you-figured-out-our-intentions-yet” avatar?
Finally, at 8PM Eastern Time on January 20th, Team XBMC, TUAW, and Endgadget all three simultaneously managed to completely confuse each other. TUAW, who was supposed to publish first, published slightly late by about 10 minutes due to some miscommunication. Engadget published immediate at 8PM. And Team XBMC didn’t get our own announcement published until about 8:15. Nevertheless, once we got our ducks in a row, things began to roll along smoothly, like a twig down on a crystal clear brook.
For nearly 30 minutes. Then a user pointed out that XBMC wouldn’t install on the iPad. With thousands of people already starting to download XBMC for iPad, this was a major crisis which led to some ultra-magic from Davilla in which XBMC got repackaged in record time with an additional bit of software that had been mistakenly left out for almost 45 minutes, and finally, by about 8:55PM, we really WERE running smoothly.
In the first 24 hours, XBMC for ATV2 was downloaded over 3000 times. XBMC for iPad and iPhone was downloaded over 20,000 times. Errors were identified. A Frequently Asked Questions page was written and published on the XBMC wiki. And Apple saw their largest single day sales increase of ATV2 boxes in the history of the tiny machine.
Alright, fair’s fair, that last bit MIGHT not have any factual basis. Still, it’s hard to argue with the fact that nearly every gadget magazine the next day published with some variant of the headline: “The Apple TV 2 is finally useful!”
But perhaps more important than the headlines and the delightful fact that we enjoyed returning to our roots and tweaking the nose of a hardware/software manufacturer (Apple) by making their box more useful than they could/did, was the fact that Team XBMC had finally come full circle.
On May 29th, 2007, Team XBMC opened up a call for developers to begin porting XBMC away from the Xbox and on to more powerful and more expensive machines. On that day, a box with XBMC on it officially began to cost more than $100. On January 20, 2011, approximately 3 years and six months later, Team XBMC finally crossed the threshold and returned to the sub-$100 price range.
I’ve been a Forum Moderator, a news writer, a wiki author, and an all around massive user for Team XBMC since late Summer 2009. I’ve been on the XBMC forums since 2008. I’ve been using XBMC since at least 2007. And in all that time, I’ve been amazed, again and again, at the creativity, the genius, and the passion that a group of people from so many different places can bring to a project. Yet I don’t think I’ve ever felt prouder of the team than I did at about 8:15PM Eastern time on January 20th, 2011, when we showed the world that an inexpensive home theater PC that could play 1080p video and do so beautifully not only was possible, but already existed.