Agile teaching

education, teaching, software engineering, agile

Teaching and software development have more in common than one might think. Agile development, a popular methodology in software engineering, corresponds to good teaching practice: both teaching and software development involve building and changing knowledge in a system, and both require simultaneous awareness of the present state and the long-term goals. Good practice, in both contexts, acknowledge human limitations so we can work gracefully and efficiently.

As in a ship navigating across the ocean, in both software development and teaching, small increments of change get magnified over time, and constant small course corrections are less costly and worrisome than finding ourselves far off course after a period of inattention.

The human factors in play are similar:

I’ve prepared a table summarizing the correspondence.