« Yes mate | Main | TagTag »

The Tripod

"If you do not have version control then you haven't got the ability to go back and fix mistakes easily. You do not know where you came from in a way. You haven't got the history of your code. Editing a code base without version control is kind of like using a word processor that does not have a delete key. You are typing away and as you get to the 50th page, you are typing very, very carefully because if you make a mistake you cannot go back and you've lost lot of work. Same with version control. If you do not have that kind of capability, you can't control your project's code base and you don't know where you got it from. Unit testing is equally important because unless you have a tested code base at the unit level, the very low level, then you're really building on sand. As you add functionality on top of functionality, you really don't know if the foundation is solid and that's why so many projects start to crumble when they get to a certain weight and certain height because the underlying stuff is just too flaky and it just falls apart. Lastly, automation is important because without automation you don't get consistent builds. You cannot consistently put together a bit of code. When you consider the average project now that is shipping on a CD with millions, billions of bits potentially, how do you know that those bits are the right bits. We had teams we went to where we had maybe 15 people on the team and if you have a look at the build product on those 15 PCs, they would be different on each one. So which one is the shipped build? Which one is the customer receiving? If a customer says I got a bug and the developer says, "I don't see it," then how do you know what to do? Because a developer's actual application may be different from the one the customer is running, so automation is really important." - Dave Thomas

Dave Thomas is a smart man. His interview on The Server Side is well worth the listen.

July 13, 2005 11:29 PM


Post a comment

(you may use HTML tags for style)

Remember Me?

Trackback Pings

TrackBack URL for this entry: