And revenge is a dish best served cold. But we're not here to discuss adages; it's far worse than that. You see, Payback is the name of an application that Colin A. Bradley has the misfortune of maintaining. First, a look in to the database:

Unfortunately, there is no tblTable here. You had better just know what T_A in S_C_S_L is. And once you figure that out, don't forget to change it in no less than four places:

And for some icing, Colin explains a bit more ...

The code (before I got to it) contained numerous uses of "On Error Resume Next" in places where the errors really couldn't afford to go unhandled.

The database, as well as having everything cryptically named, has awkward repetition of data, fields that contain summary data, and tables that are no longer (or perhaps were never) used. Also, while most of the tables are in a SQL Server 2000 database, some reside in an Access .mdb file.

Perhaps worst of all, this application, whose purpose is to keep track of people, courses, sections of courses, payments, and the relationships between those entities, has no way to add, edit, or delete sections of courses! The users must edit the underlying database tables directly to add, delete, or make changes to a section of a course.

Also, the main intellectual force behind the design of this application was a supposedly seasoned veteran of a programmer.

[Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!