In the absence of a monopoly, there are three traits that are likely to make an application popular: it is cool or attractive in some way, it provides easy entry, and it is addictive. Barring these things, most average users will stick with the status quo. In fact, many users never use a program on their computer that did not come pre-installed. However, by creating an attractive, easy to set up, addictive application, a developer can motivate the average user to break this barrier and try something new. And several such applications can generate strong popular interest in the open source movement in general.
Konfabulator is a great example of this. Since installing it on my work PC, several people have asked me to show them where to get it or to help them install it. It is attractive to look at, fun and easy to customize, and provides small added conveniences they otherwise would not have.
On the other hand, many of these same individuals are resistant to trying less flashy software like Firefox or OpenOffice.org. Though these applications would be useful to them, their current Web browser and office suite work well enough for them, and they feel the switch is not worth it.
Once a cool application or OS has caught consumers' eyes, however, it will only frustrate them if they must work hard to learn it or get it running. If they cannot install it and set it up rather painlessly, or if there is only limited compatibility between their current data and the new software, the vast majority of consumers will give up. A simple installation procedure, accompanied by easy to follow documentation, will go a long way toward winning over a new user.
To really take off, however, a product must be addictive. There's a big difference between, "I used that once, and it was pretty cool," and "I don't know how I ever lived without this!" It's the latter which will carry users through the learning process of a potentially complex application and get them convincing their friends to try it.
Though open source applications often excel in stability and in quantity of features, they are often surpassed by their proprietary counterparts in their ability to win over regular users. One particularly successful bundle of software is the proprietary iLife application suite for the Macintosh. iLife lets Mac users create, import, store, purchase, and edit audio tracks, photos, and videos. It can also access the world's largest online digital music store and a plethora of streaming audio sources, and a user can order prints of any photo in their library.
A key to this software's popularity -- in addition to the fact that it is pre-installed on every Mac -- is that its simple interface, intuitive menu structure, complete integration between applications, and logical default settings, give even a beginner a lot of power. A first-time user can in a matter of minutes take video from his camcorder, or a collection of pictures and songs, and create from them a fully functional DVD.
iLife also provides users with an intuitive and smart way to organize their media collections: a library where all media are collected and organized with multiple labels, which a user can access via the iLife interface or the Finder (Apple's file manager), both of which are equipped with a search-as-you-type bar. Users can sync any media easily to an iPod or an online account, edit them (in iLife or an external program), and write them to a standard file format, CD, or DVD. Templates are sharp, everything is drag-and-drop, and even novices can create a well-polished finished product in minutes. Additionally, the iLife applications are easily accessible by one click in the Dock on the Mac's default desktop.
Where open source and desktop Linux can improve
In iLife, Apple not only created great software with cool features, but provides new users with a clear point of entry that provides quick results. This hooks new users and keeps them coming back. The extensibility and cooperation with external programs adds to the functionality without sacrificing simplicity or efficiency for other users. This is where I think open source software, and desktop Linux in particular, has a lot of room to grow. Open source developers have made great strides in recent years in developing office software that eases migration from Microsoft, and there are some powerful applications for Linux in just about every field. Linux software can surely provide that "wow" impression to a user, but there is not often enough an easy point of entry that brings that "wow" to a new user quickly.
By no means am I proposing a dumbing-down of Linux software to serve the masses, nor am I suggesting that no open source or Linux developers are serving the interests of new users. Groups such as the Mozilla Foundation are making great strides in this realm. However, I do believe that if open source, as a community, would pursue this universally and intently, then the use and popularity of open source software would grow exponentially.
I have witnessed firsthand how quickly regular users can feel comfortable with Linux when the system has been configured for them (this usually involved the addition and explanation of a handful of desktop icons, five minutes of work). This comfort allows them to use Linux as their primary OS right away, giving them ample opportunity and motivation to discover its many features and programs. I have also known users who had all but given up until someone helped them understand the basics of the new system. With a little work, though, developers and distributors can see to it that fewer users fall into the latter group.
For Linux distributions, an easy yet effective first step is to choose system defaults with a new user in mind. Experienced and power users are going to change many of the defaults anyway, so why not choose the default based on the users least likely to change it? This is particularly important in choosing default applications for Web, media, and office work. A new user should also have one-click access to these applications from the desktop, where the program name or icon clearly tells the new user what the program does. When a distributor fails to provide this functionality in a default installation package, it is helpful for an experienced Linux user to set these things up for their friends who are new to Linux. These simple steps go a long way toward helping new users feel at home on their new desktop.
Simple file organization is another easy gesture that a Linux distributor or desktop management developer can make to help a new user. For example, Mac OS X comes with pre-designated folders within each user's home folder, where they can store their documents and various kinds of media files. Links to these folders and the applications folder are provided in a sidebar of the Finder, and Apple applications (as well as many third-party apps) default to the appropriate folder in their Open and Save dialogs. By incorporating a similar setup (which would only involve slight modifications to the KDE file manager, for example), a distributor can make a new user even more comfortable, while still allowing a power user to make changes and customize his file organization and sidebars as he chose.
There are also steps that application developers can take that will aid this process. For instance, they might provide an import/export tool where a user can export directly to another application (as in iLife), rather than to a particular file format. This helps eliminate confusion for less knowledgeable users, increases efficiency for every user, and can complement, rather than replace, the traditional import/export functions. Drag and drop between different applications would be even more user-friendly. And if developers applied the customizability typically associated with open source to these features as well (for instance, allowing the user to export directly to any appropriate application, not just another application in the suite), their applications would become more powerful than their proprietary counterparts.
Where developers do not incorporate such features, users should be able to employ open source third-party plug-ins to increase interoperability between open source applications and even proprietary applications that allow plug-in use. Rewire is a good proprietary example; it allows interoperability between several proprietary professional audio applications. Also, there are several open source MIDI sequencers which directly export musical scores in Lilypond format.
Where appropriate, bringing related applications together into a suite (like iLife) would be an ideal long-term goal. Kontact is a beautiful open source example of this, where several applications are grouped together, interact well, and one can easily switch from one to another via Kontact's sidebar. A previous NewsForge article proposed a similar idea for Scribus, GIMP, and Inkscape. While not all applications work well in a suite, there is room in most open source applications to increase integration and ease of use for new users.
These are but a few ways in which developers can make their applications and distributions more accessible to new users, and but a few of the projects which have already begun doing so. By continuing in this vein, Linux and open source developers have the opportunity to make software that is attractive, easy to begin to use, and keeps users coming back for more. If a handful of Linux distributions begin bringing more of the "wow" features of Linux to new users on their first clicks, and if software developers more vehemently address issues of inter-application functionality, the open source community could go a long way rather quickly toward reaching and winning over new users.
Linux is a powerful and versatile operating system, with many cool, addictive features and applications. Let's make sure that it doesn't take a new user two months to discover them.
Kris Shaffer is a musician who works with Web design and open source technology in his spare time. One of his current projects is creating a graphical application for Mac OS X which eliminates the need to use the command line with LilyPond, an open source music notation application.