As a Business Humorist, I Have Clearly Picked the Wrong Genre for Success


As an author, I was curious about the exact numbers of independent titles in certain genres. So, after scraping some eBook metadata from Amazon and Barnes & Noble, I compiled some interesting figures which reflect the trends of self-publishing over the last few months. Needless to say, I’m not exactly hopeful for my career as a professional raconteur. If there’s any correlation between the number of titles and general public interest, I think that my literary future might be in trouble if my subsequent title doesn’t mention blowing something other than a bridge. Consequently, my next book will be about incestual Amish centaurs who are lusty billionaires.

Peter Bolton is the author of Blowing the Bridge: A Software Story and has also been known to be a grumpy bastard on occasion.

Cubicle After Hours: Carnal Code and Sultry Script

(Warning: The following is sophomoric tripe that floats around the head of a professional man who should be more mature, but unfortunately, he is not. Discretion is advised. Now put on your best socks…because it’s business time.)

1.) if (open(pants) == CONST_GREENLIGHT) { wang = malloc(full_length); }
2.) bind(partner, &hands, sizeof(hands));

if (listen(partner, backlog) == CONST_SAFEWORD) { exit(CONST_BREAK_FROM_SPANKING); }

3.) less talk | more head
color: #696969;

5.) touch /etc/girlfriend &2 > /etc/pink &1 > /etc/stink
6.) Girl oGirlfriend = new Girl();
String strYourPackage = “pride”;

if (( && (strYourPackage.length() < 6))
oGirlfriend.chuckle(); deflater = new;


7.) function watchJapanesePorn()
$(“”).hover(function() {


8.) Woman oGirlInChangingRoom = new Woman();
Stack oPeepingTom = new Stack();


Police oCop = new Police();

List oBigCellmate = new List();

Peter Bolton is the author of Blowing the Bridge: A Software Story and has also been known to be a grumpy bastard on occasion.

Good Developer Idea, Bad Developer Idea

Good Developer Idea: As part of the open culture at a struggling SaaS startup, you give a developer the admin rights to your build and deployment servers.
Bad Developer Idea: You forget to eventually take those rights away when you go into production, and when the Feds come to raid your offices, you learn that the developer has used your servers to host a “Man Seeking Horse” dating site. (Even after you elaborate on how horses can’t use computers, the developer still stands by his idea.)

Good Developer Idea: Create a library that has reusable, generic code for your group.
Bad Developer Idea: Let the least-qualified lunatic in your group take ownership of it and ruin its whole purpose. “So, with the latest changes, you pass your name into the class constructor (like “John”), and the class executes only your code instead of the code that was written by you or Bob. See? It’s shared and reusable. Now leave me alone to snort my lines of molly.”

Good Developer Idea: Writing to log files from your UNIX program or script.
Bad Developer Idea: Porting that program or script to Windows and still writing large log files in the years B.C. (Before Cygwin). On the plus side, when you opened a 100MB+ file, you gained another hour of personal downtime for yourself.

Good Developer Idea: In order to demonstrate a particular method or style, share a project with one of your junior developers/admins and let them use it as a template.
Bad Developer Idea: Forget to stress that the variables in the configuration file are not supposed to stay the same. “Thanks for letting me use your project. Look! My new project ‘PurgeTableData’ works! What did you say about database properties in the config file? More importantly, what’s a config file?”

Good Developer Idea: In the face of a new project being discussed, you argue against the suggestion of an off-the-shelf proprietary technology that doesn’t really fit your company’s needs.
Bad Developer Idea: Even though you may be right, they press you for an alternative, and you don’t have one. Consequently, you are forever known as ‘the whiny bitch’ among your peers, and they force you to wear a burqa in the office as a reminder.

Good Developer Idea: When attempting to find a new candidate for your development team, encourage other developers to be a part of the hiring process and to provide input.
Bad Developer Idea: Not using discretion as to which developers that you encourage. “Okay, so I would eliminate the first guy, since he puts the opening bracket on the same line as the function declaration. Only idiots do that. And the chick…well…we know chicks can’t code. So that leaves the weird guy who carries around his dead, taxidermied daughter. Now that guy can code! I would pick him.”

Good Developer Idea: Working with management, you help to eliminate the method of stack ranking your fellow employees, ensuring that each one is evaluated on individual merit.
Bad Developer Idea: You forget to take into account that they are all essentially worthless, and based on the new system, they are all fired. In turn, they find out where you live, and they burn your house down.

Good Developer Idea: While at Scrum meetings in the company conference room, you use the whiteboard to create a visual map of the next iteration in your project.
Bad Developer Idea: In order to make room, you clear the current board in haste, and without thinking about it, you erase the cartoonish doodle in the corner of the board. When the CEO and his 6-year-old come to the conference room later (so that the kid can proudly show the doodle), the kid erupts with tears. In order to make amends, for the rest of your life, you must now give the kid and the CEO a piggyback ride whenever the both of them are in the office together.

Peter Bolton is the author of Blowing the Bridge: A Software Story and has also been known to be a grumpy bastard on occasion.

Fun Ways to Repurpose Web Tools

1.) Convince investors from a third-world country that a mashup of MailHooks and RequestBin is going to replace texting in the near future.

2.) Start to create JSFiddle examples as substitutes for your blog posts and convince hipsters that “they need to catch up”.

3.) If you own a company, use Mirrorrr to pull down and create an exact replica of your competitor’s site, except for the added endorsement of NAMBLA on every page.

4.) When that asshat down the hall wants to “inspect” (a.k.a., “copy”) your code yet again, be sure to be a team player and give it to him…just be sure to run it through UrlEncode right before you do. If he asks you about it, tell him that you’re “l33t” and that’s how you code.

5.) Recommend HostTracker to your less tech-savvy relatives, telling them that it will protect their Facebook page like a junkyard dog and will call the cops on anyone who unfriends them.

6.) Install Fiddler onto the computer of your boss without him being aware. One day, launch it and proceed to convince him that it’s a monitoring tool planted onto his machine by the NSA. If he just gives you $20K, a gun, free hardware, and 2 months of vacation, you’ll be able and willing to put a stop to it.

7.) Play pranks on friends, asking them to help debug HTTP Posts which come to your web site. Using MailHooks, make sure that any Post ends up calling emergency services, so that your friends end up swatting themselves.

8.) Reroute your network configuration so that all addresses point to Necrohost.

Peter Bolton is the author of Blowing the Bridge: A Software Story and has also been known to be a grumpy bastard on occasion.

Data Armageddon: When Users Define the Schema

Some people are advocates for the extended participation of stakeholders when it comes to implementation, but I would advise caution against that. Why do I say so? Because like some others, I’ve seen the results…

Let’s say that your company has a plan to eliminate the redundancy of existing data in several departments, by creating one schema which is to be shared among the many. After several weeks of collaborating in a state of perpetual confusion, the stakeholders of your project have met on their own without you (despite your repeated warnings of violence towards them). Together, they have stupidly consolidated their tables of sewage and finalized the schema for one massive failure that they plan to share:

Product Table

Column Name Type Example Description Notes
Product ID long 123456 The ID of the product.
Name string WidgetPlus The name of the product.
Manu_Name varchar(1024) Acme, Inc. The manufacturer of the product.
Manu_Name_Inv varchar(1024) Inc., Acme The manufacturer of the product, with its name inverted. Bob requested this column, since his group has a bunch of COBOL programs that nobody knows how to change.
Manu_Name_Bck varchar(1024) .cnI, emcA The manufacturer of the product, with its name backwards. Due to a medical condition, Steve can only read the names of companies if they’re backwards.
Product_Type varchar(256) WIDGET The type of the product.
Product_Type_2 varchar(256) WIDGET The type of the product…again. Nobody knows why it’s needed, but if it’s not there, all the legacy systems in the inventory group will implode into a massive black hole and consume us.
US_Price currency 3.99 The price of the product.
All_Prices clob (Huge XML file) The price of the product in every available currency. The finance department needs this list of prices. The values will be static, which probably won’t be a problem. Exchange rates don’t change, right?
Misc blob (Random data) A dumping ground for extra data. If anybody needs extra space to put shit, just spread your cheeks and plop it here. What could go wrong?

Peter Bolton is the author of Blowing the Bridge: A Software Story and has also been known to be a grumpy bastard on occasion.