Written in July of 2001

  If you're a computer technology buff who keeps an eye on developments in
the field, especially someone who has been an enthusiast of the field for
several years, you're probably disgusted with the way things are turning out.
Everything is going all wrong, it seems. Everything that computers once stood
for, everything that once made them great and exciting, has faded away into a
blur of commercialism and ignorance.
  In this article, I intend to list some of the biggest problems. Sadly, this
is such a daunting task that it's hard to figure out where to begin. It would
be easier just to list what's still going right. But it's not hard to pick
out the one phenomenon that people complain most about, the one thing that
people love to hate and accuse as the perpetrator of all the computer world's
biggest problems. I speak, of course, of Bill & Co.: Microsoft, and more
specifically, Windows.
  Windows just keeps getting worse and worse. Far from benefiting yourself by
upgrading, you are taking a big risk every time you upgrade to a newer
version. You will find it takes up more disk space and RAM, and the most
absurd thing of all is that nothing will be different: Windows 98 did not
have any significant improvements over Windows 95, nor did Windows ME improve
significantly on 98.
  You already know all this. It has been repeated time and time again by
virtually everyone in the industry, and so it is rather fruitless to dwell
upon it again. Instead, let's take a trip back through time and look at the
history of Windows, and where it went wrong.
  Purists will say that there was no single point: Windows has been a messy,
bloated operating system from its very first version. And while this is true,
it is also worth noting that there was a point when Windows was at least
usable. It may not have been a terrifically stable OS, but it certainly
crashed less than Win9x does today. And--here is perhaps an even more
important point--it was understandable.
  Understandable in a technical sense, that is. In the early 1990s, in the
age of Windows 3.0 and 3.1, Windows could be mostly understood. A power user
could identify every single file that the OS came with (and it came with many
of them), and what that file's function was. Windows 3.x was an operating
system that a normal human being could really understand. Furthermore, it did
not do much "behind the scenes" work, at least not nearly as much as Win9x.
When Windows 3.x did something, you would probably know about it, because you
would have ordered the computer to do it yourself.
  Windows 95 changed all that. Windows 95 extended this trend by a large
degree. It would be inaccurate to say that it "began" the trend, for it had
already existed before. But Windows 95 did it in a way that was simply
infuriating. There were constantly little things going on inside your
computer which you did not know about. (Sudden, brief periods of hard disk
activity, even when nobody is using the computer, is a sure sign of this.)
Windows 95 began the movement to hide the computer from the user, protect the
user in a "shell" and keep them away from frightening things like swap file
usage or device IRQ configuration. ("Shell" is a very appropriate word. It is
indeed a word to mean a protective enclosure in which the user does not see
the technicality of the computer.)
  Microsoft, and people who actually side with Microsoft (and there are some
of those) will say that this is done to make the computer easier to use. The
end user does not want to know about silly technical things. The user is just
that: Someone who uses the computer, and wants to use it with a minimum of
complications. Yet the basic truth is that even a non-technical user could
get into Windows 3.1 and use it and its applications without many
complications. Maybe you had to change a FILES= or BUFFERS= line in your
CONFIG.SYS file; Maybe you had to edit your WIN.INI slightly. Big deal! Is
that so hard? The answer is no. Indeed, even a computer illiterate can use a
text editor. The main people who say that editing your startup files is "too
hard" are the people with a hidden agenda: The software company that wants to
convince you to buy their new operating system because it is more
  Windows 95 is an utterly impenetrable system. It is ludicrously opaque in
its background workings with things like VXD files and ActiveX controls,
things which even a very technical person would be hard-pressed to understand
at all, let alone create or modify with any success. The problem is further
inflamed by the software vendors' interests in concealing the workings of
their software. They don't WANT you to know how the software works. And so
documentation is trivial, lacking any depth, mostly on how to use the
software, rather than anything a techie would really want to know.
  Windows 95, to me, marked the beginning of the downward spiral of the
computer industry. Yet the year 1995 was also marked by another trend that
began to spell doom for anyone intelligent: The explosion in popularity of
the World Wide Web.
  Now, the Web had already been around for a few years, no doubt about that.
But hardly anyone had heard of it, and still fewer people really cared. But
when it began to be popular, it REALLY became popular. And while the
underlying concept of the Web (the ability to include pictures with the text,
and to have hyperlinks letting you jump from one point to another) was
useful, it wasn't long before the Web began to be misused. People began to
make elephantine, bloated websites which were laden with graphics that had
absolutely no function at all except to make the site more difficult to
navigate. The original intent of graphics on the Web, to illustrate a point
with a relevant chart or graph, became totally lost in the face of senseless
use of annoying background images, stupid Java "crapplets" which made a small
figure twich or wiggle, idiotic navigation schemes which were un-useful but
"cool", and a host of other ills. You could write a whole article on the
lameness of the Web alone. Many people have.
  But the problems in the computer industry extend beyond Windows and the
Web. (Although, to be sure, they are the two most prominent lunacies.)
Consider the development of the computer itself. Ever since the PC market
began, computers have gotten more powerful, in terms of hardware. Faster
processors, more RAM and hard disk space, faster modems, higher-resolution
graphics, etc. etc. And while the way a computer became obsolete in a matter
of months was annoying, it had a side effect that was actually very positive:
Computers were getting better. No matter how much people complained about
their almost-new computers already being outdated, the truth was that it
happened because computers were being IMPROVED. And with those improvements
came new horizons: More powerful software to run on that more powerful
  Fast-forward to today. As of this writing, computers are still being
improved dramatically, in a basic sense. CPUs are faster than ever before
(with speeds going well over 1 GHz), hard disks are massive
multi-dozen-gigabyte black holes, and whereas there was a time when 8 MB of
RAM was considered a lot, no computer today comes shipped with less than 64
MB (and commonly, 128 MB). In a sense, that's good, because it lets you do
more with your computer.
  Yet the foolish ignorance of the average computer user is revealed in the
focus on stupid aspects of the hardware which hardly make much difference.
"Overclocking" is lame. People try to make their processors run 50 or even
100 MHz faster, at the risk of damage to the processor and odd glitches
caused by a motherboard/BIOS trying to support a CPU running at a speed they
were not meant to accomodate. Do these people even realize how little benefit
they get from this?
  In a similar vein are the people who insist on buying computers with fast
CPUs and are very excited by getting a PC with 1 GHz+ CPU. Clearly, these
people don't understand something: Unless you are doing a lot of
number-crunching in spreadsheets or some such (and very, very few of these
"power users" are), a fast CPU gives almost no benefit at all. That's because
of the fundamental shift in where speed matters: The uprising of the Internet
has made your Internet connection's speed the most important factor for most
people. How fast you can download your leeto 0day warez matters more than how
fast your CPU is, because downloading a 400 MB file will go a lot faster on
a DSL/cable connection than a 56K dial-up connection, whereas once the
program is finally downloaded, it will probably run just fine on a 500 MHz
computer. Sure, you'll see some performance benefit on a gigahertz-level
computer, but less than you'd probably expect.
  This issue is further made true by the change in how games are programmed.
Games have always been the most power-hungry applications, demanding the most
modern hardware to run effectively. It used to be that your CPU had a direct
influence on how fast games (or any other program, for that matter) would
run. Yet games nowadays do not rely on the CPU for most of their
functionality. All (or very nearly all) games made today use DirectX, meaning
they use your video and audio hardware directly, leaving remarkably little
work for the CPU to do. If a game is running sluggishly, it's a 99% safe bet
that getting a better video card will produce a bigger benefit than getting
a faster CPU. (Unless your CPU is absurdly slow, as in below 200 MHz.) Your
video card largely sets the performance for your gaming. And yet people still
insist that CPU speed is significant and important and actually makes a big
difference in how games perform.
  Reality check: Virtually any program (game or otherwise) will run at an
acceptable level on a 400 MHz CPU.
  Yet even the misguided fascination with CPU speeds is less disturbing than
the other info-technology hardware trend that has been developing for some
time now: The move away from computers and towards silly little devices. Cell
phones, PDAs, and "Internet appliances" are increasingly the way people get
on the Net now.
  I don't think I even need to explain the lack of functionality in these
devices. You can't run real programs on them. You can't write real programs
on them. (By "real program", I mean a program which does not run in a
one-inch wide screen, but instead on a platform with a full-size keyboard
with all the letters of the alphabet.) Amazingly (or perhaps not so), these
"personal Internet devices" are actually replacing computers for many people.
It's sad, but it also proves something about people and how they use
technology: A lot of people don't really need the functionality of computers.
They just want to have e-mail. Indeed, many people bought computers
exclusively for the purpose of e-mail. And if that's all you want out of your
machine, I guess a PDA works just as well. (Well, not really, it's got a tiny
screen that's much harder to read, but it'll suffice, anyway.)
  "Internet appliances" are another big deal. There are actually two
definitions of this sad buzzword: 1. A device which is basically a
scaled-down computer, usable only for surfing the Web and checking e-mail but
without the functionality to run your own programs. 2. A household appliance
like a dishwasher or microwave with Internet access. Both of these
definitions are laughably pathetic. This kind of development alone, and the
fact that many people are actually choosing these types of devices INSTEAD of
getting a real computer, is proof enough that technology has gone lame.
Computers aren't "hip" anymore. They're old and boring. The cool thing now is
checking your e-mail on a park bench with your cell phone.
  The Internet has created a whole new paradigm in the way people think of
data storage and retrieval. You're no longer expected to store any of your
own data; It's "too much trouble". The days when PCs were supposed to be
personal are gone. Welcome to the wired world, baby. Here, you're not down
with the "in" crowd unless you pay somebody else to store your data for you.
This is the mentality behind ASPs and why they're so successful. Looking
after your own information is hard. If your computer gets a problem, you have
to fix it. Instead, the industry in general has opted to depend on somebody
else to store their stuff, and count on The Network to come through and
deliver their information when they need it.
  The connectedness of computers has directly led to shocking acts of wanton
stupidity from software developers, the likes of which could not have been
dreamed of a few years ago. Many software applications now require you to
register the program with the company before you can use it. Of course, this
is done through the Internet. The reason is simple and obvious: It cuts down
on piracy. Yet people without an Internet connection are left out in the cold
by this. Of course, the developers just assume that everybody has Internet
access by now, don't they? And of course they wouldn't mind taking just a
moment to register this fine program "to help keep the cost of software
  More outrageous still (and we're talking seriously outrageous at this
point) are programs which require you to download something before you can
use them. This point was truly driven home to me by Fly II, a flight
simulator from Terminal Reality. When you buy a software package off the
shelf, you expect to get a software program inside, on a piece of storage
media (usually a CD-ROM) which you can insert into your computer and install.
Not so with Fly II; This program actually requires you to download most of
the program off the Internet before you can play it. Clearly, the program was
rushed out the door before development was finished, and nobody thought
anything of it because the users could just go on the Net and download a
conveniently manageable 90 MB file in order to play the game. The assumption
that people have Internet access isn't even the worst part of this; It's the
fact that you are literally forced to download a file of almost a hundred
megabytes before you can play the game which you paid for with your own money
off the shelf of the store. When this kind of mentality is shown and accepted
from software companies, something has gone seriously wrong. Other programs
exhibit similar, although usually less severe, cases of the same thing, often
a "patch" to fix "minor" bugs which got shipped with the software.
  But the saddest thing of all has not been mentioned yet. The general public
has always been ignorant of technology. The average human has never really
had a big interest in (or understanding of) computers in the first place, and
these developments are just evolutions of that basic fact. The worst thing
about computing today is the way the tech-heads have turned out.
  Throughout history, the computer world has always had its defenders; People
who actually lent some intelligence to the field. "Hackers", as they called
themselves, and not the newspaper kind of "hacker", but real hackers who knew
what they were doing and did great things with computers.
  You've probably already heard about the difference between "hackers" and
"crackers". (If you haven't, perhaps you should not be reading this.) But
it's worth noting that even crackers were once good people, or at least could
be good people. Is there honor among thieves? Perhaps. But as to whether
there is honor among crackers, the answer is a resounding "Yes". There was an
unwritten cracker code in the 1980s to never damage any computer you broke
into, never do anything stupid or harmful, never harrass people or make
trouble for them. To be sure, plenty of people broke those rules, but they
were labeled as the worthless cretins they were and shunned by the rest of
the cracker community.
  Well, today, those rules are all but forgotten. Cracking, which used to be
about the discovery of secret information, has become mostly about DoS
attacks. The main focus is not to learn anything, but simply to harm. This is
partially because of an increase in security: More people are aware about the
importance of computer security than ever before, and tools like firewalls
are now commonly available, priced at a range that most people can reasonably
afford. The result is that cracking is much, much harder than it used to be.
So instead of trying to actually get into systems, script kiddies throw up
their hands and just decide to flood the system. How smart. 
  Moving on to the "real" hackers, they have not turned out much better. Once
the guardians of knowledge and wisdom, hackers today seem to have drastically
lowered their standards. Consider the trumpeting of Linux. Now, I'm not
denying that Linux is a more usable, hackable/customizable, and stable OS
than Microsoft Windows. But the masses of kids who think they're 31337
because they've installed Linux just scream ignorance. Most of those people
don't know the first thing about the OS they use, nor do they make any effort
to do so. Once they install it, they think they're great simply because they
don't run Windows. Reality check, kids: You still don't know anything.
  Furthermore, Linux is over-hyped. It's amazing how much media attention it
has gotten, and the lame part is that it's undeserved, because Linux is a toy
operating system. There is a more powerful operating system which, like
Linux, is based on Unix, but existed long before Linux ever did: BSD. BSD
comes in many variants, most popularly FreeBSD. But whichever variant you
get, BSD simply has a functionality that Linux doesn't. Among the truly
in-the-know computer people, the debate is FreeBSD vs. NetBSD vs. OpenBSD vs.
Solaris vs. BeOS (perhaps), and possibly several other systems as well. Among
those who think they know what they're talking about (but really don't), the
debate pretty much falls between Linux vs. Windows, or if you're a little
smarter, Red Hat vs. Slackware vs. Debian, etc. Linux is good, but it does
not deserve its hype. It is a perfect example of something which was never
meant to be taken seriously, but was anyway.
  What can you do when everybody seems to be charging in the wrong direction?
Considering that stupid people can rarely be reformed, it's tempting to just
leave them alone and sit in your own sphere of intelligence, but if you think
the problems don't affect you, you're wrong, because the public opinion
shapes what companies will produce. Products are marketed for the masses, not
for a small niche. And so, as people continue to think that surfing the Web
on a cell phone is better than using a real computer, or that CPU speed is
the most important spec of a computer system, or that Windows 2000 is a good
operating system because it's more stable than Win9x (a statement which is,
more than anything, damning with faint praise), you will be affected. So,
again, what can you do?
  I don't know. I don't claim to have any useful solutions for this. I'm just
saying what's wrong with the world. Call it whining if you like, because
that's mostly what it is, although my purpose is to identify problems, since
identifying them is the first step towards fixing them.
  In today's world, predicting the future is impossible. For thousands of
years, mankind has had a pretty stable existence, and predicting what the
world would be like in 50 years was fairly simple: Just say "It will be much
like it is today." There have been changes and revolutions in science,
politics, etc., but for the most part, things stayed pretty much the same.
Today, we live in an era totally unlike any other in the history of humanity.
It leaves us with no standard, no comparable historical event to compare it
to. Perhaps in 5 years people will stop being lame. Perhaps they will realize
that everything is wrong. Perhaps we will finally develop an operating system
that is both easy-to-use for the end user, and easy-to-hex-edit for the
  And then again, maybe we won't.