Are courses\consultants a waste of money?
People will pay you to learn – no matter what you do in your developer life, people will pay you to constantly learn.
It doesn’t matter if you’re a developer, team lead, manager, consultant, speaker, IT Guy or anything – whatever you choose to do in your career will be a learning experience.
The courses I teach on TDD are never the same between instances. Each one if a bettering of the one before it, because things change between them: reality changes, my understanding changes, preconceptions are broken, and new ones are formed. So yeah, people will pay for my mistakes, as they pay for any mistakes we all do during our career.
Being afraid of being wrong is not a reason to stop doing something – doing is a way to learn. Can you say that you wasted money on learning VB6 courses a 8 years ago? does it matter? That’s how things just are.
If someone teaches a course on TDD, which then turns to a course on BDD – does that mean that you wasted your money on those earlier TDD courses, that you were actually paying for that someone’s mistakes in perception? what about the opposite?
IF I as a consultant were teaching someone to do X and a year later I realize it should have been Y all along – does that mean I’m a scam artist? or that I took advantage of someone? If so – every developer and consultant on the face of the earth should stop working right now – because we live in a reality that keeps changing as we learn from it.
It’s all in the doing. that is where the learning lies. and growth comes from actually being wrong, figuring it out and bettering it.
There are no courses that are always relevant. at the minimum they need small alterations. not to mention changing in full.