One of the few things in life more satisfying than saying “I Told You So” is being told not to say it. As a freelance software developer, Jeff finds himself in that position rather frequently. Most of the time, it’s with his friend and colleague, Frank, who is a part-owner of a small marketing firm.

Frank is a rather frugal fellow. He’s the type of guy that would travel across state lines just to avoid paying a $1.50 “foreign ATM” fee. Recently, Frank asked Jeff to give him an estimate on setting up a web server for his company and its clients.

“Really,” Frank asked as he stared down at Jeff’s quote, “it’s that much? That seems a bit high. I mean, that’s with the ‘friend discount’ and everything?”

“Yeah,” Jeff responded, “you can’t just go to Wal*Mart and pick up a $300 computer for this sort of thing. You need a reliable piece of equipment set up properly.”

“Geee, I don’t know,” Frank said hesitantly, “I’m just going to have to think about it.” Jeff knew exactly what that meant: Frank would spend the next month or so scrambling to either figure out how to do it himself, or find someone else who could do it for less. He just refused to believe that it could cost that much to set up a lousy server.

Jeff followed up with Frank a few weeks later to see how the web server project was coming along. “Oh that,” Frank replied, “actually, one of the partners found someone who could do it ‘on a budget’. He’s even helping us program some client websites as well.”

A month or so later, Jeff found out exactly what “on a budget” meant. The “vendor” that Frank had selected to set up their web server opted to house the machine offsite, in a “controlled” environment. Specifically, his apartment. While many people who set up servers in their home have a dedication location with a backup battery, this individual did not. He opted for the “beside the couch” placement with a coffee-table motif.

Jeff discovered all this after visiting the “data center” to figure out why the server was down. The vendor was out of town and was unable to reach it remotely. As it turned out, the vendor’s roommate accidently unplugged the server in order to plug in the vacuum cleaner.

Several weeks later, Jeff was having lunch with Frank and couldn’t resist asking about the off-site data center. “Well,” Frank started, embarrassingly, “there was another pretty serious outage last week.”

“Oh?” Jeff inquired.

“Err, the – uhhh, guy – apparently had a party at his place and, errrm, – well, one of his guests spilled beer on the server. We had to replace the motherboard.”

“Ouch,” relied Jeff, trying not to crack a smile, “but it’s all up and running now, eh?”

“Sort of,” Frank said, “we’re having a hard time getting him to do any of the programming tasks, though. Actually, that’s one thing I wanted to ask you about. How would you feel about taking over the server and the custom programming?”

Before Jeff could even respond, Frank snapped “ – and don’t even think of saying, ‘I Told You So’!”

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