Data vs Code

I'll take an array over a giant switch-case statement any day.

  1. The array definition will be more compact and easier to see all at once.
  2. Defining actions in an array enforces uniformity.
  3. You can put checks in the code to automatically verify that the array definition is complete. (I ...

Insist on Automatic Tests

At some point your team is going to be gone. Not all at once (well, maybe, but in that case you won't care), but over time turnover will completely replace your team.

If you are the manager, and you outlast the team, you're going to pay for low ...

9 "Must-Have" Tools for Software Teams

The items below are useful systems based on my experience working with a bunch of different software teams at a handful of companies over the past decade-plus. I haven't bothered to list things like compilers, interpreters, libraries, etc. If you don't have those, you aren't making software ...

One Simple Step for Avoiding Shallow Reviews

We've all been guilty of giving a shallow review: "Looks ok."

Given typical defect densities, any non-trivial design or code is going to contain some errors. Even seemingly trivial maintenance fixes are likely to be defective.

It's your job as a reviewer to find as many of these ...

3 Easy Ways to Stick to a Coding Standard

When you're writing python, you don't need a lot of debate over the minutiæ of most coding standards. PEP 8 does that for you. Even better, there are some tools that make it really easy to stick to the standard.

Why do this? Well, for one thing it ...

Makefiles are Software Too

This post was inspired by recent experience with some horrible build scripts from the open source world — but I've seen enough in-house badness over the years that I wanted to establish some basic parameters for build scripts.

This is a really broad way to divide the world, but I ...

« Page 3 / 3