10 years in, I have nailed it!
I can now safely say I can design an engine that is easy to adjust and manipulate. Let me explain. Gone are the days of spaghetti code, where one adjustment to one aspect of the engine, threw everything into disarray.
So, how? How did I achieve this? What realization did I come to? Simple, hierarchy. I am a self taught programmer and the realization and implementation of systems that vernally work from top down, but certainly can go bottom or sideways if needed has replaced the soggy spaghetti mess I had been used to.
When I go back to a project, even made last year, it is layed out and certainly better than any work the year before that, but there was still an element of guessing. Not anymore. Now, I can easily move from area to area, make adjustments and updates that go in with out a hitch. If there are any hiccups, I can trace the issue rapidly.
This has multiplied my creativity 10 times over as it has freed up my mind from bewilderment and puzzlement to joys coder. Amen.
A simple example would be my current project, Golfy Golf. A game with 3 game modes, 6 worlds, and 120 levels. Quite a feet to work solo and complete this project in 8 weeks time. So how did I do it?
Consolidation, streamlining, singularity, whatever you want to call it, for instance, where I would have made a scene for each level, a few years ago, I now have a single scene, with a flexible engine, that can handle any level requirements. The result is, if I need to update any aspect of the game play level, it automatically account for each level I have made or will make.
I know this may sound pedestrian to the real Jedi (and some Sith) coders out there, but for me, it feels like I have finally hit, official expert levels.
Of course the example is just one in an engine of countless Manager's and Units.