Dear John, (01)
By "do it right" I mean no more, no less, than the ability to apply the
practices that one might find in any mature engineering discipline and the
assurance that in doing so I can meet a baseline of competence and that I might
excel by my own efforts. And, in particular, that I will not fail in my
engineering goals because of a dependence upon the practices of other engineers
in any related corporation or industry. (02)
For example, it seems to me to be a baseline requirement in software
engineering to have one simple formal goal: That is the assurance that in
writing an application the program and any data representation will be
translated correctly to the machine; not only in the first instance but on any
machine for which it may be translated in the future, that the tools I may use
can assure me of this fact by some simple demonstration (formal proof).
Further, that in doing so I am assured of precisely the same behavior and no
side effects within or without the program. (03)
Pragmatically, it also seems to be a requirement for a mature industry to be
able to specify and be assured that any such translation also met certain
minimum performance criteria and to be able to indefinitely preserve both the
program and its dependencies. (04)
More optimistically I would add the need to be able to readily transform a
program from any one language into another for execution upon a standardized
general purpose machine architecture. (05)
I'll allow that there may be variation in the quality of engineering above this
base level and I do not mean to imply that innovation in computing platforms,
technologies and methods should stop - only that we are missing a foundation
for an industry. (06)
This is what I mean by "do it right." (07)
It is impossible to develop incrementally future best practices and
refinements, at any level, of any sustainable worth unless there is a maturity
of this kind at least in the foundations of computer engineering. (08)
I doubt there is a software engineering platform today, in active development,
that meets this criteria. To do it right today I have to pretty much rebuild
everything. The cost to "do it right" is only going to increase over time and
we face perpetual degeneration, repeated costs, lack of reliability and
security without this maturity. (09)
Honestly, as prohibitive as it may seem, is not that hard to fix today given
our experience - what we lack is long term vision. (010)
I am against diversity, heterogeneity, and interoperability if it means - as
excuse - that things get to stay as they are. (011)
Best,
Steven (012)
--
Steven Ericsson-Zenith
Institute for Advanced Science & Engineering
http://iase.info (013)
On Feb 15, 2013, at 8:15 PM, John F Sowa <sowa@xxxxxxxxxxx> wrote: (014)
> All those points require a lot of qualification. By "do it right"
> do you mean using today's "best practices" or waiting until a new
> set of best practices come along tomorrow?
>
> I like the three goals of diversity, heterogeneity, and interoperability
> that Tim Berners-Lee emphasized in 2000. That strategy would allow
> legacy systems to continue running while the developers upgrade them
> by incremental changes. It would also allow today's "best practices"
> to be replaced by incremental changes in the future. (015)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J (016)
|