I’m an Ass because I give a Shit

Developers get a bad wrap for being difficult to work with. We are often percieved as assholes. We don’t mean it, it’s not our fault, it’s how we are wired. We spend our working lives looking for flaws. It’s the only way to build good software. We weren’t always this way. When we started, we were optimistic. We thought everyone was competent. Why would anyone put letters in a field meant to show the price of a product? Why would anyone enter a negative age? We didn’t check for these things. We got burned. There is always someone who enters a value, or uses a program in a way it wasn’t meant to. So, we spent a lot of time writing code that validated input. We thought it was bullet proof. We prevented the user from entering garbage data. We underestimated people’s stupidity. Which reminds of us the “God builds a better idiot” joke. Over time, our applications and programs became more complex. And with more complex programs, came more complex problems. Not only are we having to protect against bad input, but now we have to ensure the application works if someone unplugs the network cable, or the computer crashes, etc. The initial problem is a simple solution, but keeping that solution working in all the uncertainty is the new problem.

What this translates into, is a hyper-critical outlook on EVERYTHING. We choose our words carefully. We point out flaws not just in the systems we work on, but in everything we see. I do this way to much. I’m looking at a small 4″ fan on my desk. Now, first, I find it silly it even needs a sticker on it that shows you’re not to stick your finger into the blades. However, there are two major flaws with this sticker. First, the grate has openings approx 4 millimeters wide. The only people with fingers that tiny are newborns. Now, there are two more issues with that. First, they wouldn’t understand the picture showing the warning. And second, while their fingers would be small enough, they wouldn’t reach the blade. So the picture should really be showing you not shoving something else in, not showing a finger fitting through the grate. The second, and more important flaw to this warning is that the sticker is on the fan blade. The only time you can read it is when the blade poses no risk! When the fan is on, the sticker is spinning and impossible to discern as it rotates at several thousand rpm. It doesn’t bother me that someone did this. It bothers me that several people saw this after the fact, and didn’t see the issues…they left it. So many projects and products suffer from this.

My last job frustrated me to no end. There were literally hundreds of little things that on their own were absolutely insignificant on their own. But they added up. When I decided to leave it was very difficult to explain that there was no one cause, and thus, no way they could actually keep me there. I’d be told to relax, that those things weren’t important, but they were. We wasted so much time and money on these little things, that I could see the huge potential we had wasted because of all these little things that were out of my control. I was an Ass because I gave a Shit. Had I went numb, and not cared, those things wouldn’t bother me. But I cared about what I did. I wanted to do a good job. I strive for perfection and have high standards for myself.

I don’t expect perfection from everyone, but I do expect you to want to improve. I do expect you to care about what you do. It’s not coming from a place of negativity, which it’s often misinterpreted as. It’s coming from optimism. I see the potential, and I want to push people towards it. I want to realize the potential I see. Is that to much to ask? Does that make me an Ass? If so, I’ll wear the label with prid. I’m an Ass.

Website Pin Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Premium Responsive

  • Well coming from an Admin. My experience with the DEV’s at work is a bit tense but overall we are part of the same team.

    However it absolutely boggles my mind how little some DEV’s know about the Systems Administration world. Certain best practices that come naturally to Admins are a chore to DEV’s at least in my experience.

    Oh and reading code written by a DEV vs. Written by an admin is night and day in our shops. Mainly because the Admins comment on every single piece of the puzzle. This makes trouble shooting easier for us.

    In the end I think it just depends on the shop.

  • gibble

    Well written code doesn’t need comments. Variables, functions, classes, etc should be named clearly and follow SOLID principles. Maybe your developers suck 😛

  • Completely possible that are devs suck. I don’t think I have a solid enough knowledge base to know that. Then again they are “Financial Engineers” and “Quants” maybe they are just naturally A-Social.

  • This to me looks like musings of a feather ruffler! You’re not an ass for wanting to apply yourself and wanting your product to look good. By not wanting to be a slacker, you’ve already gone against the grain. Keep challenging the status quo I’d say. But then I’m a feather ruffler.

    I was cracking up at your description of the warning sticker. How often do we shit like that on things. It’s hilarious! And warning signs have come a long way since their creation.

    How dumb must the populace be?

    And it will only get worse. Ever see the movie Idiocracy?

    Hilarious!

  • It’s not like those stickers do anything. They’re like the “No left turn during rush hour signs”. There are FOUR of them at an intersection on my way home. It’s quite comical that there are that many. And sure enough, every day there’s some moron making a left turn absolutely screwing up traffic flow…and where are the police? Busy setting up photo radar