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.”

cloversnotes:

cloversnotes:

cloversnotes:

This is my first coding assignment for my software engineering class that started today. It’s going to be a really good semester.

UPDATE: I got my grade back and

“100″

Since this post has gotten some attention, I feel like it’s worth mentioning that this was just the first half of the assignment.

The second half, which we weren’t made aware of until the day we were meant to turn this one in, was to trade USB drives with the person sitting next to us and MODIFY their “unreadable” code without getting any help from them.

This was to teach us two things:

1) In this field, you’ll spend more time working with code written by other people than you will writing original code from a blank slate. The people who wrote the original code will probably not be around to help you. Learning to read code is IMPORTANT, even if it seems unreadable.

2) There is a strong brotherhood/sisterhood among programmers and software engineers. Respect that bond when you’re writing code and documentation. In my professor’s words: “When you write code, pretend that the person who will have to maintain it after you’re gone is a homicidal maniac who knows where you live.”

This class and professor are incredible.

I’m only still a code baby but it is scary how precise and accurate programming code requests to ChatGPT can be. So like many tech jobs these days, the new skill is learning to create a prompt that gives the desired result from the AI and some basic understanding of how to stitch it all together.

The more I study programming, the more I miss the correlation of code to visual representation. Like my earliest coding that stuck in my brain is when I could translate HTML tables and CSS to the way a page is displayed. Tweak these values and the page looks different. It’s immensely satisfying and even after all these decades it’s a great feeling to use a scripting language to determine the way something will look.

Vs. the C++ programming I’ve been undertaking recently which has thus far been about mapping out programing requirements and systems to manage data that has no visual representation beyond perhaps a pivot table in a spreadsheet.

All of which is to say I probably won’t become a systems programmer, but I hope I can start to draw connections to how this translates to UI programming, or, dare I say it, gameplay programming and design?

Picking up all these new computer science concepts and thoughts on how critical it is to the future of our society and information management but I’m over here like I just wanna make a little guy run around and I want the camera to feel good and the UI should be light and easy to understand.