Archive for October, 2009

Feeds moved to FeedBurner

I have finally got around to updating my feeds to use FeedBurner. I’m mainly posting this because the plugin I added requires it before it updates the RSS feed.

Update: Looks like that didn’t work. Time for me to debug…
Update 2: It appears to be working. Now I will be able to revel in FeedBurner goodness.

Avoiding part of a language

A few years ago I was working at a small company that was doing development. After a while we decided that it was time to implement coding standards for the usual reasons. While there were quite a few religious arguments (such as where do the braces belong and other silly topics), there was one point that really stuck in my head.

There was one part of the language that everyone except for a few people dreaded, and it was proposed that we disallow its use. We went back and forth a few dozen times about whether we should put it in or now. I voiced my opinions about why we should keep using it, and did not really hear a compelling reason on why we shouldn’t. While I don’t remember who won the argument, I still hold that it was not a very good idea.

Programming, at the very basic level, is problem solving. There is a task to do, and it is the programmers responsibility to distil that down into the most basic form until it is so simple that even a dumb machine can do it. Doing this well takes a lot of patience and is a lot of work. If you can do this then count yourself lucky, because not a lot of people can. So why do paid problem solvers want to avoid the problem of figuring out a part of their language? I can think of a few reasons.

Maybe it is a tricky part of the language? I really hope this is not the case. The problems that occur in most software projects are huge compared to a language. If they wasnt the case, then software development would look a lot different than it does today.

Maybe it is syntax sugar and therefore useless to learn? I don’t think this is valid either. There is plenty of syntax sugar out there, but it is there for a reason. It might make the code look nicer, in which case it is a good idea. Better yet, another developer will use it, in which case for maintenance sake it is an even better idea.

Maybe it is just too much work? I am not even going to go there.

There is not any good reason (then or now) that I can think of that would make a convincing argument for avoiding a piece of a language. Programmers only do themselves a disservice (and maybe cause a lot of extra work for themselves) by going down this path. I am not advocating that programmers learn everything about their language. However, they should not be afraid of any part of it either.

(for the curious: perl’s map was what some of my colleagues wanted to avoid).