How many things in your work day can be automated that currently are not? 1%? 100%? Chances are that everything you do today can theoretically be automated. Of course this is an inflammatory argument. It is also likely that you have some low hanging fruit for automation that typically gets ignored. The funny thing about software development is that over time you automate all the stuff you did in the past. I don’t write HTML anymore, I write an HTML template, or generator. I don’t write generators anymore, I create a domain abstraction…. I don’t write domain abstractions anymore I write acceptance tests and an evolutionary algorithm writes the code for me. As I automate more and more of what I do, I get more and more time to automate more things. How do we gracefully transition into a future of automation? I believe we should be considering automation continuously, in this way we will be able to automate more and more things.
What about those of us who are content to repeat automatable tasks? It needs to be clear that the less we have to do day to day, the more effective we can be in the long run. In my career I have witnessed many developers who had thought their job was to do repetitive tasks to keep production up and running. We had automated everything they did and got back these developers.
I want to talk about today’s options for automation in our craft and extrapolate to the future! Then I want to discuss automation as a lofty goal and how we can promote the need for automation of our automation on our teams with some practical technical examples.
As a developer you will learn new automation techniques as well as communication techniques for discussions around automation as a priority with management.
As a manager or director you will learn how automation as a team goal can increase your teams productivity continuously, and how to eliminate waste in your system to write software faster and with higher quality.