Legacy Refactoring

Lorraine Steyn

View at original site


This will be a talk on strategies we have employed to "rescue" legacy code, and how you prevent your system from becoming the Big Ball of Mud. It's not code specific, but it is aimed at developers.

There is an almost inevitable slide into complexity that happens to most code bases. As legacy code is more ubiquitous than green fields development, I believe that we spend too little time figuring out how to get better at maintaining existing systems.

Of course, tools like refactor make the code changes much easier, but this is mostly a talk about a mindset of keeping code clean. It is also an appeal to developers to spend more time on design - more thinking and less typing.

I co-founded my software company 34 years ago, so we have plenty of legacy code! I will share some techniques that have worked well for my teams, in our ongoing effort to stop the slide into the mud!

About the Presenter

Lorraine Steyn, Simplifier-in-chief, KRS

Lorraine founded the software development company Khanyisa Real Systems (KRS) in 1987. The company now employs around 60 technical staff, and has delivered large bespoke projects for hundreds of clients. Lorraine is a hands-on CEO who spends 3-4 days a week working on production code with her teams, mentoring, assisting with design, and driving quality and learning.

Lorraine has presented on such varied topics as Domain-Driven-Design, compassionate leadership, clean code and refactoring, women in tech, and many Agile topics dear to her heart (often based in XP practices).

Related Resources

File-scoped namespaces and types
File-scoped namespaces and types
Organize code better and reduce bugs by using file-scoped namespaces and objects.
C# Top-level statements
C# Top-level statements
Use top-level statements in C# to reduce boilerplate code.
Global usings
Global usings
Organize `using` statements so they're out of your way.