On Tuesday, 11 November 2025 at 07:12:38 UTC, Peter C wrote:
Clearly correct code is necessary, but it's not sufficient.

Code also needs to 'sustaining' correctness - through maintenance, scaling, and change.

Adair Dingle, in his award winning book from 2014, titled 'Software Essentials Design and Construction', correctly asserts that it is 'software maintenance' that dominates the software life cycle.

k

So patterns and paradigms are not just an arbitrary choice.

Yes they are

They are the tools that provide for shared reasoning. They should be chosen precisely because they provide the guardrails that help to make 'correctness' easier to achieve and sustain over the life-cycle of the code.

Different code has different purposes.
Also different languages desire less or more patters.
Patterns were mostly designed for Java/corporate world.
Maybe C# as well.
But not all code is like that. There is no "silver bullet" and patterns are definitely not that as well.

'Good code' (regardless of patterns and paradigms) structures logic in a way that makes correctness easier to reason about -> collaboratively.

If the majority of the people who work with the code is fine - it's fine.

That is, if the person writing the code is the only one that can reason about it, then is certainly *not* good code.

Sometimes it is.
Because nobody else will contribute to his project anyway.
So he is writing in a style that he likes.

"The true measure of code quality, is that it's correctness is easy to reason about collaboratively." - me, Nov 2025.

Something is missing in this definition is quality of collaborators. Same code could be easy to reason for experienced devs and hard for 1st grade students.

Reply via email to