[Edu-sig] More thoughts on CP4E (what it means to me)

Kirby Urner pdx4d@teleport.com
Thu, 18 May 2000 11:45:00 -0700


At 07:52 PM 05/18/2000 -0700, Dennis E. Hamilton wrote:
>The Euclidian GCD algorithm is also the very first algorithm introduced
>in Volume 1.  It is used for the initial discussion of what constitutes
>an algorithm, the conditions that an algorithm satisfies, and so on. (In
>the 3d edition of volume 1, Fermat's last theorem is indeed downgraded
>from difficulty [M50].  I can't remember if that leaves any [M50]
>problems in the book!)

Yeah, I've been noticing the references to Euclid's Algorithm
in Volume 1.  I think I'd like to own Volume 1 eventually as 
well, eventually.  Volume 3 too.

>Meanwhile, happy birthday!  For a long time, ACP vol.2 was one of the
>most dog-eared and referenced books in my personal library.
>
>-- Dennis

Thanks.  Knuth's volumes are obviously a gold mine.  I've 
looked at them before, but never owned or studied them in
a lot of depth.

I think a lot of what's in Knuth can/should be translated
into to math-through-programming approach simply because 
now we have simpler languages (e.g. Python) and don't have 
to think in terms of the assembler-style MIX language he's 
using (important for computer science, but again, I'm 
looking through the eyes of a garden variety math 
teacher/student).

Back when cars were new/rare, you had a lot of "professional
drivers" around, many of them into racing, but also driving 
for others (i.e. as chauffers -- still requires a special 
license).  And of course we _still_ have lots of pro drivers 
in the picture, but we also just have a lot of people who 
just drive cars (without being pros or anything).  When 
people ask me what it is I do, I don't say "I'm a driver" 
(even though that's part of what I do).

By analogy, I think CP4E means a lot more people programming 
computers, but not thinking of themselves as "professional 
programmers" (in the sense of being "software engineers").
It's not even the same thing as being an "amateur" exactly.
I'm not an "amateur gourmet chef" just because I know how
to follow a recipe.  It's just a basic skill, and I'm as 
good at preparing food as I need to be at this time in my 
life.  Just because I can change a light bulb doesn't make
me an "amateur electrician" either.  I type, but don't 
think of myself as a "professional typist".

Likewise, we'll have a lot more people who feel competent 
to type some of their own code into a computer, maybe mixed
with code by others, run it, debug it, and get results, 
without really thinking of themselves as "amateur software 
engineers" -- no, they're just able to program some, just 
like they can drive, scramble eggs, change a light bulb,
put up a web page.  No big deal.  Part of what every kid 
learns.  And there will also be those who study the art 
of computer programming in more depth, aspire to be pros.

In sum, I don't think CP4E necessarily means "teaching more 
kids to become programmers" in the sense of "professional 
programmers" (although I expect that'd be a side-benefit).  
I think it means looking at programming as just one of those 
things people may do from time to time, like gardening.

Sociologically speaking, I think this is happening with 
or without any funded initiatives such as CP4E.  What 
we're seeing is a lot of retirees with computing skills, 
acquired in their professional lives, and now hanging 
out with their grandchildren.  The kids see older folks 
enjoy "puttering around on their computers" much as they 
used to see older folks "puttering in their gardens".  
They get the idea that computer programming is something 
you do for fun, along with playing electronic games.  
It's a recreational activity.  And part of the fun is 
teaching programming skills to younger people, watching 
them learn.  

In this way, an art or science percolates outward and 
into popular culture.  A next generation grows up without 
the bias that you need some special qualifications or 
training to engage in activity X.  No, you just needed 
to have a parent or grandparent who was into it, and 
had the time to show you the ropes.  We've seen this 
pattern repeated throughout time.

Kirby