I really like the idea behind this discussion. Get ideas on individuals preferred method of development. So I’ll throw in my “mess of process” as a “don’t do it this way” use case scenario lol.
So, to start; I’m a 100% complete newb/hobbyist in this realm. I am working on a very ambitious project that is teaching me a lot as it touches on virtually everything. The idea/goal isn’t necessarily to actually finish the project, but to learn from and I have learned a lot; with still tons and tons to learn.
My current process is really simple. Basically I just have an end result idea to start. “This is what I want to accomplish, now how do I get there” mentality. Since I am still learning, I have to start a BP and mock up the idea; building blocks if you will. Basically start with the most basic end result and slowly add bits and pieces until I get the end result I want. Quite often starting with a static mesh component (or basic component for whatever it is doing) and then add functionality in from there.
This is/can be a very slow process as you are constantly doing changes -> compile, save -> test -> repeat. This was the same process when I first started learning PHP development back in the day. For me personally, this helps with learning as you can visually see what a particular change will accomplish that has the added benefit of helping later down the road.
Eventually, I got to the point in PHP dev that I could write an entire script on paper and/or my head until I could get back to a computer and bang it out of the keyboard and see how well it truly worked. This was when I was in middle school so I didn’t have my computer during the day and writing on paper was all I could do, lol.
At some point, I’ll get to the same point for BP as well as C++. Basic stuff worked out in my head and quickly thrown together in BP afterwards.
For the most part though, complex stuff will most likely always be “try this then check” method for me. This general concept is always how I’ve had to do and learn things, so I’ve learned how to get this to work for me in many ways rather than against. Its a good learning method for me, but once I’ve learned enough, then the “work it out in my head” method seems to be the go to.