
Raymond> Some other candidates (let's pick just a two or three): Raymond> - csv (basic tool for sharing data with other applications) -0. I think basic usage is covered pretty well in the libref. At best, I'd just mention that it exists and link to the libref. Raymond> - datetime (comes up frequently in real apps and admin tasks) +1. Discussing how datetime and time integrate would be useful. Raymond> - ftplib (because the examples are so brief) -1. I would think it's rarely used. Raymond> - getopt or optparse (because the task is common) +1. Raymond> - operator (because otherwise, the functionals can be a PITA) -1. The most common case people needs is now covered by a builtin (sum). Raymond> - pprint (because beauty counts) +0. Brief mention at best. Raymond> - struct (because fixed record layouts are common) -0. Only for propeller heads. Raymond> - threading/Queue (because without direction people grab thread Raymond> and mutexes) +0. I agree that stumbling on thread is too common. OTOH, threads in general are a pretty advanced topic, and probably not real suitable for the tutorial. Raymond> - timeit (because it answers most performance questions in a Raymond> jiffy) -1. Newbies should probably not be worried about performance too much. In addition, I think most performance questions are deeper than those which can be answered by timeit (think naive O(n^2) algorithms). Raymond> - unittest (because TDD folks like myself live by it) +1. There's no time like the present to start adding tests. Raymond> I've avoided XML because it is a can of worms and because short Raymond> examples don't do it justice. OTOH, it *is* the hot topic of Raymond> the day and seems to be taking over the world one angle bracket Raymond> at a time. -1. XML is too complex for tutorial material. Skip