In a rare opinion column, our editor turns Socrates and asks: “What is success?”
As Linux approaches the fifth anniversary of its conception (in June), it is perhaps worthwhile to ask if it has been a success so far. It has certainly been far more successful than anyone originally thought it could be, as support for new hardware has increased tremendously and users all over the world number at least in the hundreds of thousands, and more likely in the millions. Is that success?
For those of us who use it every day to take care of all of our computing needs, Linux is a success regardless of the numbers of people and organizations who use it. Without even a magazine for its users, it would be a success. Without commercial applications, it would still be a success. Linux has nothing to prove.
But that doesn't mean that there is nothing to improve.
Linux is a success with technical people, and has been for a long time. Linux comes with a huge, well-understood tool box of programs for data manipulation and services. And for basic, well-understood services, the Linux distributions provide (more or less) out-of-the-box solutions. FTP services, WWW services, NFS file services, LPD print services, SMB/Lan Manager file and print services, and more all work out-of-the-box, or with a little configuration. In part because of this, Linux is seeing growing personal, corporate, educational, and governmental use.
So what's missing? Fairly obviously, as Linus Torvalds himself points out, a wide choice of desktop applications. But that's being worked on (native applications, Wine, DOSEMU, Executor) and nothing I could say would speed up any of those projects. Instead, I'd like to present one particular challenge for growth: the market for pre-configured (“works out-of-the-box”) software that fills the needs of particular niche markets. If this challenge isn't met, Linux will still be a success; Linux use won't shrink. This is just an area in which Linux has the potential to be very useful, but where important pieces are still missing.
I'll use the example of Point Of Sale (POS) systems, since I know a little bit about them. It is very definitely possible for a technically competent person to use a Linux system to create a POS system. The goal is essentially to piece together a database with a terminal or network of terminals in order to quickly look up the prices of individual items and compute the total cost of a sale, as well as manage inventory and do financial transactions.
The standard Linux techie (call him Jon Hacker) answer runs something like this: “Oh, that's easy. Just build a database (flat text, DBM, Postgres 95, or one of the commercial databases for Linux) and write a program (Tcl/Tk for X, curses for text terminals) for a user interface. I could do that in a week. Then add things like credit card validation on-line, inventory control, etc. That could take, um, a while longer.”
Jo Store Owner doesn't have a week. She isn't a guru, and she doesn't have a guru to write the system for her, either. And she's not going to hire Jon Hacker to write a POS system based on Linux, since she can buy a system that does meet her needs—though perhaps not as well as a customized system—which runs on DOS or Windows or Mac, and it will cost her less to get it up and running. It may not be as well customized for her business, and it may not even be flexible enough to customize, but it will work well enough for her, and to instead hire Jon Hacker would invoke the law of diminishing returns—it simply wouldn't be profitable.
However, if a POS package (free or commercial; it doesn't much matter) were available for Linux, and came configured intelligently, but used Linux tools to do the job and was therefore easily customized, it would be an attractive option. Joe might even hire Jon to customize it for him.
My point isn't really POS systems; there is already at least one complete POS system based on Linux. However, there are lots of niches like this that Linux is a great technology base for, but which don't have off-the-shelf solutions based on Linux yet, even though more free and commercial tools are available all the time. (Read comp.os.linux.announce and LJ's own New Products if you need convincing.) Being able to start doing something after running a simple installation (like a:setup under DOS and Windows) is the basis of meeting this challenge.
As I see it, this challenge is being met to some degree, but sporadically and piecemeal. My goal is merely to help popularize the idea of making Linux a useful business solution, and encourage Jon Hacker to search for and support niches in a way that Jo Store Owner can understand and trust. I'm not suggesting this to help Linux take over the world, but rather because I think that the technology available for Linux has lots of price/benefit potential for Jo and employment benefit for Jon, and because I think that the price pressure that Linux's low cost can provide will invigorate niche markets.
There was a time when Linux existed, but there was no such thing as a distribution. You had to put a Linux system together from scratch—a few floppy images, including kermit for file transfer, or tar to pull more files off floppies, or maybe mtools to read DOS-format floppies. Individual binaries were available from tsx-11.mit.edu and ftp.funet.fi. Distributions weren't necessary; it really was possible to build your own. I've done it several times. I would even consider doing it again—for fun. But when I want it done right, I get one of the Linux distributions and install it in a matter of minutes, or at most hours, most of which is consumed by the computer quietly pulling files off a CD-ROM without my assistance.
What I'm suggesting is very much like these distributions: the basic problem already solved, ready for site-based customization, provided in a convenient format. If you think that is a simplistic view of the need, remember that Slackware was created by one person who customized and bug-fixed SLS for his friends and college professors. Although it evolved from there, and doesn't meet everyone's Linux needs, Slackware was useful from the start.
Many of the advertisements in Linux Journal are for CD-ROMs with new versions of Linux and Linux tools. That is important; an easily-available supply of new tools has helped Linux spread even faster than it could over the Internet alone. However, based on my belief that Linux is growing and evolving, I suggest that in five more years, we will see more and more advertisements touting Linux-based products intended to solve a business problem, rather than impress geeks like me.