Clarifying my role @ Pycon for Teachers
Just to clarify a little more, how I'm envisioning Python for Teachers, in case some of you are thinking about attending: I'm wanting to stay anchored in the Pycon demographic, which is mostly private sector geeks with dependents in many cases, not many high school math teachers or anything close. My premise, then, is I'm a manager type in the Silicon Forest (not a lie) and am surrounded by large organizations that are short on geeks, in terms of having them on board, and don't even know it, because many big business subcultures haven't tuned in any of what we on this list probably take for granted: a thriving geek culture based in open source sharing and free access to tools. There're still stuck in the COBOL world, or even with MUMPS (see my "suMerian" meme, also math-thinking-l). As such a manager, I'm frustrated with the schooling around here, but rather than just whine and complain, I get access to classrooms and start showing off how it might really be done, were those of my breed allowed to interact with the kids (rarely happens, rules prevent -- even though I've been cleared at the state level to work with kids, with fingerprinting and everything, same as any union teacher). But among peers, fellow geeks, this is more just an excuse to tell some company war stories, share Python source, and enjoy the science fiction feeling of being in a culture that *we* had designed, rather than muggles, i.e. those who don't know what SQL means, even after enduring like four years of "mathematics" pre-college (not they're fault -- SQL doesn't make it past the relevance filters, gotta learn more about factoring polynomials, like you'll need on the job (snicker)). What if circus performers designed your gym class? It wouldn't be like it is. What if Pythonistas taught your junior how to program math objects, like vectors and polynomials. Why, he'd grow up employable, ready to rumble, ready for work, maybe without even going to college right away (that could come later, on the company's dime maybe). As a parent, you'd be pleased. Finally, junior is excited about hard fun, programs just for the love of it (pretty freakish). Steve Holden has a very clear sense of the job market as well, what's out there in terms of opportunities, trends. I'm hoping he'll help keep me focused, so if I get too pedantic with the RSA bit (a little group theory, easy Python), or with VPython vectors (rbf.py), he can suggest "too much like a math teacher" (subtle facial cues maybe) and I'll snap out of it. I'm a CEO not some nutty professor, praise Allah, plus I don't plan on doing too much of the talking. The premise of peer programming is peers after all, so I'm more just a guide. Speaking of the job market, I think I said on this list that I'm subscribing to the philosophy that no one geek ever gets to sit on a code pile as the only sole responsible reader and writer thereof. The days of the solo code pile are over, though of course we still have time alone in which to collaborate asynchronously. Kirby Urner 4Dsolutions.net
Kirby, This is very well written appeal, but in this mailing list, you may be preaching to the choir. What I would like to see is a discussion of *why* there is not more teaching of programming in high school. I can't seem to get an answer from the few high-school teachers and students I have asked. I suspect it has something to do with requiring all kids to have their own computers, not wanting the rich to have an advantage over the poor, etc. I've thought about teaching high school myself, but the bureaucracy seems overwhelming. At 11:37 AM 12/6/2008 -0800, kirby urner wrote:
...
As such a manager, I'm frustrated with the schooling around here, but rather than just whine and complain, I get access to classrooms and start showing off how it might really be done, were those of my breed allowed to interact with the kids (rarely happens, rules prevent -- even though I've been cleared at the state level to work with kids, with fingerprinting and everything, same as any union teacher).
But among peers, fellow geeks, this is more just an excuse to tell some company war stories, share Python source, and enjoy the science fiction feeling of being in a culture that *we* had designed, rather than muggles, i.e. those who don't know what SQL means, even after enduring like four years of "mathematics" pre-college (not they're fault -- SQL doesn't make it past the relevance filters, gotta learn more about factoring polynomials, like you'll need on the job (snicker)).
What if circus performers designed your gym class? It wouldn't be like it is. What if Pythonistas taught your junior how to program math objects, like vectors and polynomials. Why, he'd grow up employable, ready to rumble, ready for work, maybe without even going to college right away (that could come later, on the company's dime maybe). As a parent, you'd be pleased. Finally, junior is excited about hard fun, programs just for the love of it (pretty freakish).
...
Kirby Urner 4Dsolutions.net
I think you're spot on about the "advantage over the poor" thing, as our stronger public schools have a parent base that will fund and support Linux labs, whereas where my daughter goes, they can't afford enough chairs for the cafeteria, everyone has to spill out into Burgerville and Wendy's for some reason, fancy that (maybe some programming involved, some proprietary source we don't see?). But in Portland, it's a given that Linux is woven into our culture. We have theatrical events around open source (e.g. Ignite...! at the Bagdad) http://upcoming.yahoo.com/event/872418/ Torvalds lives here. We're the capital of open source, or is that Oregon City? So yeah, Portland is a rich city, very little sign of any economic downturn, lots of starving in the hinterlands per usual, because a lot of us learned a callous, neglectful, neo-Malthusian economics in public school, as that's what our grandfather's fathers thought made the most sense (Malthus was a London School of Economics geek, did his best to play world game without Google Earth, poor slob). My plan is to fly to Chicago and help bring those midwesterners up to speed, on the assumption my counterparts "back east" are handling New York, HQS of our BFI and so on. Actually, it's much smaller potatoes, not renting that blimp, just chatting with my peers, already "on the inside" in education (met a lot of you last year), and well position to help with the steering, keeping us moving towards a brighter tomorrow, wherein kids learn that "math is an extensible type system" and have Python right there on their desktops (with tons of other fun toyz), to drive that point home. My co-conspirators on this one are Steve Holden, a Gandalf in Python Nation (very high rank), and Ian Benson (some kind of Elf? -- not one of ours quite, sociality.tv ). These are both highly skilled guys (XY) and it's a real privilege to work with 'em, brings some balance to my day jobs, where I mostly work with highly skilled gals (XX). My HR chief, Suzanne, is like the smartest person alive, and Wicca wise (senior partner for whom DWA is named, my partnership, files and IRS 1065, business alias 4D Solutions per US Bank records, 4D Studios another moniker... I could go on). I guess my advice to the Obama team would be to avoid any "one size fits all" attempts to converge to some "national curriculum" like many do in Europe. Each of the 50 states needs breathing room and none of them need Washington DC to be bossing them around like they're slaves of some central know-it-all. We're a Federation, and this was never a monarchy. This is even more pronounced in my case for example, out here on the west coast. My reality includes such as Angel of the Winds, Spirit Mountain... Kahneetah, huge IT centers with state of the art software, leave Google in the dust in terms of sophistication in some ways. All very proprietary though, you'll probably never see the inside of these IT temples unless you get the tour before they open (how Mormons do it). Yes, I'm talking casinos, strategically positioned within semi-sovereign nations that reinvest profits rather wisely, and for the long haul, earning lots of community good will -- an economic asset even in troubled times. In sum, I feel confidant that the Silicon Forest has much to offer the Chicagoans, plus I was actually born there, so it's like another homecoming for me (only got into the city once last year, Pycon being in the outskirts, near O'Hare, still managed to miss my plane though, ended up driving all night with GPS to find Indiana, Pennsylvania where Jimmy Stewart was from). http://www.imdb.com/name/nm0000071/ Kirby On Mon, Dec 8, 2008 at 6:57 AM, David MacQuigg <macquigg@ece.arizona.edu>wrote:
Kirby,
This is very well written appeal, but in this mailing list, you may be preaching to the choir. What I would like to see is a discussion of *why* there is not more teaching of programming in high school. I can't seem to get an answer from the few high-school teachers and students I have asked. I suspect it has something to do with requiring all kids to have their own computers, not wanting the rich to have an advantage over the poor, etc. I've thought about teaching high school myself, but the bureaucracy seems overwhelming.
At 11:37 AM 12/6/2008 -0800, kirby urner wrote:
...
As such a manager, I'm frustrated with the schooling around here, but rather than just whine and complain, I get access to classrooms and start showing off how it might really be done, were those of my breed allowed to interact with the kids (rarely happens, rules prevent -- even though I've been cleared at the state level to work with kids, with fingerprinting and everything, same as any union teacher).
But among peers, fellow geeks, this is more just an excuse to tell some company war stories, share Python source, and enjoy the science fiction feeling of being in a culture that *we* had designed, rather than muggles, i.e. those who don't know what SQL means, even after enduring like four years of "mathematics" pre-college (not they're fault -- SQL doesn't make it past the relevance filters, gotta learn more about factoring polynomials, like you'll need on the job (snicker)).
What if circus performers designed your gym class? It wouldn't be like it is. What if Pythonistas taught your junior how to program math objects, like vectors and polynomials. Why, he'd grow up employable, ready to rumble, ready for work, maybe without even going to college right away (that could come later, on the company's dime maybe). As a parent, you'd be pleased. Finally, junior is excited about hard fun, programs just for the love of it (pretty freakish).
...
Kirby Urner 4Dsolutions.net
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
David MacQuigg wrote:
Kirby,
This is very well written appeal, but in this mailing list, you may be preaching to the choir. What I would like to see is a discussion of *why* there is not more teaching of programming in high school. I can't seem to get an answer from the few high-school teachers and students I have asked. I suspect it has something to do with requiring all kids to have their own computers, not wanting the rich to have an advantage over the poor, etc. I've thought about teaching high school myself, but the bureaucracy seems overwhelming.
David, I am the tech director and programming teacher at an independent school in the poor, benighted Midwest that Kirby mentions ;) (Indiana, to be exact). We teach Scratch programming and Lego robotics in the elementary grades, Python and a little Alice in middle school, and Java, Python and a little C in the high school. We don't require our kids to program at home - they have plenty of chances to work on things at school. Now mind you, most of our kids DO have machines at home, but only a tiny fraction (the hardcore) bother to install Python or Java on them. And here in Indiana, we have enough Linux computers in schools (some 150,000 as of the start of this year) that even poor schools COULD have the access. OTOH, as an independent school, we don't have layers of bureaucracy to deal with, so we can pursue what we value. Teachers (and even administrators) in the public sector don't have that ability. I've done training sessions and day-long workshops for teachers in the state (and in the Chicago suburbs), and here are the reasons I see that more schools don't offer programming: 1) Lack of qualified staff. Sadly a graduate with a teaching certificate (as required by the state) usually doesn't have anything like the background to teach programming, let alone do the sorts of things that Kirby has experimented with. 2) Numbers - at my school, 6-10 kids in AP Programming is considered a good year. In the public schools around town, in a short-sighted drive for efficiency, (but see item 1 above also) administration routinely kills any elective that can't get 3 times that. 3) The whole "integration" trend in tech in education - 15 years ago it was assumed that as technology became ubiquitous we wouldn't have to teach it, any more than you need to know about electricity to turn on a light. Of course, that analogy was bogus on both ends, but schools have moved in that direction anyway, killing what little programming they did have. Only now (and only very slowly) are they realizing that their students are the poorer for it. These factors (and others of course) combined with the many layers of bureaucracy create a negative feedback loop that is next to impossible for students, teachers or even parents to beat. In fact, I've talked to state education officials that nearly despair of making any headway in some of our schools. -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder@canterburyschool.org; 260-436-0746; FAX: 260-436-5137
Hey, great analysis you guys! Erratum: said livingroom.com but meant livingroomtheater.com , picks up where McMenamins leaves off in some ways, in taking it further with the adult content. I shot some Photostream on the way back from my breakfast with Allegra (Bucky Fuller's daughter), basically like a movie theater, but with Wifi and booze, if that makes any sense: http://www.flickr.com/photos/17157315@N00/2949088343/in/photostream/ Here's some analysis of my own, kicking off from what ya'll were just yakking about: <rant> Re hegemony of ETS (near Princeton), high schools kow-towing to what they think "colleges want" (because ETS says so): I'm happy to report that ETS does not have a monopoly on the testing idea, so that elite academies who want to specify more computer language savvy, as a barrier to entry (a filtering criterion) are free to do so. If you want to go to an "ETS school" then jump through their hoops, sure. But life is short, and you want to be smarter than that. In that case, consider looking for better testing opportunities, get a sense of what's really called for on the job (not like your grandfather's AP Calc testing, that's for certain (know what a GPS device is, how to use one?)). Re having to take something out before adding more in, not sure, as there's lots of padding to fill out 12 years, lots of boring repetition, persuading kids it's all so tough and difficult. Winterhaven wasn't like that, so my daughter and her cohort are sailing through chemisty, have no problem with 1 mole = Avogadro's number = how many carbon atoms in 12 grams of carbon 12 at sea level (actually, I don't think sea level matters, not a chemistry major). Horsepower whatever. Same stuff they learned in 8th grade, a lot of it, not waiting for ETS to approve. So maybe "compression algorithms" could teach us something valuable? I'm thinking all of 5th grade math could be compressed to one Spongebob episode, properly scripted, whereas Bill Nye the Science guy did most of science with little help from the big dummy textbook crowed (BDTs we call 'em -- lots more on Math Forum, also called "doorstops" (kids fall over backwards being so top heavy with backpacks, pathetic and a waste of Oregon lumber)). I like that we have 50 states. Here in Oregon, we have no compunctions about beating the pants off of California, when it comes to providing a stronger curriculum, plus we trust ETS to keep the other states retarded. That way, Silicon Forest reaps a great crop, and the rest of you slobs work in fast food (snicker). OK, I'm being mean. But really folks, what will it take? I think the fact that Python programming might involve lots of Chinese characters, is already getting viewed in that way in big corporations I work with (so-called silos), will prove a kick in the pants to the complacent. Universities will see those high tuitions as the huge deterrents they've become, what with native English speakers so valuable overseas. Get a free ticket, and a computer science degree at the same time, from someplace in Asia. Don't waste your time in the US, where they still think "programming" is something you do with a VCR (sneer). </rant> Looking foward! Kirby
David:
What I would like to see is a discussion of *why* there is not more teaching of programming in high school.
Especially given that 'integrating technology into the curriculum' is given such lip service. Most people equate technology with tool use. They seldom equate it with language and a set of ways to articulate ideas. Seems to me that's where education should especially be focused. I think part of the problem in the past has been the misunderstanding about tech jobs getting outsourced. I've heard people say there's no point in becoming a programmer, because all the jobs are going overseas. It's really kind of silly.
I've also heard the argument that most kids will never be programmers
Right. That's an argument I keep running into. I say, well, most kids won't become historians either, but they still study history. Vern:
3) The whole "integration" trend in tech in education - 15 years ago it was assumed that as technology became ubiquitous we wouldn't have to teach it, any more than you need to know about electricity to turn on a light. Of course, that analogy was bogus on both ends, but schools have moved in that direction anyway, killing what little programming they did have. Only now (and only very slowly) are they realizing that their students are the poorer for it.
This is a great point. It hits the nail right on the head for a lot of frustrating discussions I've had regarding putting programming into the math curriculum. - Michel
At 02:37 PM 12/8/2008 -0500, Vern Ceder wrote:
... here are the reasons I see that more schools don't offer programming:
1) Lack of qualified staff. Sadly a graduate with a teaching certificate (as required by the state) usually doesn't have anything like the background to teach programming, let alone do the sorts of things that Kirby has experimented with.
What we need then, is not programming teachers, but teachers who are enthusiastic about technology, and use programming as a tool. I would think any teacher of math or science would have no difficulty using Python and integrating it into their teaching. Don't teach it as a separate subject, but introduce each new statement as it is needed. For-loops, as an example, could be introduced as a tool to plot functions. The, when the students are comfortable with that (and if there is time), show them a whole new and more general way of looking at for-loops (for item in collection). I remember taking a class in typing. There was a lot of stuff on proper etiquette and formatting of business letters, and emphasis on speed and accuracy, but it was one of the most valuable classes I ever took. Do they still have something like that, maybe a business skills class? Python has a special role here, in that it doesn't require a big, focused effort, as would Java.
2) Numbers - at my school, 6-10 kids in AP Programming is considered a good year. In the public schools around town, in a short-sighted drive for efficiency, (but see item 1 above also) administration routinely kills any elective that can't get 3 times that.
3) The whole "integration" trend in tech in education - 15 years ago it was assumed that as technology became ubiquitous we wouldn't have to teach it, any more than you need to know about electricity to turn on a light. Of course, that analogy was bogus on both ends, but schools have moved in that direction anyway, killing what little programming they did have. Only now (and only very slowly) are they realizing that their students are the poorer for it.
This fits with Paul's theme that we don't need programmers because it will all be done for us, or Guido's that only the best students should study programming. I was once asked by a shop teacher why I am still doing programming. Aren't all the programs already written? We need lots of examples where programming is useful to non-programmers. I already mentioned the real estate agent needing to digest some data from the property appraisers office. For the shop teacher: How about a homeowner wanting to lay tiles, avoid wastage, and slivers that look bad along the edge. If you know Python, it is quicker to write a little program than find one, purchase and install it, read the manual, struggle with a bunch of stuff you don't really need, and maybe not get what you want in the end. I can think of lots of examples in engineering, but they are not ordinary problems that would seem relevant to high school students. What we need is a collection of relevant problems, easily solved with a quickie program.
These factors (and others of course) combined with the many layers of bureaucracy create a negative feedback loop that is next to impossible for students, teachers or even parents to beat. In fact, I've talked to state education officials that nearly despair of making any headway in some of our schools.
I would think the Federal government could play a positive role in encouraging modernization of our curricula. Are there any proposals for the new administration? I'm thinking of an effort similar to what the Internet Security Alliance is now making in the area of infrastructure for a more secure computing environment. There is a whole new enthusiasm replacing the despair of the last few years.
I would think any teacher of math or science would have no difficulty using Python and integrating it into their teaching. Don't teach it as a separate subject, but introduce each new statement as it is needed.
Right. That's the strategy I thought would be most practical working within the constraints of our math curriculum. I decided against doing something like a Python intro at the beginning of the semester, as student schedules are in flux for the first couple of weeks. The pace of a typical math course makes it quite possible to introduce little bits of Python here and there. The only problem has been resistance on the part of students who didn't see why they had to spend time on this when their friends in other classes didn't. That, or they were concerned that this would 'confuse' them, and they were worried about their grade. Silly stuff. And then this silly stuff would require my having to explain to various people about what this is all about. However, a lot of that has faded, and some students are even asking if we could do more Python. So that's encouraging. There is a big contrast between doing math the traditional way, solving equations by manipulating symbols in some boolean assertion to isolate a variable, vs. thinking computationally - creating sets of functions to model concepts. Introducing this stuff eventually requires rethinking the whole curriculum. But one step at a time. - Michel On Wed, Dec 10, 2008 at 7:35 AM, David MacQuigg <macquigg@ece.arizona.edu>wrote:
At 02:37 PM 12/8/2008 -0500, Vern Ceder wrote:
... here are the reasons I see that more schools don't offer programming:
1) Lack of qualified staff. Sadly a graduate with a teaching certificate (as required by the state) usually doesn't have anything like the background to teach programming, let alone do the sorts of things that Kirby has experimented with.
What we need then, is not programming teachers, but teachers who are enthusiastic about technology, and use programming as a tool. I would think any teacher of math or science would have no difficulty using Python and integrating it into their teaching. Don't teach it as a separate subject, but introduce each new statement as it is needed. For-loops, as an example, could be introduced as a tool to plot functions. The, when the students are comfortable with that (and if there is time), show them a whole new and more general way of looking at for-loops (for item in collection).
I remember taking a class in typing. There was a lot of stuff on proper etiquette and formatting of business letters, and emphasis on speed and accuracy, but it was one of the most valuable classes I ever took. Do they still have something like that, maybe a business skills class?
Python has a special role here, in that it doesn't require a big, focused effort, as would Java.
2) Numbers - at my school, 6-10 kids in AP Programming is considered a good year. In the public schools around town, in a short-sighted drive for efficiency, (but see item 1 above also) administration routinely kills any elective that can't get 3 times that.
3) The whole "integration" trend in tech in education - 15 years ago it was assumed that as technology became ubiquitous we wouldn't have to teach it, any more than you need to know about electricity to turn on a light. Of course, that analogy was bogus on both ends, but schools have moved in that direction anyway, killing what little programming they did have. Only now (and only very slowly) are they realizing that their students are the poorer for it.
This fits with Paul's theme that we don't need programmers because it will all be done for us, or Guido's that only the best students should study programming. I was once asked by a shop teacher why I am still doing programming. Aren't all the programs already written?
We need lots of examples where programming is useful to non-programmers. I already mentioned the real estate agent needing to digest some data from the property appraisers office. For the shop teacher: How about a homeowner wanting to lay tiles, avoid wastage, and slivers that look bad along the edge. If you know Python, it is quicker to write a little program than find one, purchase and install it, read the manual, struggle with a bunch of stuff you don't really need, and maybe not get what you want in the end. I can think of lots of examples in engineering, but they are not ordinary problems that would seem relevant to high school students. What we need is a collection of relevant problems, easily solved with a quickie program.
These factors (and others of course) combined with the many layers of bureaucracy create a negative feedback loop that is next to impossible for students, teachers or even parents to beat. In fact, I've talked to state education officials that nearly despair of making any headway in some of our schools.
I would think the Federal government could play a positive role in encouraging modernization of our curricula. Are there any proposals for the new administration? I'm thinking of an effort similar to what the Internet Security Alliance is now making in the area of infrastructure for a more secure computing environment. There is a whole new enthusiasm replacing the despair of the last few years.
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
2008/12/10 michel paul <mpaul213@gmail.com>: << SNIP >>
There is a big contrast between doing math the traditional way, solving equations by manipulating symbols in some boolean assertion to isolate a variable, vs. thinking computationally - creating sets of functions to model concepts. Introducing this stuff eventually requires rethinking the whole curriculum. But one step at a time.
- Michel
Yes Michel, but let's remember "schoolish math" isn't necessarily what the pros are doing to earn a living, with Mathematica, MathCad or whatever. Lots of degree holders in mathdom spend half their time talking to coders with humanities degrees like me, explaining what outputs from what inputs, in terms of algorithms per Knuth, i.e. the stuff you learn in K-12 isn't "computer poor" because of anything to do with real world mathematics in practice. The way I might do it in Portland (write ups in blogs) is take what we'd consider an advanced, college level theorem, such as Fermat's Little (not Last), and use Python to verify what it asserts, not the same thing as proving. What I say often @ Math Forum is something like: before you prove a theorem, you need to know what it means, i.e. you need to care. Having field applications helps motivate caring. We might not ever get to the proof in this class (heresy!) as these are underclassmen looking to understand RSA, haven't chosen to become mathematicians. What's so cool about Python is pow(2, 22, 23) is so easy to write and explain (no import required), whereas on a calculator you get digit overflow most the time, because of the overly small LCDs, hamster-brained programs (not open source). Per my Chicago talk, OSCONs before it, Texas Instruments is our only real competition in this picture in a business case sense, though "fear of snakes" (per 'Snakes on a Plane') is probably the biggest psychological barrier. North Americans are especially superstitious about snakes, owing to their making Eve do something bad in the Bible (what was it again?). Ruby has an edge in that sense (less charged) -- but then we have a Flying Circus, which helps a lot. We basically invite kids to "fill in the form": pow(2, prime - 1, prime) and verify that they always get 1 for an answer. Then comes the tricky part: does that mean that if pow(2, n-1, n) returns 1, that n must be prime? Having verified it's true for like a gazillion primes, the overly casual thinker might say "sure!". But of course this is a logical pitfall. "if a then b" does not support "b therefore a". That's where we talk about Carmichael numbers, look them up on the web (OEIS). Fermat's Little is a special case of Euler's more general one about totients (lots of fun Python), in turn critical for getting RSA to work (per Knuth). All before college, looks good on your application (that you went to this cutting edge Quaker school or whatever). Kirby 4D
David, Here's my small nugget of experience: My son goes to a prep school in southern CA, and when we met with his adviser at the end of 8th grade last spring to plan out his high school curriculum, I was floored to learn that there were no computer science classes offered at all anymore. Here's the reasoning the adviser gave for the dropping of the computer courses: The College Board is eliminating the advanced level AP exam for computer science. (There are two exams, Computer Science A and Computer Science AB. AB is being discontinued after 2009. Both use Java, by the way.) And why is the higher level exam being eliminated? Because not enough people take it. And here's my philosophical take on the larger issue: My personal opinion on computer language learning in high school is that it's not going to happen until something else is eliminated from the curriculum. And what needs to be eliminated is foreign languages. If that rubs you the wrong way, just hear me out. Most students are forced to take two or three years of a foreign language and come away with precious little for their efforts. Very few can speak it intelligibly or comprehend even simple conversations. And the bulk of what they do learn fades quickly from memory. In my opinion, we still force students to do this despite the failure rate in terms of actually learning the language because (1) we believe students are learning about a foreign *culture* in their foreign language classes, and (2) they're doing a type of logical calisthenics. But learning culture through language is like learning geography through travel. It results in a deeper understanding, yes, but it's way, way too inefficient. Foreign cultures can and should be taught directly. As for the logical work out, foreign languages have much too large a lexicon and are way too laden with exceptions for that. Their study quickly devolves into memorization hell. Computer languages, on the other hand, are small, have limited exceptional behavior, and are imminently useful. Two or three serious years of study in high school would make most students "fluent" enough in a language to use it in a job setting, not to mention the ability to pick up other computer languages, and to have much better problem solving skills in general. Plus, every compiler/interpreter is a native speaker eagerly waiting to correct their syntax. Required foreign language study made sense when learning "the classics" in their native tongues constituted being educated. Those days are long gone. So, to summarize, I believe the "plan of attack" needs to focus on opening up a hole in the high school curriculum for computer languages to squeeze into, and the foreign language study slot seems to be the right fit. At the very least, it needs to have the same status as Latin (how sad is that?), an option at some high schools for students who don't want to learn a modern day language. Mark On Mon, Dec 8, 2008 at 6:57 AM, David MacQuigg <macquigg@ece.arizona.edu>wrote:
Kirby,
This is very well written appeal, but in this mailing list, you may be preaching to the choir. What I would like to see is a discussion of *why* there is not more teaching of programming in high school. I can't seem to get an answer from the few high-school teachers and students I have asked. I suspect it has something to do with requiring all kids to have their own computers, not wanting the rich to have an advantage over the poor, etc. I've thought about teaching high school myself, but the bureaucracy seems overwhelming.
At 11:37 AM 12/6/2008 -0800, kirby urner wrote:
...
As such a manager, I'm frustrated with the schooling around here, but rather than just whine and complain, I get access to classrooms and start showing off how it might really be done, were those of my breed allowed to interact with the kids (rarely happens, rules prevent -- even though I've been cleared at the state level to work with kids, with fingerprinting and everything, same as any union teacher).
But among peers, fellow geeks, this is more just an excuse to tell some company war stories, share Python source, and enjoy the science fiction feeling of being in a culture that *we* had designed, rather than muggles, i.e. those who don't know what SQL means, even after enduring like four years of "mathematics" pre-college (not they're fault -- SQL doesn't make it past the relevance filters, gotta learn more about factoring polynomials, like you'll need on the job (snicker)).
What if circus performers designed your gym class? It wouldn't be like it is. What if Pythonistas taught your junior how to program math objects, like vectors and polynomials. Why, he'd grow up employable, ready to rumble, ready for work, maybe without even going to college right away (that could come later, on the company's dime maybe). As a parent, you'd be pleased. Finally, junior is excited about hard fun, programs just for the love of it (pretty freakish).
...
Kirby Urner 4Dsolutions.net
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
On Mon, Dec 8, 2008 at 6:57 AM, David MacQuigg <macquigg@ece.arizona.edu> wrote:
Kirby,
This is very well written appeal, but in this mailing list, you may be preaching to the choir. What I would like to see is a discussion of *why* there is not more teaching of programming in high school. I can't seem to get an answer from the few high-school teachers and students I have asked. I suspect it has something to do with requiring all kids to have their own computers, not wanting the rich to have an advantage over the poor, etc. I've thought about teaching high school myself, but the bureaucracy seems overwhelming.
It is a much more systemic problem than that. I put a lot of blame on the anti-intellectual forces in society that want education dumbed down so that they can lie to their own children, and then to the general public that grows up on this pablum. The fundamental problem is the insistence on factory-style efficiency in education, a trend started by Prussia in the 18th century. The result is that schools nearly always teach only material for which there is an official right answer, while in real life, whether business, government, the arts, or politics, all of the interesting questions have no right answer. The education of teachers was also radically dumbed-down in the Prussian system. Teachers were expected to know no more than was in the textbooks they would teach from, except at the highest levels in research universities. In this view of society, those who needed to deal with the unanswered questions on a daily basis (other than scientists and engineers) were to be children of the elite class who could afford to send them to private schools to receive an entirely different sort of education. The sort of exceedingly unpleasant system for generating leaders within an Empire that Kipling described in Stalky & Co. http://www.geocities.com/Athens/Academy/6422/rev0882.html The Prussian system was put in place by a King who wanted a compliant public that would make no attempt to interfere in his planning of the next war, and by a right-wing Calvinist church movement that the King preferred over the more liberal-minded Lutherans. _All_ of the Imperial powers and the churches and business interests that supported them supported this system for public education at home and abroad. Japan and the State Shinto authorities particularly loved the German educational system. Plus ça change, plus ç'est la même chose. To come back to programming, what we have had since the introduction of personal computers in the 1970s has not been programming but so-called "computer literacy", in which children might get as much as an hour or two a week in the computer lab. As an immediate consequence, nothing they learned about computers, or from using computers, could have any relevance to the curriculum. It is only now, with the advent of one-to-one computing, that we can even think of addressing this problem. If we compare the "computer literacy" approach to programming with the actual idea of literacy, we see that what we have been doing is pretending to think we are teaching reading and writing if we have one room in a school with 30 pencils and pads of paper, but no library, and we let kids practice handwriting for as much as an hour a week. But not at home, or in public, no of course not. But what would schools do with programming in a one-to-one computing environment? Well, I predict that if left to themselves, they would mess it up as badly as we mess up literacy, or math and science, or indeed any subject today. We only let students have access to an utterly boring and stultifying version. It is just like exposing children to killed or attenuated viruses in order to make them immune to those viral diseases. Our schoolbooks contain nothing like the versions of any of these fields that made the practitioners fall in love with the possibilities enough to put forth the effort to master some part of it, and our schools make far too many children immune to learning anything ever again. Earth Treasury has just recently, actually just yesterday, come to the conclusion that we are ready to rethink the notion of a textbook, and to rework the curriculum from top to bottom, in order to integrate Free Software into every aspect of every subject. Some things in education actually take place in the material world, of course, including gym, manual training, art, and music. Even there, the computer is an important tool. Think of all of the computerized athletic training and analysis systems of Olympic athletes and the pros; or of CAD/CAM; or digital art and electronic music. The occasion yesterday was the Program for the Future conference at the Tech Museum (San Jose CA), Adobe Systems, and Stanford, and the celebration of the 40th anniversary of Doug Engelbart's Mother of All Demos (look it up and watch the video), which laid the foundations for all modern user interfaces, and much else in software engineering, innovation support, and more. We have come nowhere near realizing it all. I talked with Doug, with Alan Kay (of Dynabook, Smalltalk and GUI fame) of Viewpoints Research Institute and with Mike Linksvayer from Creative Commons (look up their cc:Learn project) yesterday, and with Sugar Labs, FLOSS Manuals, and Open Learning Exchange before that, and they are all ready to talk about how we can do all this. So let me know about any subject and age range you want to work on.
At 11:37 AM 12/6/2008 -0800, kirby urner wrote:
...
As such a manager, I'm frustrated with the schooling around here, but rather than just whine and complain, I get access to classrooms and start showing off how it might really be done, were those of my breed allowed to interact with the kids (rarely happens, rules prevent -- even though I've been cleared at the state level to work with kids, with fingerprinting and everything, same as any union teacher).
We can let you at a few hundred thousand kids, even if not face to face. -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://wiki.sugarlabs.org/go/User:Mokurai
On Wed, Dec 10, 2008 at 1:57 PM, Edward Cherlin <echerlin@gmail.com> wrote: << SNIP >>
The occasion yesterday was the Program for the Future conference at the Tech Museum (San Jose CA), Adobe Systems, and Stanford, and the celebration of the 40th anniversary of Doug Engelbart's Mother of All Demos (look it up and watch the video), which laid the foundations for all modern user interfaces, and much else in software engineering, innovation support, and more. We have come nowhere near realizing it all. I talked with Doug, with Alan Kay (of Dynabook, Smalltalk and GUI fame) of Viewpoints Research Institute and with Mike Linksvayer from Creative Commons (look up their cc:Learn project) yesterday, and with Sugar Labs, FLOSS Manuals, and Open Learning Exchange before that, and they are all ready to talk about how we can do all this. So let me know about any subject and age range you want to work on.
This seemed an eloquent essay Edward, love poking fun at those Prussians, aka control freaks par excellance. Makes me start humming bars from Pink Floyd ("hey, teacher...") just thinking about it. Safe to say, much time has elapsed and for all the whining we hear from constructivists, as if their way had never been tried, it has been, with mixed results, which is to say we've had many success stories, generations of geek reared on Dr. Spock, Vulcan Spock and beyond, given microscopes, computers, free reign, lots of adulation in school, quite the opposite of the Prussian philosophy. Result: Apple Computer, Silicon Valley, Silicon Forest.... i.e., thanks to the long-ago demise of top-down authoritarian thinking in some circles, we have some thriving subcultures on planet Earth where the mind runs free, bringing good things to life (GE slogan), making the world a better place etc. etc. The question is: how to spread the love? My approach is to leverage local strengths, Portland's "good ats", and that's a pretty long list, including cartoon-making, music, comedy and, yes, teaching Python at a level most cities can't match, thanks to me, but also thanks to a lot of people, many unsung (so far). Tim Bauman comes to mind (one of my proteges, aka Ki Master George). Jason certainly (a fine teacher of SQL Alchemy and like that). Allison Randall, Damien Conway, R0ml, Ravencroft... a lot of us, right here on this list. I'm not saying all of these celebs live in PDX, just that there's reason to hope that we're not just now, at long last, emerging from the dark ages, as if Prussia had just folded yesterday. No, we've been enjoying the fresh air for a few generations now, and are ready to "bring it on" as one recent president put it (meaning something else maybe, always hard to decipher that guy, study Dan Quayle as a primer maybe?). Guido's CP4E was a continuation of a noble tradition, Alan Kay in the lineage, or Kenneth Iverson in my case (I encountered Alan much later, long after I'd fallen in love with APL at Princeton, Alan then in his "kill Smalltalk" slayer chapter (more in this archive)) I think the right approach is to think in terms of an svn tree, i.e. a trunk with many branches. We're *not* all converging to the same page (this won't be Prussia again, don't worry). Some of us, like me, will probably use J quite a bit, because of the APL heritage. Others will use Scheme / LISP, that Big Lambda family (Python's is little lambda). It's not about finding the "one right way to do it" (Prussian fallacy) but rather one of encouraging local faculties to seize control of their own destinies and not wait for "big publishers" to show them how it's done. We already have Cut the Knot, Mathworld, gazillions of math-oriented YouTubes. We're awash in relevant curriculum materials. The last time I said anything about Kusasa (which was quite awhile ago), it was to suggest there was no need for any new curriculum writing whatsoever, just people need time to catch up, process what's already out there. Of course that's a pretty stupid thing to say to a bevy of curriculum writers rarin' to go, but I think you see my point anyway. There's a documentary on Britney Spears on my TV at the moment, gotta run. She's one of those music millennium geeks I really appreciate these days, love how she figures into our circus, no dummy that grrrrl. http://mybizmo.blogspot.com/2008/10/pythonic-math.html Kirby
participants (6)
-
David MacQuigg -
Edward Cherlin -
kirby urner -
Mark Libucha -
michel paul -
Vern Ceder