If one thing has been made absolutely clear in the software development methodology revolutions of the last decades, it's that automation is essential. In our field, we care particularly deeply about automated testing as the linchpin of continuous delivery. More simply put, automated testing means we give our customers new things less likely to disappoint them more often. But we often don't think about automation outside of this context. Automation is a deep and sometimes perplexing topic. On one hand, it is the long lever with which we as developers are moving the world (malleable automation is the fundamental achievement of the digital computer). On the other hand, automation threatens livelihoods all across the advanced industrial world. Individuals and governments protest the proliferation of robots which can do jobs formerly the domain of human beings. And of course we have the same tension in our own field, with the continued debate over the place of manual testing.
Automation may be the future, and it may be inevitable, but it shouldn't be unexamined. Together we will explore a brief history of automation in order to understand its pattern and trajectory. With that insight we'll be able to see more clearly what lies ahead, both in the field of test automation specifically (with examples from my own work in mobile testing and dreaming about testing the Internt of Things) as well as in technology in general. We must not engage in automation for its own sake, fun as though that might be for nerds like myself who love to control things with code. If we don't lift up our heads and look around from time to time, we run the risk of being automated away ourselves! As an industry, how do we engage with automation (in testing and otherwise) in a wise and humane way? As you can imagine, the answers to these questions go much deeper than shipping your app incrementally faster! So join me in thinking critically together about our shared backdrop of automation.