Richard Bucker

7 Sins of Software Development

Posted at — Oct 6, 2023

It has been so long since my last post that I forgot how to create a post. Phew. With that resolved this post is kinda funny because lately I’ve been complaining about reaction posts… and this is a reaction post.

I read the bullet points of Peter Wayner’s post and could not get into the body because while he had to make a list; this list might not be the top 7 but they are a list. And then I’m curious as to whome this is directed. This is sort of intuitive and obvious to seasoned programmers and managers.

Choosing the wrong methodology

Most methodologies have a price tag and they always come with a cadre of consultants who spend more time saving their jobs and not the project.

ignoring scalability

Scalability is a nice problem to have. Idealy you need to know who the customer is and start there. Sure there is some value to designing/implementing this a +1 in mind but getting ready for google scale when you’re working on a niche project is a mistake.

Falling for the latest trend

This is usually a problem for novice programmers who are lazy or inexperienced and want to defer the hard work to some trend that like methodologies has a cost.

Retaining too much data

This one I might need to read. However, the information economy suggest otherwise. You just need what you need.

Outsourcing the wrong work

Again without saying…. the new programers from today talk about builing computers when really all they are doing is assembling parts. With that approach they would outsource everything and just assemble the bits. The problem here is deciding what is intellectual property and how that effects the value proposition.

Avoiding testing

Automated testing is hard. Specially for GUI. Even the automated tools are difficult to use and some have a high cost. The trick is to separate as much as possible.

Understanding the power of planning

The quote goes “no plan survives contact with the enemy”. So it depends how detailed those plans are and if they will work.

In conclusion… these are not sins. They are mere annoiances.