War story: A client Whose Name Must Not Be Spoken hired me to “fix a few little things” on an application that was used as a transient and trivial application — on 28,000 in-house desktops in ~100 countries. The language was one they were not familiar with – VFP. The database (it was a centralized C/S app, running over their WAN) was one they were not familiar with. They hired a company that offered the application they wanted on a different database and paid them to write a custom version that ran against what was their database of choice at that time. This turned out to be the only app ever deployed in the company against that database backend. The database server was HUGE. The company that wrote the app was out of business. The “source code” they had (after legal pursuits) was a single CD with all of the files in the root: a half dozen projects named test1, test2, etc. and the worst code I have witnessed in nearly 30 years of software development. This app started in dBASE II and was moved without conversion all the way up to VFP 5. The client-server implementation was awful beyond imagining. Every connection setting which could be set wrong, was. Saving a record involved a half-dozen TableUpdates() without checking the return result, followed by a delete, followed by a tableupdate, followed by an insert. That this system ran at all was a tribute to how badly you could write code.
|