Just went through a code file and replaced "target" with "recipient" in a bunch of docs and variable names, because I had had two senses of "target" and because I want to encourage less-combat-focused thinking among potential devs (which at the moment and for the foreseeable future is just me). Zero changes to code functionality (unless I messed up) and took maybe 30 minutes. Got me thinking about the goal of software development and who would view that time as "wasted".
From a short-sighted "measure user-facing functionality" standpoint there was basically zero progress made. From a "cultivating-code-understanding-entities" perspective, there are both immediate and long-term gains. I got a chance to review the entire file at a high level which improves my understanding of things even if no changes had been made. The changes increase clarity of a lot of documentation, as well as variable naming clarity in code which deals with both senses of "target" which now has clear separation between variables that refer to targets and recipients. If there are any other devs in the future, this will help them a lot. Even if not, by increasing my own development efficacy, the expected values for project-gets-shipped and overall-project-impact just went up. I've also helped myself not introduce the same ambiguity in all my future projects, because I'll remember this time investment, and I've bent the ideological flavor of the protect towards neutral/beneficial interactions between "initiators and recipients" instead of hostile interactions between "initiators and targets".
Overall, well worth the time investment if we consider all the subtler benefits, and not just a very crude measure of user-facing behavior. (Secretly, this is also a post about LLMs.)
#programming