[I just thought I'd chip in my two cents on the question of whether
Linux is easy or hard. It's turned into more like my $11.62, so it's a
good thing it's broken into sections.]
Linux is easy.
That's not to say that it can't be hard. Depending on what you're
trying to do, you may have to be able to think like an engineer to get
the desired results. But that doesn't detract from my previous
statement. In general, Linux is easy. Allow me to explain my reasoning.
Knoppix is easier than Windows.
Koko the the sign-language gorilla could turn an OS-less computer into a
feature-loaded Debian system by merely pressing two buttons and
inserting a Knoppix CD. ANY idiot that has ever used Windows 95 can
find their way around in KDE without help (that's not to say that Koko
is an idiot, mind you). If Koko is familiar with Gaim, Firefox and
OpenOffice.org from her Windows experience, she's instantly able to do
in Linux what she spends 99% of her time doing in Windows (actually, I'm
pretty sure Koko usually uses a Mac, but you get my drift).
"Out of the box" Knoppix should be completely intuitive to anyone that
has ever used a relatively recent version of Windows. Is KDE intuitive
if you don't read from left to right, or email doesn't begin with an E
in your language? Maybe not. It's probably not very intuitive to pygmy
headhunters either. But I'd bet 90% of Windows and Mac users could
figure out how to do everything they want to do in Knoppix in twenty
minutes or less... they just have to be willing to try. (Knoppix might
be beyond the abilities of some BSD people, though. ;-)
Installing Linux can be easy.
While a Windows user is twiddling her thumbs as Windows XP installs,
Koko the gorilla is getting in a quick game of frozen-bubble as Debian
is copied to the disk. If something goes wrong during the install, well
Koko just opens up a browser and Googles the error message. Our person
installing Windows has to find another working machine in order to do
that. The only thing that might give Koko some trouble about the
install is partitioning her disk. This must be done during a Windows
install too, of course, but our Windows user only had to accept all of
the defaults when she partitioned a disk during an install.
Installing Linux USED to be hard.
This is probably why so many people think Linux IS hard. I've tried
Slackware, Redhat, Suse, Mandrake, Debian (and Lindows/Linspire), and
probably others. FreeBSD too. For years and years I wanted to play
with Linux, but I could never even get it installed. I think I tried to
install Redhat about half a dozen times (each time a new version number
was released or so) before I ever had a working graphical system. I
think Redhat was up to version 6 or 7 when I finally managed to get it
up and running to my satisfaction (I switched to Debian when Redhat
started demanding subscription fees).
Getting X configured properly was always a sticky issue. The monitor
never had refresh rates listed on the back label. And I could never
find the hard copy manual for the monitor either. I only had one
computer so I had to power off, swap disks, boot into Windows, look for
the refresh rates online, power off, swap disks, try installing Linux
again, type in the refresh rates... But what's this? "How the hell am I
supposed to know the speed of my graphics card's RAMDAC?! WTF is a
RAMDAC!? If Windows does this automatically anyway, why can't Linux!
Screw this!" Fortunately, Linux has come a long way since then.
Installing Gentoo can be hard.
I tried to install Gentoo on three different occasions. Just like with
those ancient versions of other distributions, the first two times I
attempted to install relatively recent copies of Gentoo I was thwarted
by mysterious errors while having no ready access to the web (or even a
proper GUI) for help. On the third occasion, unable to get the LiveCDs
to work, I finally managed to get Gentoo installed from within
Kanotix64. Each time I encountered an error, trusty Firefox was there
to display the solution. I had to promise myself the reward of buying
and installing Doom3 to get me to stick with it. Actually, the fact
that Doom3 and AA were both in amd64 in portage is what finally pushed
me towards trying Gentoo again (I erroneously assumed they would be
64-bit versions). Well, that and the prospect of effortless updates and
the fact that REAL Linux men and women (and gorillas) install all their
software from source.
So getting Gentoo (circa 2004) installed was a challenge the likes of
which I hadn't seen since Redhat version 5 and prior. But keeping it
installed (solving every problem that came along without throwing up my
hands and switching distros) has been easy. I owe that in part to the
large and largely savvy Gentoo community.
Getting Gentoo to do all of the things that I want has certainly been
harder than in Knoppix. It's been harder than in Redhat or Suse or
regular Debian too. But mostly I think that's because "what I want" has
become so much more since moving to Gentoo. I never bothered to do half
of the things I now routinely do in Linux until switching to Gentoo.
Heck, I don't think I ever even compiled a kernel in Suse, Mandrake, or
Redhat.
Administering Linux is easy.
Administering it well, properly or wisely is hard, but the same can be
said of Windows. Staying on top of Windows security patches, keeping up
with new proprietary technologies, forking over loads of cash for
software and support, all of those things are hard to do (for me, at
least). A modern Linux machine is capable of performing admirably (for
a user with the simplest needs) for YEARS right out of the box without
ever having to change more than a few settings from the default values,
without ever having to install external applications, without ever even
having to REBOOT! How many machines are out there that are still
running ancient versions of the Kernel because there has never been a
reason to upgrade that warrants the downtime of a reboot? (Well, OK,
there are other reasons for using older kernels too, but you see what
I'm getting at.)
One thing that the Linux administrator has that the Windows one doesn't
is a seemingly endless supply of free support. A Windows admin may have
to buy a support subscription to get access to help. At a minimum, she
had to buy some software. And when the developer stops supporting that
version... well she gets to buy some software again. Most of the
problems a would-be Linux admin (the only kind I can speak to) will
encounter, however, have already been solved. Some non Linux specific
Unix issues may even have been solved decades ago! And if the solution
cannot be found online, the uber-Linux admin probably has all of the
tools needed to find the solution herself!
Have you ever tried to solve a rare Windows problem? The solutions
sometimes don't seem to have anything to do with the problem. The admin
can't figure out the answer entirely by herself because it might be a
glitch in some seemingly unrelated piece of code that she didn't even
know her program used because she didn't have access to the source
code. She has to complain to the developers (and wait until enough
other people complained too) before a fix is released, all the while
being told that it's not their problem, it's a problem with the OS! And
if the problem is some flaky piece of hardware... well... for all the
finger pointing it might be easier to just buy a new computer. ...with
a new version of Windows to boot.
... easy partly because Linux has better documentation than Windows.
Windows apps typically have help files, but have you ever tried to read
them? In my experience, they never have anything even remotely related
to your problem in them. Windows help files aren't there to help the
admin make the software work when it doesn't. They're there to tell the
enduser what he probably already knows through intuition or by just
experimenting. Sometimes the first resort a Windows admin has for help
is a forum. Linux admins get to RTFM first. Sure, commercial Windows
software typically comes with a hard copy manual, but it is often little
better than the help file. Some times it IS the help file. And if it
actually contains useful information, it might be written in such a
highly technical way that college graduates, PhD's even, run out and buy
a "...for Dummies" book. When our would be admin buys a book about a
Unix program, it's because she wants to learn how to use that program
"well." Not just "at all."
Administering Gentoo is especially easy.
At least, most of the day-to-day stuff is trivial, that is. Sure,
Windows XP downloads security updates automatically, whereas in Gentoo
you have to type in a command or create a cron job, but look at what
that single command does! You've not only plugged any security holes in
your system files/programs, you've plugged the holes in ALL of your
programs (assuming you stay in portage). A Windows user might have to
visit dozens of websites on a daily basis to find out that there is a
security patch for one of their commercial apps in time to block an
exploit. And there WILL be an exploit! Granted, in Gentoo one has to
run dispatch-conf afterwards, but, hey, would you really want some
program mucking around in your config files unchaperoned anyway?
When new versions of Windows or Windows applications are released, the
smart Windows admin waits a while in the hopes that some of the bugs
will get worked out before upgrading. But how long to wait? As reports
of Windows 2000 machines getting wormed to pieces reveal, they often
guess wrong. With Gentoo, the would-be admin can be pretty confident
that anything in arch has been well tested and is safe enough to install.
...partly because portage is the easiest!
Installing new software on Linux machines had long been a thorn in my
side. For years, every time I found some interesting program on
SourceForge or Freshmeat, it would only be available as a source file.
Countless times I would download and attempt to compile a program only
to have the build die halfway through. After chasing down half a dozen
dependencies and trying to get them installed in the right order, I'd
invariably give up in disgust when it turned out that a dependency no
longer existed for download in the required version number or it
conflicted with software that was already installed.
Portage (and Debian's apt) made what for me was long the hardest part of
using (I use the word use as in the word enduser) Linux into one of the
easiest. If there was a GUI based tool that enabled a Koko to turn a
tarball and a list of dependencies into a properly ebuild, there would
be virtually no room for improvement in my eyes.
The fact that Gentoo has such a rabid fan base (sporting many developers
and package maintainers) has helped to ensure that most of the programs
that most people might want can be painlessly installed on Gentoo with
merely a few keystrokes.
Other distributions are easy too.
I think of Redhat as the distro you use if you don't want to learn
anything about Linux (OK, OK, and nearly every Linux app. has an rpm
available). For many people it is, or will be, their first distro.
And, not infrequently, their last. Getting hardware to work with Redhat
is probably the easiest because many of the hardware manufacturers that
release Linux drivers, only do so in the form of .rpm's. I think
Debian, on the other hand, must be for lazy people. I mean, look at
apt! It's like emerge only everything is precompiled. That's almost
too easy! Suse impressed me with Yast because I could do what I wanted
with only a slight shift from the Windows paradigm. Slackware... well,
Slackware is a beast. It was the first distro I ever attempted to
install, and I think it scarred me for life. I don't think I ever
actually got it up and running, though I haven't tried in many years.
The last time I looked at their website, though, it was little more than
a brief text file with links to .tgz's and .iso's. I'm sure it's an
awesome distribution, but I never got to see why first hand.
So aside from my experience with ancient versions of Slack, most of the
other major distros proved themselves to be easy to install and
configure once they came of age. Well, I haven't tried Slack in years
so I assume that it came of age also and is now easy too.
Linux is (often) easier than Windows.
Linux (well, all Unices I know of) come with scads of powerful tools
that Windows simply doesn't have. There are countless things that a
Linux user can do with just a few standard commands and some pipes that
a Windows guru would have to use commercial software and/or VB (or C) to
do. Many's the time I've moved every file of some Windows project to a
Linux box and back again just so that I'd have access to the Unix
tools. I am a bit of an odd duck, though, as I'd probably try to write
a bash script to brush my teeth if I thought I could.
Linux isn't having an easy time.
The only thing that is harder to do in the Linux world that in the
Windows world is to find commercial software and some driver support.
In the Windows world, you don't have to ask yourself "is this software
available for my OS?" In the Windows world, you buy the hardware first
and then check to see if it's compatible AFTER you start having trouble
getting it to work in your computer.
This is the only area in which Windows has the upper hand to Linux.
Unfortunately, it is the area over which we have the least control. It
is only as the user base grows that these problems will fade away. As
more people use Linux, more hardware manufacturers will support Linux,
and more prospective users will discover that they have compatible
hardware. As more businesses use Linux, more people will learn how to
use it on the job.
As businesses look for ways to cut costs, some will turn to Linux as an
obvious answer. One day there will be a big article in Fortune or The
Wallstreet Journal about a little nano-tech company that made it big.
And it will mention that one of the factors that helped them beat the
competition was that they saved scads of money by putting Linux on all
of their desktops. And people will read this article and they will be
paying attention. Koko and I are just sure of it.
--
gentoo-user@gentoo.org mailing list