Colin's Journal: A place for thoughts about politics, software, and daily life.
Easy-to-use business expense tracker for Android.
I went for a walk this afternoon in High Park, hoping to take some more swan photos. In the end I filled up both of my memory cards with Chipmunk photos instead.
Chipmunks are hard to photograph. They’re small, shy, and extremely fast. Thankfully they also like peanuts, which works to overcome their shyness. Shortly after I entered the park I encountered a gentleman who was feeding the chipmunks peanuts.
There were enough chipmunks and peanuts for me to try multiple different approaches to photographing them. I’ve taken an initial look through the results, throwing away 54 pictures, leaving over a hundred for closer consideration.
At least for now this one is my favourite. The full size image is scary – the chipmunk’s face alone fills the screen, but shrunk down it looks good. Remember to click on the picture to see a larger (but still reduced) version.
The weather today was good, bright clear skies but not too hot. To celebrate I took advantage of Doors Open Toronto, and visited a few buildings.
I started at the opening time of 10am, and finished off at around 3:30 (closing time for most buildings was 4pm). During this time I managed to see 6 of the 155 buildings taking part, taking photos at 5 of them. My feet ache, but it was an interesting opportunity to see more of Toronto.
I’ve only briefly skimmed through the photos, but this one stood out. It’s remarkable that it turned out at all as it was shot hand-held, wide-open at f1.8 and 1/13s. Taken at St. James Cathedral.
It would be nice, if you could take any Python application, and have it run on any platform. It is expected that a Python application, which works under one version of Python, will also work on the next incremental release of Python. This situation however, is not the case.
The first problem I had when moving from Python 2.2 to 2.3 under Fedora Core 2 involved filenames. Filenames under previous versions had been Strings. Under Python 2.3 they sometimes come back as Unicode Strings, which the anydbm module then fails on. This caused PubTal to fail, and was the driving force behind the last release.
The next problem I’ve encountered is really bizarre. In TALAggregator I had a couple of classes that inherit from xml.sax.ContentHandler. They implement startElementNS and friends. They are not, however, directly called from an XML parser, but rather from my own code. When I moved to Python 2.3 these methods would still be called, but the code in them would never get executed. No exceptions are thrown, the code just silently doesn’t work. Changing the names of the methods, or removing the super class, solves the problem.
This issue with TALAggregator meant that half my feeds have not been aggregated over the last 2-3 weeks. I’ve now caught up with those still in the feeds, but I’ll inevitably have missed some posts.
The problem on the multi-platform front affects TimeFormat, and Windows. The root cause is the locale module, and its partial implementation on Windows. I can work around this gap, but the fact that it isn’t documented is unfortunate.
As a change from Venice here’s a daffodil taken at the beginning of the month.
John Kay has posted an interesting article looking at the wording of the proposed EU Constitution. He, after making the inevitable comparisons with the US constitution, calls for an EU constitution that defines the nature of the political experiment that the EU represents.
I have some sympathies for this request, but I think it falls down on two counts. Firstly this position overvalues what a constitution provides. The reality of justice always comes back to politics, regardless of provisions made in a constitution. The US constitution has not prevented people (US citizens and the rest of us alike) being locked up without trial or due process. How the constitution is interpreted depends entirely on those doing the interpreting, no matter how precisely worded. Similarly established rights can be upheld by those in power simply on the basis of precedence, uninhibited by the absence of specific laws granting such rights.
The second objection arises from the nature not just of the EU, but also of the constituent member states. Most EU countries’ constitutional settlements are relative new, with only Luxembourg’s going back more than a century (according to the CIA world fact book). There isn’t an accepted grand vision of what the EU will finally become. The current structure has evolved into its current state, and it will continue to change over time. Europeans have lived with changing national and supra-national arrangements for the last 50 years, and there’s little reason to see that stopping now.
The value of the EU constitution comes not from establishing a final constitutional settlement, but from much more mundane benefits:
Although much has been made of the establishment of the EU’s legal personality, or the supremacy of the EU law over national law, these are less significant changes. They are less significant because they are, in practise, already in effect – dictated by political and judicial reality.
I’ve continued to trawl through old Venice photos, and found another picture of the Salute, this one taken during the day. I don’t normally post two pictures of the same subject close to each other, but here they make a nice contrast.
The weather is definitely conspiring against me. We have a three day weekend, and the weather features grey skies, rain, and thunderstorms. Normally thunderstorms offer opportunities for photography, but we have grey skies and sheet lightening.
In an attempt to turn the poor weather to my advantage I’ve spent some time looking through old photographs and releasing code. Today I released PubTal 3.1.0, which fixes some major incompatibilities with Fedora Core 2, and includes the software that I use to maintain my weblog.
When going through old photos I often find ones that I previously didn’t pick out, but now find myself liking. Unfortunately this can also work the other way – there’s been a couple of pictures that I’ve posted on this weblog that upon further consideration I’m half tempted to remove.
Now I’m going back through some of my Venice photos, and finding that there are several which I thought I had posted, but which in fact are languishing on my hard drive. They aren’t necessarily brilliant photos, but they’re probably good enough to warrant posting here.
The Council of Ministers did vote to accept the new patent directive, and Germany was one of the countries voting in favour. Confusingly this particular vote was mostly pushed out of the headlines by another EU patent vote, one that could have allowed for cheaper and easier pan-EU patenting, and which did not pass.
Meanwhile, in happier news, the BBC is reporting on a recent survey that suggests a slim majority of people are in favour of banning smoking in public places. Here in Toronto we’ve had smoke free restaurants for a while now, and as of the 1st of June we’ll have smoke free pubs as well. As a non-smoker it makes eating out, and soon drinking out, much more pleasurable.
Apparently Germany is going to vote against the European Commission’s current patent directive. While this is being welcomed as a good thing, it is not, as is often the case, that straightforward. Firstly the translated quote that has raised the prospect of Germany voting no:
Under no circumstances do we want American procedures in Europe,’ Hucko vowed with regard to the US patent process. A patent must be ‘a fair reward for a bona fide invention and not abused as a strategy to bludgeon competitors.
Note that Elmar Hucko does not say Germany will vote against the patent directive. The directive as it currently stands (with the European Parliament’s amendments stripped out) is regarded by some (such as the UK Patent Office) as maintaining the status quo. It is likely that this statement by Elmar Hucko is simply an explanation of what the German government hopes the effect of the directive will be.
Maintaining the status quo is not, however, a desirable state of affairs. According to the FFII the European Patent Office has already granted more than 30,000 patents that would class as software patents. Exactly where this number came from I’m not sure, but there certainly seems to be pressure to allow a broader scope for patenting software.
The best outcome would be a second reading by parliament re-introducing the amendments previously passed. If the directive could be passed by the Parliament and Council of Ministers then the EPO and national patent offices could be forced to disallow software patents. This in turn would mean existing patents becoming invalid, something that I doubt the Council of Ministers will agree to.
In this context it seems most likely that either the directive will be passed without the desired amendments (and with goverments continuing to claim that software patents are forbidden), or with the directive failing. With either result the fight will hinge on case law, and challenging patents on the grounds of technical contribution.
For good background reading on the current situation I recommend this exceptionally good Register article on the subject.
Earlier this week I had a request for the API documentation to be added to the RSyncBackup tar file. I’ve done this, cleaned up the license wording, and released it as version 1.2. I need to find the time to make releases of some of my other software. I’ve added initial Atom support to TALAggregator, and I think I’ve shaken most of the bugs out of my PubTal weblog plugin. Unfortunately it always takes a decent chunk of time to do a release, mainly because of documentation updates, so it may have to wait.
I’ve finally fixed the way dates and times are displayed in my weblog. Moving from Debian to Fedora had changed the behaviour of strftime() so that I could no longer coax it into producing single digit hours and dates. The solution is a Python implementation of strftime that takes an extended format allowing me to control the padding.
In case this is useful for anyone else I’ve released it as a standalone library, and will bundle it into the next version of PubTal.
After reading Chasm City, a reasonable but not outstanding experience, I decided to try Revelation Space. Revelation Space was written before Chasm City, although, as I found out in the first few pages, it is set afterwards. Online reviews had recommended this first book as being superior to the second, so I was hoping for something special.
Revelation Space unfortunately is one of those books that has too much in it, rather than developing and exploring a particular theme or story. The main characters in the book manage to discover three alien cultures and one character manages to die and get reincarnated. This style of science fiction doesn’t really interest me, so while there were some good points, I found I enjoyed Chasm City more.
In the hope that the writing will continue to improve, as it did from Revelation Space to Chasm City, I’m now tackling the next one in the series Redemption Ark. So far (a hundred or so pages in) it is proving an excellent read – I’m hoping it keeps up the current standard!
Copyright 2009 Colin Stewart