Development environments, configuration management and deployment
One of the things we have discovered while supporting Perch, is that many of the issues that come into support don’t have much to do with our software, and instead stem from development and deployment practices. Customers will develop sites in a way that doesn’t match the live environment, so on going live they are left patching up issues on the live site. Or they will deploy piecemeal using FTP, and find things break due to a core file failing to transfer.
At Smashing Conference in LA, I ran through the ways in which people could create solid development environments that did match or at least come close to production. I then went on to explain how to use third party deployment services to deploy code to live. Smashing have published all of the videos from the conference so you can watch the talk. Slides and resources are here.
Taking it a step further
At Future Insights Live I also spoke about Vagrant as part of my talk on Configuration Management with Puppet for Developers. This more technical talk covered some of the interesting things we do with Puppet – both in development VMs and production. Take a look at the slides and additional resources and I’ll be speaking on the same subject at Future of Web Apps in London later this year.