[Edu-sig] Tips for wandering faculty
Ian Bicking
ianb at colorstudy.com
Wed Apr 26 20:21:31 CEST 2006
kirby urner wrote:
> Yes, a Linux system is huge and complicated. No, I don't favor
> "insulating" students from that hugeness, by constructing some dream
> world atop it and inside it, but unaware of it. This whole idea that
> we must "protect" students from this context is an anathema to me, as
> it's hypocritical. The people who *build* your pseudo or virtual
> reality need to know about these underlayers, these pipeworks and
> clockworks. Their not wanting to clue you in is a sign they're not
> treating you as a peer, but as a rat in some maze of their own
> devising.
Personally I wish *I* could be insulated from more of this; leaky and
imperfect systems make this impossible at the moment. A strong
abstraction is great -- at some point you may need to understand what
that abstraction is built on, but even then it is nice to be able to
retreat back into the abstraction so you can focus on what's really
interesting and new that you are doing.
There's a bunch of examples of this which I think are uncontroversial.
Things like GC, pointers, characters (which are missing in Python),
TCP/IP (which few people access directly anymore), the underlying
mechanisms of threads and processes, and a bunch of other things that
are so basic I have a hard time remembering they exist.
Anyway, tangential to this, but maybe useful, I wrote a script to create
isolated Python environments that doesn't require the cooperation of the
system Python installation:
http://blog.ianbicking.org/workingenv-revisited.html -- it may be useful
for educational environments as well; easy to set up, and easy to throw
away if you mess up your environment. Though it's dependent on
PYTHONPATH, which isn't very accessible in a typical Mac or Windows
environment (unless you are using one of those in a unixy style);
hopefully someone familiar with those environments can suggest something.
In this case, I think the status quo -- which forces you to think about
the entire system, package management, etc -- is simply dumb. It's dumb
for experienced programmers and dumb for newbies. For experienced
programmers the status quo is sloppy and implicit; for newbies the
status quo is dangerous and inaccessible. Neither group is well served.
Kind of like manual memory management... we shouldn't mistake design
problems for deep and useful ideas. There's hard and deep and useful
ideas too; I'm just pointing out that not all hard things are deep or
useful ;)
--
Ian Bicking / ianb at colorstudy.com / http://blog.ianbicking.org
More information about the Edu-sig
mailing list