Software Development with Linux

Communication is the key

SUN, 01 MAR 2009

Along the years, a professional software developer would have used a plethora of software development tools. Every time you change your job, you'll have to learn and use new tools. I've never arrived in a new job where all the tools were exactly software development tools that I had already used. They normally do the same task, but they are still different.

This is what came to my mind when reading this interesting post by Janusz Gorycki titled "Low Tech Rituals".

It argues that all the latests and greatest hi-tech software development tools may not always result in improved efficiencies. In fact, they may even lead peoples to stop being pro-active and interesting about the design and planning phase of software development.

Among all the tools I've used, I don't think that the majority of them have really helped increase the quality of software. More often then not, it looked like they were used just for having something to show off to investors and clients.

Don't get me wrong, a lot of those tools are great and can be really useful, but they need to be used correctly for that to happen. Otherwise, they don't bring much to the organization. And like mentioned by Janusz, they aren't fun at all, so you don't motivate your troops with them.

I think that you should think carefully before forcing the usage of a particular tool into an organization. You need to check what this tool can offer, and see if this would brings any real improvement at all. More often then not, you'll see that they don't really solve your problem.

You should focus on tools that facilitate communication and information exchange first. That is always the number one problem with software development : lack of informations. IM, wiki and the likes are all simple tools, but really efficient at increasing the communication between team members. It's fast and easy to ask (and answer) a question using IM. It's also fast to store that information in wiki.

Simplicity is often the best way to keep your team motivated. And a motivated team will result in a higher quality products.