What do you want to see in a concurrency talk...

by jesse in ,


So, for starters, I'll be doing a 1 hour talk at the PyWorks conference in Atlanta on November 13. Following that, I am working on a PyCon tutorial, and one other non-tutorial talk for PyCon. My current theme for this round of talks is "Python 2.6, threading and multiprocessing concurrency".

That's a mouthful.

The PyWorks talk is entitled "Getting Started with Concurrency with MultiProcessing and Threads" - given it's a one hour talk, I'm probably going to need to only go into threads on a cursory level (to give everyone a common understanding) and then delve into multiprocessing features and touch on a basic application as an anchor.

I plan on covering the differences, pluses, minuses and "getting started" and walking through some amount of the API. Given it's only an hour, I won't be able to deep-dive into building a fully fledged application. I can only hope to give people enough information to get started.

Moving onto pycon, I wanted to expand on this space for a full-blown tutorial - I wanted to cover threads, multiprocessing, pros, cons, organization, APIs, best practices, the GIL and walk through building actual application(s) - although I need to pick a good "showcase" application that people can grok.

Also, in the tutorial, I was thinking about going from local concurrency to network-based concurrency (starting with the built in multiprocessing API) so that people can understand the differences and take those into account.

The final one - the short talk for PyCon is going to be a "Python 2.6 threading changes and intro the mulitprocessing"

In the final talk, given it's short - it's going to be an overview of the changes/new module and a walk through (I hope) of a basic application.

My question to you, oh interwebs, is what might you like to see/be able to get from talks in these veins? I can't go into all of the whys and hows and whens, but I can arm people with enough information to get up and running.

I desperately want to get the "most bang for the buck" in these talks, obviously, due to the nature of slides, except for the tutorial, I won't be able to show hundreds of lines of code to illustrate everything.

For an example application - I need to make something which will "scale up" - from thread-based approaches all the way to distributed-over-the-network approaches.