Linux Information
Why I use Linux
Stable
Linux is becoming the defacto standard for internet servers (hey the guys at
qsl.net use it). I do a lot of work on internet servers and many of the servers
have been up and running for months. In fact, three were restarted after nine
months of running only because the hardware was moved to a new facility.
I rarely reboot my own workstation. Ja, certain programs crash from time to
time, but usually for good reason. Usually, because of a flaw in the program
violated its resource utilization rights. But when a program crashes, it doesn't
take the whole operating system with it. Once in a great while, I have to
restart X-windows because I did something stupid in a program.
Open source
Linux and all of its related software are available for free. Usually, for the
price of a download via the internet. I haven't had to buy any software in the
last few years.
Open source has a very important meaning, the source code is freely distributed.
This means that others besides the orginal developers may use the software and
modify it to fix bugs or make improvements or evolve it into a totally
unrelated application. Thus, there are thousands of people out there developing
software.
Most major package devlopers provide bug tracking at their web sites. This
allows anybody in the world to report a bug. Often, because of the open source,
other developers will often track down the bug and suggest patches in the
process. Thus, there may be thousands of people contributing to a particular
project. In contrast, the big guys have only about 500 people developing their
products.
While open source developers take pride in their code and try to make it bug
free, they can't always test everything. However, they openly admit their
mistakes and usually publish bugs resolved or otherwise at their website.
Most packages are maintained and regularly provide updates via internet. In
contrast, most comercial software bugs are never revealed (bad for business
image) and require you to wait for the next release to get bug fixes. Many
rapidly evolving packages like Mozilla (Netscape's origin) provide nightly
development snapshots.
Open source does not necessarily mean free in terms of price. True, there is
some comercial software for Linux. Redhat now charges a hefty price for their
distribution, but you are not paying for the software and you can still download
it from their site as a 650MB iso CD image. For their price tag you get media,
documentation and support. The later can be important if your using Linux
commercially.
Linux is a real operating system
As a developer, I got frustrated with the comercial OS's trend to hide its inner
workings from me. In particular, the installation wizzards that often behave
like idiots. Admittedly, Linux is harder to configure, but the configuration
information is stored in files that can be edited and don't change automagicly
when you boot up. Oh, and you don't have to reboot every time for changes to
take effect.
You can still do things at the command line. There are things that are more
efficiently done by a few keystrokes rather than a bunch of mouse clicks. The
tyipcal distribution has hundreds of commands at your finger tips. I've been
doing this for 22 years now, and I still like command line stuff.
I know your saying how can I ever learn all these commands. There are
man pages which contain the operators manuals for commands. These
manuals are formated to a uniform style so finding information is quick with
the man command. If you prefer, most are translated (or can be with a
utility) to html for browsing.
You can alias a command and its options to a simple easy to remember
command. If you have used Unix, you know all the most frequently used commands
are two letters. There are still plenty more you can use.
The real power comes from shell scripts. A shell is a command interpreter
(like command.com) that has a number of built-ins and can use external programs.
So once you figure out your most often used commands and options you can build
a shell script. Unix uses a filter and pipe method. Programs act
as filters to provide or alter a stream of information. The output from that
program can be piped to the input of another program. As a result, information
can be transformed to any format you need. I often write scripts that generate
other scripts.
Now take this one level higher and add a GUI (graphical user interface) in
X-windows. That's right, all of that stuff at the command line can be re-used
inside your nice point and click applications. No need to re-invent code for
every new aplication. Okay it may run a few milliseconds slower as it runs
low level programs and yes it uses more memory, but memory is cheap and so is
CPU horsepower. Quite frankly, most low level programs are so small, you
probably won't notice the difference. What you will see is the stable
time-tested code of all those command line programs. Now thats, extensible
power baby!
Standards
Linix is designed to meet internationally recognized standards. You will
see lots of references to ISO, POSIX and RFC standards. Unlike the big guys
that make you use their web browser that does not comply to international
standards but rather their own.
When is a .avi file not an .avi file? When you don't the right codecs that are
needed to decode the possible five proprietary standards for this format. When
is a .mpg file a .mpg file? When you have a mpg 4 codec that knows how to
decode versions 1, 2 and 4 of the standard. The point being, proprietary
standards are just that, proprietary and unpublished. A fundamental difference,
international standards are published and reviewed before acceptance as a
standard. The philosiphy behind the RFC (request for comment) standards, is
that everyone in the world can add their two cents and the best ideas are used.
You can make backup copies
Linux unlike the popular commercial OS, does not have any registry or other
licensing paranoia. This lets you use any method you like to make backup copies
of your operating system. Unlike the other guys that let you make what appear
to be clean backups for months until you really need them. Then find out
everything copied but the registry. Hmm, I guess its reinstall time, again!
Logical directory structure
With Linux (or any Unix for that matter), your hard drive is laid out to a
standard. You can split your filesystem across partitions, drives or even
networked to other computers.
When it comes time to upgrade your operating system, your application stuff
will be separate from the OS. Unlike those guys that layer everything into
overlapping directories.
Stable
Hmm, I mentioned this already. Its important enough to repeat. I changed over to
Linux several years ago primarily because I got tired of the crashes. I was
wasting more time rebooting than working some days. The breaking point was when
the 98 version misbehaved worse than the 95 version. I still maintain a
installation of the big guys stuff on a partition of my secondary machine. The
only reason is to support my friends who use that stuff. I don't remember when
I last booted that partition.
|