Graphing the AXA Sun Life 50 Plus Protector

August 27th, 2008

Following on from my post where I graphed the AXA Sun Life Guaranteed Over 50 plan I thought I’d look at a more complex product to see what kind of graphs I could get out of it. Unlike the Over 50 plan, the AXA Sun Life 50 Plus Protector features a lump sum and premium that increases over time. There is also a maximum number of years that the premiums are payable for. As there are a number of extra rules it should produce some interesting graphs!

As before I’ll mention that I’m not writing this to offer an opinion on this particular product. I’m not a financial advisor. My interest is to show how you can convert the information about financial product into graphs. These graphs can be of great help in deciding whether a financial product is suitable for you.

I got a quote from their website for a 60 year old male paying in a premium of £7 per month. These figures are what I was quoted on the day I did the quote (late August 2008).

The premium of £7 will rise by £0.35 per year for a maximum of 20 years when it will be double the initial premium. It will then remain level until it stops altogether at the age of 90. The cash lump sum is payable on death after two years. It is £1095 and will rise by £50 per year. If you were to die within two years the lump sum would be 1.5x the amount paid into the plan. There is no cash in value - if you stop paying money into the plan you get nothing.

The first graph I’ll make is to show how your premiums vary over the years. You can see them increasing every year, until the age of 80 when they level off. After the age of 90 you don’t pay any more premiums.

axa sun life 50 plus protector cost of premium

The next graph shows the cumulative cost of all the premiums paid into the plan, against the value of the lump sum. You can see (if you look carefully) that the premiums paid line increases in angle for the first 20 years. It is then a straight line for the next 10 years. The line then goes flat from age 90 as no more premiums are payable. The lump sum payment starts off at 1.5x the amount of premiums paid in, after two years it goes to the full lump sum value which increases by £50 each year.

axa sun life 50 plus protector plan cost vs lump sum

You can see that there is a crossover point at which you pay more in premiums than the lump sum you get back. You can also see that as you don’t pay any more premiums after age 90 the lines start coming together again. I continued the age range to 120 to see at what point they diverge for the second time.

I then produced a graph to show by what percentage the lump sum and the premiums go up. The text on their website says that both go up by 5% of the original lump sum / premium each year. An increase of £0.35 is indeed 5% of the £7 premium. However £50 of £1095 is actually 4.6%. I’m not sure whether they are rounding the lump sum increase down, or whether there is some error in their calculation.

axa sun life 50 plus protector lump sum increase

Despite the slight discrepancy in percentages both premium and lump sum follow an almost identical curve of decreasing percentage increases each year. The premium increases drop to 0% after the age of 80 as per the plan description. The lump sum increases by £50 each year so the percentage increase keeps dropping. It is therefore important to understand the effect that inflation will have on this plan.

I hope you found this interesting. These three graphs took me about 15 minutes to do and provide details of this product in a much easier to analyse format than the pure text description of the product as given on the AXA page.

As I started before I’m not offering you an opinion of their plan, more a reason why getting to grips with a spreadsheet package like Microsoft Excel will help you with making financial decision.

HMS Belfast visit in London

August 26th, 2008

As it was a bank holiday weekend I decided to visit the HMS Belfast. It was a Royal Navy warship, which is now permanently moored in the Thames as a museum. You’ll find it near London Bridge tube station.

hms belfast exterior 01_th hms belfast anti aircraft gun 13_th

It served in World War II and for around 20 years afterwards. You can explore the ship seven days a week. On the day I visited it was £10.30 for an adult ticket.

Inside you’ll find lots of scenes of life inside the ship, including the gramophone room and the kitchens. You’ll also find a few exhibitions and plenty of information for you to read about the various areas of the ship.

hms belfast radio room 02_th hms belfast kitchen 03_th

You’ll need to be comfortable with climbing up and down these kinds of ladders if you want to get around the ship. If you have a rucksack you’ll need to be careful when going through these openings.

hms belfast stairs 04_th hms belfast stairs 08_th

You get given a map of the ship and you are supposed to follow the red arrows to get around the route. Unfortunately there are so many red arrows, often pointing in opposite directions that it is very easy to get lost. If they put some numbers on the arrows it would be much easier to follow the route.

hms belfast machinery 05_th hms belfast guages 06_th

The ship had its own surgery where injured sailors could be treated.

hms belfast indicator 07_th hms belfast surgery 09_th

hms belfast steering wheel 10_th

The average sailor had to sleep in hammocks wherever there was space for them to be hung. Often they would have to sleep in rooms full of very noisy equipment. In the photo on the right is one of the rooms that houses the shells that can be fired 14 miles by the ship’s guns.

hms belfast sleeping sailor 11_th hms belfast shells for guns 12_th

I spent around one and a half-hours on the boat. If you were to read all the information, watch all the videos and listen to all the information on the audio guide you could double this. If you’ve never been to the HMS Belfast and you are in London it is definitely worth a visit.

Graphing the AXA Sun Life Guaranteed Over 50 Plan

August 22nd, 2008

On TV recently I’ve been bombarded by adverts about the AXA Sun Life Guaranteed Over 50 Plan. The current version of the advert is presented by Michael Parkinson. Previous versions have been presented by June Whitfield.

I am no way near the age of 50 and these plans have no relevance to me. I should also point out that I am not a financial advisor, and am not intending to offer any opinion on these plans. My interest is to look at them from a simple mathematical point of view.

In case you’ve missed the advert the basic idea is this. If you are over 50 you can pay AXA a fixed monthly sum for the rest of your life. When you die a fixed sum (fixed at the time you open the plan) is payable to your family. If you die within two years you don’t get the fixed sum, but your family do get 1.5x your premiums back. If you ever stop contributing you don’t get anything.

I went on their website and got a quote for a 60 year old male paying in £6 per month (the minimum a 60 year old male can pay in on the day I got the quote). This produces a cash lump sum of £760, payable on death after 2 years.

Here is a graph plotting how much you pay in, against how much you get back. You can see there is a cross-over point at which you end up paying in more money than you get back. In this case you end up having paid in more then you’d get out when you reach 71 years old.

axa sun life over 50 plan graph

The government publish data on life expectancy. I got the latest male life expectancy data from 2004 and 2006 and plotted this into another graph. Note how your life expectancy goes up as you get older. This is because you have already managed to avoid dying in the preceeding years.

uk life expectancy

You might not be able to make out the detail on the graph but the life expectance for a 60 year old male in the UK is 80.81 years.

This means that if you are an average person you are likely to be paying in 9 years of premiums beyond the lump sum value that you would get back.

However calculating the benefit of these plans isn’t quite as simple as this - they often provide extra benefits such as extra payouts in the event of dying in an accident or whilst travelling.

An obvious factor to look into is the effects of compound interest when adding the same amount (£6) into a bank savings account every month.

compound interest graph on a monthly saving of £6 at 4%

This graph is showing the effect of saving £6 a month based on a modest 4% gross interest rate. I based the calculations to produce this graph on the formula given on patrick schneider blog post. The final figure after 40 years matches the figure given by other compound interest monthly savings calculators I’ve seen on the internet so hopefully the graph is accurate!

Below I’ve put the compound interest curve on top of the previous graph comparing contributions against the cash lump sum.

compound interest graph on a monthly saving of £6 at 4% compared against AXA Sun Life Plan with £6 per month contribution

There are further complications to consider such as the effect of inflation. The real worth of any money your family would get back when using these plans is reduced every year due to inflation. On the other hand the real world cost to you goes down each year as your £6 per month will gradually constitute a smaller percentage of your income.

What are my conclusions? I’m not giving you any! Any decision on whether to use a financial product should be taken based on your personal financial circumstances and with the help of a trained financial advisor (which I’m not).

I would say that these are the kind of analyses you should be doing when investigating or comparing any kind of financial product, whether it be a savings account, loan or mortgage. Turning financial information into simple graphs is a very powerful tool that can save you a lot of money!

Are your website and blog earnings at risk?

August 20th, 2008

There are a lot of websites out there telling you how you can make money out of your website or blog. You may have decided to try some of these ideas to make some money out of your web presence. Perhaps you even rely on your web-generated money for a significant slice of your income. If you have then have you ever analysed how secure this income is?

Let’s look at a five such risk factors.

Relying on a single income stream

Like many sites out there you may use Google AdSense. It is quite likely that it is responsible for most / all of your web income. Just imagine if that income suddenly stopped!

Is this likely? Well, if you read the many AdSense forums out there it seems that there is certainly a chance of this happening to you. Many people wake up to find an email from Google in their inbox to tell them that their AdSense account has been terminated. The usual reasons for this include either click fraud (clicking on your own ads), or not obeying the AdSense terms and conditions.

Unfortunately a lot of people seem to be getting banned through no fault of their own. This usually seems to be as a result of their site being ‘click bombed’. In other words other people deliberately click on loads of the adverts in order to get the site banned.

This kind of account termination could happen with any kind of income programme that you use. I’m just using AdSense as an example as there are a lot of documented cases of people having their accounts banned.

To protect yourself from this you should use a variety of income generating programmes.

If you can you should construct your website in such a way that you can easily switch from one programme to another if you should become banned from one. This also has the advantage that if one programme proves to be a better earner than another, you can switch more of your site to the higher earning one.

Relying on one main traffic source

Another risk factor is related to where your traffic comes from. If most of your traffic comes from one source then you are at risk. As an example it wouldn’t surprise me if 80% of your traffic came from Google. Let’s imagine that next week they introduce a major search algorithm update which sends your site plummeting in the rankings. You could suddenly find that you have hardly any traffic!

Other risks include having your site identified as a spam site and being penalised in the rankings or even dropped.

Mitigating the risk involves looking at where your traffic comes from and working to get visitors from more sources. For instance getting links on related websites, or getting coverage in other search engines.

This particular risk can be very hard to reduce due to the dominance of Google. Your best defence could well be to keep in Google’s good books. Simply sake sure that your site complies with their webmaster guidelines and you should be ok.

Having just one website

All websites go through highs and lows. Sometimes there will be an obvious reason. Your Christmas related website is unlikely to do well in the Summer. Other times you may not be able to work out why your traffic goes up and down.

With only a single site you are susceptible to these kind of changes. In general if your traffic goes down then so does your earnings. If you have multiple sites then it more likely you will be sheltered from the peaks and troughs as when one site decreases in popularity another site may be rising.

You can think of it like having a balance portfolio of investments. You wouldn’t invest all your money on the stock market would you? If you were sensible you’d probably spread your money through a mixture of stocks, property, and cash accounts.

Having just one web host

Another kind of risk comes from using just one web host. Think for example what would happen if they went bust? All your sites could disappear in an instant. You may then find it quite hard to get your domains back. Even when you do you may find that you have lost all your search engine rankings, links and visitors.

It can happen - about 10 years ago I lost a domain of mine when my host went bust. It was very inconvenient.

To reduce the risk first be careful about who you trust to host your website and domain names. Don’t go for a company that looks in any way financially unstable.

The second more extreme risk reduction strategy is to use multiple web hosts. This is only really relevant if you have multiple sites. If you have two hosts then you can spread your sites between them. Of course you may now have double the chance of one of your hosts going bust, but at least you aren’t in a all or nothing situation like you were before.

Forgetting to renew your domains

Keep a careful record of which domains you own and when they need to be renewed. Hopefully your host will automatically renew them for you. If they do then make sure that they have your up to date credit / debit card details.

Good hosting companies will re-register the domain even if they don’t have the correct payment information from you. Not so good hosting companies will release expired domains back into the wild. This can be disastrous as someone else can then quite legitimately register your domain. They will then inherit all your traffic, links and search engine placements. There could be no way for you to get it back.

Conclusions

You may notice a theme throughout all my risks. They are mostly about removing the single point of failure to spread the risk. Whenever you rely on just one factor you are at risk of losing everything if that factor should change.

Stay safe, and spread that risk around!

Picking the 5th from last element in a singly linked list

August 18th, 2008

Here’s another of those fun coding interview puzzles. The kind that companies like Microsoft or Google might ask you. Given a singly linked list, select the 5th from last element. I’m writing the solution in C++ but the solution in Java would be almost identical. I’m also putting up my test code.

The restrictions are - you can only make one pass of the list, and you don’t know the length of the list.

First we need to define our linked list element. All it needs is to store a value, and a pointer to the next element in the list.

class Element
{
public:
	Element(int valueArg) : value(valueArg), next(NULL) {}
public:
	int value;
	Element* next;
};

Here is the actual solution. As we are only allowed one pass of the list we use two pointers. The second pointer trails 5 places behind the first pointer. When the first pointer reaches the end of the list we simply return whichever element the second pointer is pointing to.

We need to take care of the special case where the list has less than 5 elements - including the case where the list has 0 elements!

Element* FifthFromLast(Element* root)
{
	Element* current = root;
	int fromLast = 5;
	while (fromLast > 0 && current)
	{
		current = current->next;
		--fromLast;
	}

	if (fromLast != 0)
	{
		return NULL; // less than 5 items in list
	}

	Element* fifthFromLast = root;
	while (current)
	{
		current = current->next;
		fifthFromLast = fifthFromLast->next;
	}

	return fifthFromLast;
}

Here is the test code which tests the most common cases for this problem. As the parameter to FifthFromLast is the root element we can simulate a shorter list by passing in one of the middle elements.

void LinkedListTest()
{
	Element* one = new Element(1);
	Element* two = new Element(2);
	Element* three = new Element(3);
	Element* four = new Element(4);
	Element* five = new Element(5);
	Element* six = new Element(6);
	Element* seven = new Element(7);
	Element* eight = new Element(8);
	Element* nine = new Element(9);
	Element* ten = new Element(10);

	one->next = two;
	two->next = three;
	three->next = four;
	four->next = five;
	five->next = six;
	six->next = seven;
	seven->next = eight;
	eight->next = nine;
	nine->next = ten;

	cout << "Test: find 5th from last in 10 item list" << endl;
	Element* fifthFromLast = FifthFromLast(one);
	if (fifthFromLast == six)
	{
		cout << " Pass" << endl;
	}
	else
	{
		cout << "!Fail" << endl;
	}

	cout << "Test: with 4 item list - expect NULL" << endl;
	Element* nullReturnCheck = FifthFromLast(seven);
	if (nullReturnCheck == NULL)
	{
		cout << " Pass" << endl;
	}
	else
	{
		cout << "!Fail" << endl;
	}

	cout << "Test: FifthFromLast(NULL) - expect NULL" << endl;
	nullReturnCheck = FifthFromLast(NULL);
	if (nullReturnCheck == NULL)
	{
		cout << " Pass" << endl;
	}
	else
	{
		cout << "!Fail" << endl;
	}

	// clean up
	Element* current = one;
	while (current)
	{
		Element* next = current->next;
		delete current;
		current = next;
	}
}

This is the output from running the tests.

Test: find 5th from last in 10 item list
 Pass
Test: with 4 item list - expect NULL
 Pass
Test: FifthFromLast(NULL) - expect NULL
 Pass

How I stay safe from viruses and spyware for free

August 11th, 2008

Being connected to the internet has - according to various news sources - got more and more dangerous over the years.

A metric that is commonly quoted is the average time it takes for an unprotected PC to become infected by viruses / spyware after it has been connected to the internet.

In 2004 the time was apparently 20 minutes. By 2005 the time had reduced to 12 minutes. Now in 2008 there are articles saying it is 4 minutes.

Whether these stories are true, or just a scare tactics by the anti-virus industry to sell more products is another matter. Whatever the real situation viruses and spyware are real threats and you should make sure you are protected. Becoming infected could lead to personal details being stolen for identity theft purposes, or your bandwidth being stolen for use in botnets.

I use both Windows XP and Internet Explorer and I’ve never had a virus or any spyware on my computer (or at least none that I know of!). Maybe I’m just lucky or maybe it is because I use a variety of tools to stay safe. You can get everything you need to stay safe for free so there is little excuse not to be protected. Here are the tools and techniques I use.

Keep Windows up to date with the latest patches

New patches for Windows are usually released on a monthly basis. Many of these patches stop ‘bad guys’ from taking advantages of newly discovered vulnerabilities in the operating system. Windows can download and install these for you automatically. You should make sure that you computer is configured to do this.

Go to Control Panel -> Security Center.

Make sure that Automatic Updates is turned on. For the easiest updating go into the Automatic Updates settings page and make sure that it is set to download and install them automatically.

Windows Automatic Updates

Use a firewall

A firewall stops unauthorised connections from coming into your computer. At the very least you should ensure that the default Windows firewall is enabled. As with the Automatic Updates you can check the firewall status from the Windows Security Center (in the Control Panel).

However the Windows firewall only stops unauthorised incoming connections. It won’t stop unauthorised outgoing connections. If you want to do this you should use a more sophisticated firewall such as the free version of the ZoneAlarm firewall. There are several different versions available from their website but the free one will do the job.

ZoneAlarm firewall

You should be warned however that it may well complicate your PC usage as every time a new program tries to access the internet it will ask you if you want to authorise that program. There have also been problems in the past where ZoneAlarm users have lost their internet connections. You will however be more secure if you use ZoneAlarm and if you have problems you can always uninstall it and go back to the default Windows firewall.

You can test how effective you firewall is at stopping incoming connections by using the ShieldsUP! online port scanner. Use their ‘All Service Ports’ scan to see if any of your ports are accessible from outside your computer.

Install a spyware blocker

Some programs will actively search and remove spyware and viruses. Spyware Blaster does something more simple. It sets kill bits for all the spyware programs it knows about so they can’t run.

There is a free version of Spyware Blaster available. You should install it and then run it on a regular basis to download and enable the new spyware updates.

SpywareBlaster

Get an anti-virus application

You should make sure you have an up-to-date anti-virus tool on your computer. Many require you to pay a yearly subscription. avast! antivirus is a commercial tool for business use, but it is free for home use. You can find and download the Home Edition from their official website.

avast! will automatically keep itself up to date if your computer connects to the internet. It will protect you from viruses, spyware and rootkits.

Use a variety of other tools

As well as using a good regular suite of protective tools (firewall, anti-virus, automatic updates) I also on an occasional basis scan my computer using other tools. Not all anti-malware tools find all problems so it is good to use different tools once in a while.

Here are a few that I’d recommend you try:

Ad-Aware - get the free version of this tool to scan for spyware.
Spybot - Search & Destroy - another anti-spyware tool which is worth running once in a while.
Windows Defender - free anti-malware program from Microsoft.

As well as using these application there are a number of online scanners that you can use too:

ZoneAlarm Online Spyware Scanner
Symantec Security Check - virus and security scanner
F-Secure online scanner

Stay safe!