yeah unfortunately it’d have to be. Doesn’t appear to be much money in education.
there is definitely a dearth though. I’d be inclined to think “thats just the way things are and people ought to deal with it,” but I’ve chanced upon a few videos/articles here and there and it is a major difference between what you can learn from a professional educator with passion and talent for the craft versus what most of the available resources are: beginners trying to figure things out themselves and sharing what they learned along the way.
I think there is also an even smaller niche in a person who has done some tiny-team indie dev, in that they understand the sorts of problems we face and how they might be different to somebody with a smaller scope of responsibilities in a larger team environment.
It’s pretty easy to find an answer to virtually any technical question you can encounter but finding somebody who has some wisdom and experience to answer questions like, “how the hell do I manage all this work?” is extremely rare.
i agree completely. There are some cases where a solution is so simple it’s stupid to do anything more complex. But when I first started, I was doing every little thing in random ways and although the game ended up working, the code feels overly difficult to maintain, given how simple of a game it is. I sometimes wish I’d just wrap it up already because I want to move onto the next one but I think the time taken to “fix” the code is paying off. I’ll be at a much more advantageous start for the next project now.
Of course, in learning, I want to try every stupid idea so i don’t get hung up and slow myself down too much. But now I got some better ideas how I can form the code-base into a coherent whole, which seems to solve most of the major problems I’ve faced.
It seems that consistency is a huge part of simplicity for me. Like, even if the way I communicate between two classes is inefficient and involves too many steps, so long as it is the same principles for each situation-type, that’s still okay because I’ve essentially built an assembly line - only got to grind out the steps in a checklist and profit.
Of course, an efficient assembly line with the fewest moving pieces to get product made is better - but I just making a point that it seems like the more consistent my coding patterns have, the simpler life becomes.
I actually wasn’t familiar with the term callback, even though it’s something I’ve used quite a bit, especially when I was just getting started. I looked it up and right away understood what you meant by “callback hell”, lol. Another problem that I was focused recently on fixing is that if two classes are hard referenced, then that causes one to require the other to load at the same time. In my game it’s not actually causing a problem for the target platform but I think its something worth being aware of anyway. Someday I might need to port a game to switch and it’d be better to be in habit of writing more efficient code before then.
anyway, just rambling. In summary, what I learned here is “combining responsibilities might make some portions of the code more immediately legible, but it makes it much harder to reason about because it forces to you start asking questions about responsibility that never have a simple answer.”
So it’s better than to keep that question of responsibility stupid simple, even though that means spreading code out.