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, I honestly have no idea what the Foundation looked like. Some people apparently  thought it was peopled by shadow men who crept in at night to take tax exempt donations and laugh and grind their hands together evilly. Mind you, we all definitely grind our hands together evilly, pretty much every day, but I have no idea how anyone outside the team knew about those sessions. (Given the right lotion, it’s really very good for the skin.)

Still, it became clear around the time that we banned this dude for like the third time* that perhaps it was time to try to do something about our lack of communication regarding the Foundation. So first, at the 2010 dev conference (that I totally missed out on. Stupid expensive flights to Europe!) there was a discussion about what the Foundation is, how best to explain what it is and what its purpose is to users, and then a universally agreed upon vote to have prae5 (Paul, who has been MIA for a bit. Once again, IRL strikes) do a write-up on the whole thing.

*Note: in reality, I think we only banned him once, and I’m pretty sure that time it was because he was being rude to another user. As a rule, we very openly accept criticism, because, A: not accepting criticism on the internet really IS a way to look super shady, and B: we have about 1 million users at any given time willing to jump to our defense. XBMC users can be demanding, but they are absolutely loyal as hell.

That write up eventually became something like 3 to 5 parts long, all awesome, about way more than just the Foundation, but the crucial bit, in terms of communicating exactly what the Foundation is, may be found here.

– – –

Around the same time, I got it in my head to start a new project. Broadly speaking, that’s one of my jobs. I look around for (non-coding) things that can really only be done by a person, and then I do them. Most of the time, I do those jobs extremely poorly and then another person comes along who is WAY smarter than me and does the job 1000% better. For example, I used to be “the funny guy” and one of “the wiki guys.”  Then NedScott (real name: Robert Paulsen… or, actually, probably Ned Scott) came along and instantly became 100 times funnier than me and an absolute wizard at wikimedia. Seriously, if you haven’t checked out the XBMC Wiki recently, you should. He’s done an incredible job. Also, now all my jokes fall on deaf ears as everyone is waiting for NedScott’s next hilarious bit. (Must… resist…the jealousy…)

Anyway, once I found out who the officers of the Foundation were from Paul’s post and internal discussions, I suddenly became curious who and how many members there were within the Foundation. At the time, our wiki page that listed team members looked like this: http://wiki.xbmc.org/index.php?title=Team_XBMC_and_Others&oldid=17788

Simply put, it was awful. I had been with the team for over a year, and there were numerous individuals who I had neither seen nor spoken to, listed as active devs. A great deal of the page used hilariously old naming schemes like “XBMC for Windows port.” Worst of all, I wasn’t listed!* The entire thing was a mess.

*Many other people also weren’t listed, but they probably matter less.

So I decided to fix it. My method? Just ask people. I started an internal forum thread and said, “OK, if you don’t say something in this thread, you are officially retired from XBMC.”

I didn’t really have the authority to do anything as harsh as that, but you learn fairly quickly in open source development that the easiest way to get authority to do something is to pretend like you already have it and go ahead and do the deed. People will either be impressed enough to give you the authority in retrospect or will never know that you didn’t have the authority in the first place.*

*BTW, this is one of the big reasons we always say “code welcome.” Every one of us started out as a user. The three Founders all moved on. We only became team members because we said, “Dammit, I’m tired of this problem that I see. I’m going to just fix it myself.” When we say, “code welcome” we are really saying, “Hey, wanna be a team member? I’ve found a test for you to pass.”

So I wrote up my forum post on January 25th. By January 28th, remarkably, almost the entire thing was done. There’s an ongoing joke in open source circles that getting developers to do anything other than coding is like trying to herd cats. In relatively short order, thanks entirely to a group of dedicated people who are willing to help out whenever you ask, I had turned that ridiculously outdated page into this: http://wiki.xbmc.org/index.php?title=Team_XBMC_and_Others

 – – –

Since I started being the full-time editor/blogger for XBMC’s main page, around May, we’ve added about 100,000 unique visitors to our monthly website average. Asking me why this is would be about as effective as asking me why all the girls think I’m so fly.* Simply put, I have no idea.

*Which is to say, I have no idea why they think I’m so fly. In fact, as far as I can tell, they don’t think I’m fly at all, so, honestly, why are you even asking this question? And why are you using late-90s slang to do it? Are you trying to make me cry?!

If I had to guess why more people are visiting the site, I’d point to the following factors.

First, XBMC uses Billy the Buildbot to keep a constantly flowing run of always-exciting nightlies, so users both get the impression that development is occurring and actually get to see what those developments are. Users who refuse to use anything other than the stable Dharma still get this sense of new and exciting by the constantly fresh stream of addons and skins, which make XBMC seem new, even at a year old.

Second, at least a few people have become frustrated with the rate of updates for Boxee’s free software platforms. I don’t say this to put down Boxee, but it’s undeniable that the rate of improvement for the non-Boxee Box software lags well behind the rate of improvement for the Boxee Box. Perhaps the single greatest move made by Team XBMC has been to constantly push to keep all services roughly on par across platforms, unless necessity absolutely dictated otherwise.* Because we are open and never try to push users to any particular platform, we tend to get the users who have become irritated by the development process at Boxee.

*For example, Silverlight simply doesn’t exist in Linux, so, to date, it’s been impossible to use the Netflix addon anywhere but Windows and OSX.

Third, I am basically the greatest blog author in the history of the world. Or, to put it another – less psychotic – way, the website has been relatively interesting to check since I started writing a lot on it. We have occasionally fun contests. We look at some cool mancaves. We check out new software (and, hopefully in the future, new hardware). And, to some extent, we are a bit more open about the Eden development timeline.

All in all, the blog has simply been more worthwhile to check out. And, more importantly, while we still have a hard time getting news about new innovations up on the blog in a timely manner,* we are doing better now than we have in the past.

*Likely, the big reason for this blogging difficulty has to do with XBMC’s development process. Because so many people have access to XBMC’s main trunk, unimaginably fantastic updates can make their way into the code base and then slip by theuni (aka Cory) and myself before we have a chance to write about them. Suddenly, it’s a week later, and the forum is buzzing about something that totally slipped my attention. In all honestly, that is typically my fault for not being on top of things enough, but for those who don’t get why we don’t make more coding announcements, that’s almost invariably the big reason.

At least, that’s my guess as to why the site has slowly become more popular. Once again, I’m probably not the best person to ask.

– – –

And that’s it for today’s dev diary. It’s a bit less about code today and a bit more about my personal experiences working for XBMC (plus XBMC communication broadly). Unfortunately, given that my primary job is as the communication guy for XBMC, you’re probably going to get a definite slant to more of these stories than to actual coding stories. It’s kind of like how Stephen King’s characters are predominantly fiction writers.

I wonder where he got the idea for those characters?

Thanks for reading, and, if you’ve got a particular question or story you’d like answered, feel free to do so in the comments. You can probably get exactly the same answer in the XBMC forum, but without my incredible wit and sardonic charm.

Natalie, you think I’m funny, right?


That’s what I thought… wait, you’re laughing with me, right? Not at me? … Natalie?… eh?