MV Development Approach

68 views
Skip to first unread message

Peter McMurray

unread,
Dec 3, 2017, 7:27:24 PM12/3/17
to Pick and MultiValue Databases
Hi
The XLR8 product details mad me wonder on the approach that people take today when writing code.
When I started coding, Fortran 1968, I flowcharted every step. Initially because one had to give the output to a lady who punched cards and then sent it to a computer centre that returned it maybe a week later. Then because in NEAT 3 Assembler it would take over 3 hours for a compile that could fail.
When I met PICK Reality 2.4D in 1976 I felt that I had died and gone to heaven. In the first ten minutes of the first class heaters overloaded the circuits, the machine crashed. I was putting my coat on to go home when the engineer breezed in, laughing no less - this was not an NCR re-action to a crash. He toggled a few switches and blow me down my screen hadn't even lost a character.
We started our own company with Stuart Evans, a Welsh expert with deep experience as a programmer and designer, my wife an accountant and myself an accountant come analyst/programmer who had already bitten the standardisation bullet  building a system generator in binary coded hex assembler..
Our first step was to design the development framework for what became known as 4GLs. Stuart blasted out pseudo code that I turned into working code to drive a switch operated engine. He also did a screen generator to use the AWA clever terminals that could run multi screens with foreground and background cursors etc. There were 17 forms in total that anyone could fill in to define everything from screen layouts and file layouts down to a decision table generator. At the final point a programmer could add user routines that are much like Excel macros as all the donkey work of data vet and file checking was done with the screen generator.
His stroke of brilliance was to state when it all worked "If it is that good it should be written in itself" a scary thought to reduce an 18" pile of paper to a few process definitions and a couple of dozen pages of code.
That style has worked over many platforms, not all MV, for 40 years. Stuart went his way in 1982. We moved to Tasmania with my wife doing the accounting development design and programming and myself cutting a new design suite initially to suit the non-paging PC systems of the day and subsequently moved up to R83, Open Architecture, U2 et al.
My approach is to understand the requirements by getting the owners' view and then asking the people in the office what they really do :-) 
I white-board the system and design the files and general input screens. Then I do the screens - remember at this point I have not cut any code. Next I do the user sub-routines, many screens will not require one as the data vet and file layouts are done by the system. Finally the Prints are done, the more general ones in Access/Recall, the dictionaries being already complete from the file design stage, and the specials - this part is often under-estimated time-wise by many but it is probably the most time consuming.
This is the only point where I can see Xlr8 adding to the system with its compile as you go. However I thought further as without flow charting one is normally doing that mentally as one keys in the code. In fact I often key in a broader outline with expansion notes as I go. Am I worried that maybe I have flicked a comma or semi-colon when I meant a colon at this stage or do I want my mental flow to continue.
I have just done a couple of dozen programs to transfer a system to Oracle using the lovely accuterm dual screen option. One screen to work in the other to show dictionaries,file layouts etc.. I could bring the two up and move them around my Microsoft screen as a unit. I wrote an initial template for the job and from then on it was concentrate on the subject detail. I certainly did not want a continuous compile interrupting my flow to tell me that rec := newFld,tab should be rec := newFld:tab  in fact now that I think it through a rolling compile would not catch that - a mistake I occasionally made.
Rolling compile and object interpretation, absolutely essential in F#, C# etc but worth spending about $US1000 per annum per client for MV - I feel not. Of course if you have not developed your own systems then maybe worth a look.
Reply all
Reply to author
Forward
0 new messages