Stephen, it is good to think aloud and hear the consensus (or lack of
it) among the APL community. In my mind, I have no doubt whatsoever
that APL by itself is not enough; this is not to say that APL is not
an all inclusive development environment but to stress that forcing
the APL way does not win any favours from project sponsors. Besides, a
number of things are far easier with tools other than APL.
Rapid delivery (hallmark of APL bigots) is not always welcome; it
denies the sponsors of projects several op****tunities. They pay for
the projects so it is wise to heed their needs. Besides, to put it
graphically, a ratio of 9:1 of the genders of the human species does
not produce an offspring in a single month. If you do not undertand
this, a football match is expected to last at least 90 minutes -- if
not, everyone involved will feel deprived.
I have a theory about the success or lack of success of APL.
All contem****ary {maintream} projects have (1) a functional
specification that describes an application, how it behaves, and what
it delivers (2) a non-functional specification that describes
requirements beyond the application itself.
A simple example:
- the functional specification may require that the data tier uses a
database and that the database used may be, say, Oracle, or SQL Server
or MS Access, at the clients discretion.
- the non-functional specification may require that the application
uses, in descending order of preference, native clients if available,
OLE DB providers or ODBC drivers. It also rewquires that the
application reads the registry of a remote computer on the network to
establish the connection properties.
A typical APL reaction is "you do not need all this", this is "how you
do it" (I can use component files to do this faster!). No!
How does APL deliver the data tier requirement: does it use SQL Link,
APL Link, or []SQL or does it use what the industry uses and
understands, i.e. ADO? How does APL read the registry of a remote PC?
I strongly believe that APL needs to pay greater attention to non-
functional requirement in order to gain credibility. In order to so
successfully, APL developers need to demonstrate greater recognition
of co-existing technologies with much greater enthusiam.
APL, any variety, itself is robust: its high priests are not on the
right wavelength to get the message!


|