Saturday, April 22, 2006

Ubuntu: Who Is the Target Audience?

For Linux on the desktop, Ubuntu Linux is clearly the best distribution yet to emerge from the open source community. Why has it taken us this long to achieve:
  • A clearly open source project
  • That offers a stable distribution
  • That supports current hardware
  • And is easy to install
  • With a strong selection of desktop-oriented apps in the default install
Yet for all its virtues, I find myself wondering, "Who is the real market for Ubuntu?"

I've been led to ask this question because I'm in the process of writing a book for Manning Press titled "Desktop Linux with Ubuntu". I'm thrilled that the community will have a genuinely desktop-oriented book on Ubuntu, and I'm honored to be the one writing it. But I, the publisher, and my editor have spent quite a bit of time discussing who this book is really for.

Let me first say who it's not for. Most of my friends who are Linux geeks have worked with Linux on the desktop for a long time. I've been using Linux as my desktop system since 1994 (1.0.8 kernel). In the last couple of years, I've seen a definite trend. About 60% of the folks have switched to using MacOs X as their desktop system, while continuing to work extensively, both personally and professionally, with Linux as a server solution. These people have essentially given up on Linux on the desktop. The other 40% have mostly switched to Ubuntu. These people do not need a book on Ubuntu. They've been through the best and worst with other Linux distros, and Ubuntu is a walk in the park for them.

What we all hope, of course, is that Ubuntu will draw in a new group of Linux desktop users. But who will they be? Home users or "knowledge workers"?

Part of me wants to say "home users". My wife and I are coming up on our fourth anniversary, and since we've been living together she's been exclusively a Linux user. She has no complaints; it seems easy to her, and she's yet to find something she wants to do with a computer that she can't do with Linux. Of course, the key here is that I'm standing over her shoulder to play sys admin, explain things to her, and make sure things like our network connection and backup procedure actually work.

What's interesting, though, is that I'd be doing the same tasks on her behalf even if we were using Windows. She doesn't know that much about computers, does want to know that much about computers, and has little prior experience with them. It would have been as much, or more of an effort for her to learn Windows.

Now, I think that Ubuntu is getting to the point where someone like her could probably figure it out on her own, and get reasonable use out of the system. The problem is, she just doesn't want to. Figuring out computers is not on her agenda in life, and she'd certainly never go so far as to buy a book about computers.

I think there is a certain segment of Linux-curious power users out there that will enjoy Ubuntu and would be interested in a book about Ubuntu on the desktop. But honestly, I think that number is still pretty small.

Which leads me back to the knowledge worker. I actually think the biggest market for Ubuntu is in small- to medium-sized businesses, and organizations like nonprofits or schools. These are organizations that need a certain level of computer technology, but are very limited in terms of budget, human resources, and technology expertise.

The process I envision is one in which a pro-Linux IT guy in an understaffed, small- to mid-sized organization persuades management to give Linux a try on a number of desktops. Ubuntu is the chosen Linux distribution for this endeavor, and a copy of an Ubuntu book focused on the desktop would accompany each Ubuntu installation. In other words, the person buying the book (the IT guy) and the person using the book (the knowledge worker) would not be the same person.

By analogy, this is the way most children's books are sold. The books are written for children, but parents have to be sold on the book since they are the ones making the actual purchase. Perhaps this is an appropriate metaphor for where desktop Linux stands today: Linux "adults" have to make the installation decision and guide the initial usage of Linux newcomers. Seen this way, the workplace has to be more fertile ground for Linux desktop growth than the home market. Even in households with a Linux veteran, the ratio of veterans to newcomers will be on the order of 1-1. In the small office workplace:
  • Linux veterans are more common
  • The ratio of veterans to newcomers is more on the order of 50-1 or 100-1
Thus it is in the workplace that we can use our small numbers to reach a larger audience.

Thursday, April 20, 2006

The Good Old Days

I'm coming up on two years using Ubuntu as my desktop system. For the most part, I'm very happy with it, and Ubuntu certainly filled what had been a gap in the market. It's been interesting, though, to reflect on my early Linux experience and what I liked back then that I miss with Ubuntu.

In 1984 I took out a student loan to buy one of the very first MacIntosh computers. I totally drank the koolaid back then: I'd been thinking about a personal computer, but wasn't sold on the Commodore or the IBM PC; then I saw the Apple Superbowl ad. That was it. For the next ten years, Apple pretty much delivered on its promise. I just used the computer; I never really thought about it. It got out of my way and let me do my work. This computer went through a series of upgrades, eventually adding something called a "hard drive". But I reached a point where it had to be replaced. And in 1994, another Mac was simply too expensive.

I went with a PC, and had my first encounter with Windows 3.1. After a week, I knew there had to be a better way. Windows was the worst of all possible worlds. With the Mac, I had no idea, really, what was going on under the hood, but I never had to know either. Things just worked. With Windows, I had .bat and .dll files to fiddle with, lots of under the hood work to do... and yet nothing about the whole system made sense to me. I didn't have a foundational grasp of how the system was put together, and thus I always felt like I was flying blind.

A few days later, I was browsing in the bookstore and found a book about something called "Linux", which was described as "Unix for the PC". This seemed like a great idea to me. I had a bit of Unix experience in university settings, and Unix had always seemed like a more direct approach than the obfuscation that was Windows. Further, the book had a CD in the back for something called "Slackware Linux"; slackware was apparently a "distribution" of Linux.

It took me about two months to do my first install. After the install, it took me another two weeks of fiddling with CHAP/PAP authentication scripts by hand before I could successfully dial up my ISP. After all that, I still had no effective way to do word processing -- my most important computer application -- at least not in a way that I could share with the rest of the world. My eventual solution was to install a MacIntosh emulator called "Executor", and then run Word 5.1 for the Mac from my old MacIntosh system.

Despite the enormous time investment Linux required for me to accomplish the most basic tasks, I was happy. If I couldn't have the Mac experience of never having to think about the computer, then I wanted the opposite experience: I wanted everything in the operating system open and accessible to me, so that I could understand exactly how it worked. Linux delivered. Windows, by contrast, was horribly in between: it did a little bit conveniently, but required that you get under the hood a bit, but made you feel like you were wearing a blindfold while poking around.

Over the years I became accustomed to firing up "Vi" and editing configuration files directly. I developed a fondness for compiling my own kernel. My favorite programs were all text/command line based (pine, wvdial, lynx, etc.). For a couple of years I switched distros to Linux From Scratch, where every program that ran on my computer was compiled from source code.

Now, though I've dabbled in both, I'm neither a programmer nor a system administrator. I'm basically a "suit", the marketing guy who provides some buffer between the geeks and the executives. So when I talk about my fondness for the directness of Linux, I'm not speaking from a coder/sys admin point of view. I'm just talking about how I think a sensible operating system ought to behave.

Working that intimately with your operating system does take time, however. As my life got busier, I stopped compiling everything from source. I switched to Debian, because apt was just too convenient. A kernel compile became a rare event. Still, setup and configuration meant working directly with the relevant files.

Then I got frustrated with Debian. The "stable" version was too far behind the curve in terms of having support for current hardware. "Testing" was just not stable enough. "Unstable" was a better compromise, but felt like a compromise.

It was at that point that I switched to Ubuntu. In a way, it took me back to my MacIntosh days: the install was painless, and all of my hardware "just worked". Computing felt effortless in a way that it hadn't for over a decade. Was I finally having my cake and eating it too?

After a couple of weeks, I couldn't resist the urge to try and compile my own kernel on Ubuntu. The result was a complete disaster, a system that wouldn't even boot. Once I figured out my mistakes with Grub, I booted into a system that failed to load key modules and thus failed to recognize key hardware components. I thought about it a while, and realized that I was cutting against the grain of the Ubuntu way. This was a distro where I wasn't meant to compile my own kernel, nor hand edit config files. I had to take a deep breath, and resign myself to point and click.

And so I do, for the most part. Certainly for a generation of users who have never experienced a VAX, or a PDP-1170, or the other early systems I used, Ubuntu will seem like a refreshing option. It's the right solution at the right time. But it does take away some of that directness I had come to associate with Linux.

Part of me misses the good old days.

Wednesday, April 19, 2006

Reflections on Open Source

Since the publication last Fall of Open Sources 2.0, a book that Chris, Danese, and I worked very hard on, I've been in a particularly contemplative mood about the present success and future directions of the open source movement. I feel like a have a big personal stake in this:
  • I've been using Linux as my main desktop system since 1994 (1.0.8 kernel, for those of you keeping score);
  • I used to be O'Reilly's Executive Editor for Open Source, and indeed took part in the first Open Source Summit that Tim O'Reilly organized (1997? 1998?);
  • I was part of VA Linux's evangelism team at the time of their infamous IPO, and indeed remained at VA working on Linux.com, SourceForge, and other sites for another four years;
  • I edited and wrote significant contributions to both Open Sources and Open Sources 2.0;
  • I've been a frequent speaker, commentator, and consultant on open source principles and practices.
Working on the most recent book, I've found myself pondering two questions:
  • As open source is more fully embraced by the technology establishment (IBM and Linux, Sun attempting to go open source, recent acquisitions of JBoss and Sleepycat, etc.) will it thrive or be co-opted?
  • Beyond technology and software development, are there principles of collaboration that could transform other online communities.
This blog is my space to explore and attempt to answer, at least for myself, these questions.