Stop Using @Autowire
April 3, 2020
Some reasons why Spring's @Autowire annotation could be considered a code smell.
Technical Practices for Continuous Delivery
February 3, 2020
Looking at the relationships between the different technical practices in the DORA model.
Teams, Systems and Catastrophe
January 26, 2020
Examples of surprising cascading effects when increasing the rate or strength of interactions in a team or distributed system.
July 25, 2019
Certain politicians have the ability to gain popularity even in the face of severe criticism.
DIKUW for Programmers
July 7, 2019
An explanation for programmers of the concepts behind the decision-making information hierarchy.
The Hodgepodge Machine
June 8, 2019
A classic 2D cellular automa with Julia.
Communication Clarity Confidence
May 18, 2019
A few ideas for improving leadership skills for technical people.
An Encounter with ℂ𝕠𝕞𝕡𝕝𝕖𝕩𝕚𝕥𝕪
April 20, 2019
From the Game of Life to Cynefin, systems flourish on the edge of chaos.
The Stability of Systems
April 19, 2019
A quote from an ecologist regarding the stability of ecosystems could also apply to software systems.
Why ask why?
March 10, 2019
A paradox of modern life - take charge of your life but go with the flow.
Consider Technical Documentation
February 16, 2019
Visualising a system can lead to more effective communication and better decisions.
Quality and Time
February 3, 2019
Digging into the meaning of quality and its relationship with time.
Some Perspectives on the Nature Of Meaning
January 13, 2019
An understanding of how we arrive at meaning has great implications for learning and communication.
Serverless is the new Mainframe
December 29, 2018
Many of the touted advantages of serverless architectures have been enjoyed on Mainframes for decades. What lessons can be learnt for the new serverless era?
Professionalism - Learning at Work
November 17, 2018
The debate about where to learn your craft focuses on the professional on the one side or the employer on the other. We should be considering their relationship instead.
November 3, 2018
The power of estimation is widely denigrated or ignored. That is a shame.
There's More Than One Kind of Project
October 28, 2018
Software engineering projects come in many shapes and this article lists some of them. Different skills apply to each one, however, and we need to be able to distinguish them and apply the right tools to each.
What happened to UML?
October 14, 2018
UML seems to have fallen out of favour with many software developers. It's understandable but maybe we have thrown the baby out with the bath water.
The Dangers of Abstraction
September 30, 2018
Thoughts on the use of high-level abstractions where, if we are not careful, words easily loose their meaning.
Teal Organisation In The Methodist Tradition
August 30, 2018
Comments on the similarity between the way Methodists organise themselves and so-called Teal organisations.
Quantum Computing Primer
August 16, 2018
Basic maths-free introduction to quantum computing for software engineers.
July 29, 2018
Simple example of using argument maps to visualise and simplify claims and objections to a given argument.
The Good Programmer
April 20, 2018
Some notes on the different meanings of quality.
Expected Loss of a Unit Test
June 7, 2017
Exploration of the concept of expected loss as a measure of the effectiveness of a unit testing.
SOLID Principles, Cohesion and Coupling
May 15, 2017
Some observations about the relationship between well known programming principles.