Introducing Debian GNU/Linux:

The Interactive Operating System




Debian GNU/Linux:

Debian is a particular distribution of the GNU/Linux Operating System (OS), with GNU/Linux probably being the best computer Operating System in the world.

Debian is unique, because: (1) it is a non-commercial distribution, produced by expert volunteers; and (2) it upholds the principles of free software (for a definition of free software, see below).

Why Choose Debian?

Because, IMHO, Debian is the best distribution of GNU/Linux because of its technical excellence - the way it is put together, and the way it works. For example:

1) The install. This is entirely text based (Xserver configuration comes later) and consists of two stages - the installation of the 'base system' and, after a reboot, the installation of packages.

This two-stage process, and the required re-boot, is good - for it ensures that you have a working system before attempting to install packages.

2) dselect and the Debian packaging system. dselect checks for dependencies and automatically avoids installing packages which might conflict with each other or ones already installed. Of course, dselect may seem outdated to some people, used to the slick interfaces of another Operating System - but it does encourage you to pause, to think, to learn how to use it, and once learnt, it is very good. With dselect, you know what is happening - watching the install process is a valuable learning experience.

The Debian packaging system itself ensures that upgrades can be made without 'breaking the system' and the new apt method in dselect enables upgrades to be made directly by ftp or from a web-site.

3) The Debian system is put together with knowledge, technical skill and in a very understandable way. For example, system configuration files are in /etc, with /usr/local reserved for packages installed by the user.

However, Debian is distinct from other distributions of GNU/Linux in another way -  it encourages the user to learn. That is, it does not attempt to hide what is going on from the user and expects the user to 'interact' with the OS. A good example of this occurs in the current Slink 2.1 distribution where on login the user has the xconsole already set up to show what the system is doing. With computers, we learn by making mistakes, by trial and error, and one of the most important aspects of GNU/Linux is the learning process.

In essence, the Debian distribution combines technical excellence with that educational ethos which is an important part of the GNU/Linux Operating System.

To those used to using slick 'user-friendly' interfaces where most things are done by a single or double click of the 'mouse', GNU/Linux even today seems complicated, with its xterminals where users often have to enter commands. The trend in the GNU/Linux world is toward graphical interfaces, with icons to click-on, in order to make GNU/Linux more accessible to those used to using Microsoft (MS) Operating Systems- in effect, trying to follow where MS Windows and MS NT have gone.

Debian has been slow to embrace this trend - for good reason. One of the virtues of the GNU/Linux OS is that it encourages and often requires the user to type in commands and maintain or alter the OS in some way. This is because GNU/Linux is an educational OS - or as I would express it, a true computer operating system: you, the user, are in control, not the particular default configuration of some graphical orientated and inherently inflexible program you have installed on your system. Furthermore, with GNU/Linux you, the user, can and often must interact with your system.

To try and change this, and so try and make GNU/Linux some sort of imitation of MS Operating Systems, is wrong - it is destroying the relationship, the interaction, which should exist between user, and the system.

This is not to say that such things as graphical user interfaces and icons are wrong - only that they should and must be a happy medium between usability and interaction.

What needs to be understood is that computers are not like other machines, such as televisions or automobiles. They are in a class by themselves because of the software that enables them to function. By its nature, this software is dynamic, not static - it is a flow, a process of interaction between the system and the user. The better the interaction, the better the system.

The difference between GNU/Linux and the other software which goes by the name of 'operating systems' is that GNU/Linux is both flexible, and interactive, and that it can be changed by the tools which are an integral part of it. This is the real and fundamental difference between free software and proprietary software - between GNU/Linux and programs like MS Windows. Proprietary software is both restrictive (in copying terms) and inflexible (in programming terms), and if such proprietary software can be altered, it can be done only in the small ways the manufacturer specifies or makes possible.

Furthermore proprietary software does not exploit the capability of computers - it restricts computers by not allowing the user to properly interface with the system: to see and understand what is going on, and alter or change it if necessary or if desired.

The 'user friendliness' and the 'control' which proprietary software uses to sell its products is actually an illusion - a negation of the freedom and interaction which free software allows and encourages.

By choosing and using Debian GNU/Linux the user is not only choosing freedom, and encouraging the development of better software, but also using their system as it should be used - in an interactive way. This interaction not only makes the system work better, but also educates the user.
 



Free Software:

This is the definition given by Richard Stallman, of The GNU Project:

"Free Software" refers to the users' freedom to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software:
(0) The freedom to run the program, for any purpose (freedom 0).
(1) The freedom to study how the program works, and adapt it to your needs (freedom 1).
(2) The freedom to redistribute copies so you can help your neighbor (freedom 2).
(3) The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3).

A program is free software if users have all of these freedoms. Thus, you should be free to redistribute copies, either with or without modifications, either gratis or charging a fee for distribution, to anyone anywhere. Being free to do these things means (among other things) that you do not have to ask or pay for permission.


Muhammad Hussain Yusuf