Archive for the 'Business' Category

Going full-time

Monday, December 18th, 2006

At the beginning of this adventure, back in October, I said I’d work 3-6 months part-time, then I’d have to make a decision about whether to go full-time.

I guessed right. I’m four months in, and I’m going full-time from today onwards.

That doesn’t mean, by a long shot, that I think Macrobug is going to be a success or bring me any income in the near future. If anything, it’s the oppposite – I wasn’t getting anywhere part-time so I need to work harder at it. That doesn’t really come as a surprise.

My early blog posts (gosh, I hate the word blog – maybe I’ll change this page to Macrobug Diary)… My early blog posts stated quite a few obstacles that might completely have sunk the whole thing. These included technical problems, saleability problems and relationship-with-Symbian-or-Nokia problems. I was expecting one or other of these to totally, unarguably, doom the whole thing. Much to my consternation, none of them have done so, so I’ve had to make more “squishy” subjective decisions about whether I think it can work.

My conclusion is – I still think the business idea is sound. I think there’s a need for greater intelligence in debuggers, and I think that a business can be built up around it. I also think that doing it on Symbian OS first makes sense – it’s so much easier.

So, I’m quite pleased that after a few months effort I still think the business is valid.

However… the scale of the task is appearing more epic with every moment that goes past. Although I knew from the beginning that it could take years to make a viable income out of it, I genuinely thought I’d be able to knock up some sort of prototype in a few months, which I could demonstrate to Symbian and to potential customers. That prototype, in itself, is now seeming like a nightmare long project. There’s too much technical uncertainty, and every avenue I turn down seems to be a blind alley – I run up against limitations in Symbian OS, or Eclipse, or Carbide, or something else. I knew from the beginning that I’d face big performance problems, shifting around so much data. They were worse than I feared.

Anyway, it’s this paradox of potentially good idea versus lots of trouble actually doing it, that makes me need to go full-time to see whether it works.

Hopefully at Easter I’ll be a bit further down the path. My stated aims for the next two or three months are to get that prototype working… or at least, have worked out all the remaining technical uncertainty points so it’s just a clear run of development until I have something working.

We’ll see.

Contracting income

Monday, December 4th, 2006

A lot of people assume that contractors are rich scummy gits.

It’s true to an extent, so long as you have a long-term lucrative contract. Let’s do some sums on a hypothetical contractor. Numbers are based on a few contractors I’ve spoken to – so don’t assume they relate to me, cos they don’t.

Gross salary if they weren’t contracting: say £50,000.
Net salary if they weren’t contracting: That might leave £32,000 net salary after tax and national insurance has been deducted.
Effective net salary: add on 6% pension payments your company makes and a couple of other percent for miscellaneous benefits like life insurance, and you can call your net salary £35,000. All very approximate of course.

Contracting rate per hour: £50
Hours a week: 40
Weeks a year: 44.

Why 44? Because some of that time you’ll be ill, or on holiday, or will be between contracts. None of that you get paid for.

Income per year: £88,000

Gosh, that’s a lot isn’t it? We can deduct a bit for operating expenses of running the company (accountants etc.) and also for hardware and software, which typically a contractor has to provide. So let’s say:

Effective income into company: £80,000

Now what do we do with that? It rather depends on the Inland Revenue. They have a set of regulations called IR35, under which they assess your contract. If you appear to be like a regular employee of the company to whom your company is contracting, they’ll treat you like an employee and tax that £80,000 as a standard gross income. In which case you can expect your net salary to be about £44,000.

However, if your contracts are riskier, shorter-term, and look more like genuine task-based contracts rather than employment, you are “outside” IR35 and there is another option.

That option is to pay yourself a small salary – say, £6,000 – and take the rest of the cash as company dividends. Since you’re the only shareholder and director, you can do that. Income tax is not due on dividends – woohoo. However, dividends come out of company profits. Company profits are taxable (through Corporation Tax) – but that’s only 19%. So your income will effectively be taxed at 19% (plus a titchy amount of income tax on the £6,000). Net income: £66,000.

Seems pretty appealing hey?

But… (didn’t you know there would be a but?)

  • You accept the risk that if you fall ill, or get unemployed, that’s it – there’s no safety net.
  • You have to actively try to sell your services.
  • If you end up with a cushy low-stress contract for a fixed number of hours a week, the Inland Revenue will decide you’re an employee and tax you accordingly, making the whole thing much less attractive. Contractors will therefore only make really big heaps of money if they are accepting a lot of risk.
  • No chance of career progression/pay rises. Not as fully integrated into teams. etc. etc.

For me the biggest downer is the extra risk. For example if you get RSI you’re pretty messed up. Most contractors accumulate so much money that the cash heap acts as effective insurance against such problems (or they can use some of the income to get insurance against such illnesses etc.) Obviously, contracting part-time, I am actually earning less than I did with my full-time job, so I have no such cash pile as protection against such problems. Scary! At least I’ve got a talented and beautiful wife who can support me if it all goes tits up. Can’t you, dear?

Even full-time contractors aren’t happy. I don’t know of a single one who wishes they didn’t have an interesting full-time job.

In my case, taking a contract to bring some income into Macrobug seems like it was probably the right thing to do. But spare a thought for the full-time contractors – they’re probably rich but miserable.

(See Contractor Calculator if you want to play with these figures.)

Scrum

Tuesday, November 21st, 2006

Computing projects are typically managed using standard project-management methodologies, such as GANTT charts. This doesn’t work too well for a variety of reasons:

  1. In any non-trivial computing project it’s impossible to identify the subtasks involved until you’ve more-or-less done them
  2. Computing projects are particularly difficult for the clients to envisage, since they’re so abstract. Therefore, the requirements change throughout the life of the project.
  3. Interrupting a computer programmer, or changing their goal, causes them to forget lots of important information about what they were doing, and hugely reduces their efficiency. It’s said that diverting a programmer’s attention for half an hour destroys the equivalent of a day’s productivity.
  4. Project management is hard.

There are various methodologies in computing for “agile” development, which are intended to solve these problems and others. I only really know enough to use two of them – test-driven development and Scrum. Test-driven development is simple: the idea is, before you write the real code, you write the test code. This helps you think about the purpose and interface of your real code, and also means that when you finally write the real code, you can be certain when you have finished and it’s bug-free, because all the tests pass. Which is nice. It also fits the typical project lifecycle a bit better, because tests should be based off the design or specification rather than off the actual code, which means it makes sense to write them before you write the real code. (Of course, most project managers secretly don’t want you to write test code anyway, because it means your project takes longer. But they’ll all deny that.)

However Scrum is much harder to explain, as it’s a project management thing. It has a number of interconnected principles. Here’s some of them…

  1. There is a master set of requirements called the Product Backlog.
  2. The development team does everything in 30-day “sprints”
  3. The requirements for a sprint are set at the beginning and cannot be changed
  4. However a sprint can be cancelled if its requirements prove to be irrelevant
  5. There are defined-length meetings at the start of the sprint to set its objectives, selected from the Product Backlog. This implies an acceptance that the requirements cannot be perfect.
  6. The team manages itself within the Sprint. There is no pro-active management.
  7. All deliverables in a Sprint must be finished and ready to deploy in a product. e.g. documentation and test code must be ready. Therefore your customers can assess what you’re producing and affect your Product Backlog appropriately for future sprints.
  8. Progress within a Sprint is tracked using a “burndown graph” which represents the time remaining on each task in the Sprint. The time remaining on each task can go up as well as down, based on developers’ current estimates – but hopefully, across all tasks, it tends down to about 0 at the end of the 30-day sprint.
  9. There are defined roles for a Product Manager-type person and for a Scrum co-ordinator (who just enforces the process, rather than actively manages)

Here’s an example of a burndown graph. (The numbers along the bottom are the 30 days of the sprint, which Excel has eaten. Bless it. The y axis is ‘time remaining’ in hours).

Example burndown graph

There are other principles – and I’m sure that, to be fully effective, you can’t arbitrarily omit the ones you don’t like – but this subset seems to serve me well for a team of one: me. I’ve been introduced to Scrum by my contracting work. To be honest it works better there – too many of the Macrobug tasks are too experimental, and, a bit like test-driven development, it doesn’t work too well if you’re just flailing around trying to make things work. Still, I’m quite sure it works better than the typical approach with rigid GANTT charts, and I hope one day I get a chance to use it in a team of more than one!

Things I like:

  • The theory that, once you’ve planned your objectives for the 30 days, they won’t get changed and you won’t have to do lots of wasteful context-switching. This benefit only really applies if the organisation fully adopts Scrum, which my contracting job doesn’t really.
  • If you discover that it’s going to take more time to do a task than you expected, that’s fine. You just record it, and the graph will show your product manager that there’s going to be a problem. Much less troublesome than aiming for arbitrary targets.
  • The fact that you release things in 30-day increments which are supposed to be “finished”. That’s a bit like the well-known open source principal, “release early and release often”. It’s good.

In short, it seems like the best compromise between not interrupting the programmers, versus giving the customers/stakeholders frequent opportunities to affect the product progress.

Windows licensing

Friday, November 3rd, 2006

There are two versions of Windows XP Pro: OEM and full retail. They’re identical, but the OEM version is only valid when sold with a new PC, in theory. On the grounds that I want to be fully legitimate, I got the (more expensive) full retail version.

Alas, the CD was scratched.

Stewart kindly loaned me his XP CD, but like everyone elses’ in the planet, it was an OEM version. So I couldn’t install it. It wouldn’t accept my product activation key.

Massively annoying. I try to do the right thing by Microsoft by getting the expensive version, then they mess me about by not accepting my (expensive, full) activation key for the cheaper version of Windows. I can understand it the other way round, but this way round sucks.

Obviously when I phoned up customer service they were totally unwilling to help. Grrr.

I know I’m ranting a bit here, and that it’s not really so bad, but there we go. It annoyed me because I really wanted to get Windows working on this MacBook Pro.

Fortunately, in the end, the third computer I tried was able to read the CD and, a day after I started trying, I got Windows installed. Hooray! (It’s not even as if I like Windows… oh for a MacOS-compatible Symbian OS development environment.)

Personality types

Wednesday, November 1st, 2006

I am the sort of neat person who likes to get everything “ship-shape and Bristol fashion”. My wife will tell you that I am too tidy. Funnily enough I wouldn’t agree with that, but I would agree that untidy things nag at me until they’re fixed.

I have tended to think this is a good trait, but I am becoming increasingly sure that this personality type is somewhat incompatible with trying to make a start-up. There’s simply so many niggly things to worry about (as you’ll have gathered from this blog) that to be on top of them means you have no time to actually start your start-up (as you’ll also have gathered). I think that somebody like me has to let some things go, and ignore some very important matters, or they will be unable to get their company off the ground.

I suspect this is the reason why lots of small companies get in trouble with the HM Revenue etc. for not filing tax returns on time, for example. Or (I suspect, though I have no evidence) why a lot of them don’t make enough backups and lose all their data. There’s just no alternative: you get nowhere if you look after everything.

I think I am on top of most of this stuff now, but I am not sure I should have been quite so diligent. I should probably have just let things go wrong, and waited until I got angry letters from HMRC before thinking about tax, accountants etc. And waiting until I lost my data before making a back-up strategy. And waiting until I got sued by Symbian before starting to negotiate about IP, licenses etc.

Oh well. I’d still prefer to be in the situation I’m in now, I think. Just. In some ways I’d rather be at the bottom of that organisational mountain, if it meant I was at the top of my initial-coding-phase mountain. A mountain that just doesn’t seem to get any smaller.

iStockPhoto

Tuesday, October 31st, 2006

One of the most useful tips from my friendly neighbourhood web gurus was where to get stock photography from. The answer: iStockPhoto.com. So, that’s where the random photos on the website are appearing from.

Pension, life insurance, health insurance

Monday, October 30th, 2006

I knew that when I left my previous large employer, I’d have to take care of some personal financial matters which they had previously looked after. But I wasn’t sure of exactly what; all the different kinds of financial products were a bit blurry in my mind. It turns out the answer is:

  • Life insurance
  • Health insurance
  • Income protection insurance (also known as ‘permanent health insurance’)
  • Pension

Not to be confused with:

  • Critical illness cover
  • Mortgage payment protection insurance

What are all these things about? Pension is obvious. And, so far, has been pretty straightforward – I just wrote to my pension provider explaining the situation and they sent me back a Direct Debit mandate to send back. I’ll then be paying for my pension from within the company.

Health insurance is also obvious – BUPA or similar – I have not signed up for this and don’t intend to do so any time soon. I am never convinced that, unless you pay for a really expensive plan, you’re likely to be covered in any given situation. It seems to me that most health insurance policies exclude both chronic and acute conditions, which doesn’t leave much in between.

Life insurance is nice and straightforward too; they pay out if you die before the age of 60 (or whatever age you choose). You choose the payout you want your family to have (e.g. £100,000); the premium is guaranteed for life, and there’s really not much debate about whether you’re dead, so you don’t need to consider very much except for price.

The rest are a little more confusing. Income Protection Insurance pays out an income until you’re (for instance) 60, if you are unable to work for medical reasons. Again, the premium is guaranteed for life. You can choose your income level (e.g. £1000 a month), and the deferral period before which they start to pay out (e.g. 90 days).

Some income protection policies only pay out for a year, not the rest of your life. Some of them also cover unemployment for non-medical reasons.

One consideration with income protection insurance is the definition of “work”. Some of them define work as “your current job”, some of them define it as “your current job or any similar”, and some of them as “any job”. This could make a difference if, as a programmer for example, you get bad RSI and can’t type. With some policies you could retire. With others you would have to become a gardener or something (which sounds quite appealing but that’s not the point).

(Note to self: must investigate whether there’s money in gardening if Macrobug doesn’t work out. Doubt it!)

Critical Illness Cover is, seemingly, similar, but it’s not related to your employability… it just pays out if you get certain illnesses. They’re on a defined list. I have been advised that I probably don’t need this, unlike Income Protection Insurance which I really ought to have.

The last one, Mortgage Payment Protection Insurance, pays your mortgate if you are unable to do so, for health or unemployment reasons. So there’s a bit of overlap with Income Protection Insurance but that’s OK. Like most people I organised MPPI when I got my mortgage, although not with my mortgate lender as that was a rip-off.

It’s taken until now to finally work through all these things and set them all up. I’m not even quite there yet with the Income Protection Insurance but it won’t be long.

Registering for VAT

Friday, October 13th, 2006

In the UK businesses with a turnover above £66,000 must register for VAT. However businesses with a lower turnover have a choice.

What does VAT registration mean?

It means that you have to charge your customers VAT, but you can also reclaim VAT on whatever purchases you make. It also means you have lots of quarterly paperwork to do. You pay the government the difference between the VAT you charge, versus the VAT you spend.

Sounds simple. I decided to register for VAT because, although there’s lots of extra paperwork, I would make a small saving in tax and it’s one more thing I wanted to learn about.

But last week I got this horrible nagging doubt that I’d all made a huge schoolboy error and I was going to end up paying lots more tax due to VAT. Really elementary stuff. I have reassured myself. Here’s how it works.

vat.png

Obviously, the real numbers will be bigger, but the saving probably still won’t be much more than the accountancy costs incurred to get VAT up and running, not to mention the time spent doing so. But there we go.

The reason for the temporary doubt is because I was told that I’d have to include VAT on my charges to my customers even if I weren’t VAT registered. I was told this by the customer in question! This, I believe, is incorrect. This is the page that finally reassured me. I had been right all along. HM Customs and Revenue pages aren’t too hot on explaining the pros and cons of VAT registration, possibly because they get less money if people like me register, although on the whole I’ve found HMRC to be quite diligent at collecting the correct amount of tax rather than collecting as much as they can. YMMV…

Anyway, I really hope I’m right and that I didn’t make the schoolboy error after all otherwise this post is going to make me look extremely silly.

PS I don’t want to be schoolboyist. I think I was probably less of a wally when I was a schoolboy.

Basic business finance

Sunday, October 8th, 2006

I’m finally on top of my accounting system, more or less. So I now feel sort-of-qualified to try to explain it all. This is probably mostly quite obvious, but I didn’t previously know about stuff like director’s loans. In decreasing order of obviousness:

  • The company gets income.
  • The company pays for outgoings.
  • Whatever’s left over is profit, and is taxed as corporation tax.
  • Stuff I personally pay for myself, on behalf of the company, I have to make an expense claim for. Then it’s just more standard outgoings from the company.
  • I raise an invoice against companies to whom I have supplied products or services.
  • Expenses which I’ve agreed I can reclaim from my the company I’m contracting to, I simply add to this invoice. Unfortunately most of them I’ve paid for personally, which means I have to record them in many places – my expense claim against Macrobug, Macrobug’s outgoings, Macrobug’s income, and Macrobug’s invoice against the contracting company. (The middle two stages are somewhat simple – it doesn’t have to be wholly itemised, but it does have to be split into categories).
  • I had to pay the company for my share.
  • Anything else I want to give to the company, I pay as a Director’s Loan. I can claim that back at a later stage, without any fuss.
  • If the company wants to pay me, and hopefully it will do, then I have a choice. Either I can pay myself a salary – taxed as normal with income tax, national insurance, etc. – or I can pay myself dividends out of the profits. These dividends are taxed at corporation tax rates, which is less than income tax/NI, so it’s obviously preferable to pay dividends. However it’s important to pay enough salary to maintain national insurance continuity. Furthermore, if the Inland Revenue suspect that you’re basically an employee of a company you’re contracting to, they can choose to tax you as if you were – thus taking a big lump of tax over and above the corporation tax. This is called IR35 and is a complicated area. For various reasons I believe I am outside IR35 so it shouldn’t happen to me, but you never really know until/unless the IR come knocking. (I personally reckon that even if they did decide my contract was an employee-like relationship, they’ll have lots of full-time contractors to investigate before they get around to part-timers like me).
  • Either I or my company can pay me a pension.
  • VAT adds a whole wad of fun on top of that. To be honest I’m still not 100% on top of it but I’ll probably post when I am!
  • I just prepare ‘day books’ of the company records, which my accountant will turn into proper accounts at the end of the year.

How to make decisions

Friday, October 6th, 2006

One thing that I knew I’d find tricky is knowing how fast to make decisions. Whether “simple” decisions like which accountant to use, or which bank to use. Or complex decisions like which product to develop, etc. I do tend to be quite anal in assessing these things in my normal life; for some decisions I have been known to make embarassing spreadsheets of the pros and cons of particular options.

Looking at the simple decisions, I knew I’d struggle if I took ages deciding everything – there are just too many things to decide on – bank, accountant, IFA, solicitor, whether to register for VAT, what sort of company, how many shares to issue, etc. etc.

I was right – it’s been tricky. On occasions I have got bogged down in decisions – the bank was a particular pain. I filled in application forms for Barclay’s, Co-op and Alliance & Leicester before deciding which one to use. Mostly, however, I’ve been able to remember that time is money. Contracting for X pounds per hour for part of the week does put a very definite value on your time – especially when you’re ekeing out every remaining hour to try to get your own business of the ground. So on the whole, I’ve made decisions much more quickly than I normally do.

Methods to make quick decisions:

  • Get professional advice. If your accountant suggests doing things a certain way, do it!
  • Use friends and family to get recommendations for advisors. This worked for my accountant and my lawyer.
  • Remember how much the procrastination is costing you.
  • Convince yourself that, in the long term, it doesn’t matter much. In the case of the bank account I think I may have overdone this self-delusion… but hey, at least the decision is made.
  • Avoid too much internet research. This tends to suck up time and doesn’t actually get very much information into your brain. If you’ve got a professional advisor you can phone, or a branch you can visit, you’ll probably learn more.

With the exception of the bank decision, I haven’t made a single spreadsheet to look at pros and cons – and even the bank one only had about five rows!

What about the more complex decisions, such as which product to develop? That remains to be seen. The only one I’ve had to deal with so far is whether or not to patent, as per my last post. I appear to have decided to do so.