How I Learned to Stop Worrying and Love Legacy Code
Many developers would love to work on brand-new, cutting-edge, greenfield projects, never having to deal with the mess of unintelligible code someone else left behind. But most of us spend most of our time maintaining existing code, and it is often spaghetti code with no unit tests, no documentation, and, if we are lucky, a comment that says, “Not sure how this works, but it does so don’t touch it.” We need to make changes, but we can’t even figure out what the code is supposed to do. You know your changes are just going to pile on and make it worse. You can’t change the code safely without adding tests, but you can’t add tests without changing the code. So how do you tackle this check-and-egg problem? You do it slowly and methodically, making sure to build a safety net along the way. Join Gene as he talks about helping to maintain and improve code on an infamous software project- it was so bad it made the national news. If you have inherited a pile of code and want to clean it up into something you aren’t afraid to touch, this talk is for you. You’ll hear about some tools and approaches that will help you turn legacy code into code you can understand.