I was at a presentation this week hosted by some local consultancies and supported by four major vendors in the cloud and serverless space.
The target audience was the bigger Dutch companies including banks and insurers in the Netherlands. There were a lot of slick salespeople there, many suits and the predominant smell was of cologne.
This was not a technical conference. This was selling a dream.
The dream says that you can overcome your slow old systems and transition to a smarter, faster world in the cloud using the power of Serverless and Kubernetes.
The dream is possible of course, but it’s typically sold as a ‘big bang’ – a vanity project for a senior executive to gamble against. And this gamble is proven never to work.
If you look at the thoughtworks blog on legacy you will see a list of assumptions and traps that can typically occur in transformation projects:
Firstly the poor outcomes they were seeing were largely a product of the organization; specifically it’s leadership, structure and ways of working. They thought by just selecting newer technologies, but leaving everything else more or less unchanged, that they would get different outcomes from the past. In hindsight this was clearly unrealistic.
Secondly the modernization was to be delivered by a large change programme [..]
Thirdly the desire for Feature Parity [..] promising to give the business exactly what they had today with somehow, behind the covers, the technology having been “improved”.
Some of these subjects and an upcoming book on these subjects are also talked about between Martin Fowler and Dave Farley in their discussion about Displacing Legacy Systems Patterns and Methods for Dealing with Legacy Code.
The article and the video go on to describe how in practice these pitfalls can be avoided. However, the number 1 question that this discussion raises for me has to be: How do you change your business to align with your technology ambitions?
Both the Thoughtworks blog and discussion made me realise a few things that some of the speakers at the conference got right.
All change has the potential to create legacy. The only way to avoid it is to keep working on it. And the best way to keep working on it is to align your technology with your business.
This brings a chance of not only successfully removing your existing legacy systems, but also preventing your new systems from falling into a legacy situation that much faster.
You cannot take on a legacy change project purely from a technical perspective. You also need to reorganise.