Archive

XBMC Dev Journal

As many of you know, XBMC doesn’t pay any of its developers. Our coders earn money doing other things, like coding for other companies or running successful ventures. A few coders are students. One guy is even a butcher! This particular journal article is about what I do, and more importantly, what I’d rather do. Feel free to skip it, if that kind of thing doesn’t interest you, as in a very short period of time I’ll have written a much more exciting XBMC thing on a different page.

Last Friday, the 16th of March, I discovered that imo.im was hiring an Online Community Manager.  As a fan of the imo.im software, I thought this represented an awesome opportunity for me, and one I didn’t want to screw up.

Kitty will code for foodAs many of you know, I am the Community Manager, right now, for XBMC, which is an awesome job full of cool opportunities, but decidedly lacking in the pay area. Most of my actual income these days comes from relatively unrelated self-employment situations, where I do the html/css work of developing websites. I also act as the MODX guru, where being the guru doesn’t connect up too much with being the SQL guru. It’s an OK job that pays reasonably well per hour, but simply doesn’t draw me like being the lead online marketing/tech support guy* for an international software organization.

*In the era of Twitter and Facebook, tech support==marketing, as far as intelligent people are concerned. There’s a reason Apple outsources the hardware but hires locals to staff AppleCare phone support. Read More

Quick question: Would you rather be good at your job but disrespected, or bad at your job, but respected for your work?

RespectabilityFor example, let’s say you are the manager of a struggling major league baseball team. You just read an article that says that if you get rid of your short stop and center field, and replace those positions with two half-center outfielders who always play close, your defense will improve, automatically, by 75%. Rigorous testing and research back up this statement. The facts are definitely clear. Now, all you have to do is face ridicule if you are either wrong or unlucky, and your team could win 25 more games a year than they otherwise would have.

If you are like most major league managers, you will choose to ignore that article. Sure, you might win more games. But you might also suffer massive shame both in and out of the community and eventually lose your job. The odds are better for the first possibility, but the results are much worse for the second.

Historically, this has happened numerous times. The most famous example in recent years is the decision whether or not to “go for it” on fourth down in American football. In almost every circumstance, statistically, going for it is a better idea than punting. Yet zero coaches are ever actually willing to go that route, due to fear of ridicule.

I bring this up because XBMC is at an awkward stage in its life cycle right now. The program and organization have been around for nearly 10 years.*

*December 14, 2002, y’all!

In many ways, we are no longer the angry kid in his parents’ basement, screwing around with broken Xboxes. Read More

Editor’s Note: As always, below is a developer’s diary. All of the opinions found below are only those of the author and do not necessarily represent the views of the team. Also, sorry for not posting last week. I was just a teeny bit busy.

scalezappyTo say that SCALE this year was eventful would be an understatement. Over the past three days, we performed releases, we hung out with open source hero Jon “Maddog” Hall, and we demoed hardware that virtually no one has seen before.

As is always the case when preparing for Expos, SCALE started for the team several months earlier, during the call for exhibits and speakers. This year, XBMC did not participate in any speaking events, though that’s certainly something I wouldn’t mind seeing change for next year. We did, however, decide to provide an exhibit.

Until fairly late in the process, our plans for this exhibit were reasonably limited. The previous year we’d demonstrated XBMC Dharma on two Zotac Ions, and we saw very little need to mess with a winning formula. Simply put, the NVIDIA ION htpc experience for XBMC is one of the best experiences around. Naturally, we planned on demoing XBMC Eden, but that was the only planned switch.

And then Raspberry Pi emerged on the scene. Read More

Let me begin by saying that, to my knowledge, Ubuntu TV contains zero XBMC code. I could be entirely wrong about that. As far as I can tell, Ubuntu TV is based on Unity and not on XBMC at all. If you can say different using actual code evidence, feel free to do so in the comments.

I’ve seen a lot of opinions over the past few days about whether UTV would succeed, and as I read these opinions, the big question in my head was, “What does ‘succeed’ mean, dawg?*” Read More

I am a Windows user. There, I said it. For those who must, you may as well stop reading now. Most of the rest you could probably also stop reading, as this is CES week, and there are WAY more awesome things to hear about, including one exciting bit of info that I’m hoping will manage to make its way to SCALE this year.

And that brings me to today’s topic: the Southern California Linux Expo (aka SCALE).

Last year was the first year I’ve ever acted as an exhibitor in an expo or conference. I have certainly BEEN to many Expos…

Nathan and Felicia at Comic Con

Yes, I met Felicia Day, the queen of the internet, at Comic Con. No, I never pass up an opportunity to show this picture off.

But I have never exhibited at one. So I was pretty nervous last year.

I arrived at about noon on Friday. I didn’t know what I supposed to do, so mostly I just brought along laptop-like things and prayed that I was going to the right place.

The first thing I discovered was that a magical rule of tech-heavy expos says we are going to forget at least one major detail. Last year, it was getting awesome content before the day of the show. Friday night and Saturday morning, we were frantically trying to load up content onto our Zotac ZBOX boxes.*

*Which were awesome, btw. Seriously, if you want XBMC on a full HTPC, there are very few boxes for the money that can compete with the ZBOX. Really, really good stuff.

In the end, we grabbed a few kickass trailers and Big Buck Bunny.*

*Fun note. Back when I was originally writing the XBMC Quick Start Guide, I needed an example movie, so I used Big Buck Bunny, because its CC license and multiple formats makes it a perfect example movie in almost every situation. However, I suddenly found myself in need of a SECOND movie. So, rather than using another CC film, I decided to invent THE GREATEST SEQUEL EVER MADE: Big Buck Bunny II: Rise of the Lepus. It should be noted, Underworld: Rise of the Lycan had just come out, so it was not a major leap from Lycan to Lupus to Lepus. I always sort of hoped that if the BBB people ever made a sequel movie, they’d use that title. I would absolutely give full permission (so long as I got some kind of credit for being awesome).

Then we shoved those trailers onto the external harddrive that I’d almost accidentally brought along on for the trip, loaded up XBMC, and boom, two days of awesome began.

I learned quickly that water (or other refreshing beverage) was absolutely critical for being an exhibitor. Cory (theuni) did most of the talking, but I did enough of it that I got thirsty VERY quickly.

To this day, I am grateful that for many years Cory’s day job was sysops for various companies running Linux, because, and here is where it gets hairy, I am not a Linux user.

Yes, my secret is out.* I use Windows. Lately I’ve been making a seismic shift from Windows to Linux Mint (the Windows of Linux OSes), and I am further considering shifting from Linux Mint to OSX (The Linux of Windows OSes), but my dark secret is that I acted as a primary exhibitor at Linux while knowing almost nothing about Linux myself.

*Actually, my dark secret was out with the opening paragraph, but I’m pretending like that opening paragraph doesn’t exist for creative purposes.

It was terrifying. Every once in a long while both Cory and Sean (aka malloc) would wander off at the same time. Enough people had come up to the booth before this and said things like, “So does this run in Gentoo?” and “What do you think about Red Hat?” that I knew if I was left alone with these Linux devotees that I’d definitely answer some question wrong and be found out as a fraud.*

*I personally prefer… Yellow Hat? Right? Anybody? That’s probably a thing, isn’t it?**

**Oh yeah?! Well, you’re a gentoo!!

Somehow, I came up with a brilliant stock answer that worked in almost every situation: “Oh, yeah? That’s (insert either positive or negative ejaculation here)! Oh, and you have a question? Do you know, I’m not actually sure about that one. Let’s wait until Cory gets back. I’m sure he’ll have a better answer for you!”

Boom. Situation resolved.

That night, we hung out with some Rackspace guys (Note: Rackspace is also awesome. XBMC uses Rackspace for a fair amount of internal web development. You should too!*) and I was introduced to one of the Boxee guys for the first time.**

*I need to figure out how to get paid for ad blurbs like that.

**Interesting small-world fact. I come from a small town just northwest of Wichita, KS. In about 20 years, it’ll probably be a suburb. I went to law school with a girl who comes from a slightly larger town just south of Wichita, KS. During law school, we became pretty good buddies. I even referred to her as “the coolest law student.” After law school, we both returned to Wichita. One day, I was talking about XBMC to her, and she said, “Hey, did you know I have a cousin who works for Boxee?” As only about 13 people worked for Boxee at the time, this was as unlikely as is humanly possible in this business. The Boxee guy I was introduced to at SCALE was her cousin. Small, SMALL world.

That was a pretty fun night. I ate oysters on the half shell for the first time (gross). I bought a giant cookie at a liquor store for the first time (awesome). And I woke up feeling NOT awesome (not awesome).

And this is where the story gets really cool.* This was my first time really interacting with  a lot of Linux people. We woke up that morning tired and out of sorts. We sort of stumbled to our booth and groggily prepared to meet all people who were excited to learn more about XBMC.

*This is also the part of the story that absolutely defines why am I unwilling to talk bad about our Boxee compatriots/competitors. 

As we looked out at the mass of people filing in, my Boxee buddy walked up to us, still wearing his sunglasses (cause he’s cool like that), and handed us an entire crate of water and a packet of aspirin. “I thought you could probably use this,” he said.

It… was… awesome.

Nothing like some water after a rough night, eh Natalie?

Natalie Coffee

Tell me about it.

And in this way, SCALE 2011 went off with hardly a hitch. SCALE 2012 starts in only 11 days (January 20th, 2012). I am excited to be going again. This year, thanks to my very minimal knowledge of Linux Mint, I might actually be more useful. I’m planning on bringing numerous flashdrives loaded with trailers and Big Buck Bunny (and possibly other CC videos).  I’m looking forward to that incredible feeling when I look around me and I see that “nerd” is how you define cool.  I think it’s going to be a great time.

And I hope to see you all there.

Open Source is good for meMy plan is to tell some stories about my experiences with XBMC in 2011. Many of these stories aren’t going to be about XBMC developments. They are going to be about the life of a FLOSS Project Manager/Community Manager and the people behind XBMC. Consider yourself warned.

2011 started off quickly and with much enthusiasm. On December 18th (2010), XBMC 10: Dharma had been released. To the outside world, we all behaved as if we were terribly excited about Dharma. Behind closed doors however, Davilla had been hard at work preparing for XBMC for iOS. The entire team was intensely excited about this release and waited anxiously as Davilla and gimli and amet worked tirelessly to turn all the A4 line of iOS devices into XBMC powerhouses.

My contribution to these proceedings was Read More

boxxy-wins

Wait, who are we talking about again?

What follows are entirely my own views and do not necessarily reflect the views and opinions of Team XBMC, any members of Team XBMC, or any partners and affliates of Team XBMC.

A few months ago I wrote a post describing my understanding of the differences between Plex and XBMC. Today I’ll probably do the same thing with Boxee, but first I’d like to say a few words.

To begin with, the relationship between Boxee and XBMC has always been a pretty good one. Boxee helped us set up our Foundation. Boxee paid for our very first developer conference. While there hasn’t been a great deal of code exchanged between the two communities, this has much more to do with the different coding methods a person will always find between a non-profit foundation whose income is not based on hitting deadlines and a for-profit company who absolutely must hit deadlines or suffer the wrath of the press and the public. That’s the nature of the beast and not much can be done about it.

As a non-profit, XBMC is likely never going to be in the position that Boxee has found itself in recently. XBMC is an example of an “upstream” project. We provide the code that can (and I stress can) be used by our users, but can also be by for-profit companies to make awesome boxes and software projects. Because we are relatively small (unlike Mozilla, for e.g.) and because the vast majority of code is provided for free by developers, we are not subject to market shifts and the realities of trying to make partners happy. If, for example, we partnered with Netflix tomorrow and six months down the line, they told us they didn’t like the fact that we used FFMPEG to decode non-Netflix material, we could simply shrug and part ways with Netflix. If, on the other hand, our livelihoods and profitability depended on the largess of Netflix, and they told us they didn’t like FFMPEG, we’d be in some hot soup indeed.

In this world of DRM and content locked up tighter than… something (sorry, I’m terrible at analogies), that’s reality. If VCRs had been invented in 2011, they’d be illegal. If CDs had been invented in 2001, iTunes wouldn’t exist, because DRM would have been included on CDs, iTunes would have been illegal, and the company that we all know and love called Apple would be a marginally struggling company known for cool computers and not quite as spectacular profit margins.

Put simply, public policy right now is in the hands of content providers who absolutely will not give up the imaginary ghost of content control until their proverbial hands have been squeezed so tight that all the remainder of the content has been forced from their fingers. Princess Leia would be chuckling in delight. Louis CK doesn’t understand that the MPAA doesn’t give two craps about whether a DRM-free world is possible and profitable. They only care about whether it is controllable and re-packageable. Congress doesn’t seem to get that, by slowly picking apart Fair Use and the First Sale doctrines, they are destroying the free market and creating a bubble economy based exclusively on rent-seeking income practices that hinder growth and destroy jobs. The idea that streaming a movie over the internet is legally a public performance, when, in every technological sense, it is exactly the same as playing a dvd over a really, really long cord, is the height of legal absurdity. I weep for the inability of the legal and rule-making profession in America to keep any kind of pace with technology, and I vigorously oppose modern laws designed to punish content consumers and content creators, so that a wealthy subset of content owners can profit enormously at the expense of all.

But I digress.

As a member of Team XBMC, I can afford to take a stand like that, because doing so doesn’t especially affect my livelihood. The employees of Boxee don’t get that privilege, because the moment they decide to step out of a corrupt system in order to fight it is the moment they get to start living on the streets. It is for this reason that I do not fault Boxee for leaving the HTPC by the wayside. It is for this reason that I do not fault Netflix for imposing hefty (and totally useless*) DRM on their video streams. The only individuals I fault are the rent-seeking content owners and the congressmen and women willing to debase themselves for campaign dollars.

*Seriously, the moment you can point to DRM effectively preventing a movie from being pirated in bit-perfect quality is the moment I’ll grant that DRM works. Until DRM actually prevents piracy, the ONLY thing it does is prevent genuinely appreciative users who actually want to pay for content from watching a movie the way they want to watch it. DRM is the modern equivalent of forcing users of Sony Walkmen to only use Sony Headphones. 

Nevertheless, as of December 26th, Boxee has decided to move out of the realm of HTPC software, and into the realm of SoC boxes exclusively, and so Boxee users want to know if XBMC is a viable alternative to switch to. Let me say to these users, “Yes, absolutely. As I have said before, using XBMC will make men (or women) want to be you, and women (or men) want to be with you. You will likely get awesome seats at awesome tables in exclusive restaurants now (if you are already rich and famous). And you will suddenly develop a taste for incredibly disgusting plants/fish eggs served on tiny crackers (probably).”

And, to answer your question in a slightly less sarcastic way, Boxee and XBMC are actually fairly similar programs (which makes sense, given that only 3 years ago they were the exact same program).  My understanding is that Boxee is slightly more forgiving about names and locations when scraping your local media.  XBMC is MUCH more forgiving if you don’t like the default look, as we provide a host of alternative skin addons (including one designed to mimic Boxee to some extent called Xeebo).

Perhaps the greatest difference between the programs, other than the skinning thing, is Boxee’s built in web browser. XBMC does not have one of those. This means, where Boxee could host numorous Boxee plugins that called videos from the internet by connecting using a built-in web browser, XBMC can host zero such plugins without the approval of the service provider.* Most XBMC users, however, ignore this limitation and simply install additional addon repositories that CAN connect to web streaming services. The most famous of these repositories is the bluecop repository. You can find a list of these unofficial addons at: http://wiki.xbmc.org/index.php?title=Unofficial_add-on_repositories

*Actually, to my knowledge, whether we can or cannot host such addons has not been tested in court, so nobody actually knows the answer to the question. I’m relatively certain that no one ever took Boxee to court over their web streaming methods, and so the entire process is a big legal question mark. We at XBMC figure it’s easier to be safe than sorry, particularly as our users are fairly bright and tend to have no problem installing an unofficial addon or two.

I hope that’s answered your questions, and I hope I didn’t upset anyone with my political rant. Natalie, what do you think about wealthy, powerful individuals seeking to destroy creativity and jobs in the name of control and wealth?

V-for-Vendetta-1

"Damn the man, save the Empire!"

Oh… um, I think we’re mixing our movie quotes here. (Also, our actresses who shaved their heads for a movie role.)

Update: Before any poorly thought out comments crop up, I would like to reiterate that I am not advocating piracy. In fact, if you read with any kind of thoroughness, you’ll see that I’m expressly advocating against piracy and, specifically, against the painfully useless means to fight piracy that are popular in the current day and age. Because this is my blog, I will have absolutely no problem deleting comments advocating piracy and will have very little tolerance for negative comments against either Boxee or Netflix. Fair warning.

zappy-santaEight minutes after midnight on December 23rd, theuni (Cory) made a general announcement that final additions had been plugged into the XBMC Eden branch. At that time, he asked that Davilla (for OSX and iOS) and Wiso and CrystalP (for Windows) sign off on the code for their respective systems.

At 3:21AM, Wiso gave the all clear.

At 11:49AM, Davilla added his agreement.

And finally, at 7PM, CrystalP gave the remaining thumbs up.

Unfortunately, in the seven hours between Wiso’s go-ahead and Davilla’s approval, developer Olympia threw a giant wrench into the operation. Read More

Well, I got a positive enough reaction last time that I figure I’ll write another journal entry. If you guys keep reading, I’ll try to write yet another on Saturday. Or not. Christmas Eve may be calling then. Have you given the gift of XBMC yet? Apple TV‘s are only $94 at Amazon right now. Or, if you wanted to spend a few more bucks, you could give your relatives the gift of some real powerhouses (plus your tech skills to make it all work).

communication-canAnyway, last time I provided a few stories about some of the difficult issues the Team has run into in the push for Eden. Today, I’d like to go another way entirely and talk about Team XBMC’s ability to communicate with the users. Or, more accurately, our ability to do a decidedly so-so job at communicating with the users.

- – -

A year or two ago, a user was absolutely furious at the XBMC Foundation because he believed the organization was shady. The issue was that the Foundation was “staffed” by developers who spent pretty much the entirety of their time writing awesome code for XBMC and an absolute bare minimum of time authoring legal statements about the Foundation.

At least, that was obviously what the situation was from within the Team. Outside the team, Read More

Behind the XBMC CurtainI’ve decided to start up a mini-blog within my personal blog where I keep track of XBMC developments from within the team. As a warning, if you like surprises, I highly recommend avoiding these entries. The goal here is to talk about what it’s like behind the scenes at XBMC, and by definition that means talking about a lot of things we tend to avoid being very public about, because, honestly, people appear to make it their job to misconstrue reality as much as possible. For that reason, note that all opinions are entirely my own and do not necessarily reflect the opinions of anyone on Team XBMC. Furthermore, any stories that you don’t like or like for the wrong reasons are entirely fictional and should just be attributed to a bad fever dream (or to my intense desire to replace my five year old laptop with a Macbook Air). Anyway, here are some stories.

- – -

It doesn’t seem that long ago, but we began gearing up for the release of Eden on August 30th. At least, that was the day one of our developers, Scott Davilla, posted the internal forum message suggesting that we begin gearing up.

This has been a very different release for the Team, as compared to past schedules, because the entire release has been operating without Jonathan Marshall, whose real life has forced XBMC to take a backseat for at least a while. Read More

Follow

Get every new post delivered to your Inbox.