Good thinking Paul, about the balance between optimism and skepticism. We do need to revisit old designs, and admit their weaknesses.
USAers still seem in denial about their infrastructure. A lot of it's still good, but was meant to be maintained, not neglected. My hope is that infusions of data rich content will help people feel more in the driver's seat, in terms of at least tracking what's going on. Python-the-language is helping with this (at Google, other places). Then we'll need a lot more teams in the field, tackling specifics (again, the overview versus 1st person motif, familiar from war game simulations, and now I'm saying in world game as well). 2nd person enters with this sense of being on a team (we collaborate). Python has a role to play here as well. Perhaps we're somewhat off on a tangent in discussing simply the Dness of the thing (2D vs. 3D vs. 4D or whatever). Perhaps more to the point are the modes we access: (1) a creative brainstorming mode, more playful and open to novelty (2) a getting down to business, activist phase wherein we actually implement and make happen (3) an awareness-of-assets phase, an appreciation for what's already at our disposal, what's already invented and downloadable and so on. I summarize these as the BE, DO and HAVE modes or phases, and did an early collage about that under the heading of general systems theory (GST): http://www.grunch.net/synergetics/gst1.html In CS terms, we have design phase, coding phase, and legacy software and hardware. The legacy stuff needn't always be approached as burdensome though -- that's not the creative attitude. Good designs recycle and reuse, have a role for retro. FORTRAN still offers some dynamite libraries. We simply wrap them in our newer OO APIs. The strength of Open Source is we allow, encourage and foment copying, as the precursor to studying and improving. We celebrate the relevance of Having (over simply Being and Doing). Anyway, when it comes to Python in Education, I like to think of the ways in which Python might be able to amplify and improve one's experience in all three of these modes. Whether that involves 2D, 3D or whatever-D aesthetics is a somewhat orthogonal and I dare say somewhat irrelevant issue. We want to get work done, and so we need to play, we need to make happen, and we need to keep track and recycle. Python has those capabilities: it reads like pseudo-code and so is suggestive and encouraging of playful exploration; in production settings it generally does a reliable job of handling real world responsibilities. It may be in this last area (of Having) that Python is currently weakest. Like, Perl's CPAN is the stronger HAVE technology. But I'm not despairing. There's lots we can do ala the mythical Vaults of Parnassus, to keep our vast and growing inventory of assets accessible and relevant to future selves. Kirby _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
