Extreme Teaching

"Extreme Teaching" was coined by AlexChaffee to describe an iterative, agile classroom teaching method. Basically, you divide the class time into iterations, and allow the students to prioritize what is taught during those iterations. The teacher plays the 'developer' role; the students are the 'customer.'

It's written up on the ExtremeProgramming YahooGroup here: http://groups.yahoo.com/group/extremeprogramming/message/63579

The content of the original message is pasted below, but there were some interesting replies on the YahooGroups thread, so I recommend you follow the link if you're interested.

AlistairCockburn points out that this is an example of ProcessMiniature, like ExtremeHour. (He also approves of the term InformationRefrigerator, though thinks that InformationCloset? is more culturally appropriate for him.)

From: Alex Chaffee / Purple Technology <alex@j...>
 Date:  Fri Oct 11, 2002  6:41 am
 Subject:  Extreme Teaching

(I just wrote this up at


where you can see my other recent XP diary entries... But right now
 I'm so psyched I had to share this experience directly. Thanks to
 JoshuaKerievsky for turning me on to truly interactive classrooms.)

Wow. That was fun.

My friend Sarah is teaching a class at CalBerkeley Extension (or "UCBX" as the cool kids say) on Web Design. At 3:00 she asked me to guest lecture for tonight's 6:30 class. The schedule (which she drew up at the beginning of the semester) said "Part 1: iterative design. Part 2: web technologies". Instead of separating them into parts, I had a great idea:

Use an iterative methodology to teach about web technologies.

We brainstormed for 10 minutes, writing down technology topics on index cards ("Flash", "HTML", "Client-server", "Database", "Java"). Came up with at least 50 of them.

When the hour was nigh, I packed up my cards and my kitchen timer and biked over.

So first I gave a brief lecture on methodologies. I discussed a phased approach (e.g. the Boehm Waterfall) versus an iterative approach (e.g. the Boehm Spiral). I then said we were going to "go meta" and structure the rest of the class using an iterative methodology -- one we're going to make up as we go.

I then gave Kent Beck's "TheseAreMagicCards" speech, only the magic part was "Anything you write on them, you will learn."

So "Desire is limitless, but resources are finite" which means you have to prioritize. We had 50 cards but we weren't going to be able to cover all of them. So which ones are most important?

Our process then went like this:

5 minutes: The Planning Game: lay the cards out on a table. Sort them in order of priority. If desired, write new cards or split old ones.

20 minutes: Teach. I pick the top card, give a brief lecture, then ask for questions until the students are satiated. Rip it up and make a mark on the board. Repeat until the kitchen timer rings.

5 minutes: Retrospective. What did we learn? What was our velocity? What problems arose? How can we change our process?



The planning game *engaged* the students from the get go, got them talking to each other (I stepped aside and didn't participate in the prioritization), and "broke the ice" and encouraged them to ask questions and talk amongst themselves.

The 5 minute timer helped stop "analysis paralysis" -- even though the students didn't know what half the terms meant, they were able to make priority decisions, and didn't waste time in research or speculation mode. After the first 20 minutes I'd used enough of the terms, in context, to give them a bit more foundation from which to choose the next set; accordingly, the top cards were a totally different set after the second planning game.

The retrospectives allowed us a chance to examine and change the process itself. This is one of the subtle advantages of an iterative process: it schedules time to reflect on the process, rather than just being heads-down in crisis mode all the time.

One change we made was, students weren't discussing among themselves enough, so we tried adding "after every technology topic, discuss how you could use it in your own web site."

Another was, "Instead of Alex or Sarah answering every question, if a student knows about the topic, they should lead the discussion."

Finally, for the final iteration, they came up with a change that dazzled me: they proposed we change the facilitator! So I sat down, and someone else stood up and ran the meeting: He picked up the timer, set it to 5 minutes, ran the planning game, and so on. I was tickled pink to see the process I'd established running without me, and to see their creativity within (and beyond) the rules I'd originally set.

(When the chosen topic was "API", one of the students raised his hand. "Yes, Spencer?" "Yes, I think Alex knows about that one." Laughs all around.)

Since it was the last iteration, we didn't have a full 20 minutes left, which provoked a discussion of how to measure the velocity with different units, whether to alter the estimates, and so forth. Excellent stuff.

Many process observations happened inside the retrospective. For instance,

After we added the "discuss an example" practice, our velocity went down. Why? Some suggested it was the extra discussions. Another thought it was getting late and people were sleepy. Or maybe we're getting into more depth on each topic because we're more comfortable with the process. How can we experiment to verify each hypothesis? Is the lower velocity acceptable, or should we reduce the scope more? Etc.

After 2 iterations I took the "mark on the board" chart and used that data to make a new Big Visible Chart (by the way, when you describe this, take a beat between saying "BVC" and saying what the letters stand for -- it gets a good laugh) tracking our velocity across time. This gave me the opportunity to compare InformationRadiators (BVCs) and InformationRefrigerators (MS Project) and some other Alistairisms.

I'm definitely going to teach my next "real" class like this, no matter what the topic. Wow. It was fun and educational for me and for them. All that stuff they say about empowering the stakeholder and engaging interaction might be true after all :-)

Not Extreme as such but still fairly radical (I think):

I read recently that one of the physics prof's at TrentUniversity? (Peterborough, Ontario) doesn't have static lecture notes. Instead he assigns readings from the course text and then students can log onto a course website and list topics or areas they had difficulty understanding on their own. Before the next lecture, the prof. has a look at what the students are having difficulty with, and only lectures on those areas.

I thought that was pretty cool.


View edit of November 16, 2004 or FindPage with title or text search