Q: what are the two greatest challenges to software engineering?
A: cache invalidation, naming things and off by one errors.
Known that going back at least ten years. My "solution" is a simple letter digit naming scheme that lets me get a bunch of tiny functions ready and working, then come back and name them by what they actually do. Works out well for me, productively, but...
You don't want to read my code.
Source? er, I mean "citation"? Wait, I mean "on what grounds"? ahh dammit