Wednesday, January 31, 2007

Lightning talk?

Living in a small village in Nova Scotia, 300 km from the nearest city (Halifax, pop.: 380,000), the opportunities to discuss face to face with other pythonistas are non-existent. This is one reason I've been really looking forward to going to my first Pycon. In addition to my scheduled talk, I have been thinking about giving a lightning talk of a different kind, but still touching upon a subject dear to me, that is the promotion of Python and its use as a teaching language. While lightning talks are so short that they normally touch upon only one topic, I was thinking of actually covering three topics, under the common theme of "interactive tutorials". These three topics are, from the more serious to the semi-frivolous:

1. The fate of input() and raw_input() in Python.
2. Using a distinctive logo for promoting interactive tutorials using Python.
3. Creating an interactive tutorial repository.

According to this, both input() and raw_input() are supposed to disappear in Python 3.0. After thinking about it for quite some time, I posted a message on edu-sig about the proposed change last September, expressing my "opposition" to the proposed change, and seeking the opinion of others on this topic. After a while, a near-consensus emerged, supporting the idea of keeping at least something like raw_input() in Python 3.0. I then wrote a pre-PEP, which generated more positive comments and encouragements but otherwise no further action from other edu-sig subscribers more involved in the Python community than I am. Unfortunately, due to my work, I had to drop all my Python-related activities for a few months and was not able to follow up until late December. With the end of the year approaching, I found the time to incorporate the comments received on edu-sig and offered a revised pre-PEP to the Python 3000 list on December 22nd. This was a single posting from me as I don't subscribe to that list. A bit of discussion ensued after which Guido stated that he like the proposal better than any of the other alternatives mentioned and, later, suggested that someone should "clean up and check in the proto-PEP and start working on an implementation or patch."

Unfortunately, and perhaps because this happened just before the holidays, nothing further was done. So, I'm thinking about raising the issue again at Pycon. Having something like raw_input() is, I believe, nearly essential for using interactive tutorials of the kinds produced by crunchy in a teaching environment aimed at beginners.

Further on the topic of interactive tutorials, I have been thinking of an easy means to identify them. For those that have tried crunchy, you will have noticed that an interactive tutorial viewed through a regular browser without using crunchy appears to be nothing else than your average (W3C compliant) html document. Since such tutorials could be included on any web site, I was thinking it might be useful to give a visual clue to crunchy users. There already exist a Python logo to identify applications, namely:
I've been thinking of asking the Python software foundation for the permission to modify this logo, replacing the word "powered" by "interactive", and adding a small change to crunchy so that every tutorial created with it would automatically have the logo added at the top. I'm debating whether I should do this prior to Pycon, or wait until I get the chance to lobby for it in person.

Finally, if enough people start writing interactive tutorials using crunchy, I thought it might be useful to have a central repository somewhere. Moving away from the Monty Python references, I thought that the Snake PIT (for Python Interactive Tutorials) might be a catchy name.

So, for you, patient reader that has made it this far, does it sound like a worthwhile for a Lightning talk, especially if it is supplemented by a one-minute demo of an interactive tutorial? I'm pretty sure I could cover all three topics above in less than the scheduled 5 minutes for a lightning talk, as I would not have to go into much detail about the history; just the facts...

5 comments:

Douglas said...

Yes, Please give this as a lightning talk, and please do it on friday afternoon. Also definatly talk to the PSF members that you can find (either before or just after the lightning talks). There has been discussion about the use of the python logo, and the proceedures are not yet fully ironed out. One reason is that there are not many real users of the logo yet. The Python Papers is the only one that I know of besides python.org.

The PSF meeting (where the logo will most likely be discussed) is Friday evening.

There are also a number of PyEdu activities being planned including a BoF, and maybe a dinner.

David Goodger said...

Please do give some lightning talks, at least 2. Don't try to cram too much into 5 minutes, because 5 minutes is ALL YOU GET!

And there is a policy for the Python trademarks ("Python" name, and logo): http://www.python.org/psf/trademarks/ . Your idea sounds good, and should be covered by that policy. We could easily whip up a web badge with the Python logo. Look me up at PyCon!

Jeff Rush said...

I've no opinion on the input function but I think the idea of building a repository of tutorials is very good as well a creating a distinct logo. Just today I've updated my crunchy to 0.8 and am scratching my head trying to find a way to use it at PyCon in a catchy way.

There is a problem with a tutorial repository re security. Basically the Python code within the HTML is executed underneath the browser on the client machine, and could be dangerous. Perhaps one way would be to have tutorials in the repository be signed but we need to discuss this at PyCon.

Crunchy needs more attention and needs some good tutorial authors to crank out material. I'm thinking of producing a "So you think you know Python..." interactive doctest for people to test their skills at PyCon. I could use some help with this.

Ron said...

Andre,

I think your point about raw_input() is important; I hope you do a lightning talk on this subject and I hope your ideas prevail on this subject. Keeping Python as simple as possible for new users (and perhaps more importantly, casual users) is a good thing and keeping raw_input() or its equivalent seems a very small price to pay.

I love crunchy and I look forwars to your talk at PyCon!

Perhaps you could grant me a small interview at PyCon that I can record and use on my podcast series (Python411) to help promote Crunchy?

Ron Stephens

André said...

David: I will try to look you up. I had read about the PSF trademark policy and had first considered sending an email, rather than mentioning this in my blog.

Jeff: I look forward to meeting you at Pycon and discussing the idea of a repository. As for "So you think you know Python...", I feel that I am not proficient enough to contribute meaningfully.

Ron: I would gladly do an interview for your podcast series, if you think others would find this interesting.

I'll have to give some more thoughts about giving *two* lightning talks - from what I understood, they were popular and filled rather quickly, and I didn't want to be seen as abusing by taking two slots.