kirby urner wrote: > Ian Bicking wrote: >>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. >> > That's nice if you're not just into escapist fantasy. Great to bliss > out in a well-designed and productive environment, no one arguing with > that. But that's no excuse for keeping kids clueless too long.
Isn't "abstraction" mathematically simplifying something somehow, or creating an alternative mapping of part of the system to a symbol system you are comfortable working with? And isn't "fantasy" making up new stuff you like (even if only in your mind) from bits and pieces of ideas you have experience with? So, isn't even much of GNU/Linux is an "abstraction" away of many hardware details, like file systems are abstractions hiding how many disk platter you have and what sectors are in use, and "device nodes" are another abstraction, as are the "services" the kernel provides? They could all be provided other ways (or not at all), using other APIS, and are different on other computers and OSs throughout history (and may well change in the future). And, by contrast, the Linux kernel only a "fantasy" of Linus Torvalds (at one much earlier point, for some short time before he set to coding). So, when kids learn the guts of Linux, it seems they are still learning only an abstraction that was once a fantasy. Maybe something to remind them about occasionally. I liked Ian's point and your response because it reminds me of that Star Trek:TNG episode where people think they are leaving the Holodeck, only to find out later the ship they are in is still really just a virtual one and they are still on the Holodeck. For all we know, this reality is just a "escapist" simulation too: :-) See: "Are You Living In a Computer Simulation?" http://www.simulation-argument.com/ The more practice kids have mastering (and even creating or transcending) various new-to-them systems of rules the more prepared they will be for whatever life (or death :-) may throw at them down the road. Also, it is in our choices of what systems of rules to learn that we make some of life's hardest and most important decisions. So, by all means, it is good to encourage kids to get into details (like inodes) underneath abstractions (like files) when they want to, as a new and potentially useful sort of set of rules to master. But, just remind them, there always may be another layer of "turtles" :-). http://en.wikipedia.org/wiki/Turtles_all_the_way_down A related motivational CP4E question for kids who have probably all see the movie "The Matrix": Turtle -> Python -> OS -> Hardware -> Physics -> Universe -> Turtle? Of course, that question may be just too explosive for some classrooms? To somewhat address the original "Tips" question, and to address a genuine issue of computer literacy as GNU/Linux rises in dominance, and to address this issue of mastering multiple levels of abstraction, perhaps kids and even some teachers could be encouraged to make a tiny GNU/Linux distribution to make a Python interpreter shell that boots from on a diskette or USB stick or CDROM, and creates a RAM disk for classroom experiments. It isn't that hard. See: http://www.linuxlinks.com/Distributions/Floppy/ [has one already] http://www.linuxfromscratch.org/ [general instructions] Then you would have a custom Python which would be useful for wandering faculty (assuming the admins let you reboot the machine, and it was configured to allowing booting from removable media). --Paul Fernhout _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
