Agile Education

From birth onwards, at every point in our lives, we’re fully-formed human beings; neither too young or too old. There’s nothing else we need to be and no more we need to learn.

In this respect, the notion that people have “potential” is a false one. The idea of potential automatically implies that it’s unfulfilled. It’s like saying someone isn’t good enough yet.

Two of the most well-known methodologies of software development are Waterfall and Agile; and, with apologies to software developers, I’m going to summarise them here.

Waterfall involves developing a full specification for a piece of software, based on the most complete understanding of its final use we can possibly gain. Then, each component of that software is built, often in separate teams, and generally in stages. At any point up to completion it’s highly unlikely there will be any kind of usable product.

Agile, on the other hand, aims to build a workable (however crudely) product at every iteration. It assumes that the final specification cannot be fully understood. It also generally involves more people working together, across departments.

With those two massive over-simplifications in mind it seems to me that our current education system is the worst kind of Waterfall methodology. We teach abstract components based on some, at best, future specification of what a fully-assembled human being should look like. At worst we’re using a past specification.

The reality is that we can’t predict that future specification. We can’t guess at what will make a person most useful in ten years time. And it does seem to me that most of the talk is around usefulness.

Instead we need more Agile education. We should respect the fact that a person is a finished product at every stage of their life. We’re not building something for the future, we’re helping someone be as good as they can be right now.

And the outcome of this is that they will provide the specification for the future, not vice versa.