Clean Code

Table of Contents

The Importance of Clean Code

There are ongoing philosophical discussions on whether clean code matters and if it is worth investing time to read it. I won’t engage directly in this debate. Instead, a small example should suffice:

The Second Law of Thermodynamics describes a phenomenon widely known in physics, increasing disorder or entropy. Introducing changes, often referred to in programming, usually disrupts the initial structure of a program. The accumulation of changes and interaction between modules in a system increases complexity, which makes understanding and further modification difficult.

The Reality of Code

This is what our code most often looks like! Ugh…

Source: Bartosz Walter’s lecture on refactoring

Maintaining clean code is about balancing progressive and regressive activities. It depends on the amount and type of information received from the environment. Tasks related to bug fixes or functional enhancements need to be managed effectively to keep the code base maintainable and understandable.

(Text translated and moved from original old blog automatically by AI. May contain inaccuracies.)

Related Posts

Building Knowledge in Teams: Main Mistakes and Strategies

Building Knowledge in Teams: Main Mistakes and Strategies

The topic of knowledge management in teams is largely overlooked by IT leaders. There is a silent assumption that it happens automatically. To some extent, it does, as programmers are accustomed to constantly learning to stay ahead. However, this is not sufficient. It’s not enough for everyone (or realistically, half) to learn individually. If the team is to be effective, cohesive and up-to-date knowledge is needed. Knowledge of new technologies or solutions holds limited value compared to this.

Read More

Simple, Complicated, Complex, and Chaotic Systems: The Cynefin Framework

Perhaps you’ve previously encountered concepts such as complex systems, complicated systems, or complex adaptive systems, for instance when reading Jurgen Appelo’s Management 3.0, or when considering Ken Schwaber’s thoughts on the applicability of Scrum. This might sound intriguing, but it can be difficult to find logical sense in it if one lacks a certain theoretical foundation. This is where it’s worthwhile to examine Dave Snowden’s concept called Cynefin, which is based on complex systems theory, anthropology, evolutionary psychology, and cognitive psychology.

Read More

The Scrum You Don't Know

But we don’t have a Product Owner! The Product Owner is unavailable! We are working on several projects at the same time! Our deadlines are getting delayed. Testers do not have time to test our code.

Read More