|
.comment: Your Friendly Neighborhood Linux Salesman
Preaching to the ChoirIt has become a familiar refrain: In order to gain all the clout it so richly deserves, Linux needs more users. All the petition campaigns in the world for hardware makers to provide Linux support for their scanners or video cards disappear into insignificance when compared to sales figures demonstrating that the gadget that has Linux support sells better than the one that doesn't. And to gain those figures, users are needed. That is, of course, just one of the perpetual discussions that take place in the online fora where Linux is discussed. Linux adherents engage in more discussions, debates, and feuds over doctrine than you'd find at a school of comparative religions. This is great, and great fun; I enjoy it as do many others. Thing is, as compelling as a flamewar over the number of angels that can dance on the head of a Gnome might be, it doesn't really move things very far along. ("OH!" thinks a certain part of the always contentious Linux crowd at this point. "He used the word 'Gnome.' How can I construe that to be a slam? Well, he uses KDE and likes it, so that must mean that any mention of 'Gnome' is a slam. I'll just add gratuitous and ad hominem -- got to remember to find out some time what ad hominem means -- as modifiers and post it all over the place.") Meanwhile, in case you hadn't noticed, Microsoft Corporation is showing signs of coming a little bit unglued. They've shipped off to OEMs a version of Windows, the question about which is not whether it will be liked but whether it will be tolerated. Steve Ballmer has taken to appearing onstage and jumping around and screeching like some sort of hairless, out-of-shape King Kong, his bulging midsection rolling in waves that under the right harmonic conditions could trigger an earthquake. (Watching him, it's not clear whether he has taken the Caligula route or is hedging his bets and preparing for a second career in arena evangelism or the senior division of the WWF.) The Justice Department, contrary to predictions, is still all over Microsoft as if it were a Colombian drug cartel (as opposed to a Columbia River bad software cartel). People still use Microsoft software -- it's what came on their machines -- but an increasing number of them have come to mistrust, and rightfully, the Borg of Redmond. And those ads, which were designed to put a human face on Microsoft's server products, instead announced to the world that Microsoft software keeps track of what you buy. Then there were those little SirCam and Code Red problems -- which is worse? An infection that sends your private documents to addresses all over the Internet, or an infection that does its best to keep anything from being sent over the Internet? -- and those are just this summer alone. In short, Microsoft Corporation is as vulnerable as the biggest corporation in the world is ever likely to become. Point is, if we spend our time sitting around and bitching and moaning to each other about how things ought to be, while failing to notice that we're at a unique place, maybe never to come again, when we can do something to change the status quo, then we have no one but ourselves to blame.
Winning Converts, One By OneThere is probably general agreement that Microsoft is somewhat vulnerable right now, but there seems to be, too, a general agreement that all we need to do is sit around and wait for the herd (who haven't heard about Hurd, but then again, when you get right down to it, neither has anyone else) to come stampeding to Linux. It doesn't work that way. Inertia is a powerful force. It's what keeps people in jobs they hate, and what sends them through windshields as they daydream about better jobs and accidentally discover that old trees are stronger than new cars. It's certainly powerful enough to keep them from undertaking anything as frightening as -- gulp -- installing Linux. They may be aware of Linux, maybe even admire the certified geeks who have the cojones to actually run the thing. All they know for sure is that it is really difficult to install and use. Now, as you and I know, all of that (except the part about us being brave and admirable) is nonsense. The majority of modern Linux distributions are a piece of cake to install, and even do so in such a way as to live peaceably next to their popular but crippled neighbors from the place that currently is apparently denying Steve Ballmer his meds (or else slipping meds into his free soft drinks). Give somebody a SuSE 7.2 boxed set, or the upcoming Red Hat 7.2 (or, I'm sure, the current or next Mandrake; maybe Slackware, which is on my short list of distributions to which a machine should be devoted), and they'll have little problem getting it working on their machine. Of course, they won't believe you when you tell them that. Nor should they. Nor should you stop at telling them. A little hand holding is in order. Do it. I'm talking about the equivalent of an install fest on a personal level, going a step further than any install fest can easily do: Become someone's Linux guru. It's easy, and no, you do not need to be a Linux expert in order to do it -- you are going to know enough to answer the questions until long after your protege is able to seek out answers on his or her own. All you need to do is provide some Linux CDs (and, by virtue of the licensing, the Linux CDs you currently have will work just fine, and are a great improvement on the last version of whatever distro you run -- Linux's ease of use is advancing by leaps and bounds), a few hours, and some patience. If you're a really nice guy, you could actually buy the boxed set for your friend -- they don't cost much, and the documentation (at least in SuSE, which is the distribution I'd recommend) is well worth the price, especially in that this might be the one time when someone is motivated actually to read the docs. Then set aside a time for your one-on-one install fest. There are some things you would be wise to consider. Available hard drive space is one. It's happy days if they have a complete system backup made that day, but they probably won't, and you must make certain that you do no harm -- you'll win no friends for Linux and possibly lose one for yourself, if you blow away the contents of their hard drive, as unworthy as you and I might think it is. So if you're not absolutely sure you know how to configure a dual-boot system, do a little studying ahead of time. Your friend will not want to see you scratching your head halfway through the process. Get familiar with the boot loader options, LILO (for LInux LOader) and GRUB (for pus-bloated dirt-dwelling beetle larva). On the big day itself, take a look at the victim machine's CMOS settings for evidence of anything that is likely to interfere with a successful outcome, paying special attention to the hard drive settings. LILO requires the "linear" parameter more often than you would think (while GRUB requires young, tender, and expensive garden plants). If you are very perceptive, you may have gotten an inkling as to which boot loader I favor, but people I greatly respect use the other one, so it's up to you -- just remember, you're here to help someone, not to conduct experiments on their machine. Boot the machine into Windows and get the information you're sure to need -- IP addresses, phone numbers if it's a dialup, and so on. Write it down, and gently inform your friend that this is information that should be kept safely and conveniently on paper someplace. Then watch as your friend does the installation. He or she should be the only person touching the keyboard and mouse. You are now an advisor only. Be patient -- if you're in a hurry, or if your friend is, reschedule. Take a little while at each install screen to explain what's going on here. A whole lot about the way Linux works, and its differences from that to which the user is accustomed, can be taught here. This isn't a speed test, and there are no points for being first to hit the "next" button. You may need to explain this, too, to your friend. There are a few places where some discussion will be necessary. One is in the choice of file system. The new journaling file systems are great (though I have tremendous admiration for the work of Hans Reiser, circumstances have dictated that my sole experience with them involves ext3 on the Red Hat 7.2 betas), but if all you know is ext2, stick to it. Here's why: It works; your friend has had to run chkdsk on his Windows installation often enough to know that it might be a necessary evil to check the disk in the event of an improper shutdown; and you are going to be this person's Linux guru, so you need to have answers better than "beats me" if something goes awry. Another is in the choice of which packages to install. If there's sufficient drive space, "Install Everything" is a good choice, even if you feel confident that your friend will never actually use the documentation in Sanskrit. It otherwise can be a little thornier, chiefly because the packagers of distributions (who perhaps have been sneaking sips of Steve Ballmer's free soft drinks) have broken much that is useful off into "-devel" packages that never seem to get installed unless you choose everything. In that one measure of your success will be when your user actually downloads and compiles some nifty new thing from source, those packages ought to be aboard. Other than that, your friend -- and you, if you watch the process through your friend's eyes -- will be amazed at how simply installation and configuration of Linux has become. Even configuring XFree86 has become so painless as to no longer be an event. Through some spark of wisdom, Linux distributions no longer turn on all imaginable servers by default. There will be a screen during which your friend will decide which ones to enable. This is a good time for a little discussion of computer security and the vulnerabilities that are introduced with each additional server. You needn't be an expert here, either -- merely pointing out that an unneeded server that's running eats up memory and processor cycles and creates another place for crackers to enter is enough, along with assurance that they can still browse the web without httpd, and can still download files without being an ftp server. I turn off everything, and if it causes trouble it hasn't been evident trouble. As a print server, I see no reason not to choose CUPS, because it's easy to administer. That security discussion should extend to the inevitable questions about passwords. You can point out that this keeps private files private, but more than that informs the machine who is using it, so that on a computer that is used by several family members, each may choose all kinds of customizations without imposing them on others. (And if there are kids in the house, it is good to point out that the root user can pretty easily get a sense of what they've been up to.) I'm of two minds about the default runlevel. Just about every distribution defaults to the GUI boot (runlevel 5 in most distributions), but this introduces some potential problems, particularly if anything happens to XF86Config. It's easier for the newbie (actually, it isn't, but they think it is), yet I tend toward favoring runlevel 3, the text-based login. This lets the user get a sense of all the things that happen during bootup (you might want to go over /var/log/messages with your friend; it not only details these processes but gives a hint of the many and varied people and organizations that have contributed, and provides an opportunity to explain cron jobs, which can otherwise be pretty hard to grasp). It also lets the user, at bootup, experience a little bit of awe in that what they have here is not just some appliance but a device more complex than everything else they own put together, their car included. We can all profit from remembering that from time to time. (I had a delightful email exchange some weeks ago with Waldo Bastian of KDE in which we laughingly agreed that any sane person, given an explanation of the theories that govern computing, would conclude that the whole business is entirely impossible. Waldo is, in addition to being a great programmer, excellent administrator, and generally fine fellow, a very funny guy.) These decisions will all be made, and if you've sorted out the CMOS settings such that at boot you get past "LI", your friend will soon be looking at a modern Linux desktop. (I've avoided suggesting which desktop you should advise your friend to choose. The answer is: The one you know, unless you use something that truly does require a lot of old-school Linux knowledge. This means, frankly, Gnome or KDE. I prefer KDE, but others find merit in Gnome. Choose the one you know, because you'll be answering questions about it. And in any case, don't preach -- if your friend later decides on something else, don't pre-equip him or her with a guilt trip.) If your friend has some kind of broadband connection, now is the time to employ the update programs that modern Linux distributions provide. I have not used the Red Hat update program because I'm running a beta on the Lab Rat machine, but I have used SuSE's YOU feature in YaST. It should go without saying that you should tell your friend to regularly run the appropriate program, because it's a painless way of staying current with security fixes. It has other useful aspects, too -- if the desktop chosen is KDE, for instance, moving to KDE-2.2 and KOffice-1.1 are night-and-day improvements. If your friend is on a dialup -- well, I don't quite know what to say. Certainly it is important to fetch the security updates. Upgrading something as big as a desktop, XFree86, or even Mozilla can take awhile, and is likely to get busted if there is an extension phone anywhere in the house. Despite the connection, you have the opportunity to point out that practically everything in Linux is free for the download. While there are package managers, both in the auto-update programs of the distributions and included with desktops, this is a chance to explain opening terminal windows, su to root, and the RPM commandline. (If you're introducing your friend to Debian or Progeny, a.) my hat's off to you and, b.) you already know what to do; just be careful not to get over your friend's head.) You can also explain, in general terms for now, the idea of getting source tarballs and building the latest and greatest. Your friend will already be overloaded with information, so merely explaining that he or she will soon be able to do this is enough. Then take a tour of the desktop. Both Gnome and KDE are designed to make the transition easy for anyone coming from any version of Windows released since August 1995. A couple of things to avoid: Preaching the politics of free software. Even if you are a hard-core adherent, let your friend find it. (Why? Because a new operating system is quite enough for now -- having signed on to a movement can be, and often is, very offputting.) And -- highly important -- making decisions based on what would be just right for a machine you would use, instead of one your friend will use. Congratulations! You're halfway there!
Being a Good GuruI have a Linux guru. His name is Bob Bernstein and no, you may not have his email address. When first I used Linux, coming from OS/2 -- we met on an OS/2 list, and though we're best of friends, we have never actually met in person -- he knew I was making the switch. When I had not appeared online for an entire day, he went to the trouble of chasing down my phone number and asking whether I'd hit any bumps, which I had. He talked me through them. Even now, though from time to time I can point him toward something he finds interesting or useful, when I get into a really thorny mess I email him about it; if I've really screwed it all up, I'll phone him. (We do talk, now, about other things; Linux can lead to great friendships, so it's not entirely a parasitic association.) I have no idea why he has put up all these years with what must seem to be a distinct unwillingness to learn anything. But he does. As you must, if you're going to lead a friend down the path of righteousness that is Linux computing. (And, okay, as I've learned things, I've helped out others on the multitude of mailing lists to which I subscribe. There comes a time when anyone who is active on the lists is answering more questions than he or she is asking.) One thing that is highly useful to do is introduce your friend to the mailing list of the distribution he or she is using, plus any associated alternative lists (there is a good Caldera refugees list, now that Caldera is not chasing the desktop user, and a wonderful less formal SuSE list; I suspect that other distros have laid-back counterparts as well, and if they don't, they should). By "introduce," I mean that you should post a note to the appropriate lists -- to which you're already subscribed, right? -- introducing your friend and expressing your hope that he or she will be welcomed to the community. General Linux flame wars notwithstanding, Linux mailing lists are tremendously friendly places. At the same time show your friend -- your friend, not you, at the keyboard -- how to subscribe. And explain that even when they are extremely frustrated they probably will not accomplish much by saying "Linux sucks" to the list, when saying, "I'm accustomed to doing X in Windows, but I can't figure it out in Linux; here's what I've tried . . ." will bring help. Good mailing lists will help make you a very good guru with no effort on your part. You will, of course, need to be available to help from time to time. (I think that install fests would generally be more successful if there were a competent follow-up person assigned to every wide-eyed-and-willing newbie.) It's important not to become impatient, even if you rattled off the RPM command prompt options during install, or if you've already been over ./configure, make, su root, make install. As is always the case with these little weekly ramblings, there was a catalyst that triggered this column. My younger nephew, a brilliant lad named Michael, last week started high school. Among his electives is computer programming. Once I got over the fact that my little sister's younger son is already in high school, I made inquiries. This semester he'll be taught Visual Basic. But next semester he'll have C++, and the projects will all be independent study. My sister and Michael will be here in December, and I'll introduce him to Linux. It will need to be a crash course -- they won't be here all that long. Once they're back home, I'll do my best to introduce him to people in the KDE community. If there's a better assemblage of C++ geniuses, I do not know where it is. I hope that he'll be welcomed, and am confident that he will be. No, KDE's organization is not there to tutor new programmers. But yes, that organization is made up of people who remember when they didn't know much, either. If his next course of study were C, I'd inquire among my friends -- surprise! I have some -- in the Gnome community, of whom everything I've said about KDE can be said. But before any of that, I need to get him comfortable with Linux. And I'll get entirely welcome support calls. There's an entirely different reason I mention this. It's not easy to be a Linux guru to a family member, and if there's a way to pass it off to someone else, you probably should. Michael is physically distant, and we have great mutual respect. People at arm's reach tend to listen better than people you're around all the time. My wife is generally brilliant, a great lawyer from an Ivy League school, and but for her having married me a person of unblemished reputation. But because we are involved in oh-so-many decisions having to do with the operation of our little horse farm, the color of the curtains in the living room, and what to eat for supper tonight, it's impossible to step back, put everything else aside, and deal solely with computing. She runs Linux out of loyalty to me, but I'm her system administrator, not her guru. Someone else would better explain Linux to her. As it happens, her father, who knows so much about computing that it would knock your socks off -- he was programming space probes for the Jet Propulsion Laboratory when the first task was writing the operating system, and when 16k of memory was luxurious -- is contemplating playing around with Linux. I hope he does, because Linux has a way of re-igniting excitement about computing. And if he were to become truly excited about Linux, the community would benefit, because he's somebody who knows a lot. But in any case, he would be a much better guru for Susan than I am. He could better deal with what she wants a computer to do. But as sometimes happens, I digress. We can sit around and post little messages here and there about how Linux ought to be more prominent in the computing world, or we can actually bring someone into the fold. The latter is highly satisfying for all involved. Let's do it.
|