Earlier quoted context omitted.
The hardest part I think is knowing that you should ignore all of the noise around different practices paradigms, and frameworks and focus on fundamentals. The best way is to look through and try to understand some very well written open source projects. I feel like I stumbled on doing this but for many, I think they probably just bumble along building web apps and taking much longer than necessary to understand fund…
I'm inclined to agree - there's a lot of cargo-cult practices in software development and it's hard to know that it's often over-generalised until you deeply understand the core of programming, which is essentially just breaking down big problems into small forward steps.
By that I mean work out how the core algorithmic parts first then interface to the lower level (normally experimental rigs) and finaly polish the interface