I've found this too, as an individual. When running Windows I used to have to reinstall everything about once every 2 years. Took about half a day each time. I've reinstalled everything once in 4 years on Mac OS, from Time Machine, so I just left it running overnight. I don't know how long it actually took but I got up the next day to find my computer just as it was. Reinstalling things is annoying, but just doesn't take up enough of my time to be a problem worth fixing.
Then again, maybe if I had the ability to quickly set up a new development-ready VM, I'd come to find all sorts of unexpected uses for it? I've certainly found duplicating Parallels VMs handy a couple of times. But I have to say that I'm still skeptical that the time spent learning Chef and trying everything out would be worth it for me.
If I were looking after 5 (10, 20...) programmers then my back of the envelope calculations would look a little different.
I hear what you're saying, but I don't think the time spent learning Chef (or Puppet) is ever wasted. It's sort of like mastering a unix shell or getting good at automated testing: initially there is this steep learning curve where you are definitely less productive, but over time it pays huge dividends.
Have you ever had to install multiple versions of some package on the same machine? Have you ever had to help a colleague debug a weird issue that was particular to their setup? Have you ever had to work on the same project from multiple platforms and some component didn't work on one of them? Have you ever had a bug only appear in production because of a platform subtlety?
I don't think the time spent learning Chef (or Puppet) is ever wasted.
Exactly!
It might not look like it right now, but skills in using these tools are moving from cutting edge to essential job/contracting skills in the near future.
I don't know much about the Puppet community, but I do know that within the Chef community, the learning curve is flattening. The big thing of 2012 was that we're very close to getting these VM+Chef+Berkshelf setup in a way where you can get onboarded on an existing open-source application without knowing you are using Chef under the cover. How deep you want to dive in is up to you from that point.
Then again, maybe if I had the ability to quickly set up a new development-ready VM, I'd come to find all sorts of unexpected uses for it? I've certainly found duplicating Parallels VMs handy a couple of times. But I have to say that I'm still skeptical that the time spent learning Chef and trying everything out would be worth it for me.
If I were looking after 5 (10, 20...) programmers then my back of the envelope calculations would look a little different.