

Others have covered this well. From my experience (35 years), most “developers” write stream of thought code. It reflects how their brains process, without regard to others. When I have agency, I can steadily refactor the code to reduce indirection, nested if.then, etc. When I don’t, I’m in danger of being too slow in completing the work. Just lost my job for that reason while working with a 1000 line service entry method with a cyclomatic complexity of 310 and 34 class parameters. Coupled with being the acceptance tester as well, it makes it near impossible to succeed.
For extremely complicated code I used to create simple diagram sketches that illustrated the dependencies. It acted as a series of bookmarks to help keep my place. I think I have a smaller “working space” in my mind than non ADHD programmers. I think they can keep all that complexity in their mind at once while I cannot.
In a way, I turn that into an asset by writing code that I can reason about, which by definition requires it to be SOLID, and with minimal responsibility per function.
Lately, I’ve been using AI to generate sequence and class diagrams of the code to act as a high-level view of what’s going on. Major time saver.
Until you realize republicans are on a PR offensive against empathy. Litterally, not figuratively. I’m not speaking in metaphors.