As much as I enjoy reading The Daily WTF, I’ve yet to come across anything quite as atrocious as the strange tale of Virtudyne. From the first article in a four-part series:

One thing led to another and Virtudyne was born. Its goal was modest: become the next Microsoft Office killer. The Founder hired his long-time colleague as the Chief Information Officer and together, they would create The Plan. It was simple: develop an internet/intranet based Office/Collaboration system that would deliver “90% of functionality that 90% of [Microsoft Office] users use.”

An avid programmer himself, the CIO knew exactly how they could accomplish this. He convinced The Founder that, with a handful of programmers helping him, he could develop a client/server Microsoft Office Killer using Visual Basic 6. And with the latest hardware available, their application could easily scale to support twenty million users using one, maybe two servers. And best of all, it would all take only six months to create.

I haven’t decided if this should be taken seriously — names are changed to protect the guilty — but, as one comment notes, the difference between fiction and reality is that fiction has to make sense.

Today is the 40th anniversary of the UK release of The Beatles’ groundbreaking Revolver album. Aside from the critical acclaim, it is simply great music, just as fresh and enjoyable today as it was 40 years ago.

Beatleologists will learn something new in the free Abracadabra! ebook; others would do just as well to get the album, close the curtains, turn up the speakers, turn off your mind, relax and float downstream…

So, I’ve been back for three weeks — what have I been up to?

  • Watching the World Cup. I was surprised to see Argentina and Brazil go out in the quarter finals, less so to see the much-hyped England side fail on penalties. The more things change…
  • Reading Gödel, Escher, Bach, which I promised to do last year.
  • Trying to avoid the the heatwave, which seems a futile exercise.

In other news, PyBridge 0.1.0 was released today. Go get it!

Since I’ve been back home, I’ve spent most of the time working on PyBridge. My recent Python Challenge hacking seems to have paid off: the codebase is much more coherent, not to say more complete, in the space of three short weeks.

The network code, which enables communication between the server and connected client programs, has been rewritten around Perspective Broker to provide greater flexibility over the line-based protocol which was used previously.

An obligatory work-in-progress screenshot:

I’m aiming to make a first release of PyBridge in the coming weeks, but experience has taught me not to make promises like that…

I’ve considered buying an MP3 player for some time, but this week I’ve finally been motivated to put cash on the table (in a figurative sense) by Stephen’s purchase of an iPod Video. Instead of an iPod, however, I’ve chosen the Samsung YP-U1Q from Amazon. Undoubtedly, this will provoke comparisons between these devices, but my reasons for choosing the YP-U1Q are as follows:

  • Since I’ll primarily be using the player when walking to and from university campus, a flash memory device is preferable, since they are inherently less susceptible to knocks and prangs than hard disk players.
  • The YP-U1Q’s 2GB capacity is sufficent for my listening habits. (Digression: typically, I’ll get into a particular band, and spend a while with a few of their albums almost exclusively, before moving on to another band. By the way, I’m going through a Rolling Stones phase right now. :-D)
  • Since most of my music collection is encoded in the patent-free Ogg Vorbis format, a Vorbis-compatible player is essential. Unfortunately, iPods still don’t support Vorbis, whereas many other players do.
  • The YP-U1Q is £80 from Amazon, whilst comparable 2GB players are priced in excess of £100. This shouldn’t imply “cheap and nasty” on Samsung’s part, since they manufacture Flash memory chips in-house, allowing them to save considerably on costs for their consumer devices.

I’m hoping that Amazon will ship the player this coming week. Once I’ve had an opportunity to evaluate it on a practical basis, I might post a review.

For the past fortnight, I’ve been spending my spare evenings working through the puzzles that comprise the Python Challenge.

The idea of the challenge is simple: each puzzle presents you with a “riddle”, which must be answered in order to progress to the next level. A riddle typically has two components: a block of (seemingly) incomprehensible data, and a hint that shows how to manipulate the given data to generate a keyword solution. Once you have the keyword, you have solved the riddle and you may advance to the next puzzle.

Processing the data requires far too much effort to do by hand (you shouldn’t even try), so you’ll want to write a short Python program to do the processing for you. It’s a good idea to keep the program scripts that you write, since they will be useful references for the later levels and also for solving problems in the Real World.

There is no prize for solving the puzzles but, in the course of completing them, you will learn new things and improve your programming skills. Start with Level 0 and work your way up. Take heart that some of the puzzles are harder than others — for me, Level 12 was the worst — and if you need extra clues, the forums provide many useful (and not so useful) hints.

By the way, I’ve now reached Level 16, and my Python is much stronger already. :-)

I’ve been back in York for a fortnight now. I had three exams in my first week: Modelling & System Design, Operating Systems and Theory of Computation: the results are due in mid-February. Now they’re finished, it’s a return to lectures. My modules this term are:

MCP, in particular, has a reputation of consuming a great amount of time. It looks like it’s going to be a busy term.

You’ll probably have noticed that I’ve moved this weblog to http://fuzzylogic.banksie.co.uk, kindly hosted by GodsWeb.

In addition, I’ve taken the opportunity to upgrade to the new WordPress 2.0.

A few weeks back, I bought a Linksys WAG354G wireless ADSL router, to replace an ailing SpeedTouch “purple frog” modem. It’s a very nice device; smaller than I expected, yet more featureful, and it works perfectly with our Pipex PPPoA internet link for always-on access.

I also have a £10 Safecom SWLU-5400 (Zydas ZD1211 chipset) wireless adapter. Ubuntu Breezy does a fine job of detecting and initialising this adapter for connections to unencrypted networks, but setting it up for a WPA network requires quite a lot of effort. The procedure is as follows:

  1. Download the Zydas WPA Supplicant and the most recent kernel driver. Unpack these files to /usr/src.
  2. Install libssl (sudo apt-get install libssl0.9.7) and the appropriate kernel headers (sudo apt-get install linux-headers-686, for instance).
  3. Build the zd1211.ko kernel module: cd /usr/src/zd1211-driver-r48/ && make.
  4. Build the Zydas WPA Supplicant: cd /usr/src/lnx_wpa_supplicant_1_2_0_0/ && make.
  5. Set up your /etc/wpa_supplicant.conf. It should look something like this.

Provided this works — and if it doesn’t, what error do you get? — you should be able to initialise the wireless subsystem:

sudo modprobe -r zd1211
sudo insmod /usr/src/zd1211-driver-r48/zd1211.ko
sudo /usr/src/lnx_wpa_supplicant_1_2_0_0/wpa_supplicant -i wlan0 -Bw -c /etc/wpa_supplicant.conf -D zydas

Plug in the wireless adapter, then type:

sudo dhclient wlan0

With any luck, you should now be connected to your WPA network. By the way, you might find some useful pointers on the Ubuntu Forums: look here and here.

This morning, my parents and Stephen came up from Liverpool, to pay me a visit and bring up some stuff. It’s nice to see them for the first time since October; I’m now especially looking forward to going home at Christmas time.

Since the house has no tumble dryer, they brought an electric clothes dryer — a maiden with an kilowatt electric coil heater underneath — that is at least 30 years old and probably not considered safe by modern fire regulations. I’m fairly sure that it will not only dry out washing with ease, but also keep the house warm when it’s on!

Also, I now have my DVD boxset The Godfather and Star Wars trilogies up here, so that should make for many hours of evening entertainment. In “exchange”, Ste has borrowed my Ubuntu Breezy laptop, which is fine, because I have barely used it for the past month or so.

In other news, I have to admire this guy’s business acumen.

Next Page »