Private work or ‘Freelance gigs’ – Is it worth it?

January 21st, 2014 No comments
Rating 4.83 out of 5

Avid reader,

It’s been a while since I last posted, due mainly to being extremely busy working on a number of side-projects.

The question then arises; “Should you do ‘side-gigs’” whilst working in a full-time job? I suppose it depends on a number of things – and with that in mind, I’ll detail below what you should be mindful off, and the pitfalls that you may stumble across, and ask yourself “Is it actually worth it…”


Why are you doing private work? Is it to make a few extra pounds or pay for a nice holiday in the Summer? You should set out the reasons for you working extra hours in order to properly evaluated the benefits. If, for instance, you are working every weekend in order to pay for a new touring bicycle, then it seems pretty pointless if you never get to take it out as you are working every weekend.


If you are doing a project for a friend or family member, they are immediately going to think that you are a) Going to do it for ‘free’, or b) Charge them next-to-nothing. This (unfortunately) can be a difficult subject to broach with them, especially if their perception is ‘Well it’ll only take you a minute to do that’. If the project is for a business, then you need to consider the price you are quoting versus the time-scales in which you can deliver it. Ultimately if you are working at home in the evenings and at weekends, it’s not viable for you to quote based on the number of days between order and delivery as you will not be putting in as much time and effort as you would in your day job. This leads us neatly onto….


In this modern Internet-connected always-on Facebook/Twitter age, everyone expects an immediate response to any email they send (I get people phoning me at weekends to ask me if I’ve read an email!) – You should at the outset define how available you are going to be, and the response time that they should expect. It’s not unreasonable to say “Please email me any queries, and I’ll get back to you within a day as I’m working on a number of projects at the moment”. Clearly it is not conducive to have a private client calling you at your main day-job, as I suspect your employer might get a little upset if they think you are running a business on the side whilst they are paying you for your time.

Clear specification

One of the biggest issues I have with developing a website or writing an application is what I call ‘Feature creep’. This is where the client says “Oh, I’d like it to do ‘x’” and then a week later tells you, “Ah… when its doing ‘x’, can it also do ‘y’ and ‘z’ at the same time”. There is no simple solution to this, but a good approach is to create a ‘Statement of Requirements’ with the client that details everything that they have asked for. You can then quote a cost and delivery time-scales based on this, with the rider that anything over and above the initial specification may be subject to additional charges dependant on the amount of increased work required.

Ongoing Support

In terms of product support, again you should set out clear guidelines as to what they can expect from you. In my case I will provide documented source code and database schemas, and manage any bugs that may crop up over say a 6-month period. Anything after that I would charge on a time and materials basis. This works well in the World of software, but may not be applicable to whatever you are doing in order to make some extra money.


You should be aware that anything you earn is subject to Tax – in the UK we have a variety of rules around this, and you should always seek proper financial advice as your circumstances may be different from everyone else’s.


Categories: General Stuff Tags:

Adding a Headlights Warning Buzzer to my Series III Land Rover

February 23rd, 2012 No comments
Rating 4.92 out of 5
Thank you for voting!

Dear Avid Reader,

Despite the superb performance of my Landy in the snow, the poor beast fell foul of that terrible affliction… human error.

It seems that I simply cannot remember to turn off the headlights when getting out of it on a cloudy day (or at dawn/dusk).

In order to save the embarrassment of having the guys at the office try to bump-start it (with a completely flat battery), or the ignominy of being jump-started by a Nissan Micra (yes… it happened), I developed a simple circuit using an old relay and a cheap buzzer in order to stop this happening again.

If you want to check wiring colours for your Land Rover, look at my Manuals page [here]


As you can see, the Relay being in a ‘Normally Closed’ position would make the buzzer sound all the time the lights are on, but the power from the ignition opens the relay and stops the buzzer sounding. When you turn off the ignition and remove the key, the relay closes, and if the lights are still on, the buzzer sounds.

This isn’t complicated, but boy does it save some hassle.

Now… the next thing to do is build this into as small a package as possible, and determine the least intrusive way of connecting the 3 wires to the Land Rover without having to dismantle the dashboard!

After procuring a simple NC relay (courtesy of the local Motor Factors), I planned the connections out as follows:-

I then soldered some wires onto the buzzer, and crimped connectors onto all the cables as you can see. The reason for using a ‘NC’ (Normally Closed) relay, is that when then ignition is in the ‘on’ position, the relay is charged, and the contacts open. Therefore breaking the connection and stopping the buzzer from sounding. When you turn off the ignition, the buzzer will sound if there is power to the bottom leg of the relay (labeled ‘Lights+’ above). Therefore If the lights are off, no power = no buzzer, and if the ignition is on, open-contacts = no buzzer.

Next, I needed to connect it to the wiring in my Landy (which as you can see, is a bit archaic!) – On my ex-Military model, the Blue/Black wire is live when the main headlamps are on (I didn’t want the buzzer for side-lights, just in case I wanted to park it on a lane and leave those on). The earth was snagged from a screw into the bulkhead (where most of the relays seem to be earthed anyway!), and the Ignition live was derived from a spare spade connector on the Ignition barrel. You can probably find your particular wiring diagram [here]

Job’s a good ‘un – Buzzer sounds now if I leave the headlamps on with the ignition off.




CommsBlog Xmas Special – Repurposing old technology

December 19th, 2011 No comments
Rating 4.83 out of 5
Thank you for voting!

Dear Avid Reader,

Yes it’s that time of year when we eat too much, drink too much and have unnecessary arguments with relatives over the pitiful TV that they laughingly call entertainment.

As one of my readers, you’re probably going to be in receipt of a number of gadgets, gizmo’s and techno-treats this year (despite the death of the British Pound according to my friend HERE)

The question is… what do you do with all your old tech? Well here are some ideas of how you could repurpose that equipment:-



Despite your apparent need for 4Gb’s of RAM and Quad-core processing, that old laptop of yours seemed blisteringly fast a couple of Christmas’s ago… so what happened? Well ‘you did’ apparently… Most PCs and Laptops just get slower due to lots of unnecessary software, media and temporary files. Of course at this point you already have a nice new shiny one, so why don’t you format the hard-drive on the old one (or use the recovery disks) and give it to your Nan or Grandad so they can Skype you? One useful idea is to put Ubuntu on it as there is then little danger of Trojans, Viruses or Malware infecting your poor unsuspecting (and unknowledgeable) Grandparents.

Ubuntu Installation Guide: [link]


Old Net-tops, Notebooks and Underpowered PC’s

There is an excellent article on that details how to create your own Media Center PC from an old computer [link] or you could even turn it into a NAS (Network Attached Storage device) for your home network for the purposes of Backup (Pictures etc), Media (Music, Films) or for downloading .torrent files etc. Again this is detailed in a nice article from LifeHacker [link]


Mobile/Cell Phones

Yes… we all need the latest iPhone or Android (obviously the latter if you are a proper tech-head!), but that Nokia or Samsung you use to use for making calls and sending texts is still a perfectly functional bit of kit. Here are some ideas for that too:-

  • Stick a Pre-pay SIM in it (on a different network to your usual one), and put it in the boot of your car with a cigarette lighter charger for emergencies – e.g. Your phone is dead/lost/no signal and you have broken down.
  • Stick a Pre-pay SIM in it, enable ‘fixed dialing only’ (A mechanism that only allows the phone to dial pre-configured numbers), and give it to your young children to put in their School bag. They can’t call anyone or play games on it, but again, in the case of an emergency or missing a School bus…
  • Give it to Phone for Heroes – they use the sale of these old handsets to support the Help for Heroes charity



Its patently ridiculous how many TV sets we are throwing away because they are Analog… You can purchase a Freeview box for about £20 and turn it into a Digital TV, so why not put it in the spare room for when the kids are home for Christmas or make sure that Granny can watch TV in the Kitchen and Bedroom?

If you still have no use for it, then take it to a charity shop as they can then use the proceeds to fund a good cause.

My Guide to Reusing old TV and HiFi equipment: [link]


Games Consoles

Its frightening how many games consoles end up at the local tip… Those old XBOX consoles are probably one of the most hackable devices out there. By making a minor internal modification with an xecuter chip, you can use XBMC (XBOX Media Center) software and turn your XBOX into a full-blown Music and Video media box. Marry this up with one of the old TV’s above, and you’ve created a Media box for your games room/summer house.

Installing XBMC on an XBOX: [link]


Surround-sound / All-in-one players

Well these are fantastic for enhanced the kids games-room – add one of these to their games console and they have a more immersive experience, and the volume levels tend to go down. Another good use for these is to add to the Media system detailed above and place in your Summerhouse/Shed for those garden parties. Its just a case of unwinding the speaker wires and you have a sound system in the Garden. Add an old Radio Receiver and you can pipe your favourite music station into the garden whilst sunbathing.

My Guide to Reusing old HiFi equipment: [link]



Categories: Christmas, General Stuff, Hacking, Modding Tags:

CyanogenMod 9 (ICS) Android Install Guide for the HP TouchPad

October 14th, 2011 No comments
Rating 4.72 out of 5

CyanogenMod 7.1 (FroYo) / 9 (Ice Cream Sandwich) Android Install Guide for the HP TouchPad running WebOS 3.02


First of all, lets get the obvious out of the way:-

I am in no way responsible for any damage, voiding of warranties, loss of data or inability to use your TouchPad based on the information below. The use of this information is completely at your own risk, and it is your fault if you brick your device.

SPECIAL THANKS should go to Dalingin and all of the CyanogenMod team for making this possible – You guys rock!


This information presumes the following:-

  • You are using Windows
  • You know what a “Command Prompt” is
  • You have at least half-a-idea what you are doing…

Please do not email / msg me with questions, place comments at the bottom of this post, and I will (if I can) try to answer them.

This information is gleaned from RootzWiki, XDADevelopers and #cyanogenmod-touchpad IRC channels.

For this I used:

  • 1 x HP TouchPad 16Gb
  • 1 x Sony Laptop (Win7 64bit)
  • 1 x USB Lead
  • 1 x Coffee
  • 1 x Cheesy Comestibles

(the last two aren’t necessary, but make the experience a bit nicer!)


Before Installing watch this video for an overview of the process for the initial install:


NOTE: YOU MUST HAVE JAVA INSTALLED – you can check this by opening a command prompt and typing: java -version

If you don’t get something similar, goto:






Lets Begin!

1. Download files from (CM7) (CM9)


Note: The links above is for the Alpha Release – Check the RootzWiki forum for later versions

README and Installer: – REQUIRED
Clockwork Recovery: - RECOMMENDED

(The 3 above items are contained in the Alpha Release in the above Rootzwiki link)

Moboot(bootloader menu) – REQUIRED

GAPPS (Google Apps) – REQUIRED FOR GOOGLE MARKET (select 20110828 Universal” at the top)

Moboot(bootloader menu) – REQUIRED

GAPPS (Google Apps) - REQUIRED FOR GOOGLE MARKET (select 20110828 Universal” at the top)


NOTE: If you are ‘upgrading’ from Alpha1 to Alpha2, just use the ClockworkMod Recovery (described in Step 15) to install the CyanogenMod main ZIP file.


2. Novacom  (The tool that sends the update to the TouchPad)  - REQUIREDWITHOUT THIS NOTHING WORKS!

Also note, if you have older versions of Novacom, uninstall them first to avoid conflicts.


3. Install Novacom, then go into Windows Services and ensure that the “Palm Novacom” service is started – If you don’t, you’ll get a “cannot connect to server” message later.

4. Insert USB Cable and click on “USB” option that pops up in the top left of the WebOS screen

5. On the PC, you’ll see this:-

6. Create a folder called cminstall on the TouchPad drive


7. Copy the following files into the cminstall folder:-

  •     (or whatever the latest one is at the time of reading this)

8. Safely Unmount/Eject the TouchPad drive from your PC (use the Windows Tasktray option) but leave the cable plugged in

9. On the TouchPad WebOS, go into “Settings, Device Info, Reset Options, Restart” – The TP will reset. As soon as the spinning icon (Before the HP Logo) appears, hold down the Volume-up button until a USB logo (smaller than the one in step4) appears on the TP Screen. If it doesn’t appear, try power and volume up.

10. Unzip the Copy Readme/Installer and copy the ACMEInstaller into the Novacom program folder

Note: This could be “C:\Program Files\Palm, Inc”, or something like “c:\program files (x86)\HP SDK\bin”

11. Start a command prompt – NOTE: In Win7 use ‘right-click “run as Administrator”‘

12. Navigate to the folder where you unzipped the ACMEInstaller (cd “\program files…. etc”)

13. At the PC command prompt type : novacom boot mem:// < ACMEInstaller

(replace ACMEInstaller with ACMEInstaller2 for CM9)

14. You should see the TP start installing CyanogenMod – BE PATIENT – This can take about 10-20 mins.

You *MAY* get a lot of ‘Alarm Expired’ warnings – Ignore them and wait, wait, wait….



When it reboots, you should see a nice CM7 Desktop, but we still need to install some more goodies….


15. IF the main Google Apps (e.g. Market) are missing, then perform this step:-

First we need to get all the standard Google Apps, this is done by downloading the latest CM7 Google Apps package from (“20110828 Universal” at the top) and place in the ‘downloads’ folder on the TP. Reboot the TP into ‘recovery’ mode (press and hold power and select ‘recovery’), and then select “install zip from sd card” and select the gapps zip file you copied onto the system, then reboot

(More information can be found here:


16. There are various other ‘key’ apps that may or may not work, and here is a workaround for Maps, Facebook and Twitter

Mount your USB on the TouchPad (slide up the notification bar. touch “USB Connected” and then “Turn on USB Storage”). Copy the following ZIPs into the ‘Downloads’ folder.

Unmount the USB and then use File Manager on the TP to browse to the Downloads folder and install each of the APK’s.


Another Market Fix – Show ‘hidden’ apps (Like Google Maps) – NOTE: Not needed for Alpha 2

This one is a ‘recovery’ fix (see item 15 for example of how to install)



Pairing the HP BlueTooth Keyboard

After getting stuck last night, <scifan> kindly helped me out:-
[18:32] <scifan> yes
[18:32] <scifan> It’s psycho in there…
[18:32] <scifan> Ok
[18:32] <scifan> Pair it…
[18:33] <scifan> Enter 0000 as your pin
[18:33] <scifan> Then TYPE 0000 on the keyboard and press enter
[18:33] <scifan> And you should be good


Wallpapers look a bit pants?

[13:45] <zondajag> the location of this folder is as follows
[13:46] <zondajag> in lower caps
[13:46] <zondajag> oops
[13:46] <ne0phyte> cool
[13:46] <zondajag> the wallpaper file is a renamed png
[13:46] <zondajag> replace that with a png with res 1536×1024 and restart
[13:47] <zondajag> and rename it to wallpaper without the .png



Getting write access to /system (for things like AdFree, Chainfire 3D Pro and ES Explorer to work) – Thanks to <exiles> on IRC for that one.

Note: This can be dangerous – Not for the faint of heart… and will be fixed in the next release. This is issue 113 – Please check for updates here:

Open a Terminal Emulator and, and type the following commands (the ‘su’ command will prompt for superuser privileges – select ‘yes’):-

busybox mount -o rw,remount /system
cd /system/xbin
ln -s busybox mount
mount -o ro,remount /system


I’m stuck and need more help!

The first thing to do is check the ‘issues’ list here:-

Or you can visit and chat to the guys in the #cyanogenmod-touchpad channel


Some of the common FAQ’s

Q: How can I install ClockworkMod after installing CyanogenMod?
A: Repeat the install process as you installed CyanogenMod, but this time simply put the ClockworkMod zip file in the cminstall folder in the “media partition”. Now repeat the process of running the ACME Installer, and ClockworkMod will be installed. A new option will appear in moboot for selection to boot ClockworkMod.
Q: How can I install moboot after installing CyanogenMod?
A: Repeat the install process as you installed CyanogenMod, but this time simply put the moboot zip file in the cminstall folder in the “media partition”. Now repeat the process of running the ACME Installer, and moboot will be installed. A new menu will appear on each boot, to allow you to select the desired boot option using the volume keys, and then the home key to select.
Q: HELP HELP my Touchpad is frozen. It’s been like this for over 20 minutes.
A: Hold down power + home for at least 20 seconds and the Touchpad will reboot.
Q: How do I select in moboot?
A: Select the desired boot option using the volume keys, and then the home key to select.
Q: Selecting “Reboot to WebOS” reboots to android
A: Install moboot per the instructions above.
Q: How do I install Google Apps? (Gapps)
A: Download the latest CM7 Google Apps package from, and pick “20110828 Universal”. Install this ZIP via either ClockworkMod as you usually would flash a zip, or use the ACMEInstaller, like you were installing either moboot or ClockworkMod
Q: My touchpad shut off and wont turn back on now.
A: HARD REBOOT (POWER+HOME BUTTON) for 20-30 seconds works.


Categories: General Stuff Tags:

The Perils of Passwords (a.k.a. Sony’s Security Sucks)

April 27th, 2011 No comments
Rating 4.83 out of 5

Yes, we have all read about the latest global company to get hacked, and once again our online identities are open to use and abuse (well… even more than they were before anyway…)

The question that I have to ask myself is; How can I really protect myself online?

Ask yourself this simple question: Do I use the same/similar passwords for all my accounts?

Now I happen not to, but I am in no way adept at protecting myself. In fact this very blog has been attacked in the past by Spam Bots, and when the Gawker sites got hacked, I quickly found my Facebook and Twitter accounts had been accessed.

How can you prevent the cascading loss of your identities?

Well I now use this set of simple rules:-

  • NEVER use the same password across all my accounts. This is the golden rule!
  • I (try to) use differing passwords for differing systems, for example;
    • Banking -> I use a different password for ALL online banking accounts and credit cards.
    • Online ‘forums’ that don’t matter -> I use one password for them all
    • Chat Clients (MSN, Skype etc) -> I use one password (but not the same as the ‘forums’ one)
    • eBay -> Unique password
    • PayPal -> Unique Password (but similar to eBay so I don’t forget it)
    • Desktop / Laptop -> Unique passwords for each
  • I use numbers instead of vowels and punctuation marks in order to make long/complex passwords.
    • Consider the password “password1″ – that could take Dictionary attack a few seconds to bypass, whereas “p4ssw0rd_h4rd” would probably only be cracked by Brute-force and could take days.
  • I Check my password strengths here:
  • I use alternative email addresses (e.g. an unused Hotmail account) for Forum/Tech sites that force you to register.

So now you see what I do, consider these common passwords and ask yourself how many of them (or variants) you use…..

  • Wifes name
  • Kids name
  • Date of Birth (forwards, backwards, wife’s, kid’s etc)
  • Favourite pets name
  • “Password”
  • “12345″
  • “Computer”
  • “Fred”

Scared? :o )

This might interested you too – XKCD’s detailed description of how insecure your password could be, even following these rules…

Categories: General Stuff Tags: