It can easily be argued that agile grew out of the spirit of object orientation: its focus on change, on anthropomorphism, and on people. Alan Kay saw objects as a way for people to connect with their environments through their machines. As late as the 1980s people were still talking about anthropomorphic programming.
Fast forward 30 years and we witness the formal birth of Agile. “End users” dropped out of the vocabulary, and software became an independent artefact that only had to be “working,” as a consideration separate from “individuals and interactions.” And the focus on interactions between end-users and their software was displaced by interactions between developers. It was the nerds’ revenge. In the mean time object-orientation also devolved, replacing the end user’s mental model of networks of interacting objects with developers’ class hierarchies.
The future soundness of software-intensive products will require giving end-user interaction the same attentiveness as nerd interactions, and on being more outwardly focused and inclusive of end-user perspectives than we are today. Domain-specific languages and a return to the original conception of objects as extensions of the user can serve us well.
Video producer: http://gotocon.com/