I have been teaching programming at the university level for 20+ years, and teaching Python to mostly non-major beginners since 2005.

I taught a fairly standard CS0 (breadth first CS introduction with the briefest programming introduction in C or Java) for a number of semesters and found it unsatisfying in many ways. It is important to see CS as a lot more than programming, but programming is important in the overall view! The typical CS0 assumption is that it is a lot harder to teach programming than to do pseudocode, so there are lots of pseudocode algorithms, and little more than a description of basic syntax for a high level language.

In 2006 I really rethought this and designed a course with a lot of Python in it: algorithms you could run! Since Python was so easy, I also emphasized how much an average college student could use this stuff to help with todays digital data overload, and how much fun they could have with graphics and with dynamic web pages.

The first year I used Zelle's fine CS1 book, but it was not really geared to my course, so in 2006 I wrote (and keep revising) 100+ pages of my own Hands-on Python Tutorials. http://cs.luc.edu/anh/python/hands-on I talked about my experience at Pycon 2007, and in 2008 I am giving a tutorial bases on it.

I think Python is also excellent for a CS1, but because of my personal responsibilities I am interested in how to use it best for a modified CS0. I also do more standard CS0 things: history, ethical and social issues, the lower level abstractions in the machine. I have brought Python to some extent into other parts of the course. The assembler simulator we use was written by me in Python, and uses the simple graphics package of Zelle. This year I plan to add a networked Python piano simulator written by Ben Brown, one of our grad students.

I am interested in getting Python into the mainstream in Middle/High School. That does not mean as an extra optional topic, but integrated into the math or science curriculum, as Kirby will be discussing at Pycon 2008. Algorithms and computational thinking are not just for hard-core programmers.

I am really excited that Pycon 2008 is coming to Chicago!

aharrin ATSIGN luc PERIOD edu

Loyola University Chicago

Computer Science

CategoryHomepage

AndyHarrington (last edited 2014-04-18 09:08:01 by DaleAthanasias)

Unable to edit the page? See the FrontPage for instructions.