How to achieve clean structures, readability and maintainability

original image by:

Refactorable code is mandatory to react to changing requirements, adding new features, integrating user feedback, but also tuning performance, getting rid of old, redundant code and making the source code more readable.

But what is refactorable code? In my eyes, a code base is refactorable if a developer can confidently read, understand and then either extend the application as in adding new features or reduce it by eliminating lines of code. This goes beyond the extend which I assumed a refactorable code base to be before: reducing technical debt. It is part of it, but by far not all!

Bugs are fine as long as you can see them!

When we write code, we never do it perfectly — there will always be erros and thats totally fine!
Thats why we just hit the run button of the application or its unit tests every now and then to see whether the code compiles, passes its tests or hits a certain point in the application flow. After a change, we quickly check how it reflects in the processing stream. When things get messy and we need to find bugs, we leverage the IDEs debugger and just go ahead.

Imagine not having that: Imagine not having these quick feedback cycles of…

Hook into the Git lifecycle to keep your code clean

While working in different development projects, private and business, I’ve noticed that sometimes you simply do not spend enough attention on your commit or push to the repository and suddenly the build is failing or your source code is simply full or ToDo notes and other stuff you usually don’t want to keep as it only creates technical debt that requires more time to clean later than it would if you’d have done it now.

I also thought that while spending more attention obviously helps to prevent this, it won’t help all the time. After all we are all just…

Gerrit Stapper

Fullstack Developer, cyclist board-game lover! // We have all the opportunities in front of us — we just gotta do it.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store