The Rule of Seven: how to overload the brain of a programmer for no good reason
javiercasas.com
javiercasas.com
I see the syndrome he criticizes everywhere, and it drives me up the wall. Seven names where two are enough make more work for everybody. Noise words like "factory", "manager", "state", "handle", "object", "metadata" don't belong in interfaces. Clue: every single thing in your program is most of those things! The words take up space on the page and in your brain that could be used for something real. "Get" is the most abused. "GetThis", "GetThat". Clue: every value-returning function gets something! Just call it that thing. "Get" just adds clutter.
BTW, "is" and "has" prefixes on predicate functions are fine. Those read like English in conditionals.
1. Name ten types of animal
2. Now name ten programming constructs
The first will surely come more quickly than the second, and that indicates that our working memory is related to our experience: familiar ideas can be recalled and reused faster and more fluidly.
The trade is the same one when choosing between copy-pasted and abstracted code: Lots of obvious steps, versus one big black-box step which has been given some name. You need to justify the new vocabulary to start justifying the black-box.
I don't see the relation to the Title's reference (how our working memory can only hold ~7 different items). Those studies are about distinct short term individual items.
This has nothing to do with programming abstractions, those aren't kept in our working memory (not like they seem to be describing). It's not like we can only remember 7 different methods at once.