You know how it is. As software developers we all know how dodgy software can be. There’s always the registry setting containing the admin password (yes, I’ve see this, but not at Beca), the hard-coded string required to get a particular component to work (seen that too), the thing that Allen does every morning to keep the web servers going (he used to run a batch file, bless his heart). I discovered another one of these today when diagnosing a problem in one of our vital systems.

It all began with company 69. The companies at Beca each have a unique number and it just so happened that company 69’s projects were not appearing in a system whose name I will not mention. Now, when I inherited the system, the previous developer handed me the developer’s equivalent of a piece of twine and a stick of bubble gum, slapped me on the back and said “good luck mate”. Ok, I exaggerate; I think I have some extra gum here somewhere.

The system gets its list of projects from a text file (yes, a text file). This, I discovered today, is generated using a DTS package. This DTS package relies (among other things) on a table sitting passively in a database.

What updates the table, you ask? Well, it turns out the table is updated manually. Using his spider senseâ„¢, the previous developer would figure that it was time to update the table and get it updated using a manual script. On inspection, the script used is an INSERT INTO … VALUES statement. Yup.