Re: An Immodest Proposal; Or, the Perfect Subfile Program



On Fri, 16 Dec 2005 19:55:47 GMT, "mike" <mike@xxxxxxxx> wrote:

>Chris,
>
>I am fascinated by your "Immodest Proposal". Prior to retiring, I
>commissioned my staff to develop an "application framework" with code
>generators that was very similar to your proposal.
>
>In our design, the screen I/O was also externalized into generated sub
>programs so that both green screen 5250 and GUI client server versions of
>the same program could exist with remote procedure calls. Your suggestion
>of an AJAX version is much better.

AJAX (Asynchronous Javascript and XML) makes HTML browsers behave
such that I'm actually willing to use them. Imagine a web page
with an input inhibited indicator.

>The other major difference was that our design was "mode-less" and depended
>on "optimistic locking" of data base records. By that I mean, there was
>only one program for display (read-only) and update. When users accessed
>a file the records were always read through a read only data path opened by
>a "get / get next" I/O sub-program. If they changed any records, they could
>press a "post" function key which would call a "put" sub-program. The put
>routine would first call a data validation subprogram, if all was ok, the
>put program would then re-read the records through an "open for update" data
>path. It would check for intervening updates by other users, and if none,
>would add or update as needed.


In phase I, the business logic is in the same job as the UI, so record
locking is adequate. Once we are serving multiple jobs, the
application has to handle it. Saving an image, and verifying the
record hasn't changed before updating is *much* better than putting
a flag in the record.


>I absolutely agree that all code that can be automatically generated from
>database meta-data should be and code should be only written once. Further
>the application design should be standardized in this kind of framework.

Hallelulah!

Chris
--
.