by Dwayne Phillips
Sometimes the best thing to do is put your seat in a chair, your hands on the keyboard, and type in all the data manually instead of writing software to do it.
I experienced it at least half-a-dozen times in my 28 years in government:
We need to track our inventory. Due to reorganizations, we have ten separate inventory databases. We are hiring someone to write software that will merge all ten databases into one.
Guess what happened?
Several years of effort, several tens of millions of dollars spent, and the software that was supposed to fix our databases never worked.
Five years later, someone else attempted the same task. This time, however, it would work. Same result. Repeat.
Everyone had good intentions. Everyone was earnest. Everyone failed.
- Create a new, fresh, clean database.
- Print the contents of the ten old databases.
- Type all those contents into the new database.
Despite my urgings, and the urgings of others, no one ever attempted Plan B.
Writing software is not easy, especially if it is supposed to read old, poorly built databases. The odds are against the programmers no matter how smart, well meaning, and earnest they are.
Write less software
Others, more wise and well known than me, have given the same advice.