Radical and incremental change
The allure of radical change
Radical changes are exciting. They are big, bold, and transformative. Most recently we’ve seen this with large language models – or LLMs – mostly of the GPT variety. Radical changes cause ripples and waves. We’ve seen academics and techies calling for a pause in giant AI experiments in an open letter.
We can easily see the transformative impact of radical change. This makes it exciting to get behind, and sometimes scary when it arrives, but either way radical change is alluring because it’s easy to see the impact. Radical changes are capable of mobilising people. Either for, or against, the change.
Looking at examples, it’s easy to see the allure of radical advances in technology:
- The internet, which fundamentally changed the way we communicate and access information.
- Smartphones, a radical advance in mobile technology.
- Cloud computing, enabling flexible, scalable and cost-effective storage and computing power for all sizes of business.
- Quantum computing, a radical development in the power of computers, opening new ways we can process information that are fundamentally different to and unsolvable by classical computers.
Incremental change is boring, and often difficult. It’s hard to get excited about small improvements. It’s hard to stay committed to the incremental changes when the results are not immediately visible. Incremental change requires more patience and persistence.
Advocating for incremental change can be harder still. While small changes are largely seen as better, lower risk, and easier to achieve. It’s hard to craft a rallying cry that gets people excited about a small and iterative improvement.
Product development philosophy in tech businesses
Product and engineering teams across tech businesses often embrace the ‘Ship small diff’ approach. Ship small diff is about making small changes frequently to a product or project rather than waiting until a large and comprehensive update is ready.
By making and shipping small changes frequently, teams can more easily adapt to user feedback and make course corrections. This minimises the risk of major errors or failures, as the ‘blast radius’ is limited by the size of the change.
Ship small diff is incremental change. Hugely successful business have been built on the idea of shipping small diff. Demonstrating that incremental change is effective, and mitigates many of the failure cases of radical change.
While it might be hard to advocate for incremental change, in some places we generally accept that incremental change is more effective, safer, and more likely to produce a better outcome than radical change.
The power of incremental change
We’ve seen that incremental change can be hard, and harder still to advocate for. But we shouldn’t underestimate the power of incremental change.
Incremental change is embedded in these different sayings:
Look after the pennies and the pounds will look after themselves.
Death by a thousand cuts.
If you drop a frog in boiling water, it will jump out. If you put the frog in cold water and heat the water up, the frog will stay there and allow itself to be boiled to death.
An even more powerful example of incremental change is compound interest.
Take John and Sarah. Both invest £10,000 over 20 years. John at 4% interest/year, and Sarah at 5%/year.
|Who||Starting||Interest rate||Ending||Interest earned|
Sarah earns £4,900.40 more than John. This is 40% more. Through compound interest, the amount that John and Sarah have incrementally diverged to a sizable difference.
Incremental changes are hard to see, but they compound over each other, creating a radical change. Some examples of incremental technology advances:
- Processor speeds: Moore’s law shows us the incremental improvements in processor speeds overtime. Processors are now radically faster than in 1975 when Gordon Moore made his prediction.
- Battery life: Gradual improvements in chemistry and engineering have created generations of new batteries, each slightly longer lasting and faster charging than the previous generation.
- Mobile network speeds: Incremental advances in wireless protocols and infrastructure have improved the data transfer speeds on mobile networks.
- Display resolution improvements: Generations of new screens, powered by incremental improvements in pixel density and colour accuracy, have been released. Improving the clarity of text, images, and video.
These examples have the similar levels of impact as the radical advancements in technology, but are less easy to get excited about. Each incremental improvement compounds on the improvement before, creating a big change from start to finish, but in a series of tiny steps.
The current obsession with radical change
Naturally, because of the reasons I have laid out above, it’s easier to get excited about and obsessed with radical changes. We are in this position now, and most notably with AI; GPT-style large language models.
While the radical changes that have succeeded are lauded, it’s easy to forget those that have failed.
- Google glass in 2013, disaster.
- Amazon Fire phone in 2014… whoooo?
- Windows 8 removal of the start button and re-designed interface. Reverted in Windows 8.1.
- New Coke in 1985 with a new Coca-cola formula, lasted just a few months before being changed back to “Coke classic”.
- Segway in 2001, a personal transport device promising to revolutionise personal transport. Now a tourist gimmick in European cities.
In the UK the solution to our climate crisis is being dominated by two main sectors.
Nuclear Fusion as a source of virtually limit-less energy, and Carbon capture as a mechanism to deal with greenhouse gasses.
These are both radical changes, and there’s no guarantee that either of them will be effective or possible. A safer, clearer, and more achievable path would be series of incremental changes towards our climate goals.
Embrace incremental change
I want us to argue for incremental change. For small, easy to understand, easy to deliver changes. Particularly in software development.
Lets say no to big-bang radical changes, and lets embrace the long-slog that is incremental improvements. Making incremental changes in your codebase, in your team, or in your company is a thankless and tiresome job, but you can have at least the same impact as radical change without the risks.