[Edu-sig] introduction

kirby urner kirby.urner at gmail.com
Fri Mar 21 17:30:51 CET 2008

On Thu, Mar 20, 2008 at 11:54 PM, Laura Creighton <lac at openend.se> wrote:

>  >We know about the 'driver' and 'thinker' roles and that the students
>  >should change roles.  We talk about it with students, but do not try to
>  >enforce it.
>  I've always had problems with that concept -- or rather, with the idea
>  that the 'driver' is the one doing the typing, and the 'thinker' is
>  the one doing the watching.  Some students I know think a lot better
>  when they are typing than when they aren't.  Some students who aren't
>  typing pretty much dictate what the typer is going to type.  So I don't
>  know if I am just doing something wrong, or if the model is unrealistic.

Hi Laura --

I think your point about randomizing, and your other point about
how the roles aren't always so cut and dried, are connected.

The real point of pair programming is the old adage "two heads
are better than one" (and yet "too many cooks spoil the broth"
i.e. just because two usually works doesn't prevent five from
being routinely disastrous).

In Vilnius, I was paired with this talent from Google Warsaw who
barely knew Python, but was through the roof smart and knew Java
already, so was taking this opportunity to suck up Python like a
sponge.  Since I'm happy teaching Python, our productivity was
very high, not saying other pairs weren't higher (you generally
don't need to "grade pairs" in XP, a corollary to the frequent
repairing operation, garbage collecting of bad karma that way).

In other jobs, I'm paired with this guy who clearly knows Python
way better than me, along with C, Eiffel, and everything else, so
I'm just at the feet of some guru, maybe having panic attacks
about the likely fate of my ego on this job.

And that can work.

I don't mind worshiping guys 'n dolls ** as long as we get the job
done.  It really helps knowing the randomizer will come along pretty
soon and split us i.e. I'm way more willing to be productive in
short term partnerships than "your pair programmer for life"
kind of arrangements.

Yes, it's only a matter of time before the psychologists fill the
shelves with their analyses of XP techniques, why they work, or
are dangerous, making the whole field way more introspective --
often not to the liking of engineers, who went to computing in
spare environments to escape a steady drum beat of mumbo
jumbo all the time.

More fun to make spaceships fly around in Blender or whatever.

But let's be clear about something else while we're at it.  I live
in Portland, and Europython in Vilnius isn't any "just anywhere"
either.  So I'm professionally involved with some cutting edge
XP proponents, and that's not equally true everywhere in the

A lot of colleges and universities have no choice but to
mirror corporate middle America or wherever and there's just
no way a true "anybody with anybody" XP shop is going to
emerge so spontaneously in the classroom, let alone in the
work place.  It's just not a part of the culture, whereas maybe
at Microsoft (where our guest speaker was from) it is.

Microsoft is enormously prosperous for a reason, not just
because Windows sucks

A lot of the Pycon talks were about "why Python sucks" in
various ways -- a whole genre, an inhouse counterculture.
Like one guy hates __import__, how it works now.  I'm not
saying I followed in detail, but that didn't keep me from liking
the vibrancy -- from __future__ looks bright.

And I *really* liked the All About Unicode talk.  Very precise
and clear, helped me a lot.  How ASCII became Unicode is
what we feed to 2nd and 3rd graders in our neck of the woods,
so basic to everything, like the birds and the bees.


More information about the Edu-sig mailing list