Archive for August, 2006

What actually makes a great programmer

August 23, 2006

Rob over at the “Software by Rob” blog has a very opinionated and interesting take on what makes a great programmer. Besides his failure to define what he believes a great programmer to be, he makes a few questionable assumptions about great programmers. His opinion seems to be that all great programmers share the following four personality traits:

  1. They’re Pessimistic
  2. They’re Angered by Sloppy Code
  3. They’re Long Term Life Planners
  4. They have an Attention to Detail

First of all, let’s just give in to number 4. “Attention to Detail” is such a standard of conventional wisdom, that I don’t want to ruffle too many more feathers than I already will with this post. Maybe another time.

As for the rest of them, let’s break it down shall we? First he says they are pessimistic. Rob uses Admiral Jim Stockdale as an example of how “the discipline to confront the most brutal facts of your current reality” is using pessimism to foster an optimistic outcome. This dichotomy is not only completely ridiculous, but it makes no sense. It is also quite possibly outright wrong. I think Rob is confusing pessimism with pragmatism. Pragmatic people make good decisions based on the information available to them. Pessimism does not lead to optimism or support it. Sorry Rob.

Secondly he claims that great programmers are angered by sloppy code. Angered is definitely a strong word, but what’s even more confusing is the fact that the references used to support the “sloppy code” claim are more about non-working code and bad decisions than sloppy code. I think it’s pretty obvious that programmers who write code that doesn’t work would not be considered great programmers.

Lastly, in “long term planners” Rob makes so many disconnected assumptions it’s hard to comment on their validity, but suffice it to say that his assumptions boil down to this: “being able to see the impacts of present-day decisions is paramount to building great software.” That last statement is true. However, being a long-term planner does not mean you see the future possibilities. Most long-term planners manifest their futures by adhering to a plan they have set forth. What would have happened to them had they not had the plan they had? Intuition is the trait at work in being about to predict consequential reactions to present day action.

Bottom line here is this: If Rob is saying that these four traits make great programmers, then that is simply ridiculous. If what he’s saying is that in his limited experience the people who have been great programmers happened to have these common traits, then Rob should perhaps look up the difference between cause and correlation in the dictionary.

Accountability: The New Corporate Disease

August 23, 2006

Actually, the newness of the disease it debatable, but the nature of it is not. Accountability has become a buzzword. Something you say when you want to sound authoritative or smart. But the average company has forgotten what the word means. So let’s at least get that much out of the way right now.

Accountability: “the obligation to bear the consequences for failure to perform as expected.”

The problem is that today’s corporation has shifted accountability away from individuals and spread it out over a group of people or to an entire company. On the surface, this sounds like a good idea. Get more people responsible for making something happen and you have that many chances for it to happen right? Wrong. The opposite happens. Everyone expects that everyone else will do it, so nobody does it.

This doesn’t happen right away. When you institute the “everyone’s responsible” policy, everyone is hypersensitive for a while. So it appears in the early going that things are working as you expected. But then time passes. People get used to the fact that things are always going well and they slip. They start counting on it, and the result is that things blow up in your face. And what do we do when this happens … we spread the accountability around even more.

You have to establish an environment where accountability is enforced, not just paid lip service. Assign accountability to individuals and enforce it. The corporate world has become so soft and politically correct, that it has abandoned accountability for exemption. People see this and behave accordingly; conversely, if they see co-workers held responsibile individually for assigned tasks they will mirror that example. When they see that there are consequences, they will respond with care and attention to their own responsibilities.

Now I am not a big believer in micromanagement, dictatorships, or even confrontation for that matter, but I am a big fan of people doing what they are supposed to … plain and simple. Individual accountability makes for happier employees, lower overhead cost, and increased productivity. So the next time someone at your office suggests that everyone is accountable for something … beware.

More PopWisdom

August 21, 2006

“Do not try to bend the spoon; that’s impossible. Instead, only try to realize the truth… There is no spoon… Then you will see, it is not the spoon that bends, it is only yourself.” - The Matrix

Pop culture nuggets of wisdom

August 19, 2006

Some of the best hidden nuggets or wisdom are found in pop culture.

“You can check out anytime you’d like, but you can never leave.” - Eagles Hotel California

“Life all comes down to a few moments. This is one of them.” - Bud Fox in the Movie “Wall Street”

“It’s supposed to be a challenge, it’s a shortcut! If it were easy it would just be the way.” - Ruben in the movie “Road Trip”

Broken windows

August 17, 2006

New York’s Mayor Giuliani along with Police Commissioner Bill Bratton adopted James Q. Wilson’s broken windows theory in the early 1990’s in an effort to quell the city’s growing crime problem. The idea is that if your neighborhood looks like a seedy place that you will likely behave accordingly and if you clean up and fix the “broken windows” that behavior will shift proportionately.

“Thanks for the history lesson on New York social policy,” right? Well the question is, how does this theory stack up in a business environment? If you spruce up your office will your employees respond accordingly? And if the place is a dump are people less likely to give top effort? Or better yet, is the condition of the office more a reflection on the attitudes and behaviors of the employees rather than vice versa?

First let me say I don’t have the answer, but Paul Graham’s essay What Business Can Learn from Open Source suggests that corporate environments are actually stifling creativity and productivity. So although the more “traditional” office space dogma may in fact be poorly affecting the behavior of the people, the environment is affecting behavior nonetheless. (Not that he suggested otherwise.)

However, even some of the most open and creative environments can yield less than desirable results. Cleanliness, order, and presentation are not guarantees of success, and I would argue not even very good success indicators. However, they are, to some extent, a reflection of attitude and motivation.

What? You think this sounds crazy coming from a lazy pig that can work in a pile of papers and empty soda cans for weeks without noticing? You have to consider context. Context has become my new favorite word. When I have a task to accomplish whether it be a website design, rewiring the server cabinet, or product development, I am a perfectionist about that task or tasks if I am excited about and believe in the value of it.

If people are inspired, they will take care of the details. If they aren’t, empty boxes will pile up by the back door.

Tesla Motors = No More Gas?

August 16, 2006

Tesla Motors: 0-60 in 4 seconds … top speed 135 mph … 100% electric

This is probably the coolest development in alternative feul vehicles in recent history. I’ll be buying one as soon as I have an assload of discretionary spending. :P

Three of the greatest Paul Graham quotes of all time

August 14, 2006

If you haven’t already done so, I recommend you read the essays by Paul Graham. In particular, “What Business Can Learn from Open Source” and “Power of the Marginal” .

He is one of the most progressive thinkers with regards to new business concepts. Beware if you like Jack Welch and the the other big dogs though, you might find Paul’s work hard to swallow. But that probably means that you really need to read it.

Here are some of my all-time favorite quotes from his work:

“Work like a dog being taken for a walk, instead of an ox being yoked to the plow.” - from his essay “Power of the Marginal”

“The atmosphere of the average workplace is to productivity what flames painted on the side of a car are to speed.”

and

“The basic idea behind office hours is that if you can’t make people work, you can at least prevent them from having fun.” - from his essay “What Business Can Learn from Open Source”