[Edu-sig] python vs processing for introducing programming?
kirby.urner at gmail.com
Wed Oct 31 18:52:19 CET 2012
I hope you stick around Thomas. I'm one of the old timers here but
not a list owner or moderator.
My initial recruitment into Python was through my search for ways to
do 3D (spatial) geometry in cool ways + Guido's on-line CP4E essay.
The web was just getting going and there was a paucity of polyhedrons
out there in jpeg or gif format. I used to count how many.
Later when it looked like I was using the term "CP4E" in new ways I
changed it to "P4E" (dropping C) to distinguish it from Guido's, and
"HP4E" which is kinda technical (hexapent is a way of dividing the
surface of a sphere, new book called Divided Spheres, a primer to Ed
Popko, has me in the biblio).
As far as Processing goes, my ears perked up at a party recently, some
young and cool dudes chatting, one of them raving about Processing. I
wanted to but in but wasn't sure how, so I just listened. I've
admired how Ruby may be used to program Google Sketchup. "What might
Processing do *for me*" I wonder, greedily rubbing my hands.
My general sense is we don't need to shield students from nasty
aspects of whatever languages as they'll initially / naturally want to
try many, and we should encourage that adventuresome impulse that says
"I'll trying anything once". They'll inevitably encounter VBA, old
(even new) FoxPro code, lots of Java in the course of bouncing around
in our worlds.
We hope also Scheme, maybe even some J who knows. I've got Haskell
running on my Mac finally, and find lots of similarities with Python,
even though they're across the "static typing" divide from one another
(their both typed, just Python's type system is more open to duck
New languages are coming along. At the latest OSCON, it was all about
Go for me (the new language). I'm mostly just dabbling, as my
training has encouraged me to do.
Python brings some gravitas to the classroom in that we already see it
as "world dominating" in the sense of having lots of real jobs doing
important stuff in many walks of life.
Python is a masterful invention, used with appreciation by code
wranglers around the world.
There's an analogy with English: would as many people attempt this
difficult language if it was only the great poetry and Shakespeare at
the end of the tunnel. No. It's worthwhile to learn because it's so
widely used for everyday communications. Otherwise why put up with
all that crazy spelling with idioms galore. English is like the Perl
of human languages, concise to the point of cryptic mixed with verbose
and out of control (the skill of the coder matters so much -- in Java
they tried to make the boilerplate stronger).
My own freshman course in programming (engineering department) was a
wild ride through a whole bunch of languages: FORTRAN, APL (my
favorite of the bunch), PL/1, SNOBOL, LISP, Assembler (simulated).
Not much OO because this was 1970s and Smalltalk was not running on
our IBM 360/370 I don't think. I had to pay visits to PDPs and other
labs to try other tools, such as Tektronix graphics terminals (with
and extended version of APL as I recall), really rad.
However this was just me being "well rounded" as a liberal arts kinda guy.
I was anchoring in the philo department (Princeton had a good one, but
the engineering was good too).
Anyway, to make a long story short, POV-Ray was the free renderer of
choice, available on CompuServ with its own kind of Open License.
To write scripts for it, though, was tedious, so the job was to use
scripting languages to spew out "scene description language" (plugging
values in to boilerplate).
That became a back end for VRML output as well.
The kind of coding I was doing anticipated a way more mature project
called AntiPrism by Adrian Rossiter, which I believe was used for many
of the pictures in the Popko book cited above.
More information about the Edu-sig