Seven Levels of Hell: The Tech Edition

  1. First Circle (Limbo): For developers who can’t pick a language or platform as their given specialty.

    Punishment: All souls chained to this level will walk door to door with their résumé, only to have each one slammed in their faces with the phrase “You have no strengths!”

  2. Second Circle (Lust): Taking into account who we have to face each day at work and their respective level of resembling a troglodyte, we can go ahead and eliminate this possibility.

    Punishment: Not applicable. This level of hell is empty.

  3. Third Circle (Gluttony): For programmers who create memory leaks and perpetual loops, eating up all the memory and CPU cycles on the system.

    Punishment: Every single day, these offenders are presented a choice to either write an enterprise server application (with an embedded demoscene) that can run efficiently with only 2K of RAM or to eat an entire Alienware computer case.

  4. Fourth Circle (Greed): For IT managers who wouldn’t share resources or knowledge with other managers.

    Punishment: Chained to a wall and gagged, these souls must watch silently as their peers take credit for all of the damned’s projects and heap praises upon each other.

  5. Fifth Circle (Anger): For admins who blow their top and acerbically berate all users, both advanced and novice in technical knowledge.

    Punishment: Surrounded by blaring alarms about hard drives losing disk space, they will sit at a terminal for eternity and their fingers will only be able to repeatedly type ‘fsck’ (and other variations with more vowels).

  6. Sixth Circle (Heresy): For the sales managers at software companies who know the limitations of the product being sold but then promise everything else to the customer.

    Punishment: Unfortunately, this level of hell is full of innocent software developers. As with the world of the living, the salesmen have talked their way out of punishment and somehow placed the full load of misery onto the developers.

  7. Seventh Circle (Violence): For the developers whose nonsensical code causes headaches and dizziness to those who review it.

    Punishment: While being flogged with the “computer-mice-o-nine” tails, they must write the code for their next project through only the smashing of their heads against a vintage IBM Model M keyboard. ‘Click-clank-click’ will be the only soundtrack for eternity.

  8. Eight Circle (Fraud): For all IT staff who knowingly have taken one shortcut in their lives when they should have done things the right way.

    Punishment: Due to overcapacity (in that all fellow IT staff belong here), a huge volume of sinners will need to take turns being in the pit in order to accommodate the space. The punishment has yet to be determined since the domain model hasn’t taken all factors (like performance requirements) into account yet.

  9. Ninth Circle (Treachery): For any CIO/CTO who had a productive, strategic vision for the company but then abandoned that vision at the first sign of trouble (or a golden parachute).

    Punishment: Much like those stuck in Limbo, these souls must forever be denied employment by various prospective employers…but they must suffer while chained to an ex-spouse who perpetually complains about a lack of alimony or child payments.

Footnote: The title would be nine levels of hell, but since the second level is empty and the sixth level is misused, there’s actually only seven. That seems to fit, though, since nothing in tech is actually used the way that it was intended anyway.

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

About these ads

Ways that Can Excite People about Programming

Unless you’ve been busy living under a rock or preparing inside your bunker for Armageddon, you’ve heard of and their goal to excite the public about the potential prospects for everyone in regards to programming. Codecademy even claims that it can empower the common layman with the skills to become an employable programmer…in only 3 months! However, despite all of their efforts to galvanize people, the impact has been nominal at best. What’s really needed is an effective campaign to convince people to join the world of developers. Some useful ideas that come to mind are:

  • Spread the rumor that advanced coders are able to summon the power of hadouken when they reach a high enough level.
  • Stress how developers gain an infinite amount of patience by dealing with the both complex systems and less-than-complex managers.
  • Pitch how one can become enlightened and attain a higher level of philosophical understanding about Hobbes’ sentiment towards mankind, as you attempt to make one Web page consistent across dozens of browsers and platforms.
  • Showcase the absolutely festive environment that one expects with the sausage party that is a programmer’s career.
  • Demonstrate the power of software development by showing how one junior developer can commit several lines of code and cause the entire downfall of a project and/or system.
  • Emphasize how programmers acquire skills that are essential assets in a modern technological society (but will become useless in the event of a great solar flare and its crushing blow to our global infrastructure).

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

Lazy Costumes for Programmers

  1. Pour Mountain Dew onto your shirt (as a sugary adhesive) and then cover yourself in crushed Doritos, proclaiming to be the crumbs in a coworker’s keyboard.
  2. Create a noose from some spare cable and put it around your neck. When somebody asks what you are, state that you are the [fill in blank] server that’s always hanging for no good reason.
  3. Find that one guy in your office with anime figures and steal a few of them from his elevated shelf. Then, paint their faces with printer ink and walk around with them, boldly announcing to be the proud parent process of several zombie children. (Avoid the actual owner of the figures for the entire duration of the party.)
  4. Print out three copies of a cute puppy’s face found on the Internet, align them in a row, and tape them to your head. Afterwards, create a collar from a network cable and attach a large name tag which says Kerberos the Happy Scrappy Hero Authentication.
  5. Empty one of your rectangular wastebaskets, draw the face of a demon on its side, and don it on your head to parade around as a corrupted USB stick.
  6. If you and a fellow programmer are feeling a little adventurous, create a ‘cat-o-nine tails’ from the spare mice in the hardware closet and create a spiked paper collar using paper and staples. Now, with one person wielding the tails and with one person wearing the collar, be the sensation of your event by attending as a MongoDB master and slave configuration.

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 Function Name Hall of Shame

Over the years, I’ve participated in numerous code reviews, and I’ve seen a few function names that were worthy of true shame. However, the Hall of Shame demands only the best (or the worst, depend on your point of view), and so, I have whittled it down to a few of the most worthy. Consequently, I nominate the following for the Hall of Shame:

  1. NOTE: Could this function be any more ambiguous?
    private string GetTableData()
  2. NOTE: Our new programmer just might be dyslexic or suffer from something worse
    public int ManageJoinUsingDelete(…)
  3. NOTE: Do we need to know every step involved in the name?
    private int GetUpperRangeOffsetBySubtractingProductOfTwoSums()
  4. NOTE: I hope that this ‘body’ refers to text and not a dead hooker
    public void EndStreamingNoAttachIfBody(…)
  5. NOTE: This function needs more ‘temp’
    public int PopulateTempTemporaryTransfer(…)
  6. NOTE: This seems so wrong on so many levels
    public bool IsFalse()
  7. NOTE: He’s not exactly creative, is he?
    public void TransformData(…)
    public void TransfromDataPlus(…)
    public void TransformDataPlusExtra(…)
  8. NOTE: They do say that string mathematics is a dying art
    private string CalculateNextLessThanOrEqualNumber(string)
  9. NOTE: ???
    private string GenerateTempGetUpdateOrGetInsertWhereCriteria(int)
  10. NOTE: I like it…straightforward, single in use, and stupidly simplistic
    private string SurroundWithParantheses(string)

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

Crime and Punishment (for Developers): First Edition

It’s my personal preference to incentivize fellow developers, in order to truly get the best out of them…but when funds are scarce or when personalities are too strong, draconian measures must be put in place. (Sometimes, it just makes sense to replace cash with pain as the currency to dole out.) However, to be fair, there should be some code of conduct, since it wouldn’t be just to not have a proper system installed. So, here are some proposed punishments that match their dirty deeds:

Crime: Using string concatenation to create SQL, instead of using prepared statements or other similar frameworks/data structures.
Punishment: Be forced to build a chair from moldy wood and rusted nails while blindfolded and then to work from that chair for a year.

Crime: Going on vacation to another part of the world for several weeks and forgetting to commit your code before leaving.
Punishment: Building security will occasionally “forget” that you are an employee, and assuming that you are a domestic terrorist, they will tackle you and blast you in the face with pepper spray.

Crime: Immediately shirking blame and rejecting the claim of a bug in your code, even without hearing the evidence. (Even worse, not apologizing for your behavior when your code is actually found to be the cause.)
Punishment (First Offense): Find the dirtiest computer mouse in the department and be forced to keep it in your mouth for an entire day.
Punishment (Second Offense): Find the dirtiest computer mouse in the department and be forced to hold it in your ass for an entire day.
Punishment (Third Offense): 2nd offense punishment, followed immediately by 1st offense punishment.

Crime: Knowing that a reliable library already exists with desired functionality and writing your own anyway, even though a deadline is approaching.
Punishment: For the next year of your life, you will be required to maintain legacy, never-reusable COBOL code from 1979. More importantly, you will be required to work (and sweat your ass off) inside the VMS machine that currently executes the program, and you will be required to wear the polyester suit of the original programmer while working.

Crime: Putting the majority of your program’s logic and flow inside a database stored procedure, instead of inside your actual application.
Punishment: For your next project, a wall will be placed between you and your computer, and you can only touch your keyboard and mouse via a pair of glory holes. Most of the time, you will only come into contact with your equipment, but occasionally, you’ll encounter “the equipment” of someone else…which may then require a handjob in order to push your next code changes to Github.

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

More Goals for HBO’s Silicon Valley

After already introducing a measurement standard for compression and giving us a mathematical treatise on mass stimulation, the show Silicon Valley can already be considered as productively prolific, in addition to being hilariously comedic. Obviously, the show is capable of giving us so much more, and we should challenge them to surpass their own past achievements. So, I think I speak for all of us when I say that we expect at least one of the following challenges to be met by the end of the second season:

  1. To create the general specifications for the firmware of a “companion” robot being built by Jian, that will possess both the AI needed to pass the Lovelace test and the kinematic equations needed to pass the Linda Lovelace test.
  2. To prototype the first online bartering system and bartering message protocol, which Erlich will build for use in his new (and legal) business project WeedNeed (where people will exchange old mobile phones for drone-delivered marijuana).
  3. To develop (and then open source) a script utility that will allow you to create a customized set of VRF tables and DNS entries, which Gilfoyle will then use to create and traceroute a poem about how much Dinesh is gay for his code.
  4. To invent an accepted scoring system for the static code analysis of Java (probably by Dinesh), in which a minimum score of 90 will get you one free turn with Jian’s new “companion” robot.
  5. To create a simple package for script kiddies that exploits CVE-2014-6271, which Gilfoyle uses to replace the home page for JQuery with a picture of monkeys masturbating.

  6. To roughly outline a new method for software development called The Starving Startup, in which different planning stages of the business are devised at different levels of hunger and isolation of the designers. (Jared had an epiphany for this idea during his latest sabbatical.)
  7. To create an accurate measurement standard for image recognition, that will benchmark Hooli’s new IR system as it attempts to censor the Mad Bomber (who photobombs popular restaurant cams with his penis in hot dog buns).

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