I’m perpetually behind the curve, and this is simply an understanding of the pace at which I learn and apply information I take in. It took me decades to understand this simple but important aspect of the way my brain works. And I’ve also been taking programming classes for a few years now, slowly building up my experience and knowledge. People ask “so when are you going to start doing programming work?” from a sincere place of trying to nudge me to do it, and there is certainly an aspect of learning the thing that requires going out and doing the thing, but sometimes a bit of water isn’t enough to trek across the desert. Sometimes it takes time to properly fill the jar and go.

With all these years of programming lessons, it isn’t until today, watching this lecture video from a course on C++ Class Development in Unreal, it’s today that the core concept of abstraction in programming really sunk in. What is the specific problem I need to solve? And what are the details that matter in trying to solve that specific problem? There always details (god, details forever), but what are the specific details for the specific problem?

And I guess the simple example of examining the details/properties of a chair just skipped over to the part of my brain that responds to using the mundane to explain things:

“There is no core truth about a chair. There is no ‘this is the abstraction you should always use for a chair.’ The abstraction we use, the details that matter, depends always on the problem we’re trying to solve.”