Still Alive

Monday, October 8th, 2007

Yes, I am still alive!

The last few months have been difficult for me, and there have been a bunch of changes, so I haven’t made time to blog. (Note, you always have time, you just don’t make time!).

I am going to try to correct that and start blogging at least once a week again, although due to my change in circumstances the content of the blog posts may drift from games occasionally, although the direction they will drift will probably cover agile management, project management and coding, so  they should still stay interesting.

So what is the big change then?  Well, due to a severe lack of funds, and the increase in living costs incurred from moving into a nice house instead of the bedroom that we were living in, I had to start searching for a job.  And I found one, a good one, working for this little provincial newspaper called The Guardian, you may have heard of it.  I am working with the web development team building the software and website for the new look guardian website.

It’s an exciting opportunity, because although it’s totally unrelated to the games industry, it is related to my second love, which is agile software development.  I’m getting a chance to work in a fully XP environment, pair programming, unit testing and so forth.

In the meantime, my business carries on, the web hosting business is making enough money to tide itself over, and although because of the stress of starting a new job has given me a pause in working on the game I am continuing to work on the game in the background.
Anyway, a blog post on accepting and learning from failure will be coming next…

The importance of names

Friday, December 8th, 2006

What company name should I use?

Thats a question that has been raised on indiegamer forums a couple of times, and that I’m in discussion with my designer about as well.
Why should I be in discussion about it I hear you say, well we’re looking at offering other commercial services, so that we can fund our crack habitgames company.

But what is in a name? I registered MIB Solutions Ltd as a business name when I started the company. Unfortunately I didn’t really do enough research, there is already a mibsolutions.com, but I did get the mib-solutions.co.uk domain name. I was content with that, and given that we got the mibgames.co.uk name as well, I thought that would do fine.
Except the name that you want to use varies depending on the work you want to do and the customer you want to attract.
MIB Games is kind of fun and gamey. People ask us about the Men In Black film, (which MIB is not related to), and we have a little logo guy, Mib (pronounced Meh-ii-beh), who is very cute.
For games we thinkt aht logo and name is fine.
MIB Solutions Ltd is great for the overall business name, it says generic, bland boring, but official. If I wanted to advertise my programming skills on the indiegamer forum as a programmer for hire, MIB Solutions Ltd the name would work well for that.

But we want o create a web design portion to our business. MIB Solutions is too boring, too bland, and for a company that is focusing on intelligently communicating the clients branding, is too dangerously easy to mixup with the film.

So we’re brainstorming a new name.
We’ve noticed that design firms, especially those that are doing the web2.0 thing, are basically two unrelated words being pushed together, like 37signals, or 101ltd, or myspace, or youtube.
This lets me cover the imortance of naming.
These rules are important for naming your company, and naming your products.

Number 1: Think of the audience.
Who is going to hear this name, and what will it mean to them? MIB Games, hopefully sounds like a games development company, as does puppygames or any other indie gamer hopefully.
However, would you buy web design services from a company called MIB Games?
This applies to products of course, if your game is casual, match 3 game, then marble match, or something is a great name.
But being that your target audience is at least 50% female, and quite possibly in the 35 to 75 age range, calling it Ultra Death Explosion Gore, is probably a bad idea.

Number 2: It must be memorable
37signals is a name that tends to stick in your mind, if only because it’s unusual.
At the same time, Bobs Garage, down the road, sticks in your mind for other reasons. When you want a mechanic, you want a freindly service. The guy who owns it is probably not called Bob, but it serves a marketting purpose, staying memorable for the audience it is aimed at.
MIB Games is fairly easy to remember for a games company name, and so are some of the more successfull indies.

Number 3: It should be meaningful
I put this last, because of course, the previous two trump it.
MIB Games is meaningful to me in a jokey way, but actually the MIB doesn’t mean anything anymore. I dearsay Puppygames has a story behind it, but lets face it, puppies are cute, games are fun, cute fun, and memorable.
For Product names this tends to be more appropriate, I remember an interview with Amanda Fitch, the creator of Aveyond, where she said that she should have called it something like Aveyond: The Quest or something to make the name more meaningful (I cant find the link right now though). the later games have a more meaningful name you’ll notice Ahrimans Prophecy and Grims Hatchery

So I can hear those of you who have started up a company or are going to start up a company asking, “how can I get this right before I start trading?”.
Well the good news is you don’t have to get it right first time. Although in the UK there are laws that restrict what name you can trade under, it is perfectly legal, and quite normal, for a single company to trade under multiple names. So you might have three arms of your business, and trade under three differant names.
It does get a little more complicated when it comes to bank accounts. Essentially, payments must be made payable to your bank account. For us that’s MIB Solutions. But if we had a cool web design name like 37signals, or 101ltd, and then when we bill people it says to make cheques payable to MIB solutions ltd, well I dont think it says anything good about us.
However, there are at least two ways round this.
1. Setup a seperate bank account for each portion of the business.
this has the drawback of requiring a bit more admin overhead, and you will have to pay the bank fees for each account.
2. Most banks will also offer a trading as name. Use it
Yeh I found this out today, when I called the bank about this.
If you have a generic name and trade under a second name as well, you can have your bank account to have a second trading as name. It’s not very complicated to do, seems to be free with my bank, and gives you the ability to accept cheques or bank transfers to the trading name or the original name.
Downside is that Natwest will definatly only let you have one, and I imagine that other banks are the same.

Company Setup - Part 2: The Tax Office

Friday, October 6th, 2006

Before I talk about this, I should say, I am not a business advisor, tax advisor or accountant. Get everything checked with a friendly accountant before you register yourself. The tax office new businesses line is very helpful with advice for stuff like this.

Register with the tax office.

Now this bit is complicated because you are filling two roles here, you are both an employer and an employee.
Note: You are not self employed as the director of a company.
You need to register with Her Majestys Revenue and Customs (www.hmrc.gov.uk, I phoned them up, done in 5 minutes) as a new employer. They will send you out a new employers pack with all the paperwork you need.
You need to keep a number of documents, but the easiest system for game developers is probably to do this.
1. Agree to pay yourself per month
2. Get your P45 if you are working fulltime for yourself, otherwise contact tax office, you’ll need a tax code and most recent payslip).
3. enter details onto the P11 either by hand on the actual P11, or onto their computer system.
4. Each month if you have earned any money, you total up all the money you’ve earned, and pay the tax office the tax that needs to be paid.
If you haven’t earnt anything, you need to phone the tax office and tell them that you are paying nill tax this month. You can also send them a filled in payment form with a big fat zero in it.

Tax Back

Yup, my first three months, i ahve paid myself nothing, zippo, squat. And because I was paying tax at my previous job, the P11 calculator that the Tax Office gives you, let me know that I was owed tax back. I phoned up the Tax office, and they explained that in normal circumstances, the company would deduct the amount to pay back from it’s total monthly tax contributions from all employees, and would therefor pay less to the tax office than it deducted from peoples salery, and could pay me with that money.

But of course, I’m the sole employee, so what is supposed to happen is that the company pays the tax back, and claims relief from corporate tax at tax year end. But again, I don’t have the money to pay myself, so I wrote to the tax office and they sent me a cheque for the tax back to teh company, so the company can pay me the tax back. Very nice.

Paying yourself.
The easiest way I can see works like this.

  • Work out how much you would like to actually take home.
  • Add approximately 1/3 more, maybe a little more.
  • Calculate the tax, NI contributions, pension, student loan and other deductions. They normally come to about a 1/3 of the monthly pay.
  • If you aren’t taking as much home as you want, increase the amount your being paid, and recalculate the tax until your happy.
  • As the company you now need to transfer the relevant money to all the correct places. Tax and NI go to the tax office as one payment I believe (I’m not paying myself anything yet).
  • Student loans must be sent to student loans company. They’ll send you letters explaining it all when you tell the tax office that your now emloyed by your company.
  • Pension contributions should be sent by direct debit normally to the pension company. They can help you set that up if you actually want a pension.
  • The rest must b e transfered to your own account.

You must remember to give yourself a payslip. I’ts the law. the payslip must contain a number of legal bits of information. The pack you get from the tax office details them all, but basically, you must detail the employees name, NI number, gross pay, all deductions and payments, and the Tax paid this month, Total tax paid this year, and net payment.

It does not have to be written on any kind of special paper, or anyhting like that, it can be printed out on company headed paper, and given to you. File it, and keep it, because you may well need it when doing a tax return.

The rest of this series is Part 3: Accounting and The Books, and Part 4: The Tax Return. They come later on this year.

Bugs for your buck?

Monday, September 11th, 2006

I’ve just subscribed to Game Developer Magazine (www.gdmag.com) and read with interest in the September issue the article entitled Dashboard Confessional.

To sum up briefly, Midway Games outsourced their testing to a bunch of external contractors, but forgot to put in business measurements to know how well the teams were doing. The correction they took was to build a dashboard application that would analyse the numbers and tell them how each team was doing.

The thing that hit me was the numbers they were focusing on. Eseentially a team was doing well if it found a large number of bugs, there forefore had a higher “Bug for your Buck”.

I think this thinking is backwards. And it’s very common thinking, not just in the Games industry, but in the general software industry as well.

I’m interested in Agile Development, and Test driven programming, and so I believe that a test team that finds no bugs is doing just as well as a test team that finds 100 bugs, if and only if, there aren’t any bugs to find for the first team.

The games and software that we write should not have any bugs! Why should there be bugs? Bugs is an indication that the programming team have not done their job properly. Wehn you go out to dinner, and order a rare sirloin steak with potatoes and cracked pepper sauce. You expect that the kitchen will make you what you ordered. You don’t get lamb steak, with parsnips and cheese sauce because they look similar, or the cooks did their best effort.

When we write a game, we should be writing it so that there aren’t any bugs.

The best way of doing this that I know (and possibly the only way) is to write and have a comprehensive test suite. Write the tests before you program, and ensure that your tests cover every part of your code.

Testing is not the last thing you do in the devleopment lifecycle, it’s the first programming activity. Testers should be involved in design, architecture and the whole development process.

For me, the ideal Bugs for your Buck ratio would be 0. the testers worked for 4 weeks and found no bugs. Great now I can sell my software!

Managing a business?

Wednesday, August 23rd, 2006

I’ve noticed some vitriol in certain areas about people who share business thoughts and suggestions when it comes to games development.

I’ve also noticed that on the indie game developer forums, a large proportion of the questions are technical. What C compiler to use, OpenGL vs DirectX, what version of DirectX and so forth.

If you are in this business because you gave up your job, or a significant portion of your time to do this, and you have gone through the setup needed to register your business with your government, then you have to remember that you are running a business.

To many people seem to feel that becoming an indie developer means that they will get to program all of the cool stuff that they want to do, they can choose what to do when they want to do it.

When you are responsible for managing a business, you should be a good steward of that business. That means reading articles about business. That means not necessarily doing the game that sounds hte most technically fun, but looking at what your customers want.

If you want to focus on business, read sites that are about business. GameProducer.NET, Seth Godins blog, any other business sites you can read. You’re not just programming your game, you will be producing it, marketing it, selling it, and managing the development of it.