Debian differs from other Linux distributions in many ways, a few of which are radical departures from the ways distributions of the past were assembled. These differences have attracted developers from around the world to work together toward the common goal of making Debian the best Linux distribution available. Indeed, one of the differences that has attracted them is the fact that they can work together.

Open Development The most unique aspect of Debian development as compared to other Linux distributions is the fact that it has been and continues to be developed openly by a group of volunteers, and that it is open to other volunteers who wish to join the effort. Debian is not developed by one individual or a small, closed group. Instead, it follows in the tradition of the Linux kernel; it is developed by those who use it, and this makes for a higher quality, more dynamic, and truly modular system. Does this sound to you like an invitation to chaos? Originally, many people claimed that the open development of the Linux kernel was an invitation to chaos and disaster, yet Linux is not a disaster. Neither is Debian, for a good reason.

Modularity Of Debian Components As the Debian developers create their pieces, they follow strict guidelines for constructing and maintaining these pieces, called packages. Because these guidelines are followed, each package can be dropped into the system independently without damaging or interfering with programs from other packages. By working with a set of consistent rules and with identical tools, the volunteers can and do create a truly modular system. Modularity is extremely important to such a large collection of software as a distribution. New releases of the software that comprise the distribution are constantly being made, and it is the task of the distribution maintainer (or maintainers, in the case of Debian) to keep this software well integrated with the rest of the system and up to date. It is very difficult for the maintainer to do this successfully with dozens of megabytes of software, especially when the software is not written specifically for the system. When one person or small group attempts to do this, maintenance of the distribution soon becomes a nightmare. A distribution with many different people responsible for the maintenance of its packages does not suffer from this overwhelming task; different people are able to devote more attention to the packages they maintain than would otherwise be possible, and it is possible for experts in a particular area to take responsibility for the packages involving their area of expertise. The result is a better, more timely set of packages, complete with up-to-date components, full documentation and solid examples. A collection of such independent but highly cooperative packages makes a high quality, consistent, modular distribution, which is exactly what Debian is.

FSSTND Compliance Debian was the first Linux system to adopt, support and participate in the construction of the Linux Filesystem Standard (FSSTND); since that time, Debian has been joined by Linux/PRO, MCC, Slackware, TAMU, and other major distributions. FSSTND compliance means full compatibility with the distributions that follow it, easy integration of third-party packages and easy installation of the system into a network of FSSTND-compliant Linux machines.

Ease Of Installation And Configuration Debian was designed to be simple enough for the novice to install and configure, yet not so simple-minded as to frustrate the advanced user. The installation process is as modular as the system itself; the base system, which requires less than 7MB of disk space, can be installed in less than ten minutes. All packages are installed independently of the base system with the Debian package maintenance utility, dpkg.

Intelligent And Powerful Package Maintenance A new package maintenance system called dpkg has been developed specifically for the Debian system. With dpkg, the administrator of a Debian system can easily install, remove, upgrade and obtain information about both installed and not-yet-installed packages. dpkg is being written to easily and extensibly support multiple package formats, and it is planned to eventually support (at least) Slackware and System V packages.

Built-In System Upgradability Since the beginning of the project, Debian has been designed with up-gradability in mind. Every component of the system can be easily upgraded with just a few simple tools. Packages installed with dpkg can be easily upgraded. All one needs to do is install any upgrade package normally, just as if installing it for the first time, and dpkg will automatically detect that an older version of the package is installed on the system and ask for confirmation that it should be upgraded. dpkg takes care of the rest, asking whether to replace configuration files, and notifying the user in the unlikely event that any manual steps need to be taken after the upgrade has been completed. Similarly, the base system is upgradable, albeit by a slightly different method. Periodically, the Debian Linux Association will release upgrade packages to the latest release of the base system. Usually this will involve executing a script or a similar task. The upgrade process will always be simple and will usually be fully-automated. The key point to make about upgradability in Debian is that the user need only install the base system once. Upgrade packages to the base system will be provided when a new version of the distribution is released, and packages in dpkg format will always be upgradable. In summary, the entire system will be upgradable with an absolute minimum amount of work on the user's part.