Wednesday, 15 November 2006

International Credit Card Transactions

Today I tried to book a ticket to go and see The Decemberists in Seattle using the Ticketmaster Web site. Everything went fine until I tried to pay for the e-ticket using my credit card issued in the UK. Lo and behold I am obliged to choose my State from a selection of US States and enter my Zip code.

This seems pretty silly since the ticket would not even be physically delivered. Given that making credit transactions in the US is ridiculously easy - my signature hasn't been checked once in the last month - it's amazing that the Web is so unaccommodating.

Bad Web design is one of my pet peeves. All Web sites should be location agnostic given the global nature of the internet. Ticketmaster have a UK presence, but the events on the US site don't show on the UK site. Seems the only way I can see the show is turn up on the night and hope.

Tuesday, 14 November 2006

Godot Flushed Away

I had an afternoon of sitting down enjoying myself on Sunday. Theatre, arcade and cinema respectively.

Firsly I went to see a Gate Theatre of Dublin production of Waiting for Godot at the Moore Theatre in Seattle. I'd not seen the play before, though it's reputation as a masterpiece of absurdist theatre had not escaped my attention.

The performances were highly memorable and thoroughly engaging. The play has moments of humour, pathos and tragedy, exploring memory and companionship. I can only say that I'm very pleased that I saw this particular production and I'd thoroughly recommend it.


I followed high culture with pop culture and spend a couple of hours in an arcade playing amongst other games OutRun 2 SP - which I completed on the two easiest levels. Seems a little easier than the original Out Run


Next I settled down in the Cineplex to watch the new movie Flushed Away, which is a fantastically entertaining film. It brings together the production quality of Dreamworks with the great characterisation and humour of Aardman Animation. This really does feel like an Aardman film, the wide mouthed characters are clearly related to Wallace and Grommit. Take your kids to see this movie and if you don't have kids, steal someone else's - you won't regret it (at least until you get arrested).

Friday, 3 November 2006

Burritos

I'm always up for trying local food when I travel and Seattle is no exception to that rule. So yesterday I had my first ever burrito, at Taco Del Mar - a Mexian fast food franchise in America and Canada.

I wasn't at all sure what I was asking for, so I tried to follow Mike's lead picking a wholegrain burrito with guacamole, sour cream, beans, rice, chicken, cheese and hot sauce. My order came to a couple of dollars more than Mikes, so some of that stuff must have been optional.

When we got back to the office I had a quick lesson on the art of eating a burrito. Unwrap one end of the foil wrapping, eat the end and unwrap as you go. I later realised that these same instructions were printed on the bag.

So what did it taste like? Relatively satisfying but kinda mushy. I think I'd prefer it with a little more crunch or bite. Not bad though, interesting mix of flavours. I think perhaps the fun is in choosing a different mix of fillings each time.

Taco Del Mar's speciality seems to be seafood (as the name would indicate, so next time I might get a fishy burrito (if that doesn't sound like too much of an inuendo).

Thursday, 2 November 2006

About This Blog

This site is really little more than a personal diary. I hope that the odd entry amuses or informs the occasional random surfer.

I'm an artist, musician and software developer, although the latter is the only thing that currently pays the bills.

Many of the posts on these pages will relate to software engineering and to the Agile methodologies that I am involved in, including Extreme Programming and Scrum - although the evolution of working practice is where it all gets interesting.

Seattle Reverts to Type

Well, the nice weather lasted a few days and was followed by some bitter cold (I'm told these are typical of an El Niño year) but now the rain has set in. Still I'm hardly unused to rain, living as I do in sunny England.

On Sunday, I visited the Bodies exhibition at 800 Pike. Fascinating! If you have not heard yet, this exhbition is made up of preserved human remains, disected and annotated.

It's not nearly as gruesome as I imagined it would be, but it is a little creepy to think that these people all had lives. In some ways it's like reading an anatomy book in 3D.

Wednesday, 25 October 2006

America

My company has sent me to our Seattle office to work on a project that requires support by someone in the same time-zone as our customer in South Africa.

This is the first time I've been to the US. I've never really had the urge to visit before - there are many other places in the world that are more interesting to me due to their cultural differences from the UK. However, I've recently become more interested as I video conference with my colleagues in Seattle every day.

I'm staying in Bellevue, the office is in Kirkland and about the same distance away to the NE is Redmond, home of Microsoft.

So far I've only really seen shopping malls and fast food restaurants, but hopefully I'll explore downtown a bit at the weekend.

Thursday, 12 October 2006

NHS Rant

I did a very bad thing.

I forgot about a double nurse appointment at the local NHS clinic.

In my defence, I have just been told that I have a week to get prepared for a month in Seattle away from my family, and suddenly have to plan our four week holiday in South Africa this week. I'm very busy and am not very well organised. I admit I was wrong.

HOWEVER...

I received a phone call this afternoon by someone who seemed to think they were my mother. Now, I wouldn't presume to tell my mother how to talk to me, but anyone else in the world... Presidents, Prime ministers, Popes, Spiritual Gurus, Teachers, etc., do not have that luxury.

'Do you know that you had an appointment at eight forty this morning?'
'oh... um, oh s- f-, I'm really, really sorry. I completely forgot.', says I.

But that did not satisfy the almighty and clearly perfect entity at the clinic, my confession was not yet over. She explained to me how they were always over booked and my missing an appointment meant that other people may not be able to get one.

I felt suitably humbled and replied, 'I appreciate that and I am truly very sorry indeed.'

Still not enough. I was told that I would not be allowed another appointment for a new patient screening, although I could see a doctor.

Hang on...

Surely to waste a doctor's time is even worse that wasting a nurse's? Does this mean that I can never use the NHS again unless I have been hacked in half or run down? I shall put being-hacked-in-half on my To Do list immediately (which thankfully doesn't work very well as you will have already understood).

I felt that by paying approximately £300,000 over my planned lifespan toward the NHS, I really shouldn't be barred for life for missing one appointment. I've visited the doctor about four times in my adult life, each time with little pills to sort me out (often antihistamines), so I hardly think I've put an unnecessary strain on resources.

I tried to ask what I was supposed to do now, but the nurse curtly said "goodbye" and hung up on me (making Anne Robinson sound polite and friendly). I was stunned.


Now it strikes me that the person on the phone was venting her anger about the government's lack of NHS funding, at me. I don't mind being told that I've been inconsiderate, but I really can't take the entire blame for the NHS being overloaded. I will happily pay the 40 minutes of Nurses' salary that represents the time wasted by my inconsiderate forgetfulness.

The NHS is a business that happens to be paid by the government out of our taxes. That makes me a 'customer'. In any other business, a receptionist who spoke to a customer as I was spoken to would be fired.


The problem is not that the customers/patients are bad and need punishing, but that the company they work for is badly run and under funded. My previous screening was cancelled by the clinic. The only reason I asked for the appointment was because the doctor told me to - I think I have better things to do with my time.

If it wasn't a monopoly that got my £300,000 pounds , I would go to a competing business who did not treat me so horrendously. If you want an example of why public run monopolies are bad for the consumer, just look at BT or British Gas before privatisation.

If I did go to a private health care company in protest, I certainly wouldn't get a refund of monies paid.

Monday, 25 September 2006

Paris

I thought I'd done a pretty good job of booking the hotel in Paris entirely in French (trois chambres simple pour un nuit). However, on arrival at 2200h - my colleagues and I were told at the reception of the Hotel Printemps that there was no reservation. Thankfully they had three shabby little rooms on the top floor available.

It didn't exactly set us up for a good meeting the next day and the train journey was sweltering. Fortunately, the village we went to was beautifully picturesque and within a few minutes of arriving, we felt relaxed and calm.

The second night was spent in the Quality Hotel in the business district. Usually the rule is that if something has to mention an attribute such as quality in its name, it will probably be trying to make up for a lack of that attribute. However, the Quality Hotel was indeed of high quality. My evening meal of duck with a garlic jus was particularly good.

The meetings went well and my return flight came far too quickly with not a moment of time available for sightseeing or shopping. Must revisit Paris soon for leisure rather than work.

Sunday, 20 August 2006

Ram-BO: New Blood Part II

Which brings me unpleasantly to something touched upon in the white book...

When pairing, it is essential to maintain a level of personal hygiene that befits the process of sitting very close to another developer for the whole day.

So far one half of our new recruits has proved to be somewhat less than satisfactory in this area. It's hard to know - as an Englishman and a gentleman - quite how to breach the subject, but breach it I must.

I have slightly more confidence in my point of view as I've had this opinion shared by a long standing colleague.

The drinking, however, is not within the scope of my interest, having not as yet had a detrimental effect on any project that I have a current interest in. These things are often over-emphasised in our company, since the drunken antics (several years ago) of one former employee.

Anyhow, three months probation should be sufficient to determine the validity of our choices.

I wish them both the best of good luck.

New Blood Part I

It's hard work breaking in new recruits. I've had a sore throat all week from trying to justify our existing code-base and customer relationships.

As hoped, the new blood is having an almost immediate positive effect. Irritations that had faded into background noise have been brought to the fore.

Someone without the tarnish of several years on the frontline can much easier see the atrocities that are committed in the name of Truth, Justice and the Extreme Way. Not that any blame should be attributed to XP - just to our slow deviation from the path of the righteous.

Monday, 14 August 2006

John Wray - owes me £800

Son of a bitch! Gave him an 800 quid deposit (doh!) for a shed and he disappears without a trace. Apparently moved out of his house with no forwarding address. He sold his workshop and pickup truck to Dave of Wooden Buildings, who has quoted twice as much to do the same job.

If I had any idea where to serve notice, I'd small-claims his ass, but frankly for the sake of £800, it's hardly worth the effort as he'd probably just go bankrupt anyway.

You may infer from the above that this is not the first time I've been Royalled. However, previously it was my employer (Ian Powely) who did the dirty deed. Not before getting me to design the new corporate logo for the pheonix-like company that arose from the ashes.

I blame the parents - and the government - and anyone else who gets in the way!

Sunday, 13 August 2006

Nintendo DS Lite

Bought a black Nintendo DS Lite along with Dr. Kawashima's Brain Training and New Super Mario Bros. The idea was to get Penny into playing video games - she'd shown some interest in Brain Training.

It's a lovely unit, nice bright screens (about twice as bright as the old DS), though it didn't come with the strap and thumb stylus that came with the original. It's black and shiny like the PSP, but the build quality is nothing like as good.

New Super Mario Bros. is pretty much the same as the SNES Super Mario Brothers. The only new features are Giant and Tiny power-ups that make Mario about the same height as the screen or half the size of normal Mario respectively. The tiny power-up allows Mario to fit through small holes and reach otherwise inaccessible areas.

Dr. Kawashima is quite a phenomenon, breaking the usual mould for best selling games. I have already noticed an improvement in my mental arithmetic and it is particularly enjoyable playing with more than one user, as your daily efforts are comparable with your friends'/family's.

The DS is a great toy and I've spent a lot of this weekend playing Mario.

Thursday, 22 June 2006

Harder than it looks

My attempt at making a brick barbecue may not look too neat - I was using old bricks and breeze-blocks from the back of the garden, but it's pretty solid.

I'm about half way through, as I grossly underestimated the amount of mortar it takes to stick a bunch of bricks together. I've popped to B&Q today for the next load of sand. It's surprisingly satisfying to actually make something big and solid like that.

Wednesday, 21 June 2006

Migrate to Linux Desktop

I've decided not to put it off any longer. I've finally had enough of Windows. It's time for the big switch from my increasingly sluggish Windows XP machine to Linux.

I've had more Linux than Windows machines at home for ages, but have never really had the guts to use it as a regular desktop PC.

I'm pretty sure the transfer will leave me with a more stable working environment and I'm very sure that Microsoft don't really deserve my hard earned Sterling for the DRM/Spyware ridden Vista.

I'll probably still use Windoze for games until I can persuade Wine to play them, but for everything else, there's a viable Linux alternative.

So far, I've migrated my office documents, email (including GPG), contacts, calendars, instant messaging. I'm now working on getting my iPod working properly (it's already looking like I'll be able to sync my contacts and calendar easier than before).

I feel better already!

Tuesday, 6 June 2006

New Blood and Motivation

Our XP team is distinctly low on developers at the moment. We're down to five from twelve earlier in the year. The backlog of stories is constantly growing as the team just doesn't have the bandwidth. The extra pressure may be partly responsible for pushing good people out of the company.

It seems that any team looses motivation without a transfusion of new blood, even though years of team experience should create a much more capable entity.

The remaining developers have all been with the company for 5+ years which creates a more cynical atmosphere than usual. New blood brings with it enthusiasm untainted by previous business mistakes, which blends well with experience gained by learning from those mistakes.

The small team size also means that we don't have variety of skills and enthusiasm. Specific jobs cannot be handled by people with a preference for that type of work, so boredom sets in.

The good news is that we're recruiting heavily now and will hopefully soon have some of the necessary claret. It's up to us to make the team successful again.

XMAME Working

Discovered that XMAME now has a parameter -grabkeyboard that fixes the problem in my last post.

When XMAME runs from MythTV, it grabs the keyboard focus, instead of leaving it on the paused MythTV interface... Hooray, I can play OutFoxies again!

Tuesday, 16 May 2006

MythTV with Fedora Core 5

Well, I've managed to get MythTV working fine with Fedora Core 5. XMAME isn't quite working in conjunction with it, because of a feature of the last version of Metacity window manager that caused the fullscreen window to not have keyboard focus. I think this is reverted in version 2.14.3 which I'm downloading right now.

Haven't yet got an iTunes server running on the box. I've read about the Multi-Threaded DAAP Daemon which seems to be a better DAAP server than the one I recommended previously. I'll update my little tutorial if I start using that instead.

Fedora Core 5 seems to be pretty good. Not 100% sure about the new bubbly look, but if it continues to offend my sensibilities I really should try and create my own desktop skin. Mind you most of the time it sits quietly behind MythTV, so It's not such a big deal.

Thursday, 20 April 2006

Electric Easter

Easter Sunday started with a power cut. Unfortunately it wasn't as clean cut as that sounds - it was more a prolonged power dwindle. The lights flickered at about half voltage as I ran around the house switching off the all the computers.

The fault appeared to be just outside our neighbours' house and took most of the day for the electric company to fix. As usual we spent the time playing board games and enjoying the enforced low-tech entertainment.

The pain occurred when the power came back on (no not through electrocution). I found that my MythTV box (recently upgraded to Fedora Core 5) wouldn't boot. The fluctuating electrical supply seems to have managed to strategically uninstall large chunks of Linux. Most of Gnome desktop was missing along with the login screen and many of the installed packages.

I guess the JFS spotted the problems on the first boot and tidied itself up, as there don't appear to be any disk problems - just missing files!

Anyway, I think it's going to be easier to reinstall from scratch than to try and work out which files are missing from each installed package.

I guess that's my next weekend planned out then :(

Saturday, 15 April 2006

More Downtime

Okay, now I've done the sensible thing and put Rails into the vendor folder - after a couple of weeks of no site.

That should stop any further problems occurring thanks to my hosting company upgrading (as they should) to the latest version.

Mind you, the latest version includes the capacity to Freeze to a specific version, which should stop this sort of thing happening again.

Friday, 10 March 2006

Meet the New Boss

Our old boss is leaving the company in disgrace. Normally disgrace involves immediate absence, however we like to drag out the agony as long as contractually possible. The same seems to be happening with one of our sales team who, post-resignation is still "selling" the company's wares. Oh well, ours not to reason why!

On the positive side, we have a new chap taking over with a wider remit. At the moment he is meeting with each member of the team to get an overview of the current state of affairs.

The meetings have varied in length from an hour or so to a day and a half. This would seem to indicate some variation in either the amount of issues each person has with the company or the faith each person has that their comments will not be used in evidence against them.

From my experience, I'm inclined to believe that no one starts a new job intending anything other than to make improvements. Of course, what is an improvement from the perspective of the company is not always an improvement for the employee.

Here's to interesting times! I'm positive about the future, but not self deluding enough to believe it will be easy.

Tuesday, 28 February 2006

Back on Line

Phew! My ISP upgraded to Rails 1.0, which knocked the version of Typo I've been using for six. I probably ought to put the correct version of Rails into the vendor folder to stop it happening again.

I decided to start using the Subversion release. I normally wouldn't trust code that's non-release, but since Typo seems to be written test first, I have a lot more confidence in it's ability to stay unbroken by new code.

Anyway, after some struggle converting my old data into the new format - including trouble installing MySQL Server 4, I'm up and running again.

Friday, 13 January 2006

Myth2iPod

Found a nice little project called Myth2iPod that transcodes MythTV .nuv files to iPod video and provides them as a subscribable podcast feed.

Unfortunately it relies on the xvid support in the latest version of ffmpeg (only available through CVS), that doesn't want to compile on my FC3 machine. Will post if and when I get it working.

Monday, 9 January 2006

Upgraded to Rails v1.0

Managed the upgrade to version 1 without any major hitches. Just two notable differences...

  • The AJAX stuff is fixed (which stopped us from upgrading to the last release).
  • ActiveRecord has slightly stricter constraints on creation of new objects with has_and_belongs_to_many relationships.

The ActiveRecord change means that you can't create a new object and it's join table based relationships without first saving the main object. If object has_and_belongs_to_many relations, then... object = Object.new object.relations << relation object.save needed changing to... object = Object.create object.relations << relation

It makes some sense, since the identity of object has not yet been created, but it's a bit of a shame that the ORM layer can't hide these issues from you.

Monday, 2 January 2006

Make your own Linux iTunes Server

Make your own Linux iTunes Server

This walkthrough is based on Fedora Core 3 which I'm running on my MythTV Server. If you find any innaccuracies, please let me know and I'll fix 'em.

Install daapd using APT

Make sure you have Dag's repository set up for apt (you might wish to set up a Yum repo instead as Yum is included by default with Fedora).

My repo file looks like this...

# cat /etc/apt/sources.list.d/dries.list
rpm http://apt.sw.be dries/fedora/fc3/i386 dries
rpm-src http://apt.sw.be dries/fedora/fc3/i386 dries

Make sure you are up to date then get the daapd package, the howl package (needed for mDNSRepsonder) and their depencencies...

# apt-get update
# apt-get dist-upgrade
# apt-get install daapd
# apt-get install howl

Configuration

Create a config file like this one

# cat /etc/daapd.conf
Port            3689
ServerName      MythMusic
DBName          daapd music
Password
Root            /av/audio
Cache           /var/spool/daapd/cache
Timescan        2
Rescan          0

Change /av/audio to the location of your music collection, and create the folder /var/spool/daapd/cache as root (if you don't do this, the files will be rescanned by the server each time you run daapd). If you want to secure your audio files, put a password in the obvious gap.

Start daapd as a Service

Create a file called /etc/rc.d/init.d/daapd with the following contents

# cat /etc/init.d/daapd
#!/bin/sh
#
# A startup script for the daapd DAAP server
#
# chkconfig: 345 98 2
# description: This script is used to start the daapd \
# server as a background process.\
#
# Usage /etc/init.d/daapd start|stop|reload|restart|status

# Source function library.
. /etc/rc.d/init.d/functions

DAAP_CONF=/etc/daapd.conf
DAAP_LOG=/var/log/daapd/access_log
prog=DAAP
exe=/usr/bin/daapd

start() {
        echo -n "Starting $prog: "
        if [ -f /var/lock/subsys/daapd ] ; then
                echo_failure
                echo
                exit 1;
        fi
        daemon $exe -c $DAAP_CONF >> $DAAP_LOG &
        RETVAL=$?
        [ $RETVAL = 0 ] && touch /var/lock/subsys/daapd && echo_success
        echo
        return $RETVAL
}

stop() {
        echo -n "Stopping $prog: "
        killproc $exe
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/daapd /var/run/daapd.pid
}

reload()
{
        echo -n $"Reloading $prog:"
        killproc $exe -HUP
        RETVAL=$?
        echo
}


case "$1" in
start)
        start
        ;;
stop)
        stop
        ;;
reload)
        reload
        ;;
restart)
        stop
        start
        ;;
status)
        status $exe
        RETVAL=$?
        ;;
*)
        echo "Usage: daapd {start|stop|reload|restart|status}"
        exit 1
esac

Create the log folder so that the service can write a log file.

# mkdir -p /var/log/daapd

Now you should be able to start daapd as a service...

# service daapd start
Starting DAAP:              [  OK  ]

It may be some time before you can access this service if you have a large collection, as it will not respond until it has indexed the files.

mDNSResponder Configuration

In order for iTunes to detect the new playlists, you need to setup mDNSResponder to broadcast the presence of the service. Add the following line to the end of the mDNSResponser config file.

# tail -1 /etc/howl/mDNSResponder.conf
MythMusic _daap._tcp.     local.  3689

Start mDNSResponder

# service mDNSResponder start
Starting mDNSResponder...   [  OK  ]

Any copies of iTunes residing on your local network should now have a shared music folder containing your entire music collection, including any playlists found in the same folder.

Merry Christmas

...and a happy new year to you all.

Penny gave me an 60GB iPod Video for Christmas, which I have been playing with constantly.

So far, I've got my main MythTV server running an iTunes server (DAAP), so that anyone using iTunes on my LAN can browse my MP3 collection. It was pretty easy using Dag's APT repo.

My next little project will be to get MythTV automatically converting certain TV programs to iPod compatible MP4 video files.