February 29, 2008

Back to the Drawing Board for OOXML?

Even some pretty shady manipulation of the various national committees doesn't appear to have helped Microsoft much in their bid to get OOXML, the proprietary format describing Office documents, declared an international standard. The ISO/EIC Ballot Resolution Meeting in Geneva has ended with what can at best be considered an inconclusive result, with only eight of the 'P' countries and ten countries altogether registering any kind of vote on the main matter put to them.

The real problem here is Microsoft's attempt, with the assistance of ECMA, to put the standard through the fast track process; that was clearly not appropriate for a standard of such complexity and political significance. There were over 1,100 dispositions to be decided at the meeting, and only 20 substantive dispositions received any measure of individual attention.

The meeting's convenor attempted to reach a conclusion by bundling together 900 dispositions that had not been discussed and asking the delegations to vote on each without discussion. Unfortunately this led to over 80% of the delegations either refusing to register a vote or abstaining on all dispositions.

The real problem is that rather than being a standard driven by the requirement to describe structured documents of all types, OOXML is simply an XML-based description of an existing proprietary format.If Microsoft truly want to embrace standardization they should now get behind the Open Office ODF format and support it with all the weight they can. This seems unlikely given their prior position on ODF support, which can at best be described as half-hearted. They apparently have a lot of work to do to make OOXML acceptable.

Technically there is now a 30-day period in which the ISO/IEC members can vote to approve the adoption of OOXML. I doubt even Microsoft has sufficient clout to persuade them that this travesty or a process represents a satisfactory basis on which to build an international standard.

False Economy?

I went to a meeting the other day with one of my clients and two third-party developers. We were meeting at the developers' offices, in a town I'm not familiar with, so when I arrived I looked for the closest parking garage and parked there.

Arriving at the offices, the opening smalltalk included parking. Both my client's representative and the two developers had parked in two-hour free parking areas, and when I said I'd used the parking garage eyebrows were raised and one person asked me "how much does that cost?". I replied "I don't know, I didn't even think to look".

The meeting lasted four hours, so half way through the other three participants in the meeting had to take ten minutes or so out to juggle their cars and avoid tickets. On my return to the parking garage I discovered that the charge equated to approximately three minutes' billable income, which I was happy to write off. Assuming the other three participants are similarly expensive their decision may have saved them personally a dollar or two, but it probably cost the client over a hundred bucks in lost time.

Yet I'm the one who's regarded as stupid for paying to park so I can happily take as long as I need to meet without interruption. I'd like to think my clients pay me the rates they do so, among other things, they don't have to pay me to go out and move my car in the middle of meetings. A couple of dollars out of my pocket is well worth it if the client gets (and perceives) better value for money as a result.

February 27, 2008

EU Slam Microsoft with Further Fine

The saga continues. The European Commission have fought Microsoft to ensure that, in Europe at least, they have to play by the rules rather than making them up as they go along. Unlike the US government (which not only refused to declare them a monopoly despite their domination of the desktop but also failed to properly enforce the rather tame sanctions they imposed), the EU has repeatedly told Microsoft to stop behaving in an anti-competitive way.

The latest action, in which the Commission sued Microsoft for failing to comply with previous antitrust decisions, has resulted in a €899 m ($1.35bn) fine. Though it has only led to a 12c drop in the stock this represents about a tenth of Microsoft's annual profits, and may finally give the company reason to think seriously about complying with court rulings rather than ignoring them.

This is the first time in 50 years that such action has been taken by the EU, because every other company losing such an action chose to comply with the spirit and the letter of the decisions.

Microsoft faces further trouble with the EU, which recently started a new investigation into Microsoft business practices relating to their dominance in the word processing and spreadsheet arenas, and to determine whether the company unfairly tied Internet Explorer to Windows. The recent announcement about API sharing will also come under scutiny, and the European Competition Commissioner, Neelie Kroes, observed it's the fifth time that Microsoft has made an announcement about improving interoperability. She said "Talk is cheap. Let's wait and let's find the reality in this case. They have to deliver and implement."

February 25, 2008

PyCon is International

Various national conferences have started to use the PyCon name, and this has now been formalized by making the various national sites available under the pycon.org domain. So now you can go to:
  • br.pycon.org
  • eu.pycon.org
  • fr.pycon.org
  • it.pycon.org
  • uk.pycon.org
That's a long way for a community conference to spread in five years! The eu conference is a redirection to EuroPython, which is a trans-national conference and (if I am not mistaken) was actually started the year before PyCon. But it's nice to have them in the family.

Thanks to Marc-Andre Lemburg for maintaining the domain. Let's hope to see more PyCons as the Python's influence spreads further and its popularity continues to increase.

February 24, 2008

Don't Compete and Microsoft Won't Sue

It's obvious that not everyone is happy about Microsoft's most recent attempt to woo the open source community by releasing API details and offering them for use with a covenant "not to sue open source developers for development or non-commercial distribution of implementations of these protocols".

It isn't yet clear exactly what qualifies as "non-commercial distribution", but it's an interesting approach: Microsoft has always complained (sometimes unjustifiably) about the GPL. Now authors of open source products can use the newly-released information as long as they don't gain commercial benefit by doing so. This could be seen as opening up, or simply as a nice piece of spite. It will definitely result in the development of interoperable projects that will take market share away from Microsoft, leaving software dollars looking for other places to be spent.

I suspect that a lot of people will say that this doesn't go far enough, but it's a sea change in Microsoft's approach and has doubtless taken lots of internal discussion. If you develop a commercial product based on Microsoft's patented technologies then you will still need a license from them before you go to market. As long as you believe software patents are reasonable this is nothing to complain about.

Personally I have never thought software patents reasonable, but Microsoft are to be congratulated for trying to promote their technologies in a more open way. Let's hope this is just the first step to fully open standards, only twenty years too late.

February 22, 2008

Phatch, the Photo Batch Processor


Phatch, written by Stani (author of SPE, Stani's Python Editor) is probably the nicest open source program I've used this year. I'm no great shakes with graphics, but I wouldn't even have been able to think about doing the transormations to my profile image that you see on the right.

The graphical interface makes it easy to perform the same operations on a bunch of different images in the same directory, and the flash image that comes up at the start always gives me a smile. Still in need of development, but definitely recommended, particularly if you have a lot of images to work on.

Needless to say, this little whizz is written in Python.

February 21, 2008

Biggest PyCon Ever Starts March 14

It now appears definite that this year's PyCon is going to be a monster. As of nine o'clock this morning there were 755 registrations, after the usual spike at the end of the Early Bird period.

Murphy's law dictated that registrants started experiencing problems with credit-card payments in the last 36 hours of Early Bird due to problems with the third-party processing service. Right now there are over 100 pending credit-card registrations! If you experienced a problem and did not manage to complete your registration, fear not—you will be charged the Early Bird price if your registration was started in the right time frame but you could not complete it due to site problems.

I'm buzzed about this conference. The tutorials are getting packed—several, including my own, are nearing the 50 mark—and there are still over three weeks to go. I believe this is going to be the largest-ever gathering of Pythonistas in the world. Be there, or be a four-sided regular geometrical shape.

I'm thinking about trying to do some audio interviews while I'm there. Who would you most like to hear from? You can see the sign-up list (excepting those who requested no publicity) here.

February 18, 2008

Python in 3 Hours?

As I work through the slides I am beginning to realize that I have set myself a very ambitious target for the Python 101 for Programmers tutorial at PyCon this year. I currently have 135 slides, which means I have roughly eighty seconds to cover the points on each slide. I normally plan on three to five minutes, so the presentation style is going to be a little terser and more rapid-fire than is my custom.

It's currently the best-subscribed seminar with a total attendance of 37 (!). As it was clearly flagged as being for experienced programmers who didn't know Python I hope that I am bringing a bunch of newcomers in to the Python community and helping them to make sense of the rest of the conference.

While I remember, Early Bird conference registration closes on February 20, so sign up now before it costs you more money!

February 17, 2008

Filmic Doppelganger

Ivan Krstic made a light-hearted blog post after eWeek named him the second most influential person in computer security, pointing out that there is an Ivan Krstic in the Internet Movie Database. So of course I had to go and see whether my name was there. Turns out my namesake is a production coordinator on PlayBoy films, and his STARmeter rating went down 40% this week —but you have to join the site to find out why, so I will never know.

I can't help feeling this is the moral equivalent of having a sheep thief in the family tree.

February 16, 2008

Cygwin SQLAlchemy Install Puzzler

Hmm. This Cygwin session gave me a few moments' pause. What could be the problem here?

sholden@bigboy ~
$ easy_install-2.5 SQLAlchemy
Searching for SQLAlchemy
Best match: sqlalchemy 0.4.2dev-r3811
Processing sqlalchemy-0.4.2dev_r3811-py2.5.egg
sqlalchemy 0.4.2dev-r3811 is already the active version in easy-install.pth

Using c:\python25\lib\site-packages\sqlalchemy-0.4.2dev_r3811-py2.5.egg
Processing dependencies for SQLAlchemy
Finished processing dependencies for SQLAlchemy

sholden@bigboy ~
$ python
Python 2.5.1 (r251:54863, May 18 2007, 16:56:43)
[GCC 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlalchemy
Traceback (most recent call last):
File "", line 1, in
ImportError: No module named sqlalchemy
>>>

Easy to spot once I focus on the filename and the Windows path it contains: even under Cygwin I am running the Windows easy_install, and so it reports that SQLAlchemy is already installed in Windows!

I chickened out of running ez_setup under Cygwin, and just used the "download tar, unpack, run setup.py install" dance. Happily this installed everything perfectly (so far as can currently be discerned). So life goes on.

February 15, 2008

New Blender Tutorial

Well, since I complained a while ago about Blender's documentation, I guess it's time for me to point out that this issue has been addressed (though I haven't yet had time to find out how well). Google's 2007 Summer of Code funded, among other things, the production of a new tutorial. Rene Dudlfield says nice things about it, so I guess from now on it's going to be easier to learn how to use Blender. Great news!

One question, though. Why doesn't the word "documentation" appear at least once in the Blender home page?

February 13, 2008

Senate Says Corporations Can Ignore the Law

[UPDATE: see this Salon.com article for a great summary of the position].

For a good while now there has been a political campaign to provide immunity to telecommunication companies that supported President Bush's illegal surveillance of US citizens. This appears to mean that "I was just obeying orders" is about to become a valid legal defense in the USA, and that corporate managers need take no account of the law when the executive branch asks them to take actions without any support from legislation and in clear defiance of the Foreign Intelligence Surveillance Act.

The House passed a surveillance bill in November 2007 that leaves the companies that assisted the CIA's spying mission responsible for their actions. Yesterday the Senate passed a similar bill, but one that would grant the telcos retrospective immunity for their lawbreaking.

The President has lost touch with reality to the extent that he appears to believe that he is above the law, and he now proposes to put the corporations that spied on their customers in the same happy position. Anyone who supports these actions needs to think really carefully: the founders of the Constitution established clear limits to Presidential authority, and if nobody takes the trouble to convince Bush and Cheney that they are mistaken it will be a bad day for us all.

I'd like to see them impeached: if a stupid sexual peccadillo was sufficient to appoint a special prosecutor to investigate Clinton's behavior, how much more appropriate is it to do so when a president takes the country into a bogus war on the basis of manufactured intelligence and spies on his fellow countrymen? This is a chance for the American people to show the rest of the world that the rule of law really does mean something in the USA.

This affects us all as technologists: we may be asked to take part in the spying next time (if we weren't this time), and soon there may be nothing to stop us from being thrown into prison merely for failing to comply. This represents the first step onto a very slippery slope indeed, and we need to help ensure that corporations and the executive remain subject to the rule of law. It isn't a party political matter. It's about standing together and taking action when the law which is supposed to protect us all is threatened.

February 9, 2008

Open Source Stands on GNU's Shoulders

It's nice to see Bruce Perens crediting Richard Stallman with being right about software freedom back in 1983. Stallman might be less than a diplomat, as he promotes his views uncompromisingly, but whatever you think of him persaonlly there's no denying that he is a man of vision.

I bought my first GNU t-shirt at the UK Unix User Group conference in (I think) 1988, and have supported free software and open source ever since. The dinosaurs can't see it but there is a groundswell of change that's growing and will, much sooner than most people anticipate, change the economic and social order of things.

Don't worry, the determined capitalists will find a way to steal it away and use it for their own gain. By the way, happy tenth birthday, OSI.

Introduction to Python, March 25-27

The only new content we added to the revamped site was a brief announcement of our new Introduction to Python course, which is currently planned to run four times this year. I'll be teaching these classes in a tailor-made classroom in Springfield, VA, a short ride from Reagan National Airport and close to the nation's capital.

There's currently no schedule on the web, and places aren't yet being sold by e-commerce techniques—the important thing is to make sure everything is right before we start selling it too aggressively. The materials are based on courses I have given on-site to various clients over the last four years, so they are proven to be effective. The first run is March 25-27, and places are limited so that there'll be plenty of time to ask questions.

If you know anyone who needs to learn Python, ask them to get in touch. Also, if you have training needs that aren't covered by this specific class please let me know: there'll be more coming up!

Live on Django

After some weeks of planning (our own site always takes second place to clients) I am happy to say that the holdenweb.com site is up and running on a new host as a Django site. Thanks to all those in the Django community who have provided help and advice over the past few weeks.

During the reorganization we also took the opportunity to polish up our standards compliance, and so as far as I know the whole site is now valid XHTML 1.0 Transitional. The server also now has a permanent redirect for requests for the www subdomain to the main domain, which will shorten most URLs by four characters and makes us no-www.org compliant at class B.



Not much else has changed yet, though you will notice that reloading a page now typically displays a different book. The next job is to reorganize the URLs, adding redirects for the existing ".html" locations and cleaning them up to be dotless (since there is no longer any static HTML in the site). We are excited by the possibilities.

Before undertaking this modest project I looked quite hard at both TurboGears and Django, and I have to say that both projects are so good the decision was quite difficult. In the end the thing that swung it for me was the ease of migration of the existing templates and database content. Had I been starting from scratch, however, I might have been tempted by TurboGears. I think that Django just fit my brain better on this one.

February 6, 2008

PyCon Registration Going Great Guns

With over five weeks still to go until PyCon 2008 in Chicago registrations already number over 180, almost three-quarters of the total registrations for the first PyCon in 2003 in Washington DC. The tutorials, running for the third year, are also popular and many of them already have enough registered students to guarantee that they will run.

I'm delighted to see that my own Python 101 for Programmers is a popular offering—it's intended for people who have had little or no previous exposure to the language, and I am trying to cover all the essentials in three hours! Let's hope that it brings some new members to the Python community.

If you have never been to PyCon, I would like to recommend you try it. It's definitely not a stuffy atmosphere, people go there to have fun as well as do productive work, you can learn huge amounts from both the tutorials and the regular papers, and the sprints are a great way to get into a new project and learn from the developers themselves.

It's a unique event, besides being terrific value for money.