Registering a Domain Name.
Before you can start a website, you need to come up with a domain name. The domain name is the name of your site on the web – the 'www.yourname.com' that people will type in their browsers and see at the top of every page of your website. Obviously, it's important to choose a good one.
Not Just Dot Com.
Many people don't realise, but the web has a lot more to offer than just .com addresses. .com is primarily intended for companies (the 'com' is short for 'commercial') – alternatives include .org (organisations) and .net (intended for Internet service providers). There are also kinds of domains that you can't get for yourself, including .edu (educational institutions) and .gov (government departments). In most cases, you should be looking at .com if you're a 'real' company selling physical products, .org if you're non-profit, and .net if you're web-only – but if you can get a good .com, it's often worth having just for the prestige and recognition factor.
There are some addresses that have been made available more recently, such as .name (for individuals) and .biz (for companies). They aren't yet well-recognised, though, and both seem like a bit of a joke – asking customers to go to yourname.biz to get to your business website just makes you sound dodgy, so you should avoid it for now. You should also look out for fake domains like .shop and .free, which are sold at some places but won't be accessible by most of the Internet.
On top of all that, each country gets its own code, and is free to divide it further how it sees fit. The United Kingdom, for example, owns .uk, and has divided it into .co.uk (companies), .org.uk (non-profit), and .me.uk (individuals), as well as a few non-public areas like .ac.uk (academic) and .gov.uk (government). If you want people to know where in the world you are, or you can't get the .com name you want, a country address is a good alternative.
Choosing a Name.
Domain names aren't at all expensive any more, but millions of them are already taken – it can feel very difficult to come up with one for your website. Here are some tips:
First of all, give up on any single word that can be found in a dictionary. There are people monitoring these domains constantly and buying them the moment they become available. It's also not really worth trying anything under four letters long, especially under .com, because you're deeply unlikely to find one.
The best thing to do is to come up with a series of three words or so that describes your website. You'll need to think around this problem. If you're registering a business website, you might want to include something in the domain to distinguish it from other businesses with the same name – the town where you're based, for example.
If you want to get ranked high in search engines, it's worth considering what your potential customers would be searching for when you're registering your domain name.
If you're trying to register your own name, then you might just be plain out of luck. Look at every kind of address you can think of. One common trick is to register a domain in a country where you don't actually live, and use the last two letters as part of the domain – Robert Smith, for example, might register robertsmi.th, even though .th belongs to Thailand.
Finding a Registrar.
Once you've made a list of domains you're happy with, the next step is finding a registrar: godaddy.com, namecheap.com and registerfly.com are some of the cheapest out there right now. Really, anything over $10 per domain is a rip off – shop around.
When you type your chosen domains into a registrar's search box, they will tell you whether or not each domain is available, and how much it would cost. Prepared to be surprised by some of the truly obscure names that are already taken, but don't give up.
Finally, when you're registering your domain, make sure to put in genuine contact details, as it can be taken away from you if you don't. You should also remember the username and password you use, as you will need them before you can point that domain to your website.