I think a workflow is really important. Of course everyone agrees, but I want to go further and argue that having the right workflow at the right time could actually determine how well things works out for you in the long term and even how passionate you are about this something in the future.
Many people’s first impressions of programming is incredibly intimidating since the amount of things thrown at them is really high and the number of familiar things (software used, relatable experiences) is really low. If you’ve taken a CS class or tried to learn programming, you probably remember the experience yourself. But most importantly, when you’re first starting out, the scariest thing is trying to step outside the box of what you know to work. The average person is not only new to the language or skill they want to learn, but also new to the software and the toolchain surrounding the language/skill they’re learning. The worst experience isn’t being wrong about something, it’s not knowing when or even how you’re wrong. Those experiences aren’t tied to CS as much as they’re tied to the toolchain since great software nowadays highlights when you’re wrong or shows you how to fix runtime errors in a meaningful way. But most importantly, great software is understandable and predictable so you know what to do when something fails, and exactly how to fix it.
...