April 29, 2007

I am Smalltalk

Well, apparently I am Smalltalk. According to this highly reputable quiz I found on the Internet :-)

You are Smalltalk. You like to treat everyone the same way, but this lack of individuality makes everyone feel like objects.
Which Programming Language are You?


Given that I was responsible for an early UK port of Smalltalk-80 (the heavy lifting being done by Mario Wolczko) I don't particularly mind this verdict, but I don't do Smalltalk any more. It's wrong about the objectification, though.

April 26, 2007

Other People's Time

Would you rather work with a contractor who gives you a due date and sticks to it or one you could never be entirely certain of? If the project slips, how good will communications be?

Seth Godin here relates why it's important to keep public events to a schedule. Conferences aren't about the muckety-mucks, they're about the hard-working stiffs who've forked over their cash. Well, the conferences I organize are, anyway.

If a meeting's not about the participants, why are they there?

April 23, 2007

Python Acknowledged at IEEE

The May/June edition of the prestigious Computing in Science and Engineering (CiSE) magazine is a single-subject issue on the topic of Python. This is surely a recognition of the language's value to scientists, and a vindication of the work put in by scientists all over the world to apply Python to scientific tasks.

CiSE is a joint publication of the IEEE Computer Society and the American Institute of Physics. Unfortunately not all articles are available electronically to non-members.

Bet Your Business on Python

It is encouraging to see that increasingly businesses are depending on Python to give them a strategic advantage in their marketplaces. The most recent comment of note comes from yet another PyCon sponsor, ITA Software, who use Twisted quite heavily in airline scheduling applications. They are a new phenomenon to the airline business: a company that provides responsive service without the use of mainframe heavy-iron. You can read the whole eWeek article to get more context about ITA's use of Python, but the quote I liked best was from Dan Kelley, ITA's director of application integration:
"So we think, absolutely, that it's ready for prime time. What we're doing is saying to a billion-dollar business, 'Yes, we can write components in this particular programming language, and they will keep your airline running.'"
Note that ITA don't use Python exclusively, and they see one of the advantages of distributed systems as being able to choose appropriate languages for each component.. I don't believe anyone thinks Python is perfect - it's a waste of time to seek perfection in a programming language because the concept is so subjective. Just the same it's nice to see real businesses coming out with this kind of informed opinion about Python in fairly mainstream publications. Quite apart from the general advocacy benefits it is useful, among other things, as ammunition against the dynamic language bigots should any such ammunition be needed.

April 20, 2007

MSDN Webmasters: Read Peter Norvig!

Peter Norvig's an interesting chap. I mean, head of research for Google, that's got to be an interesting job, right? One of the blogs in Planet Python (I can't remember whose, unfortunately, because the "How'd I get here" button in Firefox can't tell me what Thunderbird was looking at when I clicked a link (oh, all right, three minutes research tells me it was Peter Bengtsson)) recently pointed me at a recent Norvig gem, the spelling corrector in 21 lines of Python.

I don't believe I've previously mentioned in these pages that I am dabbling with ASP.NET. Shrieks of horror resound around the halls of Holden Web. It's been interesting in the sense of the Chinese curse that dooms you to live in "interesting times". The learning curve is steep (and any regular readers of comp.lang.python will know that that metaphor has been lately subjected to the Belgian logic chopper, to nobody's very great illumination). But I digress.

One of the things I have spent a lot of time doing, given the large-ish nature of the framework I am trying to learn, is look things up in the MSDN documentation. Anyone who has corresponded with me will know that the standard of my typing is roughly the same as if you were to pay a squirrel to dance on the keyboard, which is to say I make typographical errors with a regularity that makes monotony seem interesting - the Secret Service characterize my typing style as "frequent use of backspace key". Consequently I have, in the last 24 hours, entered "sqldatasourec reference" into the MSDN search page no less than three separate times (see, when I find a way to bollix a word up I stick with it - I am only half a touch typist, so short entries not for human consumption are even more frequently wrong).

Three times I have been confronted with the helpful message "We're sorry, we couldn't find any results containing sqldatasourec reference". Now this is exceedingly strange. In trying to verify this behavior I made yet another error, entering the search string as "sqldatasource referenec", and while I saw the same(-ish) error message there was above it the helpful, dare I say Googlesque, question "Did you mean: sqldatasource reference" - which, of course, I did. Perhaps the correction corpus should be extended to include the subject material?

Just for devilment I entered the same two search phrases into Google's engine and sure enough it corrected them both. The obvious conclusion must be that Google know more about the content of MSDN than Microsoft do, but surely it wouldn't be fair to say that. Or maybe it would ...

April 11, 2007

Help Wanted!

Another post from Doug Napoleone says (among many other things) "I need to take the very clean and and elegant code of Steve Holden and stuff in into the somewhat organic and undocumented PyCon-Tech code."

It's strange how other people's perceptions of our code can be so different from our own. I am conscious of several areas where that code (published, by the way, as a part of my PyCon 2007 tutorial) really needs revision. But anyway, thanks for the tip of the hat, Doug.

Anyone wanting to help to improve the software support for PyCon should sign up for the PyCon Tech project. It would be a great way to get started in Django in a supportive environment.

April 10, 2007

Python is Not a Religion

The title of this piece is a quote from a post by Doug Napoleone on the subject of Python advocacy. Another quote: "Advocating Python for the sole purpose of promotion is idiocy." I quite agree with that one too. I don't really understand quite why one of my blog entries is referenced as ironically hypocritical, but I suppose I can live with that.

Nor am I sure who Doug is referring to as those who feel there is no need for Python advocacy. I certainly can agree, though, that there is absolutely no need for religious wars when it comes to choice of programming language, and that the appropriate question to ask is "is Python a good way to solve my problems". Anyone who sees Python as the solution to all programming problems is perceiving the language as a hammer and the problems as nails. There are many things that Python is good at (and many more it could be good at if someone wrote the right applications), but it's no more a panacea than any other language.

Doug's blog post appears to be a call for enthusiasts ("passionate people" is what he calls them) to come to the aid of the language. The sad fact is that the majority of the users of any technology (or any religion, come to that) - even users who profit vastly from its adoption - much prefer to be passive consumers than advocates, and this is the way of the world. Passion is all very well, but ultimately it needs to be directed to a goal, and shouldn't the goal of Python advocacy be helping people to solve technical problems more effectively?

While passionate people will help, I think advocacy needs planning as well as passion, and it's only when the two go together that language advocacy really helps. Support for the existing community is important, but so is increasing awareness of Python outside that community. I'm not convinced that most community members have the stomach for that task. It remains to be seen whether Python users are the best advocates for the language, but rightly or wrongly the Advocacy Coordinator position is currently planned as follows:
  • User groups how-to and content resources (40%)
  • Web site content showcasing Python capabilities (40%)
  • User group infrasructure support (5%)
  • Reactive and proactive response to queries and support requests (15%)
I am sure that the Coordinator, Jeff Rush, would love to have passionate people knocking on his door and asking how they can help him. Then he would have more time for other efforts that the PSF has asked him to back-pedal on for the moment. Ask not what Python can do for you ...

April 9, 2007

Buildbot Machines Wanted

I know there are quite a few hosting companies now who represent themselves as Python-friendly. Rather than trawl through the Wiki pages, however, and email each one separately I am sending this request to the comp.lang.python list (and putting it on my blog) in the hope of attracting those companies who are more involved with the Python community.

There is a particular problem, highlighted recently by this comment from Dennis Lee Beiber:
Too many 3rd-party modules still aren't available in 2.5 versions for my tastes...
This applies particularly (though not exclusively) to the Windows platform, for various reasons -- the most common one is that Linux developers frequently don't have a Windows machine available to help them test their builds and ensure that distributions are available.

I am trying to address this problem, initially by making hosted Windows machines available for use as buildbots. I already have agreement from Grig Gheorghiu (who maintains the PSF's buildbots) to try and support these efforts, and from Microsoft to consider providing appropriate software.

What I don't have is hosting companies offering me space on machines in their racks. If anyone reading this can help out I'd appreciate it if they would get in touch with me (replying to the newsgroup post or commenting on the blog entry should do it). These machines would need remote desktop access so they could be managed without physical presence.

The intention is to try and shorten the "version lag" so that new versions of Python can be better supported more quickly. I don't guarantee that this will happen overnight, but I'd like to make a start.

April 5, 2007

Give Me a Break, Microsoft

Well, it's going to be quite a long goodbye, but today I finally and irrevocably decided to stop buying Windows. As with most decisions of its kind this hasn't happened overnight. There have been the little annoyances, the bloat as more and more bits and pieces clamor for run time and screen real-estate, the ever-increasing startup time, but what's finally pushed me over the top is the Windows Genuine Advantage (or, as I like to think of it, the Make Microsoft Richer) program. I've been saying for over ten years now that Microsoft will become "the first IBM of the twenty-first century" and this program, coupled with the digital rights management (DRM) approach embodied in Windows Vista, has finally made me realize I am sick of this snake oil.

Windows Genuine Advantage has been bugging me for a while, sitting there as an uninstalled update. Eventually, as it was designed to, the continued notification on restart became annoying enough that I decided "what the hell, this Windows came from Dell, why don't I just install it and stop this annoyance". So I did. Right at the end there was a check box that said "when I click finish show me the benefits of Windows Advantage" or some such, and rather than uncheck it I thought I'd see if Microsoft could persuade me that this effort had in some trivial way been worthwhile. Unfortunately the justifications seem mostly to be bogus in the extreme.

First example: "A recent report from the market research firm IDC found that, if the global software piracy rate was lowered just 10 percentage points over the next 4 years, this would contribute a total of 2.4 million new jobs and $400 billion in economic growth to the global economy." This, accompanied by a link (that would have opened several popups had Firefox been dumb enough to let it) to the Business Software Alliance web site and an IDC white paper on "Expanding the Frontiers of Our Digital Future - Reducing Software Piracy to Accelerate Global IT Benefits". For some reason they go to great lengths to hide the URL of that white paper, and there appear to be a family of these documents, each tailored to their specific audiences, so the link I've included might not be "your" content if you come from somewhere where the prinicpal economic impact of IT has been to reduce the amount that can be spent on things like clean drinking water.

On page 4 we see, under the heading Who Wins and Why the point that "Governments benefit from $67 billion in new tax revenues for needed services that could [according to a unstated OECD cost estimates for government services] be used to provide:
  • 33 million computers for schools
  • 45 million people with health care
  • 6.6 million people with college educations
  • 11 million children with schooling
  • 435 million people with job training, or
  • 132 million families with services like day care, maternity, or home help services
The snag here, of course, is in that little word could, since the same revenues could also be used to prosecute America's war in Iraq for a further eight months. When I ask myself which is more likely I don't conclude that Republican crocodile tears about "big government" will suddenly cause a sea-change in US political behavior.

On page 8 the authors try to convince us that "Lower Software Piracy Produces Higher IT Benefits". This section is accompanied by a wonderful graphic which I reproduce here as a classic example of how correlation is frequently taken to be causality. And yet I can find nothing anywhere in the paper that suggests the graphic might not equally well be entitled "Economic Growth Starts with High Piracy Rates" or "Poor People Steal Software Rather Than Do Without". The one thing IDC's methodology did not do was to look at single countries' change in "IT tax benefits" as the piracy rate changed, which it seems to me would be the only convincing way to demonstrate the benefits of such a change.

But I digress. In their discussions of the Genuine Software Initiative, Microsoft explain that downloading illegally-obtained software increases the chances of infection by malware and identity theft. Clearly these are things we would all like to avoid (and for my part it's why I tend not to buy anything from dodgy characters down back streets). They go on to say "In addition ... installing and using counterfeit software can prevent customers from obtaining some updates and premium add-ons." In other words, Microsoft will punish you still further for acquiring illegal software by refusing to provide updates to non-genuine copies. This seems fair enough, and it seems to me is the real thrust of Microsoft's policies: they don't care about your possible malware and identity theft issues (otherwise they would make their own products more secure), they care about whether they receive the revenue or not. The rest is just hokum designed to make people fearful about software theft, masquerading as a concern for the consumer.

I have to admit that Microsoft's update also bugged me by creating an automatic reboot event. This might not normally have been too troublesome (I had deferred it several times, and can only presume that the window appeared and consumed a random newline to gain permission to restart the system) had it not occurred during the installation of software. Aarrgghh!

The thing that really makes me want to run away from Windows, however, is Vista and its draconian approach to product registration and DRM issues. On the latter topic it's as though Microsoft were already a fully-fledged member of the Hollywood hegemony (which might give us clues about its media ambitions: I am sure that Microsoft is clever enough to sense the diminishing returns from software production). This paper by Peter Gutman enumerates some of the many ways in which DRM paranoia has caused Microsoft to choose to degrade content presentation and disable functionality that many users will desire.

With all the brains that Microsoft has at its disposal (and despite my occasional scathing criticism of the company and its products Microsoft does employ many very clever people), the best approach they could come up with for securing content in the 64-bit Vista environment was an insistence that drivers be digitally signed and approved by Microsoft. Fortunately it took about a month for NV Labs in India to design a system that completely subverted these protections. It's clear that Microsoft, like Hollywood, just doesn't understand that copy protection schemes are a busted flush. But they still continue to wrong-headedly pursue them because they know the majority of consumers will accept the technology unmodified and not even realize that in many legislations (i.e. those not subject to provisions similar to those of the USA's stupid Digital Millennium Copyright Act) their legal rights to fair-use copying are infringed by such systems.

One quite amusing result of Windows' present-day incorporation of DRM features is that in five or ten years' time Microsoft will have the content producers by the nuts. I can't say I'm sorry about that one. Microsoft like to paint themselves as subject to Hollywood's whims, but they are actually very cleverly positioning themselves to control the distribution channel. This would allow Microsoft to say "if you don't like our deal, tough, because it's the only game in town". This would be true if they weren't so busy throwing the desktop away. People are going to be really pissed when they find that they can't play their HD content on Vista, or that they have to repurchase after a disk crash.

The only systems I have left using Windows are laptops, and it's becoming increasingly easy to buy a laptop without a Windows you never plan to use. Unfortunately this won't stop me having to deal with people who can only provide me with low-resolution content because they can only talk to me over what Microsoft regard as an insecure (by which they mean non-protectable) channel. Microsoft say:
Digital distribution offers consumers a convenient way to access their favorite content at any time, and with content protected with Windows Media DRM 10 they'll have even greater flexibility and choice. Today consumers can choose from a variety of content service providers, a multitude of devices, and a variety of "purchase and download" payment options and subscription models. Windows Media DRM 10 ensures that consumers will be able to enjoy even greater flexibility and choice by allowing them to acquire and/or transfer their subscription content to the devices of their choosing.
I say this is complete tosh. The benefits of DRM are for the content owners and content providers, and Windows DRM allows them to provide copy-protected content that they can disable simply by adding it to a Certificate Revocation List. The "greater flexibiity and choice" is specious: Microsoft assume that content providers would choose not to make their content available digitally without DRM schemes, but in fact there has been no effective demonstration of this assertion. But I am used to corporate America pretending that their profit plans are really for my benefit.

Gutman says at the start of his paper "The Vista Content Protection specification could very well constitute the longest suicide note in history". It certainly puts them in the running to become a shadow of their former selves. Notice, by the way, that while IBM is also a shadow of its former self it is still a significant organization.It just no longer has the 75% of the world computer market that it used to. When Microsoft looks back thirty years hence I hope it will realize that this obsession with DRM was what lost it the desktop dominance that fueled its growth into the largest software company in the world. I just hope they still sponsor PyCon.

March 27, 2007

Just Another Dynamic Language Weenie?

I was mildly amused by a recent post on the Hacknot site. The author is clearly completely in love with himself (if this piece was written by a woman I'll buy a hat and eat it), and cannot even be bothered to get Stephan Diebel's name right. I really don't see the point of trying to put dynamic languages down - they exist, and those who don't want to use them don't have to. This is yet another boring case of some idiot fighting a religious war of their own imagining, and unfortunately it doesn't seem to contain much that usefully adds to the static vs. dynamic language debate.

About the most egregious example of false logic to be found is in the attempt to put down people who say "where's the harm - [dynamic languages] are just another item in your tool box, for use where appropriate". The author attempts to persuade us this argument is untenable because, he says, "... the same milksop argument is used by advocates of intelligent design ...". Because an argument is used irrationally by one misguided group of people doesn't make it any less valid in cases where it actually applies, however.

Overall I think the author is just looking for a group to refer to as weenies in a feeble attempt to prove (possibly to himself) that "I'm OK because you're not OK". The blog is output-only, with no apparent mechanism for reader feedback. Probably the author isn't interested in other people's opinions.

March 13, 2007

Science and Faith

While this post is probably a tiny bit cynical I think it addresses the behavior of the worst fundamendalists, choose any denomination you like.

February 28, 2007

Impressions of PyCon

Well, since a laptop fault meant I was without a computer for PyCon I wasn't able to do the instant blogging I did last year - sorry if you were expecting that. Instead I decided I'd try an experiment and turn my photo collection into a video on YouTube - too late to enter the photo competition anyway, so now for something completely different. Hope you like it.

February 22, 2007

Tutorial Is Ready

I wanted to make sure that the tutorial materials were available on the web before I started this year. Sean Reifschneider established network connnectivity earlier this evening, meaning that those students who can't read a thumb drive will be able to download the slides and sample code.

So can anyone else, come to that. I hope that the materials will be helpful to anyone who wants to learn to use databases from Python.

February 21, 2007

At PyCon!

I thought I was going to have a difficult journey when the airline announced that the flight was delayed for engineering reasons. Fortunately the delay was minimal and my flight to Fort Worth from Dulles actually arrived slightly ahead of time!

I met up with Andrew Kuchling, who's done a terrific job of organizing the last two PyCons (with able assistance from his co-chair Jeff Rush) and we shared a cab to the hotel. After we checked in we spoke to the sales staff about the accommodation issue. It now sounds like the relocation that some delegates have been forced to into should be for Thursday night only. This will mean a move after their first night, but at least they'll be able to spend the rest of the conference in the same hotel as everyone else.

I have to put the finishing touches to the tutorial presentation for tomorrow, and then we'll see how the rest of the evening goes.

February 19, 2007

Brown Bears Threatened by Builders

My son has just sent me details of a development in Northern Spain that threatens the brown bear population. Apparently one of the greatest problems suffered by the bears is insularization - separation of the habitat areas by removal of the corridors between them by building development. Apparently this particular development proposes a ski resort be built in an area of low snowfall across a migration corridor used by a threatened population of bears.

This is in contravention of EU law, in particular NATURA 2000. Clearly someone's narrow economic benefit is being put before the law, let alone the welfare of the bear population. If you value species diversity and want to help please sign this petition and request that the Spanish Minister for the environment enforces European law to preserve a threatened population in preference to a development of marginal utility.

February 14, 2007

Are Viacom Threatening You?

Have you received a notice from Viacom demanding that your remove YouTube content? Apparently they sent 100,000 take down notices about YouTube content in a single day.

Obviously each of these notices would be meticulously researched, which is why some of them were completely unconnected to the corporation or its content. If you received a notice you feel is unfair and you need help you can contact the Electronic Freedom Foundation for help.

It's time that media giants stopped abusing their position. Once they do that we can address the issues raised by their blatant manipulation of the political process in their favor. If they had their way there'd be no fair uses at all for their content other than paying for it before any use at all.

February 11, 2007

Five Years as a Blogger Tomorrow

I just read via Unofficial Planet Python fuzzyman wishing his Voidsapce blog a happy fourth birthday - congratulations, fuzz. This caused me to dig back into my own archives and realise that "... for Some Value of Magic" will be five years old tomorrow. So if four years is "practically ancient" I suppose this blog must go back into pre-history.

Why couldn't this wait until tomorrow? Because that'll be my last full day in the UK for some time - we are moving back to Virginia and I very much doubt I'll have the time to be writing blog entries as we have to get the cats to the airport and various other mundane but necessary tasks. I'm not looking forward to the joys of a 5:50 am flight out on Tuesday, but can't help being excited at the prospect of this return.

February 4, 2007

The Purpose of Advertising

A recent Seth Godin post about changes in the way advertising has been changing over the last quarter-century ends with an interesting quote:
"The winners, I think, are the agencies and the pundits and those that would like advertising to be more than it actually is."
He makes the point that advertisers are more interested in creating a short little movie that spreads - which if you think about it is exactly what everyone on YouTube is trying to create.

Bloggers are trying to create compelling writing that holds the interest of a (probably quite select) group of readers. Is this the same thing? Not really, in my view. Most bloggers aren't doing it for the money, but to promote their opinions and share their knowledge, but there's still the desire to promote a particular point of view - even if successful promotion doesn't result in the reader buying something.

While there's always a chance that a successful blog will attract enough readership to make advertising a money-earning proposition most blogs aren't going to be popular enough to attract advertisers. Yet still their dedicated authors keep pushing out the material. Just like I do, I suppose.

For some reason a number of posts were stuck in the blog as drafts. This one is from February 2007.

January 27, 2007

So You Want To Help the World?

When I was an academic, one of the problems I struggled with was relating information technology to the basic needs of populations in less-developed areas. In my M.Sc. classes I tried to explain the irrelevance of high-tech information systems to someone who was struggling to find clean drinking water and sufficient food. These explanations were somewhat academic (no pun intended) in nature because I haven't visited such areas or even been in particularly close contact with them.

If you would like to help others less fortunate than yourself PyCon gives you a great opportunity. I have been corresponding with Oouc, who says:
Thank you greatly for your interest. People in the disaster area, especially Nias, have had their old way of life destroyed. Many are now beggars because their type of employment before the tsunami and earthquake 3 months and 2 days later is gone. The March earthquake destroyed 80% of the buildings and killed many of the business leaders because they could afford to live in large heavy concrete houses.

Their primary need is jobs. But before the tsunami/earthquake the great majority were poorly educated tribal language only gatherers in the cocanut and rubber tree plantations. They need practical education in the national or international language if they are going to have a real life after all the results of their old way of life has been destroyed.

The Internet has a wealth of Public Domain materials which could help accomplish this education but it is not accessible to these people. I have an expenses only, no salary, grant to grab these Public Domain materials, put them on a local server and LiveCD's and make them available to Nias and Aceh residents in the original language and in translations to their national and tribal language. Decades ago, I was called "the impossible man" by a translations society because they were repeatedly told by computer scientists that something was impossible but I never failed to do what they wanted. Now most of my time is spent helping others and I cannot even do what I want to do. The sprinting or distant programming help of any Python programmer who can develop almost anything for education would be helpful.

I joined a sprint on a dial-up connection half way around the world last year and was able to benefit much more than my small contribution.

People who want to help should look at http://us.pycon.org/TX2007/EducationalSprint and the two links on that page. If they will give me their name or handle, abilities and interests; then eMail to me or leave their contact info on the wiki then I will plan to use their abilities and turn the sprint more towards their interests.
The tsunamis have left large communities without visible means of support: lines of communication have been cut, buildings have been destroyed, coastlines have changed (sometimes by over 50m/160 ft) and livings have disappeared. If you would like to help people who have been thrown into turmoil through no fault of their own then consider signing up for the sprint, or getting in touch with Oouc at the conference (as I intend to) and offering your help.

January 23, 2007

Lots of PyCon Good News

The PyCon blog announced today that pre-registered attendance has now reached 400. After a pause in growth last year (due to the change of venue?) I am happy to see that Python's continued increase in popularity is being reflected in PyCon's attendance figures. It is, after all, the primary US conference for anyone with an interest in the Python language.

Sponsorship is also on the increase, and I am delighted to have exceeded the target that the co-chairs set me when they put the budget together. This is the first year we have attracted five Platinum-level sponsors. Thanks to everyone who is supporting the conference in this most practical of ways. I hope all my readers will take the time to follow their links at the right-hand side of the PyCon web pages. It's also not too late to sign up as a sponsor - where else could you get your organisation's name on the web next to both Google and Microsoft?! The details are here.

On a personal note the database API tutorial is going ahead. The lower numbers this year should allow time for questions and personal tuition. I'll have to get working on the slides and examples now!