Girl Coder Empowerment to the Nth Power



In order to address the gender gap within software development, Google has decided to take a step towards building a bridge, by establishing new programs that hope to create more of a balance. In doing so, Google has inspired other companies to follow suit. Seeking to avoid being regarded as less progressive than Google, these companies have created their own programs to bolster the roster of female programmers around the globe:

—–

Walmart : As one of the world’s premier retailer of consumer goods, the company has closely followed the emerging IoT (Internet of Things) movement. In order to fuse their conservative consumer base with some of the company’s more progressive goals, they’ve initiated the Homemaker Einstein education program. Here, cash awards and national recognition will be awarded to the winner of various challenges. Which lady will program their kitchen, so that the oven and toaster synchronize their work in perfect harmony? Or which wife will reprogram the house’s alarm system, so that it can alert her when she’s nagging her husband? Stay tuned to find out.

Hooters : Obviously, with over 75% of its staff being comprised of women, Hooters would naturally be the foremost company when it comes to female empowerment. As management explains, they deal with many technological issues, and they don’t see why their own employees can’t be educated in programming and then be the source of a solution. “For example,” explains CEO Terrance Marks, “We have tried to create the ultimate temperature control unit in our locations. How do we constantly adjust the temperature, so that the buffalo wings stay hot but our waitresses’ nipples stay pert? It’s a real problem, but I’m sure that our ladies can figure it out. Maybe a smartphone app, with a peripheral attached to pasties? I can’t wait to see what they come up with.” As a result of this announcement, Twin Peaks has also announced their own program, promising a vacation to Myrtle Beach for the first woman who can combine a mechanical bull with a Sybian.

Reddit : Refusing to let Google be the only online company with a strong dedication to issues regarding women, Reddit has stepped forward with their own version of a merits-based educational program. Noting the popularity of “/r/gonewild” and similar subreddits, Reddit has promoted the launch of a new subreddit called “/r/gonewildwithcode”. Here, women are encouraged to share pictures which feature themselves programming in naughty, revealing poses. As a reward, popular submissions will be rewarded with a new alternative to regular Reddit karma: karma cash. Upon logging onto their Reddit account, their acquired karma cash will rain down on them as an animation, and it will be redeemable at any store which sells thongs and/or cameras. “We just wanted to do what’s right,” said CEO Yishan Wong. “Hopefully, with our help, these women can advance their developer skills so that one day, they can build voyeur sites of their own and show other women that dreams can come true.”

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

The Bloody Fight for Unicode 8.0



Some people hail Unicode 7.0 for being more inclusive, with its addition of new scripts and symbols. I can only say: it’s about goddamn time! The problem is that the bureaucrats of the Unicode Consortium have dragged their feet, and we need to push them for more action. How many years and how many lives were lost for the inclusion of Linear A, before they finally gave it to us in Unicode 7.0? We need to be more aggressive! Here and now, we need to create a list of our demands for the next iteration, and we should hold them to it:

—–

Klingon – The army of CUR has fought for this one long and hard. This international language has become a standard for many, and it’ll only be a matter of time before Chinese is replaced by Klingon as the future language of business. It’s ridiculous that it hasn’t been included yet.

Caveman Doodles – Obviously, we need to preserve the first script of mankind, and on par with the written languages of first civilizations, the chalk renderings of horses, spears, and hairy vaginas should be noted as worthy of preservation. Consequently, sites like OKCupid will probably dump their current implementation, since this simple script will fit the needs of their clients nicely.

Kilrathi – Granted, the language only has a few words and phrases, but someday, we will learn more about this culture of space pilot cats who were the obvious inspiration for “Laser Cats!” and who were wiped out by the merciless Mark Hamill. In order to honor them, we should include and preserve their culture for posterity within Unicode 8.0.

4Chanese – Clearly, the readers of 4Chan are an important species, and we need to welcome them into the mainstream fold of society. Their script is a strange one, but with the inclusion of its characters in the next iteration, we will all be able to triforce properly without being called “newfag” and without needing to face the ultimatum of either baring our breasts or departing the premises.

Boner Emoji – Sure, this last iteration of Unicode gave us a few emoji, and some smart people are calling for more. However, there is a need which has yet to be fulfilled: boner emoji. We need pictograms which show boners at various angles (45 degrees, 90 degrees, 345 degrees, etc.) and of various sizes (thick, long, etc.). By doing so, we can have proper conversations about sexual tactics without a lengthy, verbose conversation. Finally, we’ll be able to convey the idea of “tip-to-tip” between each other without the barrier of language.

—–

This is only the beginning, but together, we can create the necessary list for the next release of Unicode 8.0. If I’m missing anything, let me know; we’ll add it to the roster. Let’s keep up the fight.

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

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

Self_Published_Stats

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); }
else
{
kill(PID_PARTNER_OH_NO_AN_ACCIDENT);
exit(CONST_PANIC_AND_RUN_TO_MEXICO);
}

3.) less talk | more head
4.) CSS_STYLE_ORGY
{
color: #696969;
}

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

if ((oGirlfriend.show(strYourPackage) && (strYourPackage.length() < 6))
{
oGirlfriend.chuckle();

java.util.zip.Deflater deflater = new java.util.zip.Deflater();
deflater.setInput(strYourPackage.getBytes());

pants.close();
}

7.) function watchJapanesePorn()
{
$(“japanese.man”).hover(function() {
$(“japanese.girl”).squatsClevelandSteamer();
});

$(this).myself.feelShame();
}

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

oPeepingTom.peek();
oPeepingTom.pop();
oGirlInChangingRoom.shriek();
oPeepingTom.clear();

Police oCop = new Police();
oCop.catches(oPeepingTom);

lock(oPeepingTom)
{
List oBigCellmate = new List();
oBigCellmate.insert(oPeepingTom);
}

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.

Quotes from an Outdated, Ignorant DBA



“I started to learn about MySQL, but I stopped. Somebody told me that it had been ruined by some chick developer named Maria. Are there any pictures of her out there? I heard that she’s hotter than Cassandra.”

“NoSQL, huh? How does that work? Can I just plug my Kinect into my computer and create some tables by waving my arms?”

“Finally! They’re releasing version 11.0.1 of Paradox. I’m gonna be at the launch party at my friend’s house. It’s gonna rock so hard.”

“Yeah, I’ve had some problems with sharding myself. Luckily, whenever they’ve popped up, there’s always been a McDonald’s or a public bathroom nearby.”

“Should I start getting into MySQL or PosterOgreSQL? I’ve heard that both are pretty good. What’s with the name of the latter? Was it used inside World of Warcraft?”

“Some of the suits asked me to start looking into this Memcached stuff. I don’t see what the big fuss is about. I can’t even create a schema in it with a DDL file.”

“I heard that the other departments in the company are starting to use MongoDB. They keep talking about storing the data with some dude named Jason. You know him?”

“I want to put my databases in the cloud. So, I got them all wrapped up in boxes and ready to ship. What’s the address for the Azure building?”

“Everyone talks about Javascript, so I’m gonna give it a try. I’m having a hard time connecting to a database. Are there some drivers that I need to install?”

“One of the brass keeps insisting that we use open source software for our infrastructure. I keep telling him that we already do. They’ve opened the codebase for Btrieve, right? What do you mean ‘what’s Btrieve’, you stupid punk?!?”

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

When API Documentation Is So Bad that It’s Good, Part 3

Web Method
data.moveData

Description
Apparently, for some of you out there, it was not simply enough that you could just save data as a record with a provided ID. No…that wasn’t enough. Some of you bastards have insisted on moving data from one record to another. Who would need to do such a thing?!? Personally, you make me sick…but since you’re our special client, we have implemented the precious functionality that you need from us.

Request URL
http[s]://ima.weiner.com/carlosdanger/trousers.moveData

Parameters

Required Level Name Type Description
Required SourceID String The ID of the record from which data is being moved.
Required TargetID String The ID of the record to which data is being moved.

And there you go…happy, assholes? Oh, but I forgot…there are a few more additional steps after you call the method…

1.) The return value of this method is a string (which we will refer to as your TrouserKey); you will want to hold onto this for future use.

2.) Since the method is asynchronous, you will need to wait an undetermined amount of time before the data is actually moved. Usually, depending on the weather, this interregnum is somewhere between several minutes and a couple of days. However, you are allowed to occasionally (occasionally!) call our “hasBeenMoved” method, using your TrouserKey to see if the data has been moved yet.

3.) After repeatedly poking us with your TrouserKey and finally getting a Success from the “hasBeenMoved” method, you should get ready to call the “getMovedStatus” method. Since your data is important to us, we do provide two-factor authentication when getting the status of your data. So, at this point, we will wardial your company’s location and send you a fax with a PIN number. (Not to worry…if you don’t own a fax machine, we will send you a FedEx package with the PIN number in it.)

4.) Finally, after receiving your PIN number, you can use your TrouserKey and PIN number to call the “getMovedStatus” method, and then…voilà! We will return a formatted URL with embedded JSON in it…which, when you think about it as a smart person, makes sense. It will look something like this:

http[s]://ima.weiner.com/carlosdanger/trousers?TrouserKey=3fb39e4390f0&statusrequest=%7b%22WhoIsFat%22%3a%22YoMomma%22%2C%22
WhatShouldIRead%22%3a%22BlowingTheBridge%22%7d

I don’t often say this…but that’s just beautiful, plain and simple. And it totally makes sense to do it that way. Totally.

5.) After calling the URL, we will return a simple text page that will have either a “Success” or “Failure” in big, bold letters. If you wish to know the reason for the failure, you’ll need to call our support number and be ready to communicate in Swahili.

It’s that easy! And if you don’t like it…? Go suck it! I ain’t breakin’ my back for you, asshat.

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