Types of testing

In order to deliver software, the team need to have confidence in its quality and robustness. The category of activities used to establish that confidence is broadly known as “testing”, but within this overall label there are many different forms of testing, which can deliver different outcomes with different immediate and ongoing costs. In a … Read more

The art of pairing

By nature, the stereotype of a software developer is of an introvert, who likes to work alone. We know in theory that pairing and collaboration are powerful techniques, but in practice many developers can be hesitant or even resist, and I think this is often because they simply aren’t sure how to get the most … Read more

Choosing databases

The recent explosion of database technologies gives teams a wide range of options, and the chance to tick off “NoSQL” on the buzzword bingo scorecard. Each paradigm, and each product, has its own set of features, that may or may not make it applicable to any given project. The easiest trap to fall into is … Read more