Mar 122007
 

I have been using large IT systems since 1986; quite a while. Of course in many ways, IT systems have improved dramatically … they are faster, we have more of them, we have graphical user interfaces, etc. I would say that one thing hasn’t changed … they are still unreliable; but I don’t believe that, I believe they’re actually less reliable than they used to be.

Why is this ? Well I don’t have a definitive answer, but I do have a few ideas …

Humans are fallible and IT systems are written by humans. Naturally IT systems fail. However there is an assumption that it is possible to spend enough time, effort and testing, and eliminate all the problems with an IT system, despite evidence to show that this is foolish thinking. We need to accept that IT systems will fail, and design them to fail gracefully … for example, Firefox is setup to restore your browsing session if it gets killed or crashes.

IT systems are all too frequently designed monolithically … for instance (an over simplification) a monolithic web application could work better as three separate components … a web user interface, a command-line tool to do the work, and a database backend for storage. Making it easier for separate parts of the application to operate independently makes it easier to isolate faults by operating individual components separately. It is also easier to scale applications by separating their components; it becomes easier to see where the bottlenecks are, easier to see where you need more resources, and easier to re-engineer problematic areas.

We are too fond of the “big bang” approach to improving IT systems. We go out and ask for a list of improvements to make, decide we need to roll out a huge new IT system to meet “user requirements”, initiate a huge project to replace a critical IT system, spend huge amounts of money on the new system, make the new system “live” after huge amounts of testing by the user population, and keep the old system running for years “just in case”.

We all know where the big bang approach leads … the “big headache” when things don’t work, cost too much, etc.

It is far less sexy to evolve existing IT systems into the direction we want. It takes longer, but it is safer. It also means you don’t have to keep old systems around “just in case” … indeed you can’t because the new system is the old system. It is also less stressful for all involved to change things a little bit at a time; because each change is smaller, you can be more confident that each change will work.

Users of IT systems need to have more realistic expectations; this is partly the fault of IT people … we like to promise the earth, and partly the fault of users who can set unrealistic requirements. Part of the problem is that users set the requirements so high that meeting them becomes exceptionally difficult, and because deadlines have become unrealistic, many hidden requirements end up not being met. For example, if we ask the users if they want a fancy web-based front end to their finance system the answer we will get is “yes”; if we also ask if the users want a reliable system the answer is of course “yes”. If those requirements are incompatible, users will insist we accomplish the impossible.

Feb 222007
 

I have “released” my simple shell script to keep a Rockboxed device in sync with a local filesystem copy. There are plenty of better ways to manage your media player, but this is mine. It :-

  1. Tries to upload a scrobbler.log to your last.fm account using someone else’s script.
  2. Copies several files from the mounted device to the filesystem copy (various settings files)
  3. Uses Rsync to update the copy on the mounted device.

No deep magic here, but it may be useful as a starting point for others.

Feb 162007
 

So I was reading a review of Vista on The Register and was hardly surprised to see that the consumers are being ripped off again. It seems that they think that Microsoft can’t do currency conversions without making mistakes … I guess this is not too surprising given this is the company that gave us a calculator that made basic arithmetic mistakes.

However I decided to do a little checking myself and decided to use Amazon as the benchmark on differing costs on “Vista Ultimate Full” :-

Amazon.co.uk

£327
Amazon.com

$379

Next I converted the Amazon.com cost into pounds using £1 = $1.95 which is close enough for the purposes of this little rant :-

Amazon.com in pounds

£194

But wait! I forgot to add UK’s VAT rate of 17.5% :-

Amazon.com in pounds + VAT

£228

Now it is pretty obvious to me that £228 is considerably less than £327. Enough that I should do the calculation the other way around :-

Amazon.co.uk – VAT

£278

And to convert it into dollars :-

Amazon.co.uk – VAT in dollars

$543

So instead of $379, we in the UK pay $542 for our copies of Vista. That’s an increase of 43%! Now I could forgive a little bit of flab in the cost, but 43% is a little much to swallow. Apparently when The Register contacted Microsoft about this puzzling price discrepancy, Microsoft claimed they adjusted their prices to suit the market … or to put it another way, they gouge as much out of the consumer as they think they can get away with. Obviously they think that the average UK consumer is a bit of a numbskull.

It would be nice to prove them wrong. And ask the EU to take a little look into this matter.

Of course Microsoft is not the only company that tries to rip us off with the excuse of ‘tax variations’ and other bullshit reasons. Apple sells the Mac OSX operating system at widely varying prices :-

Apple.com US Price for OSX

$129
Apple.com UK price for OSX

£89

Hmm. Doesn’t seem like a ripoff compared with Vista does it ? Take a closer look :-

Apple.com UK price without VAT

£76
Apple.com UK price without VAT in dollars

$147

Hey that’s only 14% more expensive in the UK than the US. All worship Apple! No wait … that’s still a huge ripoff, but just not quite as excessive as Microsoft.

Of course this gives the Linux, Solairs and *BSD marketing types a good slogan :-

£0 or $0 – No ripoff there!

It is interesting to see that Microsoft could not give The Register reviewer a free review copy … you might understand it if it were a small company with a valuable product, but Microsoft and Vista hardly fit in there. Microsoft are probably wondering why they didn’t get a positive review 🙂

Jan 072007
 

I recently replaced an elderly SGI Octane2 workstation which had 2 CPUs (400MHz MIPS-based), 1.5Gbytes of memory, and 3 elderly SCSI disks with a nice new Sun Ultra40 … 2 AMD Opteron 248s, 2Gbytes memory, and 2 mirrored SATA drives. It is interesting to compare the difference between an old-fashioned workstation originally designed in the middle to late 1990s with a 21st century PC. Not that I’m going to produce hard numbers from useful benchmarks … that is just too much work, and in some ways it is the feel of the differences that are important.

Of course this is not really a fair comparison. Whilst the SGI Octane is now very elderly and due to SGI managerial incompetence has not kept pace with PC performance as it should have done, it is after all a machine that originally cost 10-20 times the cost of the PC I am comparing it to. In car terms, I’m comparing a 20-year old Mercedes with a new and cheap Ford. I should point out that much of the software I am using is very much the same on both machines … the Enlightenment window manager, Sylpheed Claws as the mail client, Firefox as the browser, LyX as the word processor, and a text terminal for much of the remainder.

The PC is considerably quicker than the SGI of course. The graphic user interface is a good deal snappier, and most of the applications offer very welcome improvements in performance. With the exception of GIMP however, none of this performance increase is really essential; my old SGI ran pretty much everything my PC does, fast enough to get the job done. GIMP performance is the reason I upgraded, and here the difference is quite dramatic … filters that previous required patience now run almost instantly; when you are repeatedly trying things out in GIMP on quite large images this performance increase makes some things feasible that simply were not before.

There is one area where the SGI does offer some advantage over the PC; something I was expecting. The PCs disks are overall somewhat faster the the disks in the SGI (and of course I don’t have to pay to mirror my disks!), but the SGI tends to work more smoothly under high load. I’ve noticed before with the ‘low end’ on disks in PCs, that if you start to drive your disks very hard, the computer will sometimes stutter. Essentially the SGI was slower, but smoother under high disk load than the PC.

If was not for the need to run GIMP extensively (and the appeal of more standard add-on hardware like USB hard disks), there is no reason why I could not continue with the SGI. The tendency we have in the computing arena of replacing computers every few years is not a healthy one.

Jan 062007
 

I have just released a new version of Popspeaker, a trivial little Python script to make announcement sounds when it spots new messages from selected people in your POP3 mailbox. The big change is that it now loads a configuration file rather than rely on global variables in the script itself; but some other minor improvements have been made to make this more like a product and less than a scrofulous script knocked up for one person’s use.

The advantage of running this script for me, is that I can be sitting down reading a book and my workstation will announce “You have mail from your parents” if that happens. I can see mails from interesting people quickly, and let all the spam and other cruft wait until I am in the mood to trawl through my mail.