Author Archive for admin

Call a spade a spade

Typical of the internet, and particularly Google Images. I’m trying to research images for a cartoon I’m directing. I have a mob of villagers with torches and farm implements, so I search for spade, and get only one image in twenty that’s any use!

4 Hours to STOP Software Patents!

I want representatives in the European Parliament to save Europe from software patents by following the Buzek-Rocard-Duff amendments.

The Software Patents Directive, as approved by the European Council of Ministers, would legalise US-style Software Patents in the European Union.

If that happens, software developers will no longer own what they write and can be sued for selling or distributing their own software. This would not only endanger your job, but the entire European software sector.

The Shrew’s Broom

The Shrew\'s Broom

Dealing with Bulldog

Having a catchy brand like “Bulldog Broadband” is useful, because the chances are you will remember this article and not buy their services. I’ve been holding for their customer services for over half an hour, and the chances are that I will need to hold for another fifteen minutes before I have even a remote chance of talking to one of their useless customer support representatives.

To say that I am dis-satisfied with their service would be an almighty underestimate; Here’s another tip - do not consider upgrading to their attractive-looking 8-meg service unless you enjoy spending extended periods of time without either telephone or broadband working.

You could upgrade to this service if (for example), you have a partner who you believe spends too much time on the internet, and you would like you to go ‘cold turkey’, for a period of approximately a fortnight. I’m just over half-way through the treatment, and yet I still feel the occasional pang to get back online; Yes, I still yearn for that most addictive of drug, but by the time Bulldog see fit to restore my service, I will most likely have forgotten what the Internet is for and taken up a new passtime, like macrame or perhaps duck-hunting.

This has not been a happy week for connectivity; Apart from the brief period when I was out of the country, and therefore briefly unaware of their lack of progress, I have been growing ever more annoyed with my ISP.

When I first called them to report a loss of failure. The customer services rep was adamant that the bulldog service was not malfunctioning and that the fault must be with my equipment. He suggested that I go out and buy a different brand of ADSL modem and micro-filter because my old one was ‘obviously broken’. Now it turns out that the fault is to do with Bulldog’s tardy upgrade procedure; a consequence of an upgrade that I ordered three months ago! My internet connection failed simply because Bulldog unplugged it.

In any case, enough of this angry ranting; I’m connecting courtesy of a local cafe, Viva Viva on Priory Rd, Hornsey. This excellent place offers an unmetered 802.11b connection and good quality organic food with courteous waiter service. This has to be one of the best places to chill, eat and connect in the area. Come one, come all to Viva Viva!

LibDems vague on software patents

At the IT conference I am attending, the organisers conducted a straw poll of who opposed the impending Euro-software patent legislation. Everybody I saw was against it; The unambiguous conclusion is that software patents are harmful and the ‘economic majority’ of Europe’s IT industry who oppose software patenting.

In essence, a patent grants a monopoly on an idea. Patents were invented hundreds of years ago to protect the investments made by inventors. In return for publishing the designs of an invention (e.g. the plans of your contraption), and agreeing to license the idea for a standard fee, the government would protect that monopoly. This worked back in the 18th century because other inventors could study the designs in the patent-office and invent better machines.

The assumption of many MEPs appears to be that since patents appear to work quite well for contraptions they must also benefit software inventions. However there are critical differences between the world of software and the mechanical age that spawned the patent.

A central principle of computer-science is idea-reuse: Software languages are built to encapsulate ideas and re-use them. Any programmer can download ‘modules’ - collections of working functions. Some functions implement simple, single-minded ideas. Others amalgamate thousands of the simpler functions and can do complex things. The programs that you or I use in our day to day work are made of thousands of these complex functions, so it’s not unusual for any substantial work to contain millions of potentially patentable ideas.

Unlike a car or a steam-engine, a useful program is almost never a totally original work because re-use of ideas is so fundamental to what we do. The programmer who works at the leading edge of technology will almost certainly not be aware of which of the millions of ideas in a program are patented, and therefore any substantial program is likely to blunder into the patent minefield.

Software patents drive up the cost of innovation. Since any program is potentially infringing then all commercial software must be scoured for potentially infringing code before it can be sold. Of course, companies could opt to remain ignorant of their potential patent infringements, but if convicted of a patent violation the costs are enough to bankrupt most firms. Most companies would rather spend 10% to 20% of their annual profits on lawyers to audit their products.

In addition, rather than re-investing their remaining profits back into development, companies will feel pressured into building their own patent arsenals. A patent typically costs between £30k and £100k, so the more money we send to the patent office, the fewer productive computer-scientists we can afford to employ. This is why software patents cost jobs.

According to a friend who moves in parliamentary circles, there is at least one LibDem MEP who has not yet made his mind up about software patents. He told the FFII that if they can present two hundred signatures opposing software patents he would vote against the legislation. We managed to collect more than 250 from the delegates in the space of half an hour: a unanimous response against software patents

I believe that a vote for software patenting is misguided and harmful because it makes the best-practices of software development into something that is legally risky. In theory, any program that I write that is substantially useful has the potential to infringe somebody’s patents. The risk of accidental patent infringement will turn today’s playing-field into a minefield.

Software patents will harm me, and they will harm my customers. If any MEPs are readinf this, I request that you against software patents.

Plodcasting at Europython

Just a quickie, Nate Aune is demonstrating my Plodcasting system at the fabulous Europython conference; Nate created the ATAudio project which gives Plone support for multimedia formats.

A Zest for Crumpled Things

From the ghast spattered bowers of Gaar to the cast-iron gates of Hoon; a single voice resounds; His lordly voice booms with a gnarled yet mesmeric resonance; an extraordinary baritone addressing you with wistful oratory. He is Frank Key, sole begetter of the Hooting Yard.

Hooting Yard is a show on London’s Resonance FM. It’s been broadcast every Wednesday at 4 p.m., shortly after Epistaxis Time. I’ve recently started collecting episodes of Hooting Yard with a view to building the definitive guide to the recorded works of it’s author and reader, Frank Key. Yesterday I had the opportunity of plundering the rather shambolic resonance archive; I managed to retrieve 40 episodes of Key’s masterpiece. I suspect that there are at least thirty more episodes that have yet to be discovered, but these are on ancient and largely uncatalogued disk-packs somewhere in the cellar beneath Resonance studios.

The format of the show is simple; After a brief theme tune, Frank reads out a the week’s selection of short stories; They are mostly his own work, peppered with quotations from arcane and archaic sources.

The themes he tackles are diverse, for example one episode includes a story called “How I fell into the bottomless viper put of Gaar”, a brief biography of Professor Bindweed, a man obsessed with studying, cataloguing and understanding all aspects of the world’s bottomless viper pits.

The episode continues with the author pointing out a number of mistakes in Bindweed’s story; Specifically that the town of O’Hoolahan’s wharf (unlike Gaar) contains no viper pits, bottomless or otherwise. This item concludes with an extended letter of apology and it’s reply from the five fiendish burghers of O’Hoolahan’s Wharf.

Another favourite episode of mine is “The Book of Gnats”, an unusually long story which fills the entire half-hour time slot; It tells of the creation, loss re-discovery and destruction of the aforementioned book; the single fictional work of “Maud Glub”. Many of Frank Key’s best pieces are in the style of literary or artistic histories; All are of course pure splendid fiction.

While the themes of his stories are diverse, he has a few regular characters, most importantly ‘Dobson’, one of the 20th Century’s most prolific pamphleteers. Dobson’s name and date of birth are unknown (even to his creator), but his life’s adventures are chronicled in most Episodes. Dobson is portrayed as a brilliantly creative serial-obsessive whose wanderings rival Hemmingway

The most delightful thing about what Frank writes and reads is not the meaning of the content, but the manner in which it is written and read; Frank likes to toy with his words, re-arranging them like brightly coloured Lego bricks in strange and befuddling combinations. He clearly delights in literature of all kinds and is able to emulate those styles for his own comedic purposes.

Over the next few weeks I hope to build an archive of his work, that you my dear reader may benefit from his sweet sweet poetry.

Waiting for Bulldog

“Thank you for calling Bulldog Broadband. Your call is being held in a queue and will be answered as soon as one of our representatives is available. I’m sorry to keep you waiting, your call will be answered shortly. Once again, sorry about the delay.”

My internet connection has been non-functional since Thursday night; It just packed in around 8 p.m. and has not worked since. I would love to report the problem to Bulldog (my internet service provider) but I have no means of contacting them other than an email address which they never respond to or a phone line which they rarely answer.

Whenever I try to ring their technical support line, the calming voice of Bulldog apologies and then tells me that they are too busy to answer any technical support requests right now; They suggest that I try their web-site or call back later.

If this were some kind of performance art installation, or perhaps a figment from a Kafkaesque nightmare I could see the irony, however I am trying get my connection fixed a quarter of an hour before they close for the weekend. What hope do I have?

Actually, I lied about the email address; They do answer it sometimes - first you get a well worded (but automatic) response informing you that your query will be dealt with efficiently and with the greatest possible haste. This is another lie. My technical support query will be answered by a dribbling imbecile.

He or she will be barely literate, possessing neither the ability to comprehend nor to write simple English expressions. Only an insane optimist would expect the slightest technical acumen from the person who tries to answer my mail.
This illiterate will randomly push buttons on the computer they barely know how to operate, and if I am lucky, I will receive a barely coherent response to somebody else’s question in less than a decade. Having failed to make any sense from email support, my next attempt was to try the phone line…

Continue reading ‘Waiting for Bulldog’

Europython Conference, Day Zero

I’m off to the Europython conference; My heart is aflutter because I’m running rather late and I know how bad the queues for budget air-lines can be. I’ve never travelled on Ryan-air before and I am expecting the very worst possible experience. This is conference day zero because technically it does not start until tomorrow and in any case all good computer scientists make a habit of counting from zero.

Initially I was expecting a weak line-up; At the time I registered the presentation roster was empty and the attendee list was meagre; but in the last few weeks both have grown and I’m quite impressed at what the conference management have achieved. I’ve barely been able to keep up with the high-bandwidth conference mailing list.

This is also the first Open-Source conference I have attended; I’ve been told by frequent conference attendees to lower my expectations. Open source conferences have a minimal budget and therefore lack even the most rudimentary glitz; This will be a glitz free zone.

My accommodation is going to be a shared room in a student’s union owed building. I booked the cheapest kind of room available, so I will be sharing with three others; All will be python developers like myself; I have no idea who these individuals will be.

And what a fool I am; I’m still plagued by nagging doubts; What if there are two cities in Europe called Gothenburg, one in Sweden (where I am headed), but another somewhere far far away, perhaps in a destination that I will not possibly be able to afford to fly to. And I will be forced to spend a fruitless three nights in a cold Nordic country, all alone and unloved.

In any case; All my fears may be for nothing; I might not even get to the airport at this rate. As I type this, the train has been stuck on the tracks outside Stanstead for the last fifteen minutes, going absolutely nowhere.

pod.py - A minimal cross-platform “podcatcher”

I’ve been listening to a lot of podcasts recently; a particular favourite is “Escape Pod“, a weekly podcast which aims to revive the genre of the science-fiction short-story. The standard podcast reciever is iPodder, a very feature rich program that is just too bloated for my needs: I want a cross platform downloader that can be scheduled from UNIX cron and works from the command line.

I went hunting for an alternative client. The best I could find was Bashpodder: a pure bash podcast downloader. Bashpod features some of the best shell-scripting I have ever seen, but even code of this quality is a little bt ugly for me; Of course, what I really wanted was a Python based podcast reciever.

So I created pod.py - a pure Python Podcast reciever. It depends on the excellent 4suite XML processing library to do all the hard XML processing. If you want to try it out, you can get it from my subversion archive: http://svn.stodge.org/pod.py/trunk/

Instructions

1. Get the program: If you want to check the program out, and you have the command-line subversion program installed, you can type:

svn co http://svn.stodge.org/pod.py/trunk/

You also need to download 4suite. On windows you might need to download an run an installer. On Gentoo Linux you might need to type something like:

emerge -uD 4suite

2. Install the program: You can use python’s standard distutils isntaller to help you out:

python setup.py install

The program should now be installed. It’s really easy to use:

3. Use the program:

pod.py url -d downlaod directory

So for example, if I want to download BBC’s “In Our Time” podcast to a folder called ‘my_podcasts’, I can issue the following incantation:

pod.py http://downloads.bbc.co.uk/rmhttp/downloadtrial/radio4/inourtime/rss.xml -d /home/sal/my_podcasts