John writes -
Some on this list have suggested that Python is "too rich" to be good language for young or first-time programmers.
That some, as far as I can tell, might only be me. But if it is, if can't be. I have given witness to having been a first-time programmer who learned enough from my experience working with Python to now get paid for doing development work. And then there is the question of defining young. If we leave the term vague enough, we can allow ourselves to both be right. But you teach college and target your text to high schoolers (and up). Darren was targeting 7th to 10th, Unless you know something I don't about the Australian school system, those seem to me to be very different matters. You would be carving out a very exceptional niche for programming curriculum by claiming that the same text appropriate to 11th and 12th graders is also appropriate for 7th and 8th. I would insist that I am being more careful in my remarks than you might want to believe.
I cannot agree with this. Yes, Python is a real-world language, but what makes it so useful in the real-world is its simplicity and clean design. All general purpose languages are powerful. Python is one of the easiest to learn. That said, programming _is_ hard. Not everyone can do it well, but my experience has been that anyone who really tries can learn to do useful things with Python.
I happen to be someone who really tried. And I am all for allowing us to assume we are talking about folks motivated to learn, in all cases of our discussions. It is more when we - I am not sure what we I am referring to here - get off on how to hocus-pocus folks into learning, and what language design issues prevent folks who don't care to learn, from learning - that I tend to mouth off a bit. Art