That's how I think when relatively complex programs I've written blow up (blow up = user term for job failing). I expect them to blow up during testing. The errors are then corrected and the code is also reviewed to determine how the error slipped by to begin with. If the programs work without any noticeable errors, the code review does not happen and there's a much greater likelihood of subtle errors slipping into production.
With most these student loans the government guarantees the lender will get their money back, even if the loan is defaulted. Thus, the proliferation of bad loans as there's no risk to the lender.
It was a long time ago, and I can't find anything to corroborate this on internet searches, but:
Didn't Borland attempt to charge for the use of a c runtime module? They attempted to profit from software developed using their c compiler. So, not only would they make money selling the compiler, but anyone that used programs written with their compiler would have to pay also.
Somewhere around that time, they lost the whole c compiler market, I think.
There was a similar catastrophe at Jewel osco stores many years ago. Nightly, items added to the store pos were merged back with the main item file at each store location. The format of the merged data was exactly the same as loading a new file, except the first statement would be /EDIT instead of /LOAD.
One of the programmers decided to eliminate some code by combining the two functions, with a switch to control whether /LOAD or /EDIT was used for the first statement.
There was a bug in the program, and the edits were sent down as loads.
A guy I knew, Barry, was the main operator that night. He started getting calls from the stores after around 10 of them had been reloaded with 5 or 6 items.
Barry said it was the first time he got to meet the president of the company that day.
This was back when phone lines were used to transmit data, and it took several hours just to transmit an item file. So, the store locations were out of business until the item file could be restored.
There was a similar catastrophe at Jewel osco stores many years ago. Nightly, items added to the store pos were merged back with the main item file at each store location. The format of the merged data was exactly the same as loading a new file, except the first statement would be /EDIT instead of /LOAD.
One of the programmers decided to eliminate some code by combining the two functions, with a switch to control whether /LOAD or /EDIT was used for the first statement.
There was a bug in the program, and the edits were sent down as loads.
A guy I knew, Barry, was the main operator that night. He started getting calls from the stores after around 10 of them had been reloaded with 5 or 6 items.
Barry said it was the first time he got to meet the president of the company that day.
- Argument positions are named, help text, validity checking, special values, etc are defined for each argument.
- Command arguments can be prompted within the editor (intellisense).
As400 commands can also be prompted and executed by a user, thus providing a common user interface for running jobs as well.
I've seen nothing like this in the PC world. The two issues the Keli language is trying to solve were addressed 30 years ago on the as400.