Editor’s Note: This is the first installment in a periodic series ENP regular Deann Corum will be writing on about her experiences moving from a Windows-centric environment to a new job with an emphasis on Linux.
This crusty old curmudgeon started
futzing with computers in the 1980s, way back in the days of 5.25″
floppies, DOS and DOS batch files. When I started messing with
personal computers, it was because someone walked up and took away
the typewriter I used as a secretary and replaced it with a Radio
Shack TRS-80 (aka ‘Trash-80’) Model III. It had two 5.25″ floppy drives.
It was the latest technology and no one in the office knew how to use
the thing including me. So, I set about learning what made the thing
tick, learning first to install and use the software that was necessary to do my
typing and other work, then how the operating system (TRSDOS) and floppy
drives worked. I was eventually the only one in the office who had a clue how to operate the machine
and I trained others. Being the opportunist I am, I put this experience on my resumé. The next job
involved even more computer work, including an old DEC PDP 11 and
the humongous disk packs it used. They held 67-256MB of data, I
believe, which was a lot at the time. We also had a few IBM Personal
Computers in the office – again with some DOS-based word processing programs and a couple of floppy drives.
This experience also ended up on my resume.
Oh You Pretty Things – Came the GUI
Until the early 90s when Windows 3.0, Windows 3.1 and Windows NT 3.1 came out, that was how life was: floppies,
various flavors of DOS and DOS batch files, cryptic diagnostic beeps and messages on a CRT
screen was all we had to diagnose any problems that cropped up in the
software, operating system or hardware. I had one
more job as a ‘secretary’ before getting a job whose title better
matched the type of work I was actually doing – and was most
interested in doing. Windows NT 3.5 and Windows NT 3.51 came out in 1994 and 1995,
respectively. But Windows was still very much just a colorful face
slapped on top of DOS and did as much to thwart and obfuscate its
usefulness as anything else. In addition to having to know what
DOS, the dodgy “network” (i.e.: workgroup) protocols, and the
applications and hardware were doing, we also had to know what the
hairball we’ve not-so-lovingly come to know as Windows was doing in
front of it all. I eventually got a job with a technical title at a printer
manufacturer, then a medical software company. Somewhere around this time was the beginning of that huge
‘Internet’ era when TCP/IP would become so important to the world
outside of academia and government. It’s hard to imagine that even
when Windows NT 4.0 came out in 1996, TCP/IP still wasn’t even
installed as a networking protocol by default. It had to be installed
separately, and it was a pain in the keister. I won’t say what I
really thought of that omission or that installation routine.
They won’t let me publish that here. Since then, I’ve had a few more jobs doing Windows-based server,
application, and network support. I managed to avoid Windows 98 and jump straight to Windows XP,
Windows 2000 and Windows 2003 which finally have TCP/IP built in, but the network
fist-fights with workgroup-based NETBIOS and WINS servers still exist if you’re
unfortunate enough to have Windows NT 4.0 and Windows 9x clients around.
Out of geeky curiosity and due to ongoing animosity between Windows and Unix camps in some of the
high-tech companies I’d worked at (Who’da thunk it?), I
got my hands on a Linux distribution about ten years ago and decided
to install it on one of my three or so systems at home. This was
Slackware and it was about as much fun as installing TCP/IP on a
Windows NT 4.0 system. I continued playing with various
distributions and around 1996, I got the opportunity to learn a
little bit of Solaris, futzed around with NIS, rlogin, jump-start,
Unix-based print servers and a few other things that were
Unix-related. But I got rebellious and set up a sorely needed Windows-based print
and DHCP server that serviced some of the Unix clients in our
department. Those experiences were enough to keep me interested and curious about Unix.
I’ve installed a various flavors of Linux more times than I care to admit and Solaris a few
times as well. Red Hat and Solaris have since made their installations
fairly painless. I have a hosting server that now runs Debian and
used to run FC2. I had installed and configured the operating
system, services, and applications myself for a few years, but
eventually moved to a managed service to save myself the trouble.
The Pretty Things Are Going to Hell
In Charlie Schluting’s recent piece on
Windows vs Linux/Unix server operating systems, he asks: “For
beginners, Windows makes it possible. Should beginners really run
your servers though?”
Because Window makes it possible, the answer to that question can be a resounding ‘yes’ for very small
shops or family-run business without the funds for a highly experienced system administrator where one person must serve
multiple functions, a system administrator being only one of them.
However, that capability also suggests that anyone who uses or supports Windows as a server or desktop operating system
must be a beginner who doesn’t understand the technology behind the GUI. But that’s not the case with Windows any more
than it is with Unix. Certainly there are some beginner-level Unix/Linux system administrators out there as well. I’ll bet a few of
them are even working in some of those small or family-owned businesses, particularly now that many Unix-based operating system
installations have become much easier.
Most Windows system administrators I know are highly experienced and very much understand the technology
behind the point-and-click interface. Many of them have been around
as long as I have and they still must know the underlying
technology in order to know where to look first when there’s a problem. On
top of that they have to determine how Microsoft, specifically,
handles those technologies. Sometimes that’s possible and others it isn’t, leaving the administrator
with having to devise ways to get the operating system to work with those
technologies or vice-versa. However in the past three weeks in my new role, I’ve seen Unix system
administrators have to do the same thing (they’re called shell
scripts) in order to customize an application to work as needed.
Because of the GUI, Windows servers can be more efficient because they’re easier to configure.
That doesn’t mean they always are. There are often fewer separate services to configure due to the bundled
and proprietary nature of the Windows OS. Setting up a new system, service, or application in Unix often involves at least
several lines of cryptic commands at the prompt, then modification of one or a slew of .conf or other files, and/or
custom-written shell or other types of scripts. With Unix, the necessity for this as well as the ability to do it, are
both an obstacle to “newbies”, and a boon to those with experience.
While Windows is an opaque operating system which causes untold frustration
when what it does “behind the scenes” isn’t evident much less pretty–
with Unix everything save the network interfaces themselves, is pretty much a file. Windows system
administrators can spend as much or more time picking through that hairball
trying to find out what Windows is doing “back there” when there are problems,
as they save with the convenient point-and-click GUI when there aren’t. I’ve been there. It was
You Got To Have A Job
For Windows and Unix system administrators, employers generally hire us because of the experience we have with that operating system and the underlying
technology, rather than our lack of it. While a GUI makes Windows easier for someone who’s inexperienced, that
doesn’t automatically mean that anyone who uses it IS inexperienced. Conversely, anyone who uses or supports Unix isn’t necessarily
an experienced guru, though I’ve seen people almost come to blows over this never-ending debate.
I’ve never thought Windows is somehow “better” than Unix or vice-versa. When an
organization chooses to use one instead of or in addition to the
other can depend on application requirements, what type
of legacy systems and users must be supported, the experience of those who will be tasked with administering the systems,
security and performance, and the preference to support open source operating systems and applications. I have
often gotten better support with open source software (it’s called Google) than I’ve gotten with Microsoft. I had
to pay for Microsoft’s support and sometimes never found out exactly what the problem really was. I find that
bothersome, to say the least.
Personally, I’m looking forward to life sans GUI for a few more reasons: the fact that Unix-based operating
systems don’t evolve as quickly (save Fedora Core) as Windows-based OS’s do, so I’ll have time to become much
more knowledgeable about the services involved and be able to use them longer before they’re totally obsolete;
the fact that while Unix involves more time at a command prompt, it’s bound to be simpler than trying to poke through
a proprietary GUI to find out what’s going on when there’s a problem; the fact that if I were to become
certified on Linux or Unix, my certification is less likely to become obsolete so quickly;
and finally not least, the opportunity to support open source applications and operating systems rather than proprietary ones.
We’ll see if I still feel the same way in a few weeks when I write Part II…