The Lone Coder Reflections for the Unsung Linux Saviours
by Ken O. Burtch
Business Shell: Critics say "I Don't Get It."
I never seem to start the projects I want to. I get great
ideas but then I can't find the libraries or development tools to make them
happen. So I get side tracked and spend years developing superior tools in
order to make superior products. But properly developing and testing the
tools takes years. It is not always clear whether a tool was worth effort.
Take, for example, my Pegasus Pascal. I owned an Apple IIgs,
the last of the Apple II line, a computer great multimedia technology that was
orphaned by John Sculley almost as soon as it was released. Stuck with my
Apple, I wanted to do some development but the only options were BASIC, C and
a rudimentary Pascal. So I first created Pegasus Pascal. Written in assembly
langauge, Pegasus Pascal was the most feature-rich language for the Apple IIgs:
an object-oriented langauge similar to Python (I had not heard of Python at
the time) with features taken from Ada, Turning and other powerful languages.
It took about two years to develop. Number of sales: less than 10. Nobody
was interested in powerful languages on a dead platform.
Unlike Pegasus Pascal, my Business Shell (BUSH) has taken four
years to develop, nearly twice as long as Pegasus Pascal. I don't like
wasting time so I was glad that the majority of email I get about BUSH is
positive and this tool has benefitted the Linux community. That makes me
sleep better at nights when I look at my specifications for other projects
I might have worked on instead.
It's impossible to please all people and despite the large
amount of positive email, there's been some criticism. The complaints fall
into to two categories, but they share one thing in common. These people
say "I don't get it."
The first complaint is from web developers using Perl, PHP,
Java and other tools. They say that their tools work good enough for them.
They don't see a reason to switch to BUSH.
Programmers may have ample brains but that don't have ample
time. Despite the claims of superiority by the various scripting languages,
their features are very similar...but their syntax is not. Programmers who've
spent months mastering Perl, PHP, Python or another language don't want to
waste their investment. These scripting languages are designed to lock
developers into non-standard, incompatible camps.
The second complaint is the inevitable rhetoric from Ada
fanatics. They've never even seen BUSH. They've never researched how much
effort I spent to make AdaScript compliant with Ada. And yet they say that to
develop a scripting language around ISO and GCC standard Ada is wrong. Ada
was not meant for scripting. These people also say, "I don't get it."
A definition for a fanatic is someone who redoubles his
efforts while losing sight of his goals. Ada fanatics brag about Ada's
features, structure and code reusability. But when they develop scripts or
web templates, they would abandon all of Ada's advantages in favour of an
error-prone, unresuable, non-scalable scripting langauge.
As Dr. Phil McGraw likes to say on his television show, "And
how's that workin' out for ya?"
Is using different languages for your core software,
scripting and web templates cutting your development time as you rewrite
algorithms from one syntax to another?
Is your reliance on scripting languages with poor error
checking and error prone syntax designs giving you more time off for
vacations?
Is relying on an isolated web platform better than having
one that can be compiled by GCC, moved onto the JVM with JGNAT or transferred
to .Net with A# to meet client demands without extensive rewriting?
Studies like Peter F. Zeigler would suggest the development
in AdaScript and Ada could result in a order of magnitude reduction in bugs
and 50% or more reduction in development time over today's popular tools.
Still don't get it? Then I can't help you.
I'm a Linux programmer. My brains are infinite but my time is limited. I
can't afford to waste it.
« Truth Humility Communication Nobility Freedom Purity
Excellence Right Support Courage Compassion Quality Honesty Trust
Cooperation Challenge Education »
PegaSoft Canada - A Linux Association Since 1994