Thursday, December 15, 2005

Damn Right, I've Got the Blues

This is just wrong. I was browsing through iTunes' Blues section and found this album cover.

Monday, December 12, 2005

Crash Course in Brain Surgery

As I've stated in a couple of previous posts, I am using Agile development methodologies. I'm not using one particular discipline, but my own Frankenstein creation that borrows from Scrum, Crystal Clear and XP. I thought I would share a few of the books I found useful with my 2, no make that 3 readers. After getting a comment from a guy I used to work with, I discovered I had 3 readers. Anyway, here are 3 of the books that really helped me discover Agile development...

Crystal Clear: A Human-Powered Methodology for Small Teams by Alistair Cockburn
User Stories Applied by Mike Cohn
Agile Project Management with Scrum by Ken Schwaber

I also have Agile Project Management by Jim Highsmith which I have not finished yet. So far, it's been a little tougher to read than the others.

I am starting to work on a series of articles on unit testing. I'm not sure how often I will post them here, but be looking for the first one next week.

This is not a paid endorsement, I am not an affiliate of Amazon.

Listening: 'Til the Day I Die - Third Day

Friday, December 09, 2005

Key to the Highway

I understand that HOV lanes are a big hit in some areas, such as L.A. and other big cities. There is even talk of allowing single occupied vehicles access to the lanes via a toll, which would be a moving price based on demand. Here in Nashville, single occupied vehicles don't have to pay a toll to ride in the HOV lane. They just do it. And there is no penalty for this action because there is no enforcement of the law.

I don't like HOV lanes. I believe they make traffic worse, not better. And the impact on the environment is negligible at best. Every driver is paying for the interstate system, yet we are not allowed to use certain lanes at certain times of the day. And for those of us that do follow the law, we must deal with three different types of asshats on the roads.

Asshat #1 - The person just flat out ignores the HOV lane signs. This is the guy who just doesn't care about the signs. That is, until they are getting ready to pass a cop. Which is very rare, because the police never watch for HOV lane violators and if an officer happens to be on the interstate, they are usually going faster than everyone else, so the violator never catches up to them. This morning I saw the king of these asshats. He whizzes past at about 85 in the HOV lane, obviously alone in his Buick Rendevouz. It has dealer plates, so the guy is probably a car salesman, which already makes him an asshat. He comes up behind a car going 65 in the HOV lane (see next paragraph) and proceeds to tailgate the offending car. I don't mean a "I’m a slightly unsafe distance from your car" tailgating, I mean a "stuntman can jump from my hood to your trunk" tailgating. I pass both of them in the lane next to the HOV lane. He squeezes between me and the car, rides my bumper until he gets around and starts to try to squeeze back to the left lane, getting very close to my bumper. I, of course, let off the gas so the gap doesn't widen as quick as he estimated, but he missed me.

Asshat #2 - The person who thinks because they have 2 people in the car, they MUST ride in the HOV lane. Okay, the idea behind the HOV lane is that when traffic gets heavy, those who are carpooling can ride in a less congested lane, thereby going faster than other traffic. If regular traffic is going as fast as the HOV lane, there's no reason to ride in it, if you are planning on going slower than traffic. That is what the right hand lane is for. The person who was being tailgated in the above example was this type of asshat. She was going 65 (the speed limit is 70) in the far left lane when just about everyone else was going 70. Tennessee (and most other states) specify that slower traffic must keep right. Which leads us to our final asshat type (at least for today).

Asshat #3 - The person who drives slow in the left most, non-HOV lane. When the HOV lane is in effect, the lane next to it should become the "left" lane for single occupied vehicles. For example, there are 4 lanes at one point of my commute. Starting with 1 for the right lane, you would have 4 3 2 1. 4 is the HOV lane. So 3 should be the "fast" lane for non-HOV cars. Some people don't get this. They driver slower than traffic in that lane. I can't pass on the left without breaking the law and I can't pass on the right because they get people seem to get a herd mentality on the interstate where they want to drive in tight packs with other drivers.

If you are one of these types of asshats, pay attention to your driving! Quit shaving, putting on makeup, eating, talking on the phone, reading the newspaper, reading a book or sending e-mail* and drive!

*Yes, I've seen all of those things being done by someone while driving.

Listening: Trip Through Your Wires - U2

Friday, December 02, 2005

Practice What You Preach

Creating software is all about delivering value to the customer. By focusing on features of the software instead of framework, you are free to concentrate on delivering that value. Your users don't care about your object model or customizable database schema. They care about what the software DOES and how they interact with it.

You may be creating software that uses all the latest buzz words and is a technological marvel, but unless your customer getting more value from these technologies, it is pointless. I realize they may not realize immediate value, because some decisions are made to make the software more customizable or flexible in the future. But if all you are doing is pulling data from a database (which is what 90% of all applications I've ever worked on were doing), you don't need to spend the next year creating a distributed database engine with 456 abstract classes that are the basis for on-the-fly generated code to handle XML in Swahili*.

Business software development is not an academic exercise. Just like a manufacturer who produces widgets to sell to Wal-Mart, we must create software that gives the user more value than it cost them to purchase our software. So, quit reading this and go write something useful. Unless you are not a developer, then go do whatever it is that you do. Just stay away from Microsoft Access©.

*unless Swahili support is on the feature list

Listening: On Any Other Day - The Police