> -----Original Message-----
> From: Robert C. Leif, Ph.D. [mailto:[log in to unmask]]
> Sent: Thursday, August 17, 2000 12:48 AM
> To: [log in to unmask]
> Subject: Market for Commercial Software in Ada; Was RE: Venting
> From: Bob Leif
> To: Chris Sparks et al.
> I wish to echo Chris' frustration with present commercial
> software. A few days usage and associated frustration with
> these unreliable, poorly designed products should be
> sufficient for all but the dullest to realize that there is a
> market for reliable, well designed commercial software.

I hate to be a wet blanket, but the frustrations of software
engineers with poorly engineered software are NOT TYPICAL of
the current market for most packaged software or software
for the commerial market.  Unless one recognizes this, it
is bound to lead to wasted resources.

Software directed toward the mass market is sold based on
(often misleading) advertising.  What sells products is the
promise of new features or functionallity.  Typically, nothing
is said about reliability.  Reliability is something the buyer
only discovers after paying their money.  Because it takes
time to learn how to use the software beyond tutorials and simple
uses, the buyer generally doesn't discover it's faults until
well after the product can be returned for a refund.

In addition, most users restart their computers and
applications often enough that the effects of memory corruption
are minimized.  Most users, who don't understand that reliable
software is possible, believe that periodic "crashes" are
something they have to "live with".

Most commercial software users are "price sensitive."  Given
a choice between two products that deliver the "same"
functionallity but one "promises" higher reliability for a
higher price, IMO most will choose the cheaper product.
Given a choice between buying a product with features
available today and the promise that a more reliable
competing product will be available in the future, IMO most
will purchase the product today rather than wait.

> What has been lacking is the entrepreneurial spirit in the
> Ada community.

IMO, the above statement is inaccurate and ignores to those
entreprenours in the Ada community who have succeeded.  Most
individuals in the Ada community are working full-time on
projects to deliver reliable software to those who demand it.
Most have little or no time for "entrepreneurial" ventures.
Most have financial committments that don't allow the level of
risk associated with developing and marketing a commercial
software product.

> If we make one commercial success, we can
> be both very well compensated and perform the great service of
> demonstrating the commercial utility of software engineering
> combined with Ada. We now have a moment of opportunity.
> Please see, "SIGAda 99, Workshop: How do We Expedite the
> Commercial Use of Ada?" Ada Letters XX pp 19-26 (2000). Since
> equitable, cooperative, distributed software development in
> Ada is possible, we have both a technological and a business
> advantage.

While I can't agree with Robert's implication that "one commercial
success" will make all of us rich, I agree with the overall
assessment in his article, above, that the Ada industry today is
in a better position to succeed than before.  I applaud his
efforts to get more individual's thinking about commercial

> As for browsers, rewriting either Netscape or Internet
> Explorer in their present form would be a mistake. However,
> the creation of a well engineered environment in Ada that
> included: a XML rendering system, a Window manager, and a
> combined internal-external file manager could be a killer
> application.  It should also a very significant part of an
> operating system written in Ada.
> The replacement of the present Windows GUI by XML including
> vector graphics would provide a programming language and
> operating system independent rendering system. It would also
> provide a means to create a combined screen and printer
> driver class, which could be specialized for each type of hardware.
> The Window manager should be based on Ada protected types and
> tasks - not call-backs. I believe that Microsoft used the
> word Explorer for both its browser and file manager because
> of the obvious necessity to eventually
> combine the two.
> There has to be a layer that interfaces to both the Web and
> the present file system. Applications should be able to
> address files both on the local disc drives and on the web.
> The syntax for the user should make the web and the local
> computer look like a continuum. The Ada POSIX binding might
> be a reasonable place to start. The human interfaces to
> software that runs locally and client-server software should
> be essentially identical.

Rush Kester
charter member Team-Ada