January 14, 2009
In the year and a half since I last posted here, I’ve posted occasionally on other sites, on other topics, but I’ve left this one alone. Now I’m thinking that it’s time to return to this site with some more Pythonic content. I’ve got a couple of reasons for this return…
A new project – The Quick Python Book, 2nd ed.
One reason to switch to more Pythonic posts is that I’ve just started working on a second edition of Manning Publication’s The Quick Python Book. Originally done in 2000 and based on Python 1.5, I’ve been hired to revise it for Python 3.0. So far, it’s been interesting to see how stable the language has been, but it’s also made me see how the changes in 3.0 are definitely worth the break in compatibility. The more I work with the new print function, for example, the more I like it. It’s a trivial thing, I know, but I’m looking forward to a Python 3.0 future.
Python 3.0 in general
Python 3.0 in general is another reason to come back to this site. Not only is the change giving me a book gig, it’s creating a certain demand for information on how to manage that change. As I run across things that can help, I’m going to post them here.
June 9, 2007
My last post I mentioned that one of the biggest challenges in teaching programming was coming up with problems and projects that weren’t lame. In fact, this is also a problem for people teaching themselves the language. You need examples to practice on, and it really helps if they are at least minimally interesting.
My assistant, for example, decided that taking advantage of the customization possibilities in Civilization 4 would be a great way to learn python. (And that the need to learn Python for work would be a great excuse to buy Civilization 4, a double win ;-) )
There is another source of programming examples and projects for the beginning Python programmer – uselesspython.com, “a collection of source code, ideas, and other pointless tidbits submitted for your edification and diversion.”
It’s a great collection (actually two collections, since the prior version of the site is available as well) of odds and ends of Python code, some of which actually do something, occasionally even something you might want to do. Guido Van Rossum, the creator of Python even has a contribution here, along with lots of other Python coders ranging from beginner to expert.
If you have any interest in Python at all, it’s worth a leisurely browse.
June 5, 2007
I just discovered something interesting, something that wasn’t really surprising, but still something those of us in the game of teaching programming should be aware of.
I was just now looking at the call for submissions page for a new, but clearly up and coming conference on technology and education. And I was stumped by a fairly low level problem – if I want to submit a session on programming, which category does it go in? Administrative Technologies? Nah… Equity & Accessibility? Clearly no. Digital Media? Hmmm, maybe. Standards-Based Instruction? Career Technical Education? In fact, NONE of the categories mention programming as a possible topic. Programming isn’t mentioned at all.
So we have a conference on teaching technology and teaching with technology, and the thought of including programming seems not to have crossed anyone’s mind. Does anyone else see this as a bad thing? While I don’t want everyone to be a programmer (actually I can think of several students I would never want to be programmers ;-) ) I still do think that the process of writing simple programs is profoundly beneficial in several ways.
Writing a program teaches students problem solving and the critical thinking needed to break a problem down into its components and then iteratively build up a solution, not to mention imparting a sense of the problems and limitations, as well as the possibilities of software. And yet it seems that the mainstream of tech ed doesn’t even know we’re here.
To me that means those of us who teach programming have to keep pushing and promoting. And I guess I’ll have to just pick a category and submit anyway. Who knows? They might fall for it.