Based on a list of laws, rules, and principles that span Gerald M. Weinberg’s two books on The Secrets of Consulting. These laws are a helpful and amusing way to get into the consultant mindset.
They include The First Law of Consulting:
In spite of what your client may tell you, there’s always a problem.
And The Second Law of Consulting:
No matter how it looks at first, it’s always a people problem.
Enjoy the truth and fun of this collection of insteresting thinking angles.
Let’s look at a classic software projects paper published in The Journal of Defense Software Engineering in March 2005. It discusses why software projects fail so often. Some of the concepts discussed are old school and the criteria for success aren’t what we’d use today, but it’s a fascinating snapshot of the problems that were faced in the old times.
Despite its age, we still find some of these problems can surface in modern software delivery. Understanding where we came from can help guide what we do next.
Watts S. Humphrey asks 12 questions in his paper:
Are all large software projects unmanageable?
Why are large software projects hard to manage?
Why is autocratic management ineffective for software?
Why is management visibility a problem for software?
Why can’t management just ask the developers?
Why do planned projects fail?
Why not just insist on detailed plans?
Why not tell the developers to plan their work?
How can we get developers to make good plans?
How can management trust developers to make plans?
Dave Farley knows a thing or two about Continuous Delivery (CD), so his State of Continuous Delivery in 2025 report based on assessments of consultancy customers is a great insight into how CD is being practiced.
Find out what people are practicing, what they are missing, and why we need to overcome the technical skills cliff that still remains.
[The top 10%] are strong across the board. They’re really setting the standard. For instance, over 95% of them are doing trunk-based development… and they have truly comprehensive test automation; unit, integration, end-to-end, the works. Plus they have complete deployment pipeline automation… and comprehensive observability and monitoring.
Multi-tasking: Executive control in task switching
/
RSS Feed
Share
Link
Embed
A big myth of business is that multi-taskers are the go-getters who deliver the most work. The research, though, shows that these multi-taskers deliver work slowly and have problems with quality and accuracy. In fact, the more someone rates their multi-tasking skills, the worse they perform.
Find out how researchers tested these ideas to discover the true impact of multi-tasking and the trouble with context switching, which has a cost influenced by task difficulty and rule complexity.
Even when people were switching between simple addition and subtraction, with cues helping them prepare, there was still a measurable cost.
The paper looks at how cycle time is influenced by a large number of factors, with none being a silver bullet. The compound affect of many small improvements is the way to improve cycle times. There’s also a deep look at unexplained variation and noise that makes this a hard area to study.
There are countless tiny factors that can influence how long a single task takes… and what’s particularly striking, or maybe a bit humbling, is that this variability across individuals is even greater than the variability across organizations.
Modern work environments often overwhelm individuals with an endless stream of tasks, akin to a river flooding its banks. It suggests that attempting to rush work through only exacerbates the problem, leading to more interruptions and a feeling of being constantly submerged.
Embrace a “flow” mentality inspired by natural waterways and find out how slowing down, continuous small-scale planning, and intentional decision-making is how you get things done.
The State of GitOps Report is the first in-depth investigation into the adoption, practices, and benefits of GitOps, drawing on data from 660 survey responses and expert interviews. Its goal is to understand what constitutes successful GitOps implementation.
The report finds that GitOps adoption is increasing, with 93% of organizations planning to continue or increase their use. It explores adoption not just by prevalence (breadth across systems) but also by the number of key practices implemented (depth or maturity). The report identifies a model of 6 core practices considered necessary for successful adoption.
The data showed a clear correlation: Applying more GitOps practices across more use cases, and over more of your productions systems leads to better results. Depth and breadth matter.
Find out the hurdles and outcomes of a TDD approach. Hurdles include lack of experience, time constraints, difficulty creating comprehensive tests cases, and integration issues. Benefits are things like user satisfaction, product quality, defect reduction, and code maintainability.
It’s not magic. TDD takes effort.
Source: Md. Sydur Rahman, Aditya Kumar Saha, Uma Chakraborty, Humaira Tabassum Sujana, S. M. Abdullah Shafi, “Evaluating the impact of Test-Driven Development on Software Quality Enhancement”, International Journal of Mathematical Sciences and Computing(IJMSC), Vol.10, No.3, pp. 51-76, 2024. DOI: 10.5815/ijmsc.2024.03.05
The landmark paper by Fred Brooks, No Silver Bullets, is stuffed full of smart thinking that applies today just as much as it did in the 1980s.
Find out about accidental and essential complexity and the factors in software that make it hard to share a mental model about the systems we create. Crucially, find out why the promised “silver bullets” of the 80s are not unlike those being hyped today.
No language of technique removes the essential complexity of the software we create.
Looking back at the history of software delivery is like discovering the kind of diamond mine you see in cartoons. Lights reflect from perfectly cut gemstones that simply need to be plucked from the walls.
Well, way back in 1968, there was a NATO software engineering conference. Surely, there’s nothing to learn about software engineering from such an ancient conference? Well, maybe there is.
People chasing shiny new things, struggling to measure software delivery without driving the wrong behavior, and estimation are all topics that continue to be relevant even today.
That sounds remarkably like agile thinking doesn’t it; iterative development and adjusting based on feedback.