Back in April I was fortunate to host Mark Shuttleworth at an Arsenal game and then dinner. Today, we repeated the day with an amazingly fun day at the Arsenal vs. Tottenham match, coupled with an exceptional dinner at Asia de Cuba (fantastic food). This time the day was made even better by the addition of my good friend, Bryce Roberts, of O'Reilly Alpha Tech Ventures.
We had a great conversation in the Tube and over dinner, which I'll report below. But it's first worth mentioning the match.
It was INTENSE. We were seated right on the fault line between Arsenal and Tottenham supporters (in the Tottenham seats), and the energy there was negative and wild. You get a slight taste for it in this video that I took with my camera after Arsenal's first goal:
Let's just say the Tottenham fans weren't very happy. Tottenham hasn't beaten their North London rivals in eight years. Today was to be no different, with Arsenal beating the Spurs 3-1.
We left the grounds in some fear - there were police and fights everywhere. You can see Bryce flanked by a line of police officers here. It was as we walked that the conversation really kicked in, and I got to learn from Bryce and Mark.
I'm actually surprised that Mark has done as well as he has with Ubuntu, given how much time he obviously spends in thought. He's brilliant.
I asked Mark two poignant questions about Ubuntu:
- How will Canonical make money from Ubuntu?
- How did Ubuntu manage to build such a successful community when so many others have failed?
Both questions played out over the walk back to the Seven Sisters Tube station and over dinner. On the first, we talked a great deal about the intersection of the desktop and the Internet. Like Craig Mundie's recent comments, the consensus that the desktop without the Internet is as interesting as the Internet without the desktop: not very. A blend ("weblication," as Mark calls web applications) is needed.
The desktop winners in the future will be those that learn to do this blend well, and profit from it. There's more to that statement than I can unpack here....I don't think it's appropriate for me to give away "the secret sauce." :-)
Even if you believe that services play a heavy role in the desktop's future, how do you spread a desktop alternative to Windows, given its lock on the enterprise and consumer? I suggested that maybe the way forward is by making the OS a complement to the service one distributes; namely, distribute a stripped down OS as part of a virtual, downloadable appliance.
So, one way to get Ubuntu on a massive array of desktops is to distribute it with, say, a document collaboration service (like Alfresco). The OS runs in the background of the service/application - the user never even thinks about it (much like Coherence mode in Parallels on the Mac). It's just there, a fragment of a complete OS, enough to help run the application/service and the data residing in the cloud.
On the last question (How did you build community where others failed?), Mark was very humble. He suggested the following reasons for Ubuntu's community support:
- Choice of name. Ubuntu means "humanity toward others." The name, in other words, evokes community and, more than that, the kind of community that people would like to join.
- Use of Debian (appeals to geeks), but made easy (appeals to everyone else).
- Equal opportunity on the development team, or the importance of geographic spread. This is a blessing and a curse for Ubuntu, but basically Mark was talking about its distributed nature. For most of the Ubuntu's development, the team was geographically dispersed (and still largely is). Hence, there was/is no inner "cabal" that is first-tier" development, with everyone else second-tier development. Being on the Canonical team doesn't automatically make one a committer on the project - developers still have to prove themselves to the team, including developers outside the Canonical team (who have commit rights).
In fact, this is a critical point. Mark talked a lot about the unnecessary overhead of separating committers from everyone else. He prefers to let code come from where it may, and then choose carefully what will actually make its way into the official release. It's hard, as he said, to pre-select the best source of code, and hence much better to focus inclusion in the official release based on the quality of code, not the people who submitted it.
This requires effective management of upstream code. In other words, Launchpad.
- Ubuntu opted to ship CDs. This is such a simple thing, but powerful. Mark and team realized that not everyone would have a fat bandwidth pipe to download ISOs, and so makes Ubuntu available on CDs, too. Genius. And yet so simple.
One last thing he suggested (among many others - this is already long enough), which I thought was dead-on: he and Ubuntu have done well in part because he's not in Silicon Valley. The Valley tends to homogenize ideas and approaches to software. Venture capitalists decide to fund Idea X, and then everyone else wants an X in their portfolio, which stultifies other ways of thinking about the same problem or different ideas altogether. It's good to have some room to think.
And think Mark does. He has quickly become one of my favorite people, and a good friend. The Ubuntu community is lucky to have him, and I believe the industry can learn a lot from how he approaches both simple and complex software problems. He's doing things differently, and that's good.