The Bob Procedure – The Daily WTF

Date:

Share:

Joe recently worked on a financial system for processing loans. Like many such applications, it started its life many, many years ago. It began as an Oracle Forms application in the 90s. By the late 2000s, Oracle was trying to push people away from forms into their newer tools, like Oracle ApEx (Application Express), but this had the result of pushing people out of Oracle’s ecosystem and onto their own web stacks.

The application Joe was working on was exactly that. Now, no one was going to migrate off of an Oracle database, especially because 90% of their business logic was wired together out of PL/SQL packages. But they did start using Java for developing their UI, and then at some other point, started using Liquibase for helping them maintain and manage their schema.

The thing about a three decade old application is that it often collects a lot of kruft. For example, this procedure:

CREATE OR REPLACE PROCEDURE BOB(p_str IN VARCHAR2) 
AS 
BEGIN 
   dbms_output.put_line(p_str);
END;

Bob here is just a wrapper around a basic print statement. Presumably, the original developer- I’m gonna go out on a limb and guess that dev was also named Bob- wanted a convenient debugging function while tracking down an error, and threw this into the codebase.

As WTFs go, the function isn’t that interesting. But you know what is interesting? Its legacy. This procedure is older than any source control history the company has, which means it’s been in the codebase for at least twenty years, but probably much longer. Nothing invokes it. It’s survived a migration into SVN then into Git, countless database upgrades, a few (unfortunate) disaster recovery events, and still sits there, waiting to help Bob debug a problem in the database.

Joe writes:

I still don’t know who Bob is. Nobody knew who Bob was when I asked around. But Bob, if you’re still out there, just know that you are now cemented into a part of the software that hundreds of companies used to manage loans.

[Advertisement] Plan Your .NET 9 Migration with Confidence
Your journey to .NET 9 is more than just one decision.Avoid migration migraines with the advice in this free guide. Download Free Guide Now!

Source link

Subscribe to our magazine

━ more like this

Postcards & Emails – PostSecret

—–Email—–—–Frank@PostSecret.com—– Dear Frank, Last week you were speaking in Portland, Oregon.  I walked in a little late to a very crowded room. You said a few...

How Anna Wintour’s Vogue front covers made a statement to the end | Anna Wintour

During her 37-year tenure as editor-in-chief of American Vogue, Anna Wintour has presided over more than 400 covers. December 2025’s, on newsstands this week,...

Painted by Esther’s Journey From Art School to Hollywood

While each product featured is independently selected by our editors, we may include paid promotion. If you buy something through our links, we may...

Beware These Black Friday Shopping Scams

Holiday shopping season is ripe for scammers, as...

‘We stayed in a 500-year-old palazzo for €100’: readers’ favourite historic places to stay in Europe | Hotels

An opulent stay in VeniceMy husband and I stayed in a beautiful 500-year-old Venetian palazzo for just €100 for a double room. The exterior...