Kirby, have you ever looked at mathpiper? (http://www.mathpiper.org/)  I
know you have a strong interest in fusing math explorations with
programming, so it seems like something that would be right up your alley
-- sort of an accessible Mathematica intended for education.  The docs
section also contains a couple e-textbooks that weave in a lot of
mathematics examples into the programming instruction (
http://www.mathpiper.org/documentation-1)

Certainly one of the more attractive aspects of Python is that it is both
relatively-easy-to-learn and relatively-useful-in-the-real-world.  But
there's definitely a school of thought that *no* language used in industry
is optimal for education, that the aims of industry and education are too
incompatible for one language to rule for both purposes.  It's definitely
an interesting debate.  I feel fortunate that I work with young enough kids
that I feel little pressure to teach them something with immediate
marketable value.  This gives me the freedom to experiment with many
different languages; I've found that I rather like teaching ones expressly
designed for education, but Python remains one of my favorite educational
options of the popular, mainstream languages.

For me, the thing that has made me lose some enthusiasm for Python was not
even mentioned in the article.  For me, the biggest downside is that the
language, with its Global Interpreter Lock, lacks a clean solution to
teaching concurrency.  IMHO, concurrency has become a vital issue, and
requires a somewhat different way of thinking about problems.  To create
the next generation of exceptional programmers, I believe we need to
introduce models of concurrent programming much earlier in the curriculum.
Almost every recent programming language places a huge emphasis on
concurrency (such as Clojure, Scala, Go, F#, Julia, and many others) but
none of those are particularly welcoming to beginner programmers.  So I'd
love to see more educational languages that feature concurrency.
_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig

Reply via email to