Why is Logo popular, while Python isn't? (was "using Python for a CS 2 course" )
Terry writes -
I think you underestimate the age at which people begin writing useful software. I've met an awful lot of programmers online who turned out to be teenagers. They had to have *already* learned to program by that time.
I can't disagree, having followed developments in the realm of graphics for some time. Certainly much of the most interesting work in that realm has been done by young folks. VPython, just as an example, was written by David Scherer (who was at one point active on this list) when he was a college sophomore, I believe. And already an accomplished and experienced programmer. So we seem not to be disagreeing much on specific points, just a little as to the relevance of those points to the issue. But I also agree that, all things being equal (or close enough), exposure to a professional programming language is preferable to a pseudo language, at even a young age. But more than anything that's the question I am raising. Is all things being equal, or close enough, a realistic possiblity?? I would guess the Logo and Boxer folk might distinguish between a professional prgramming language and a language designed for personal use, and would argue that their languages are good for a lifetime, for personal needs. If one is going "pro" certainly one goes further. But with the Logo and Boxer experience put to good use, even in that case.
PC The University of California has prohibited our providing information about PC Boxer. Seek other sources of information.
Followed that thread myself and came to a dead-end. It looks like there may have been a commercial spin-off, which had made the software available at one point, but then went to a purely on-line curriculum. Anyway, could not find a Windows version to look at - anywhere.
I think the point is that it may be worthwhile to teach a somewhat harder language so that the continuity is kept. I would consider Boxer to be *fundamentally* different (being a graphical language, and therefore not a "language" at all from a certain perspective, but an "authoring environment"). Logo, on the other hand, is just another language -- not *that* much easier to learn than Python, and generally less capable.
What *I* think you need, is to learn lots of different *programming
Yes. But if Python gets there it seems to me it will be from the top down. In other words I believe Python's "wheelhouse" in terms of education is at the college and late high school stages. If it becomes pervasive enough there, the advantages of using it for younger grades might then, and - I would argue - only then, become a true factor. styles*:
procedural, functional, object-oriented, connectionist, and so on.
Interesting that for someone like myself for whom Python is my first, and really only language, these distinctions are somewhat lost on me. I have, and continue to develop, a sense of what is possible and how things are best approached in Python. What style that leads me to in a particular case is not something of which I am very aware. To the extent that Python *is* the future, maybe those distinctions are becoming less meaningful. And other than needing to compromise on speed issues (I am doing 3d graphics) I have yet to come across anythng I wanted to accomplish that I couldn't get done in Python in a way that ended up seeming succinct and elegant. Though I am not doing anything tremendously sophisticated, of course. On the other hand, now that Boost2 is out, I am intent on learning enough C++ to allow me to use it in conjunction with Python (and Boost) to be in a position to eliminate any performance bottlenecks that I encounter that are in fact more than an issue of inefifient Python coding. Given that I will be fully configured to conquer the world, it seems to me. Art
At 09:03 AM 11/22/2002 -0500, Arthur wrote:
So we seem not to be disagreeing much on specific points, just a little as to the relevance of those points to the issue. But I also agree that, all things being equal (or close enough), exposure to a professional programming language is preferable to a pseudo language, at even a young age. But more than anything that's the question I am raising. Is all things being equal, or close enough, a realistic possiblity??
I'm a bit skeptical of this "professional vs. pseudo" dichotomy. A graphical programming environment such as provided by Lego Mindstorms isn't pseudo in that it actually works to control the movements of an RCX. Logo actually works too. Pseudo suggests pseudo-code, i.e. code written to look like something that might really execute, but really doesn't (usually because it's too simple). What's a more useful distinction, I think, is "general purpose" versus "special purpose" languages and APIs (to some extent, an API is a language). This distinction cross-cuts the "professional versus toy" categorization, in that a language used by professionals may well be very specialized. Much of the coding that goes on in this world is *not* directed to some horizontal consumer market. A lot of pro coding is completely for inhouse consumption, internal to an organization, and all kinds of languages get used. Being a student is a specialized activity, and it's a "profession" for those engaged in it quasi full time, or at least engaged in it deeply. So in school, we maybe learn languages that are specialized to some educational goal. But I don't think these are necessarily toy or pseudo languages. For example, a lot of math teachers are deeply invested in TI culture (Texas Instruments), and there's a kind of programming language that goes with those. It's specialized, but not a merely a toy language -- many professionals use it. In any case, I think we're all in agreement that Python is a good general purpose language that students could benefit from learning, and early exposure is not necessarily a bad idea. However, I see no real point to disparaging Logo as a "toy language" if the thrust that label is to try pushing Logo out of the early grades market. Kids *should* play with toys -- the specialized professional tools for their age group. Kirby
participants (2)
-
Arthur
-
Kirby Urner