Uncle Bob has a pretty clear opinion on who has the responsibility for a programmer’s practice/learning:
Professional programmers practice on their own time. It is not your employer’s job to help you keep your skills sharp for you.
Uncle Bob in The Clean Coder Chapter 6
Here Uncle Bob is talking to programmers, to employees. What I hear is “don’t expect your employer to help you out. If they’re not, that’s not an excuse.”
So, my question is, does that mean that employers should not provide any learning opportunities for it’s employees?
Sure, programmers are responsible for their own learning opportunities but could part of that be making sure to find an employer that provides those opportunities? I personally take some time outside of work to sharpen my saw, but I also look for an employer that cares enough about me to invest in me.
Here is my reasoning why an employer would want to provide learning:
- Hiring is hard and expensive. If you have people that are a good fit, it’s usually easier to improve their skills than to hire someone new.
- Learning opportunities at work can inspire people to pursue outside work opportunities. I have has several people that I work with start attending Utah Software Craftsmanship, Utah Code Camp and Coderetreats because of things that we’ve done during working hours.
What do you think? Should employers provide opportunities for practice and learning?