Indeed, this is the most important skill we need next to coding. Especially in a remote work culture.
Very interesting conversation between Uncle Bob and one of the recent critics of his work regarding performance. I like how he admits some faults in the way he presents things and try to improve for later rather than trying to be right. Some people should learn from that. There's clearly a tension between performance and what is described in Clean Code, it'd be pointless to deny it.
Definitely this. I think this could have turned into a good term until it was used for everything under the sun. It's about maintainability first, not just about what you like or not.
Development is and has to be a team sport indeed.
Good musing about simple code and complexity. We definitely should avoid unwarranted complexity in our code, or at least try to prevent it's spreading.
Having taught quite a bit at the university, having interviewed quite a few junior developers... I have to agree what's proposed here is missing from most curricula. I wish this would be taught more systematically. If not at least students everywhere should know this online course exists.
Good points, this shows quite effectively the problem with blindly following rules without keeping in mind the reasoning behind them.
Good piece. I like how it frames the debate, asking the right questions on where might be the assumptions on how testing is done.
A good set of skills to develop to bring technical changes to a project. It doesn't need to be overwhelming or a fight. If you doubt, if you have empathy and if you slice the proposals it can become doable and help the people around you.
Excellent piece about naming things in code. The conclusion is perfect of course: it's hard but it pays off.
Lots of very good points, I'm a proponent of TDD but I strongly agree with this. If it's painful and not fun, find a way to do it differently. There's likely a tool or some API you miss. Manage your effort.
Definitely this. I regularly try to pick up new languages for this exact reason. Every time it improves the way I use the languages I already knew.
Very good list. It sets the bar very high! I know most people will fail on a few of those items. It's fine this gives a good direction and something to aim for.
Lots of good insight for a long career as a programmer. Definitely a few things I live by and a few... I tend to loose sight of. More progress to be made.
Indeed a good list of attributes. Not sure if that's the only attributes you want in a team but that's definitely must haves in at least one person.
I definitely recommend adopting this mindset. Been doing most of that for a long time and this definitely helps.
Very nice catalog! Looks like a useful reference.
Hear hear! It's not supposed to be easy, you need to hone your practices.
Very interesting musing about the technical terms we often use wrongly and how it difficult it is to be understood.
I don't quite subscribe to some of the terms used (even though I see the point of not calling this API). Still I think this is a very good way to approach design, it's also why I like TDD, the tests force you to see how the code is used. If it ain't pretty there's a problem.