Audi A4 – Replacing the hazard / indicator relay

Whilst driving my 2001 Audi A4 (rhd) last week I was sure that I had engaged my indicator (turn signal), I heard the trusty clicking sound as it started. After a few seconds however, there was silence, just as I was mid-manoeuvre. I tried signalling again, a few clicks then silence again. Over the next few drives I monitored the situation, it seemed to be a little random or intermittent. Not wanting to have to revert to hand signals, I decided a fix was in order. Electrical problems can be notorious to track down and fix, costs can be excessive in relation to the cost of the parts. So I decided to hunt for a solution on the Internet – after all, I can’t be the only person to have endured this problem!

I quickly discovered lots of other people had the same problem and that it wasn’t just limited to the Audi A4 but encompassed the whole Audi and VW family of cars. I was pleased to discover this post over at Audi Forums – it seemed to detail everything that was required. Huge thanks to Dudley Doright (login required, sorry!) for providing this post, it was a great help.

Of course, buying a replacement relay via a main dealer was likely to be expensive too. Fear not, the Internet provided many recommendations for VAG Parts Ltd (sadly this firm is no longer trading). They had the part required for my vehicle (search for A4 RELAY), it cost about £27 with VAT and delivery included. Delivery was swift, within a couple of days of ordering.

UPDATE 22.05.2012: The relay can be purchased through German Auto Spares (

I would like to add just a little bit Dudley’s post. The relay itself has two securing legs, one down each side. These legs are designed to keep the relay in place. Removing the faulty relay, especially with my cup-holder and fog light controls still in place was a bit of an effort. Using the 90-degree pulling tool helped a lot, but it was an exercise massaging the tool into the position such that it can dislodge the legs and aid removal of the relay. Of course, your mileage may vary. The legs are noted by the two blue circles in the picture below:

BBC Radio 1, in case you were wondering.

I managed to source Dudley’s recommended tools from Maplin – as set of 8 tools for £2.97! Here are the two that I used, along with the faulty relay:

And for your reference, here’s the part number itself:

Technorati Tags: , , , , , , , ,

NRW07 – FinalBuilder Session

Slides and demo notes from my session at NRW07 are available here.

In order to “buy some time”, I skipped a demo. Luckily, I blogged it here. I inherited a delayed start so had to try and recover!

–uploaded via the conference venue’s wireless connection, I will add some more text to this, or another post shortly.

Technorati Tags: , , , , , , ,

Running NUnit Tests in FinalBuilder

I’m delivering a presentation at NRW07 – it’s a session about Automating the Build Process Using FinalBuilder.

I’m demonstrating a specific product, so you might believe that it’s a “product plug” session that’s full of marketing stuff. Thankfully, nothing could be further from the truth. I’m an avid believer in making things simple – FinalBuilder is one of many products that help me achieve that aim. Therefore, I am demonstrating a useful and highly configurable tool.

FinalBuilder has built-in support for running NUnit tests, so it’s actually remarkably easy to include running tests in your automated build process. However, since FinalBuilder is so feature-rich, I wanted to demonstrate just how easy it is to write some FinalBuilder Actions that run the tests and stop the build if the tests fail. The key take-away from this post is the ease in which FinalBuilder can be customised to incorporate new and or as yet unsupported third party tools.

NUnit has two modes of operation: via a GUI or via the command-line console. Obviously the GUI provides nice visual feedback, red and green bars, etc. The console version is less visually pleasing, but does appeal to the command-line fraternity (which suits me!) Using the command-line version of NUnit (typically found here: C:\Program Files\NUnit 2.4.3\bin\Nunit-Console.exe), you’ll be pleased to know that it will run your tests on your behalf and create as output, create a nicely formatted XML document. That XML document contains two rather useful attributes: total and failures – these indicate the number of tests that were run and the number of failures.

[code lang=”XML”]


Clearly we can make use of the failures attribute to our advantage. If it’s zero, then the automated build process can continue on. However, if it has a value of one or more, clearly we have a problem, the build is broken.

Without using FinalBuilder’s built-in NUnit Action, how might we go about incorporating NUnit into our FinalBuilder build process? Thanks to the power of FinalBuilder, it’s actually remarkably easy. Assuming that you have a new, clean FinalBuilder project, here’s what you do:

1. Goto the Tools -> Edit Variables menu, add a new variable called TestFailures.

2. Add a new Execute Program action (from the Windows OS action group). Set the Program File input box to point to nunit-console.exe. In the Parameters input box, enter the name of the DLL that contains your NUnit tests. In the Start In input box, enter the full path to the directory where the DLL that contains your tests can be found.

3. Add a new Define XML Document action (from the XML action group). Call the XML document TestResults. Set the Load document from file input box – set it to the TestResults.xml file that sits alongside the DLL that contains your tests. This assumes that you have either places an empty TestResults.xml file in that folder or you have run your tests through the NUnit Console prior to this exercise.

4. Add a new Read XML Value to Variable action. Set the XPath to Node equal to //test-results. Put a tick in the Read attribute check-box, set it equal to failures. From the Variable to Set drop-down menu, set it to TestFailures.

5. Add an If..Then action (from the Flow Control action group). Set the Left-hand Term equal to %TestFailures% – there is code completion to help you. Set the operator equal to “greater than”, i.e. >

6. Run your FinalBuilder project. If all goes well, i.e. the tests pass, the screenshots below should look familiar. Otherwise, if the tests fail, the whole build process fails.

This short example demonstrates the power of FinalBuilder – whilst there is a built-in action for running NUnit projects, this example has served to demonstrate how easy it is to integrate a third party tool into the FinalBuilder build process. Hopefully this short example has been enough to convince you that FinalBuilder can be used to integrate virtually any “build activity” that you may have in your process.

How are you carrying out your build process at the moment? Is it automated? Harness the power of the fully automated build!


Technorati Tags: , , , , ,

Awesome Community Spirit

I’m starting to see huge benefits in the use of Twitter. If you doubt me, please try it: but do make sure you follow the right people, otherwise your first thought of “this is just noise” will put you off.

If you get the right people, the community spirit is just awesome. You get a real sense of belonging and an easy means of asking questions.

Equally, streamed or threaded Twitter could have massive benefits in the corporate world – where a company has its own Twitter server running internally for internal messaging only. Improved communication and awareness are the obvious benefits.

It puts e-mail, IM and SMS into a different category of communication…everything changes!

You can follow me if you wish:

Technorati Tags: , ,

Event: The Great Facebook Debate: London, October 17

Date: Wednesday, October 17, 2007
Time: 4:30pm – 9:00pm
Location: BT Centre
Street: City of London, EC1A 7AJ
City/Town: London

Supported by BT and Policy Unplugged, with media partners including New Media Age (NMA), Intruders.TV, NMK, and, The Great Facebook Debate promises to be a great event.

Sign up via the British Interactive Media Association (BIMA) web-site.

Want to avoid using Facebook? There are more details available here.

I’ll be there, with my podcasting kit!

Further References
Facebook Debate registration now open
Facebook Debate, 200 confirmed within 1 day
The Facebook debate

Technorati Tags: , , , , , , , , , ,

NxtGenUG – Cambridge Region!

The Boyz from NxtGenUG are absolutely delighted to announce the opening of a brand new NxtGenUG region – this time in Cambridge. So now Developers from the flatlands of East Anglia can gather together to learn, chat, eat Pizza and get ‘swagged’ in the ‘NxtGenUG Way’ along with their counterparts in Birmingham, Coventry and Oxford. The region will be run by Chris Hay and Allister Frost who live and work in the area. Chris and Allister have put in a great deal of effort to get the region off of the ground including securing a fantastic venue, courtesy of non-other than Microsoft Research Cambridge!

The ‘Launch’ meeting will be held at Microsoft Research on Tuesday 18th September 2007 and will feature Mike Ormond from Microsoft DPE speaking on Silverlight Microsoft’s new Rich Web Application Development Platform. We’ll also have a speaker from Microsoft Research covering a the fascinating new F#, watch out for details! Finally Rich, Dave and John will be there to do something or other, probably involving ‘swag’ (tut). Anybody is welcome to attend the meeting whether they are a NxtGenUG member or not. Just go to the NxtGenUG site at, register for FREE and book your place!

As with other NxtGenUG regions details of events at Cambridge will be available at, and we know that Chris and Allister have a bunch of great sessions planned for Cambridge over the coming months.

Also check out the NxtGenUG site for Articles, ‘Radio Style’ Podcasts, Interviews, News Items, Competitions, details of membership and much more at

Technorati Tags: , ,

Here’s a call I received a few years ago…

A few years ago I was both developer and help-desk for an application that I wrote. If I’m being honest, the application didn’t require that much support, hardly any in fact. So when help-desk calls came in, it was usually shortly after a new feature had been implemented or when the client PC suffered some sort of physical outage.

You can probably imagine my surprise when I received a call from one of my fellow employees using a tone of voice that I would only use with a vendor who had seriously hacked me off and perhaps had failed to respond to repeated requests for information. I was so surprised, I had to record it and let his boss hear it. Frankly, it’s no way to talk to a colleague, especially a colleague who thought nothing of just jumping in the car and trundling out to site (20 miles)…not just to sort out issues with the aforementioned application, but to sort out whatever other problems existed too (because that’s the kind of guy I am…I fix problems).

Anyway, here’s the call!

And here’s the transcript:

Hello Craig, it’s <>, I think you’ve got the number, but I’ll give you it again, it’s 01324 <>.

I’ll get you to give me a call as soon as you can, that’s like today, within the hour, thanks bye.

Technorati Tags: ,