Sven is a great speaker, with a very natural style. His talk was about the current state of DevOps, how we got there, and what’s next. He talked about how working with software and computers is complicated: whether you’re working with just your machine, or a big bank of servers, things change over time.
Sven talked about Chef, Puppet, and Ansible in an opinionated and informed way. Chef is powerful, but has a brutal learning curve. Puppet is easier, but the Domain-specific language can cause you problems later on. Also, it’s convergence model doesn’t guarantee the state at a particular point, and that isn’t viable for many people. Ansible is much easier than Chef or Puppet. You can get a good feel for it in half an hour, reading through the docs, and it scales well.
Sven’s focus was on wanting to do Test-Driven Development-like things for servers. The benefits of tests are that they tell you something “works as expected,” and they let you know when something breaks. Ideally, you want to put the code for the app and the code for managing the server in the same repository. This leads to acceptance tests getting interesting: what state does the system need to be in the deliver the features? It lets you do important stuff like: when we deploy our web app, we know we have a web server that can run it. You can have your hardware as a dependency of your application.
Come and join us at meetup.com/Cape-Town-SPIN for process-oriented and technical talks on the third Wednesday of every month.