|
I have seen the light. It was bright in the extreme ;-) I've bought into eXtreme Programming - XP - for software development by small, 'in-the-same-room', programming teams. My enlightenment started on the train trip to Edinburgh on my way to the BCS Talk last Wednesday. Just before leaving I'd mentioned to Marc and Murray that I was off to the talk and they suggested that i take their research group's copy of Extreme Programming Explained: Embrace Change, 1/e by Kent Beck. What a great book. Kent has a great writing style and his humour and enthusisam permeates all aspects of the text. It's a pleasure to read and I did so avidly.
The talk by Brian Shearing was also excellent and about twice as many people turned up than usual. It was standing room only for the late-comers. Fortunately the 17:30 from Glasgow ran on time and I managed to get there just a minute or two after 18:30 and got on one of the last seats. But I digress...
Back to the book - I just finished it on the train the following morning. I must write a summary/review to capture what I thought were the lessons I learnt most from. If I had to summarise in one sentence it would be that XP does not really introduce new programming techniques but does change the dynamics and accepted wisdoms of develping software. Kent asserts that XP is a "lightweight, efficient, low-risk, flexible, predictable, scientific, and fun way to develop software." As primarily a hardware guy, I'd say XP is to software design what RISC is to hardware design. The prime directive of XP is to make it simple but no simpler. This is Occam's Razor applied to programming.
So what have I learnt? Since XP is really a process does it have anything to contribute to the process of teaching/learning?
But before I attempt to answer that question I'll reflect on my own teaching practices and how I'd hope these impact on my students' learning. I suspect that as part of this reflection I will identify strengths and weaknesses of my approach. Please bear in mind that I don't have a formal teaching qualification. I don't have a particular pedagogy or educational theory informing/driving my teaching. In fact, I'd go as far as to say that I don't teach in the traditional sense of the word. I prefer to think of it as mentoring. The question is can I be a mentor to 150 students? Most people - including students who think that I should act as a traditional teacher - would say that 'teaching' 150 students using traditional methods hasn't a hope in hell of working. I'd mostly agree with that opinion if I thought I taught in a traditional way or that learning at university is merely a question of being 'taught' where I am the sole producer/deliverer of the teaching material and the students are merely the 'consumers'.
In fact, although I suspect my teaching is fairly idiosyncratic it's probably not any more so than most university lecturers - after all we are a pretty eccentric bunch when it comes down to it! A comment by Terry (Greg?) got me thinking: is extreme learning a product of extreme teaching? This is an fascinating question. Not only do we now need to consider XL but we now have XT to contend with. I guess most of my students would categorise me as an extreme teacher - but not necessarily meant as a compliment B-}
<caveat>
At this point, I'd just like to remind the reader that my coining the term XL was sheer (manufactured) serendipity. It's not a term that's fallen out of a prolonged and in-depth studies of educational practice. It's not even particularly novel. Consider it a working title that, for the moment, has a certain cachet and currency. Anecdotal evidence suggests that there is some enthusiasm for the term - no doubt influenced byt the fact that youngsters today are into extreme sports. It's not my intention to hijack educational concepts that others may have worked so hard to establish. I will make mistakes which I learn from and I'll learn from others. So this is a personal voyage of discovery/learning driven by an (internal) meme. Although XL undoubtedly has many of the the hallmarks of a 'weblog' meme it was not my intention to promulgate it as widely as possible. In fact, if the meme takes on a life of its own then this could be counter-productive from my perspective. I'd like to explore the issues of XL without getting bogged down in debating the merits/demerits of the meme. Don't get me wrong, I am delighted and pleased that there is a dialogue going on between a small number of us right now. This dialogue is immensely useful. The other participants are keeping me on my toes and have much to offer in terms of their educational background. I only hope I am worthy of the attention.
</caveat>
Stiil with me? Then let me return to the question of whether the process of XP has anything to contribute to the process of teaching/learning? The following are my initial thoughts. They're incomplete. I'm likely to change them in the light of feedback and discussion. In fact, I expect them to change. Indeed, I welcome the change. This willingness to change and learn is itself a major feature of XP. [Much more about what XP is can be gleaned from the XP links given in recent contributions by Terry and Greg.] Of course, developing a software 'product' is different from developing understanding. Thus, I will gloss over those aspects of XP that have to do primarily with coding and will instead concentrate on those elements of the process that have a human dimension.
The four values of XP are:
- Communication
- Simplicity
- Feedback
- Courage
The fundamental principles of XP are:
- Rapid feedback
- Assume simplicity
- Incremental change
- Embracing change
- Quality work
And some less central principles:
- Teach learning
- Small initial investment
- Play to win
- Concrete experiments
- Open, honest, communication
- Work with people's instincts, not against them
- Accepted responsibility
- Local adaptation
- Travel light
- Honest measurement
How do the above relate to learning (and/or teaching)? Some of them not at all or only very tangentially. After all we are developing human knowledge not some software artefact. Let's concentrate on those that seem to hold promise for XL.
Firstly, the X{P,L} values:
Communication:
a vital aspect of the XP approach of project management which suggests open, immediate, and effective communication between teacher-student and student-student.
- Simplicity:
- Occam's Razor in action!
- Feedback:
- Please!
- Courage:
- An attribute all teachers have ;-)
As you can probably tell, the above values haven't been given much thought just now and I apologies for the flippancy. I just want to get this out to generate some discussion. But I digress...
Next, the fundamental X{P,L} principles:
- Rapid feedback:
- undoubtedly crucial to the development of knowledge.
- Assume simplicity:
- recasting this as taking one step at a time and building upon those steps, this principle has merit.
- Incremental change:
- in the early days of learning you don't want to over-burden the learner with too much complexity. As such this principle seems to be related to assume simplicity. Once learners have grasped the simple concepts, more advanced knowledge can be built up bit by bit.
- Embracing change:
- at first sight this appears to be at odds with learning. It's not as if the learners will be asked to forget everything they've learnt so far and accept/adopt a new doctrine. Hmm! OTOH ;-)
- Quality work:
- if we assume quality to mean the extent to which knowledge has been assimilated and the degree to which it can be applied then this principle is valid. Alternatively, the quality could be measured in terms of how good the learning material is and how quickly learners learn using it.
This last point suggests that we should perhaps consider one of the products of XL to be learning material. Does this constrain XL to 'practical' subjects. Perhaps it does favour such subjects but that's not really a downside. Or maybe it implies that it's a way to bootstrap a new course by involving the students themselves in the design process of a creating/updating a curriculum. Hold that thought - I think it may be important.
That last paragraph set me thinking about textbooks and other 'static' material. Although I'm all in favour of good textbooks underpinning the delivery of core teching material, I personally augment them with fresh material (generally) only available in online resources and/or generated anew by the students themselves. Getting the students to research this material and produce their own websites (for example) has been a great success. This is what has led me to believe that XL may be a great way of teaching more generally.
This thoughtrain is already too long. I hope it will generate soem discussion/feedback. I'll have more to add later.
Duncan
|