Learning how to program is hard. I often find that university courses and boot camps miss important aspects of programming and take poor approaches to teaching rookies.
I want to share the 5 basic pillars I believe a successful programming course should build upon. As always, I am addressing the context of mainstream web applications.
A rookie’s goal is to master the fundamentals of programming and to understand the importance of libraries and frameworks.
Advanced topics such as the cloud, operations in general, or build tools should not be part of the curriculum. I am also skeptical when it comes to Design Patterns. They presume experience that beginners never have.
Test-Driven Development (TDD)
TDD brings a lot of benefits. Unfortunately, it is an advanced topic that beginners are not entirely ready for.
Beginners shouldn’t write tests. This would be too much for their basic skill levels. Instead, they should learn how to use and work with tests.
Read more at DZone