There are a number of reasons I use the nom de guerre that I do. Primarily, it's because I like being self-deprecating. Hard to bruise egos when the one you're mocking is yourself. But it also adds some levity to what appears to be an increasingly somber industry.
The software industry has a tendency to take itself too seriously. Holy wars range from operating systems to programming languages to development platforms to frameworks to implementations of patterns. People take potshots at others for jumping on bandwagons, for being hypocritical, for being a "slave to tools", for their choice of text editor, for wearing white socks with shorts (hey, my feet sweat in Crocs, okay? It's a documented condition!).
That's not to say we aren't valuable. Software can do some amazing things. And I'm not talking about carte blanche to be outright negligent in your work. It's good to be passionate about what you do and to foster that passion in others. But let's not imagine you are more important than you really are.
I'll teIl a small anecdote that involves JP Boodhoo, not because he falls into this category but because I consider him a pretty well-known person in our circles. Chances are, if you're reading this, you know him better than you know me and "holier than thou" is not generally a phrase you'll hear used to describe his attitude toward his work. At the South Florida Code Camp, I mentioned some technique I learned from him. I asked the crowd of about twenty to thirty if anyone had heard of him. No response. Granted some people may just not have put up their hands but I'll ignore them because they run counter to my argument.
On this blog, I usually talk with more confidence than I feel. The reason being: there are better ways to do pretty much everything. And the reason for that: there are plenty of people who are smarter than I am. You're probably one of them. Or at least I like to assume that and have you prove me wrong.
I'm far from an expert on anything (except Text Twist of which I AM LORD MASTER OF ALL!!!). But as a group, we often have a tendency to assume we know what's best for the client and even for each other. I've heard stories of shouting matches for something like how to implement "Print this page" functionality. And you could make a drinking game out of the number of snarky, condescending comments I read in blogs and discussion groups. You could get drunk by noon if you just limited it to variations on these:
- No offense but...
- You (totally) missed the point of...
- I don't mean to be rude but...
- I don't understand how you people... or I don't understand you people who... or basically any comment with the phrase "you people".
(Sidebar: The last one actually makes me laugh whenever I read it. There's a running joke that's been in our family for years. When someone is being mocked mercilessly but good-naturedly (and believe me, this happens *VERY* often), the mockee responds with "I hate you people" prompting a hearty renewed round of laughter. We include it as a default response in all the reader polls in our all-but-defunct family newsrag and have even had t-shirts done up with the phrase on it accompanied by a family photo.)
When it comes right down to it, I am paid to do what I'm told. Many clients will defer to my (or the team's) expertise for a good many decisions and in varying degrees. And I do make suggestions based on past experience and on professional opinion. But in the end, if the client says they don't have time to write unit tests, that is their decision to make and all I can do is give it the ol' college try and continue on under protest, but good-natured protest.
And I'm fine with that. To borrow a line from Bill Cosby, "I've seen the boss's job. And I don't want it." Although the danger here is if you are held accountable for decisions that you didn't make. What can I say? People will do that. Best you can do is document your concerns and hope you don't go down with the ship. Maybe I've been lucky in my career but this hasn't ever been a concern for me.
I'll close with some facts about you, personally. Apologies if I'm shattering egos. I'm a hillbilly. I deal in reality**:
- You are not in charge
- You don't decide what the application does
- You don't decide when the application can be released
- You don't get to hold back on demo'ing the application because "it isn't ready" (and in fact, it was in talking with someone about this very idea that prompted this post).
Passion is good. Good-natured ribbing is nigh on the most entertaining form of communication known to developerkind. But condescension and self-importance are a major turn-off to this hillbilly.
Kyle the Nihilist
** Hillbillies also deal in generalities. I'm well aware that there are exceptions. But still, you're not one of them.