posted by John Munsch on Mon 30th Dec 2002 19:05 UTC

Users are going to have a lot of questions about Linux. Are you prepared to answer all the common ones? Do you have a resource you could turn to that has short simple jargon-free answers to Linux questions like these?
  • Can I run all my programs and games on it?
  • What is an operating system?
  • How is Linux any different from Windows?
  • Isn't Windows (or Microsoft) the best?
  • Can I try it out?
  • If it's free, it can't be any good, can it?
  • Who is going to help me when I have problems?
If you aren't sure if it's easy. TEST IT!

Actually stick it in a naive user's hands and watch them use it. Do so silently and record the results. Resist the urge to yank their hands from the keyboard to fire up a console. Let them flounder and figure out how to fix it so they don't flounder next time.

The audience that could most benefit from Linux in the long run is not going to seek out Linux to install it.

They are the users who limp along with the same OS for years on end because it came with their computer. They do not upgrade when a new version of Windows ships, they get a new version when they buy a new computer.

That means that one of your targets has got to be the white box vendors. Walmart is already heading down this path but every Tom, Dick, and Harry who sells PCs needs to be sold on why burning 50 cents worth of CDs will give them something better to give the customer than nothing or Windows.

The same goes for the "computer guys" that set up the computers for half the population. If you are one of these next door neighbors or family members or friends who does this, you have to be sold yourself that putting Linux on the machine is going to be a better choice than pirating some Windows OS for them or making them go buy a license for it.

If part of your audience is going to be computer users who get a new machine home and it already has Linux pre-installed, there needs to be two versions of the software installation available in the distribution. One for a complete install, and one that installs most everything and holds back on final configuration of things like the network and printers until it is sitting in its new owner's home.

During my years at Tandy a lot of time was spent on the out-of-the-box (OOTB) experience. We had the software ask special questions the first time it was run, go through tutorials, and teach people about the software that had come with their new machine. Why should a Linux OOTB experience be any less than a Windows one?

Linux installations should be pared to the necessary and sufficient to accomplish end-user tasks.

The typical end user does not require seven or eight different text file editors. One for editing plain text files and a word processor do the job just fine. This requires choices and picking winners and losers in various categories. This flies in the face of much of the Linux wisdom but it's really the only way for an end user to get started.

Having more discs than Windows doesn't make you win. Having better software that is better organized, covers more of the end user's needs, and which is easier to use will win.

Corollary: Too often open source projects are fixing the same problem 50 different ways while ignoring other, equally important, problems.

Basic system administration should be made automatic and assumed for the user.

By that I mean that good habits like automatic backup should be set up by default and the user prompted only for his/her participation in swapping CDs or floppies. System updates for security should be automatic and only require basic approval.

Linux needs to be the first, but not the last, to support a system wide lingua franca of functionality that can be used by any language running on the platform.

XML-RPC, SOAP, whatever, it isn't important. But what is important is that a Perl application can add itself to the menu whether it is running under either KDE or Gnome and have its application run. The same should be true for a shell script or a Java program. In any of these cases it is important to have the ability to integrate a program written in any language to the level of functionality that is typically only enjoyed fully by C and C++.

Doing so will enlarge the pool of developers and ease the creation of a better version of Linux for the home user. After all, many of the wizards, introductory lessons, etc. that I described in previous entries could be done just as well by developers who are more comfortable in scripting languages rather than C++. That means they'll not only get done, they will get incrementally improved by people who might be daunted at pulling the latest version of a major application out of CVS to improve it, but who wouldn't think twice about completely rewriting a script and submitting the updated version.


In conclusion, Linux has come a long way toward being a viable desktop OS for the average user, and the path to taking it the rest of the way is clear. The decentralized nature of the Linux community is an obstacle to achieving that aim, as is the pride of the average Linux developer. A concerted effort to try to understand and serve the beginning computer user will be necessary, as will be a subjugation of tribal allegiance to a particular distribution, desktop environment, text editor, or programming language, with all their associated quirks and differences. The key is beginning that "virtuous cycle" wherein users are attracted to the platform, which in turn attracts developers, which then clears the way to attract more users, and so on. Only as far as that cycle continues will Linux be a viable replacement for Windows on the home desktop.

About the Author
John Munsch is a software designer/developer with 15 years experience in the industry. He is currently working for a pharmacy software company and on his various projects (including some open source) that can be found through his website at
Table of contents
  1. "Why?"
  2. "How?"
  3. "Pretty Does Count"
  4. "What Brand?"
  5. "Conclusion"
e p (0)    180 Comment(s)

Technology White Papers

See More