Make your own website – A step-by-step tutorial

Making a website is an exciting process. And with all the tools available today, it is no longer the thing reserved for geeks bent over their computers for fortnights at a stretch. I’ll show you how you can make a website from scratch (a personal website or a blog, a small business website or an e-commerce website) and whether or not you have any coding/programming knowledge or experience doesn’t matter at all. I’ve written this article with complete beginners and amateurs in mind, so if you happen to be an internet savvy person, you’ll find a few things to be trivial.

You can set up a website and get it running for less than a hundred dollars and it can take you lesser than a couple of hours to do it. Read this article fully once so you have a good idea about the entire process. Once you are through, you can start doing things one by one. I have broken things down into simple steps and listed options and pointed out some common pitfalls for the benefit of the beginner so you get it right the very first time. That should be enough for an introduction. Let’s get started.

Launching your website online involves 4 major steps.

  1. Registering a domain name
  2. Buying web hosting space
  3. Associating your domain name with your website content
  4. Creating content for your website

Let’s dive into each one and look at them a little more closely.

Step 1: Register a domain name

In simple terms, a domain name is the name of your website and often it looks something like www.somename.com. Popular examples would be www.youtube.com or www.yahoo.com. The name of the website (or the domain name) you are currently reading is www.umakeawebsite.com. Some imaginative examples might be Michael Smith wanting to get www.michaelsmith.com or Rita wanting to get www.ritasjewellery.com for her home based small business or Joe going for www.iphonethemes.com for his website that talks about iPhone themes and let’s people download them. So yep, you can basically get any name that you find connects to your website content in some way and something that is easy to remember.

Domain Availability

Sometimes, however, the name you want for your website might not be available because someone else might have booked the same domain name before you. In that case you might have to go for a different name. For example, if Rita above found that www.ritasjewellery.com was not available, she might find www.ritajewellery.com (note the missing ‘s’) or www.ritasjewelleryonline.com or www.ritasjewellerybiz.com to be available. You just have to be creative and you will find a name that you like.

Domain Privacy

When you register a domain name, you are required to provide accurate details regarding your name, email address, contact address and your phone number. The company that registers your domain name lists these details online so that anyone interested can view these details. Sometimes this becomes a problem because you as the domain holder might start receiving spam emails. To avoid this and other kind of problems, you can make use of a facility called ‘domain privacy’. For a fee (usually around $10 per domain per year), the domain registrar would ‘hide’ your details so that your contact details are not open to the public. While this isn’t a must-have, it is recommended for small businesses to go for this as this would make your domain name details secure and safe from vested interests.

Domain Name Cost

This depends on the company you get your domain name from and the extension (the part that your domain name ends with like a .com, .net, .org or something else) you are looking for. You can get a .com/.net/.org for anywhere from $8 to $35. A lot of other domain name extensions also fall in this price range.

Domain Registrars

There are thousands of domain registrars out there and not every one is equal. Some have been in the business for more than a decade while some are new with less than an year in existence. People have different views on this but I prefer going with ones that are there in the business for at least a few years and haven’t been known for any kind of malicious practices. I personally prefer Netfirms for domains. They charge $7.99 for .com and .net (for the first year) and throw in domain privacy for free. Check out some other domain name registrars, their prices and features.

Check out some of the other common questions first-timers have regarding domains in the domain name FAQ.

Step 2: Buy web hosting

Once you have a domain name, you will need some disk space on a computer server (that is capable of serving web pages to visitors) to keep your website content and all your website related files in it. Web hosting companies provide this space to you for a fee. They keep their servers connected to the internet 24×7, thereby making your website accessible to anyone who can get on the internet and protect your websites from hackers and malicious attacks by protecting their servers with anti-virus and security software (like firewalls) so you can concentrate on your website. A lot of web hosts also provide you with software like installation scripts and website builders that make it easy for you to build and maintain your website.

Linux and Windows Hosting

A lot of web hosting companies offer both Linux-based as well as Windows-based hosting (they are both operating systems in case you didn’t know, with the former one being more common in hosting servers). Before we go into what is each, let me tell you that there is a 99% chance that what you require is probably just Linux hosting so if you don’t understand the next few sentences just assume that you’ll be fine with Linux hosting. Windows hosting is usually only required by websites that are created using Windows-based environments or programming languages (such as ASP .net) or make use of Windows software (such as MS SQL Server). On the other hand if you have website that use PHP, Perl or MySQL (the first two are Linux based programming languages while MySQL is a database software that primarily runs on Linux). Are you still with me? If yes, great! Let’s put that behind us and move ahead. It’s settled, Linux hosting it is!

The Sign Up Process

When you sign up for web hosting, you will be asked for a domain name. Since you would already have one from the previous step, you can provide that while creating your hosting account. As soon as you sign up you’ll be sent a welcome email containing web addresses for what are known as ‘nameservers’. These might look something like ‘ns1.hostname.com’ and ‘ns2.hostname.com’. We will require these web addresses in the next step, so be sure to keep the email safe. Don’t delete it and we’ll come back to that very soon.

The welcome email would also contain the username and password to your account’s ‘control panel’. A control panel is an administrative interface from which you can manage or monitor all aspects of your hosting account. For example, you can see how much disk space you are using and how much bandwidth has been used by your website during the current month. You will also be able to install software like blog frameworks, forum-creation tools, photo album software and much more from the control panel by just a few clicks. These tools make it very easy to create professional looking websites even for beginners and we will be using them while creating your website content.

Web Hosting Cost

Web hosting usually involves a lot of features and each host can provide you with a different mix of features (more of some feature, less of some, or might not provide a particular feature at all). Their costs vary greatly but you can expect very good hosting services with just about every feature you require (and usually much much more) for around $10-$15 per month. The cost usually works out lesser if you pay for longer durations (like an year) in advance.

Choosing a Web Host

Choosing a good host can be confusing, especially if you are new to websites and hosting. It’s a common trait to get tempted by ‘cheap prices’ that are bundled with a ton of other goodies. However this is the exact bait many hosting companies use to attract unsuspecting first-timers. It is not uncommon for customers to experience frustrations with these kind of hosts due to lack of good or prompt customer service and poor quality of hosting due to bad server infrastructure. Many of these companies only care to look good till you sign up with them. The really good hosts are few and far between. In my opinion, Hostgator is a very good hosting company. It’s reliable, beginner-friendly and provides good services and its prices are reasonable. You might also want to check out a few other reliable hosting companies that I know of.

Step 3: Make your domain name point to your website

What does this mean?

Imagine an apartment complex in which every apartment has a unique name (“Dave’s Haven”, “Alice’s Abode”, “Amazon” and so on). And every apartment owner has to choose a name for his apartment and “register” it with the apartment reception desk so that no one else takes the same name. In this scenario, registering your apartment name can be compared to registering a domain name. Getting web hosting would be equivalent to buying an apartment (where you can keep your things). Pointing your domain name, then, would be analogous to attaching a name board in front of your apartment so that people who come looking for “Dave’s Haven” can actually find the apartment. The interiors of the apartment itself would be the website content. Does it makes sense now? I hope it does. Of course, there are a lot more complexities in the internet world, but we aren’t taking a course on the working of the internet, so we’ll skip that for now.

So this step is about how you can associate the domain name you bought with the website you are going to build. In other words, when people type your website address in their browsers, they should be able to see your website and this step achieves that.

The How-To

When you register a domain name, you would have created an account with the domain registrar. Login to your domain name account (not your web hosting account). There will be some place inside your account where you can ‘manage your domains’. Look for variations of ‘Your Domains’ or ‘Domain Manager’ (different domain registrars label it differently). If you have registered more than one domain, then you might have to choose the domain name which you are trying to set up a website for. Under that domain, try to find a tab or a link which says something like ‘DNS Servers’ or ‘Nameservers’ or ‘Nameserver Records’. This is the one that you have to set a new value for. If it is already set to something else, (like, if you registered with Netfirms, then this might be something like ns1.netfirms.com and ns2.netifrms.com) then you will have to “modify” (or “edit”) this value to the one that you got in the welcome email when you signed up for your web hosting package.

Once you have done this, just make sure you have saved the changes and you can logout. You will have to wait for sometime before you can see your webpage when you type in your domain name in the browser address bar. Domain registrars quote a maximum of 72 hours (that’s 3 days) but usually it would just take a couple of hours for it to take effect.

Wait for a few hours and then type in your domain name in your browser. If you see some kind of a welcome page bearing your web hosting company’s name or a blank page, you are set! Its now time to get down to creating your website content. Congratulate yourself for having handled everything so gracefully till now. We will get down to the most exciting part of making your website, and that is actually making it!

Step 4: Create your website content

Once we have all the setting up done, its time to start creating the content for your website. In other words, what would users see when they land up at your site? There are various ways to do this. Each will require a different amount of effort and time. In my opinion using a content management system like WordPress is the best way because it allows you to make a truly professional looking website without you having to know much about web design or programming (and I’ll teach you the very little that it requires). There are other options as well and we will cover them one by one.

Using a CMS

CMS stands for Content Management Systems and it means exactly what it conveys through its name. It is a system that manages your content – your web page headings, titles, text, photos and just about everything. There are content management systems for most things you can imagine: blogs, forums, photo galleries, wikis, social networking websites, polls and surveys, e-commerce websites and a whole lot more.

Briefly, this is how it works:

  • You install the chosen CMS (based on what you want: a blog? a forum?) on your web hosting account (don’t worry about this, most web hosts will provide you will ‘scripts’ that will help you install some of the most popular CMS’s with just a few clicks) for your domain name.
  • You fill in the settings for the CMS. Things like your website name, the background image for your website, will visitors be allowed to comment, and such other things to get your website started.
  • You install a theme / template / style (all mean the same). Each CMS would come with a default theme/look and you can change it if you don’t like it.
  • Start entering your content (your blog posts for example), uploading your photos and ‘publish’ them by clicking a button and your website would be instantly updated for everyone to see.

Why is this the best option?

  • A ton of these CMS’s are free (yes, absolutely free). And the best of these CMS’s are no lesser than any paid option that you’d find. The latest version of WordPress (3), a popular free blogging CMS, has been downloaded more than 14 million times. Imagine the number of websites running on it.
  • They create very powerful and robust websites and produce very clean code for your websites. Even though you wouldn’t have to directly deal with coding/programming while using a CMS, the fact that your website has a clean code that follows industry standards is a good thing for your website.
  • New features for your website can be incorporated by means of what are called as ‘plugins’ (or ‘plug-ins’). For example, if you want to create a poll on your blog website (running on a CMS called WordPress), you can find a free plug-in that does exactly that. You don’t have to code it yourself. There are tons of such features that you can include into your website with just a few clicks.
  • Your website can have a very professional look. There are lots of free themes that look awesome and give a stunning look to your website. If you want to go for something more unique, then you can readily find web designers who can create a new look for your website for a fee. Or you can go for a paid theme if you don’t mind spending to look unique.
  • All your content is portable. You can create a backup (a duplicate copy of the files that are with your web host) on your computer from the web hosting ‘control panel’ and you can move over to a new host any time and still retain your old website and continue building it with new content, blog posts, photos…

In short you can create a website that looks professional, is robust, powerful and portable, has lots of features and can potentially be made without spending anything other than for your domain name and web hosting account.

There are a lot of CMS’s around. WordPress is the most popular CMS for blogs (and with their latest version 3, you can different types of websites with ease).

Online Website Builder

A lot of web hosting plans come with a free site builder software that you can use from within your hosting account. Usually there are also a number of templates (an overall look of your website) provided with these site builders. You can choose one that you like and start customizing it like uploading your own website logo, creating the various pages, writing your text and uploading your graphics or photos on the pages. Since this option is mainly geared towards beginners or people who want a quick website, it doesn’t require any programming knowledge. Different hosting providers provide different site building software. Similarly they might provide a dozen templates or a couple thousand templates. Having more templates gives you a higher chance of finding one that might be to your liking.

These are usually great for small sites that are a couple dozen pages or less, static websites (that is, those websites that remain fairly unchanging over time). The advantage is you can create a good looking website fairly quickly and without bothering about any of the other options. The disadvantage is they are not portable; meaning if you want to move over to a different web host at a later point in time, you can’t just “carry your website over” to the new host. You might have to create your website from scratch at the new host and that’s why this option is not very great for large websites.

Desktop Website Builder

There is quite a good chance that you have heard of Adobe Dreamweaver or Microsoft Frontpage (or Expression Web). Well, if you haven’t, it sure isn’t the end of the earth but both are quite popular software that you can install on your computer for creating a website. There are a lot of them on the market and there are both free as well as commercial ones out there (although as of now, I haven’t seen any free tool to give you the kind of features you can expect from commercial ones). They come with templates too so you choose a starting design for your website. Usually you would have more flexibility with respect to the kind of changes that you can make to your website with these than with online site builders. You don’t have to know programming with these as well (though it would definitely help you to fine tune things). Once you are done with creating all the pages, you can transfer the files (the web pages and all the other files like photos, file attachments) from your computer to the web hosting account by means of a software called an FTP client.

The disadvantage with these site builders is that usually the best such site creation software will have a hefty price tag attached to them. Dreamweaver is free to try but it costs $399 if you want to buy the license. Expression Web license costs $299. Amongst the free builders (yes there are free ones as well!), HTML Kit is a popular free site builder but doesn’t have the sophisticated features of either of the previous ones. The advantage with these builders when compared to their online counterparts that we saw above is that even after you upload your files to your web hosting account, you’d still have them on your computer. If at any time you want to move to a different host, then you simply sign up with a new host and upload your files again and would have none of the rework to do as you’d have to with the online site builders.

Programming/Coding

This, purists would say, is the best option. It sure would be. For a beginner it would take months to be able to create dynamic and professional looking websites like the ones that can be created using a CMS. Plus, usually learning programming would probably be the only way if you were to build a website that couldn’t be built using any of the previous options. But majority of the websites you’d see definitely won’t fall in this category.

If you want to learn to code your website, then you should probably start with HTML and CSS. Javascript would probably be a good option once you are done with those.