In every brownfield project I have ever worked on – and I have worked on a fair few – there is a common pattern I find. Developers either name their variables incomprehensibly, or they avoid using variables at all. Chains of function calls
...
2021.04.27
In a previous blog post1 I talked about an article claiming that reading source code was not like reading natural language. The original post referred to an article from “Science Daily”2, however there were far too many details missing, so
...
2021.04.06
While analyzing and editing source code, much of the work to be done is rather straightforward. Many business applications are data stores with a user interface so a non-developer can manage the data.
Even these applications, however, intro
...
2021.04.03
In the past 25 years, or so, it has become popular to consider high-level structure of programs in chunks defined by a group affectionately referred to as the “Gang of Four”. They wrote a book called “Design Patterns”1 which laid out common
...
2021.03.27
This is part three of a multi-part series on naming things. Part two will be useful1.
When looking for the right name for something you can end up with a pretty long name. In part 2, we looked at capturing conditional context by extractin
...
2021.03.25
I realized a few years ago that one of the most important aspects of writing software, to me, is to build it for people. For several years, I thought, given enough research, there was a technical solution out there that would help me to fin
...
2021.03.23
Imagine this scenario:
Two people are sitting at a conference, side by side.
One of them says, “interfaces aren’t everything”.The other person says, “I would never work in a language without interfaces”.
This actually happened. The first pe
...
2021.03.18
This is part two of a herminyherm-part series on naming things. Part one might be useful for you1.
Though naming primitives1 is a nice way to start spotting repeated values in your code, I believe naming really starts coming into its own
...
2021.03.15
I read an article the other day (which I will not cite, due to unsupported claims) that stated reading source code is not like reading language. They cite this article on an MIT study which states that reading code is not like reading langu
...
2021.03.03
Something I learned about years ago, and I continually preach is names. I could (and likely will) write at length about the hows and whys. I will, however, begin with a short story.
Story TimeI worked with a couple of other developers who,
...
2021.02.22