7 |
The LA Fox Developer Newsletter
March 2000
One More Time (With Feeling)
by Steve Sawyer
President, Detroit Area Fox User Group
In the last
two
issues of DaNews, I’ve been discussing (okay,
complaining) about how much difficulty we can experience just
getting Microsoft’s operating systems installed, and keeping
them working through installation of various applications and
components. I’m not alone in my concern. Even the folks at
Microsoft appreciate the magnitude of the problem.
I received an E-mail from my friend Steven Black (Hi, Steve!)
who wrote to say that he thought my August editorial was “spot
on” as they say in the UK. He recommended that I read an
article that appeared in the August issue of Harper’s. I took his
advice and snagged a copy. The article is indeed highly worth
reading and turns out to be an excerpt from the author’s book
“The Dumbing Down of Programming”, which will be winging it’s
way to my door as soon as I remember to log onto
Amazon.com to order it. I’d cite the author's name and give
more specifics about the ISBN number and such, but I’ve
temporarily misplaced the photocopy I made of the article.
(Just think, if I’d gotten it electronically I wouldn’t have lost it!
<grrrr.>) I’ll have all the particulars at our next meeting for those
interested.
Anyway, this author compares the open architecture of Linux to
that of
her primary development platform, Windows NT/Worksta-
tion.
I remember back when I bought my first “modern era”
PC, and was trying to decide between the IBM-PC platform and
the Macintosh. I decided on the PC platform because of its
open architecture. I preferred a system where, if necessary, I
could lift the hood and turn a wrench on the sucker. (Never mind
that Mac- heads claim that this is not necessary with a Mac).
When we were still in the DOS world, it was very annoying to
have to constantly tweak all the entries in the AUTOEXEC.BAT
and CONFIG.SYS files to get everything working right. On the
other hand, you could, eventually, usually, get the dam thing up
and running. Each new piece of software had it’s potential for
forcing you back into the bowels of your configuration. However,
the configuration was contained in two ASCII text files, you had
an editor, and you could always fiddle and change load orders
and driver switches until it worked. In today’s environment, you
all too often come up against a brick wall where you’ve ex-
hausted most or all of your options.
In application development, too, we often hit the limitations of
the current architecture. You have an ActiveX control that
doesn’t work. Can you fix it? Not if you didn’t write it! Even if
you’ve created an ActiveX control in VB, you
can
still get stuck
in DLL Hell in which you have few options but to do a “Freeman”
on your machine, formatting the hard drive and re-installing
everything, and even then things may not work.
What Microsoft is trying to do is make things easy for program-
mers. Point. Click. Add this control. Set these properties.
Bingo! Yes, this is indeed “dumbing down” programming. A
unix system on the other hand does allow you access to the
innards of the operating system, and even provides the opportu-
nity to fix or modify the OS when necessary. The developer has
complete control over the entire process from the hardware to
the user interface.
It’s important to recognize, however, that there has been a
tradeoff in this process. We’ve lost a lot of control, yes. But let’s
consider what we’ve gained.
First, how many application developers are experienced,
competent “C” programmers? Not enough. The whole point of
high-level languages like VFP, VB, Delphi etc., are that you
can
accomplish in one line of code what might take hundreds of
lines in “C”. Even when working with Microsoft Foundation
Classes, programmers are initially much more productive with a
high-level language. RAD is as close to reality as it can get with
many high-level languages.
Second, when was the last time you had to crack a manual or
the on-line help file when working with an unfamiliar application?
In many cases, users will find that they can install the software,
and get something productive done within 20 minutes of playing
around with it. Compare this with the weeks of study required to
familiarize yourself with DOS-era apps like dBase, Lotus 1-2-3
or WordStar! I don’t think we can minimize the value of the
common user interface (regardless of your opinion asto how
good it is).
Back to programming, I know I don’t want to go back to DOS-
era Basic or Pascal where I had to write 200 lines of code to
create the equivalent of a VFP TextBox!
So we’re faced with a Really Big Question. Must we sacrifice
control for productivity in application development? Is this a Zero
Sum Game? I know I’m growing increasingly weary of being out
of control of my development environment, to say nothing of my
user’s and customer’s production environment.
So what do we have?
1)
An increasing desire on the part of developers to regain
control of the development environment.
2)
The oft-spoken lament by developers that “things are moving
too fast to keep up”.
3)
The increasing desperation by the business world to reduce
TCO.
4)
The Justice Department’s continued interest in Microsoft,
and continued speculation by many of the eventual forced
breakup of Microsoft.
5)
The increasing amount of trade-press column inches and IT
community mental shelf-space given to Linux.
6)
Current and projected economic costs (and, some would
have us believe, outright catastrophe) from the “millennium bug”.
7)
Ever-declining hardware costs, coupled with ever-increasing
broadband technologies
(Con’t, page 9)
Page 7
|
7 |