January 28, 2009

PyCon Tutorial: Terrific Response

I've just seen the statistics sent out after the day one signups for PyCon tutorials, and Python 401: Some Advanced Topics already has eight signups! Thanks very much to everyone who has shown so much confidence in this tutorial. If there are specific points you'd like to make about your expectations of the session then please let me know here.

Ken Whitesell has already made one suggestion, which I am going to try and adopt. Thanks for the feedback, Ken.

Google Groups Plus

OK, I have tired of having ideas that I never get around to implementing, so I am going to take a page out of Seth Godin's book and just write this thing up so somebody with more time and inclination can get rich from doing it. Or at least provide a service to people who could use it.

It's time that Google Groups (or at least some of them) were available via NNTP. Sure, I can use the somewhat quirky and always less than satisfactory web interface that Google provide. Or I could set the groups I am interested in to deliver the posts via email. But an NNTP client would just be so much more convenient and usable. So what we need is a system that scrapes Google Groups and offers NNTP access to the resulting content.

There is, of course, the minor issue of Google's terms of service. The most significant part says:
Google authorizes you to view and download a single copy of the Materials solely for your personal, non-commercial use. You may not sell or modify the Materials or reproduce, display, publicly perform, distribute, or otherwise use the Materials in any way for any public or commercial purpose without the written permission of Google. Special rules may apply to the use of certain software and other items provided via the Services, and are noted where appropriate.

If you would like information about obtaining Google's permission to use any of the Materials on your Web site, please send an e-mail to groups-support@google.com.
So we will have to persuade Google not to be evil - I imagine they will be upset not to be able to insert advertising in the stream, but if they did that wouldn't be Usenet, now would it? I would hope Google would be mindful of how they came by the archival content that started this venture in determining how to license the materials.

I know there are people in the Python world who could put this together in under a week.

While I am dealing in quirky ideas, here's another one, in this case to monitor (and hopefully control) spending on government credit cards. Could this work?

January 27, 2009

Snakebite.org Announced: Get Bitten by the Python Bug!

Things are looking up! I mentioned Trent Nelson's snakebite.org in my Python Magazine column a while ago, but at that point everything was still in stealth mode, so you couldn't get much information about what was going on from the web site.

That's all over now, because yesterday Trent mailed the python-dev list to announce the forthcoming availability of the network, which far from being "a couple of clunky old boxes off eBay" turns out to be the makings of a comprehensive distributed test and development network, with hardware and software contributions from major companies, that's going to be the envy of the open source world.

I know that Trent has larger plans for snakebite.org, but on behalf of the Python community I would like to thank him (and a cast of many others) not only for his munificence but also for the incredibly hard work that's been done to bring this project to fruition.

January 26, 2009

Monty Python Leads the Way

Showing the RIAA how do to it, the Monty Python team have released all their content to be freely viewed on YouTube. Guess what? Their sales on Amazon have increased over 200 times (23,000 percent).

The music industry will die before it adopts any kind of free content model, but open source has led the way and persuaded other people to try similar models. Lo, it turns out you can make a living giving things away!

So head over the the YouTube Monty Python channel and pick out your favorite sketches, but don't forget to by something.

January 22, 2009

PyCon 2009: The Magic Begins ...

I've just spent a half an hour reading the list of talks accepted for PyCon 2009. I think the Program Committee has done an excellent job this year [full disclosure: I am notionally a member of the PC, but was unable to attend any of its selection meetings] and their choices will make this the best PyCon yet.

There's information about packaging Python applications, using Stackless to speed up massively multi-player games, OpenGL graphics, testing, giving presentations (and presentation technology), scientific applications, ... you name it.

I challenge anyone with a practical interest in Python to spend three days at PyCon and not find so much of interest that they would like to be in two places at once at least some of the time. With luck the quality and quantity of video coming from this year's conference will increase once more, but watching the videos is definitely no substitute for being there.

PyCon is the most enjoyable conference I attend, and a jewel even among open source conferences. I haven't missed a single one so far, and I am not about to start this year. Be there!

[Note to speakers: every year PyCon offers help to speakers, both experienced and inexperienced, to help them be more effective presenters. Please take advantage of this facility, particularly if you are new to presenting at conferences: it can really help].

January 9, 2009

United.com Fail Again

I really love this one. Forget that when I go to the main site my browser already knows how to fill the Mileage Plus number and the password in already. OK, so they are using another domain to try to get me to pay ($1,400+!) to upgrade to Premier status. This is just so wrong. Why can't I put fricking spaces or dashes in the account number if it helps me? Are they really so hard to ignore? Give me a break.

Don't people realize it's this kind of obtuseness (in the middle of a journey, under great stress) that makes people go berserk? Over ten years ago I wrote some web callback software for a small but customer friendly 'phone company (with a fabulous domain name). I asked them what they wanted to do about number validation, and they just said "Throw anything away that isn't a digit". Is it really that hard for large companies like United to understand?

The ironic thing is, United are trying to sell me access to their lounges. I am sitting in Atlanta airport, waiting to fly United, and I am in the Delta lounge, because Delta take the Priority Pass that I buy annually for around $300. On the way down from DC I upgraded to first class, one of the reasons being I had plenty of time at the airport and thought it would be nice to use the lounge. Foiled again: only United international first class passengers get to use the lounge. So all I get for my $79 is a little extra legroom on a 2-hour flight. On only one occasion in the last five years did a friendly United staffer grant me access to the lounge because I was traveling with them even though I didn't have the right card with me. I will love her for ever - she treated me like a human being.

I am left wondering why on earth I bother to be a United frequent flyer. It's not that I fly that often any more, and I know all airlines suck, but I can't help feeling that United have this inbuilt self-destructive ability to suck harder than anybody else while they think they are succeeding. No wonder Untied.com is going from strength to strength. I am convinced the United management never fly incognito as economy passengers. If they did, they would realize what a crappy airline they are running.

January 5, 2009

Oldest Files Meme

Happy New Year! Brandon Rhodes started this meme, which seemed worth continuing to me.
  1. Run the following script in your home directory. (You might want to use less to read the output.)
  2. Ignore files whose date does not reflect your own activity.
  3. List the oldest files in a blog post and discuss!
#!/usr/bin/env python
"""Print last-modified times of files beneath '.', oldest first."""
import os, os.path, time
paths = ( os.path.join(b,f) for (b,ds,fs) in os.walk('.') for f in fs )
for mtime, path in sorted( (os.lstat(p).st_mtime, p) for p in paths ):
print time.strftime("%Y-%m-%d", time.localtime(mtime)), path
OK, omitting some font files I bought from Adobe, here are the results:
1988-02-12 ./tools/doc/classify.1
1988-02-12 ./tools/doc/getmail.1
1988-02-12 ./tools/doc/mailio.3l
1991-10-13 ./writing/wdp.rv
1992-08-10 ./chum/SCCS/s.sch.trm
The first three are manual pages for Icon programs that I wrote to handle email folders. classify filtered a mail file, ordering its messages by subject line; getmail extracted messages by number; and mailio was a primitive library used by the other utilities. Man, 21 years ago! Just in case you want to read the ancient manual pages I've linked each file name to its man2html output.

wdp.rv is a review I wrote, probably for the Sun UK User Group magazine, of the Island Software Write, Draw and Paint tools. I've been a writer or sorts all my life, and involved with user groups quite a lot, too.

s.sch.trm is the source control master (for the venerable SCCS source code control system that used to come on Sun workstiations) of a termcap file for a Wyse-60 terminal. I suppose I could use CSSC to try and revive it, but I don't know anyone nowadays who uses Wyse-60s. I can't think of any reason why I should have kept that file except for inertia.

I hadn't realised I've been using source code control so long. Although the SCCS files for most things are no longer in evidence I used it a lot at Sun from 1985. Other gems I came across that I'd completely forgotten about include a database publishing utility from 1994 that I used to drive FrameMaker from various databases, and a system that would merge the alias files from a bunch of UUCP sites to allow the use of simple email aliases rather than the bang-ridden paths that preceded the domain name system.

An interesting exercise in nostalgia. I think I'll allow them to live a bit longer.