How to Build a Website

When I launched my first website in 1995, it was not a simple process. Nearly everything had to be built manually. It’s amazing how much things have changed in 21 years! Now the hardest part of building a website is choosing from the massive number of options available, including content management systems, hosting providers, and website themes.

Recently, I decided to have another look at what I’m using for my Linux Survival website to see if there are better options available. Now I’ll share what I learned with you.  

Website Builders
The first big decision is which website builder (also known as Content Management System or CMS) to use. In the old days, you had to hand code all of your pages in HTML. Now you can build an entire website without ever having to even look at the HTML code, as long as you don’t need to do anything too unusual.

There are two main types of website builders: open source and proprietary. If you use an open source CMS, such as WordPress, then you can build your site with one hosting provider and move it to another one in the future. If you use a proprietary one, especially if it is owned by the hosting provider, such as Wix, then you are at the mercy of the provider and it may even be difficult to move your site to another provider later. That’s why I recommend using an open source CMS.

There are many open source website builders to choose from, but one easy way to decide is to look at how much market share each one has. I have to admit that I was shocked when I looked at the numbers. I figured WordPress was likely the market leader, but I didn’t think they had more market share than all other open source and proprietary CMSs combined!


There are many advantages to using the market leading platform:
  • You can be sure that it will be around for a long time.
  • It will have the most plugins and themes, which will make it easier to customize your site.
  • There will be lots of documentation and community support.

However, there have certainly been examples of a market leading product not being the best product, so is WordPress actually the best? A couple of years ago, I decided to move Linux Survival from an older CMS to a modern one. I considered the three most popular open source CMSs: WordPress, Joomla, and Drupal. I had already tried Drupal previously and had found it too cumbersome to use, so I didn’t want to try it again. I decided to give Joomla a try first. It didn’t take long before I gave up attempting to use it due to frustrating technical issues. I ended up rebuilding Linux Survival using WordPress, and it has served me well.

Hosting Providers
I have used SiteGround to host Linux Survival since 2007. It was so long ago that I don’t even remember why I chose it. As the popularity of Linux Survival grew, it recently started to hit the limits of my hosting plan and I had to upgrade. This motivated me to look at other hosting providers to see if there was a better option.

First, I checked the prices of the most popular providers, which was more difficult than I thought because they all have multiple plans and many of them charge different rates for different term lengths. Many of them also have a discounted introductory rate that is much lower than what you will pay when you renew. The graph below compares their monthly introductory and renewal prices for a 1-year plan.

Web hosting prices

If you look up these prices yourself, you may notice some differences, but that’s likely because of a trick that many providers use. For example, if you go to HostGator’s website, then it will say $3.95 per month, which is two dollars lower than what is shown in the graph above. However, if you click through and start the signup process, then you will notice that this price is for a 36-month plan. That’s great if you’re comfortable with paying for 3 years up front, but otherwise you’ll have to change the term length and pay a higher monthly price.

I definitely didn’t want to try all of these providers, so I narrowed down my list. First, as you can see in the graph, GoDaddy, Bluehost, and HostGator all have pricing fairly close to SiteGround, with a $5 – $6 introductory rate and an $8 – $9 renewal rate. They are also among the most popular and well-known providers. Next, I looked at the hosting page on, which recommends Bluehost, DreamHost, Flywheel, and SiteGround. Bluehost seemed like the logical one to try, since they have good pricing and I have been hearing so much about them lately.

My first challenge was how to run an “apples to apples” test between SiteGround and Bluehost. The two providers offered similar features, high uptime (more than 99.9%), and good technical support, so my main concern was performance. I wanted to see how quickly they served web pages when people came to the site. Ideally, I wanted to compare how each of them performed when running my Linux Survival website, but it would have been too risky to move my site to Bluehost just for a test.

Fortunately, I had another domain name called that I wasn’t using, so I decided to move it to Bluehost and replicate the Linux Survival site there. Even better, I could run tests against both websites at the same time, which would make it a fair comparison.

There is an incredibly helpful free tool called WebPageTest that will test a website’s performance. It has locations around the world from which you can hit your website. You can also put in multiple websites and it will run tests against all of them at the same time. I tried it with (SiteGround) and (Bluehost). The following graph shows how long it took to display the home page on each site.


You’ll notice that the SiteGround page finished displaying before the Bluehost page even started. The SiteGround page finished at 2.4 seconds and the Bluehost page finished at 4.6 seconds. I thought maybe this was just a fluke, so I ran tests on different days and from different locations, but Bluehost always took at least twice as long to display a page as SiteGround. Considering that the #1 reason a person will abandon a website is slow response time, it would obviously be foolish to move my website to Bluehost.
WordPress Installation
If you sign up for one of SiteGround’s WordPress hosting plans (which cost the same as their regular plans), then it will take you to a Website Startup Wizard the first time you log into the Customer Area. The wizard is very simple. First it asks you for the email address, username, and password you want to use to administer WordPress.


Then it asks which theme you want to use. Don’t worry about picking the perfect theme right now. Just pick any of them because I’ll show you how to change it in the next section below. Once you’ve chosen your theme, the installation is complete and the wizard tells you how to log into WordPress.
Website Themes
Now it’s time to decide on the look and feel of your website. Fortunately, there are a multitude of free WordPress themes for a wide variety of website designs. Log into WordPress, then click on Appearance in the left-hand menu, and select Themes from the cascading menu. Now click the Add New button at the top of the page. You will see a page similar to the following.


The page will show 15 themes, which doesn’t seem like very many, but that’s because it’s only showing the Featured Themes. If you click on either Popular or Latest at the top of the page, it will give you thousands to choose from. You can either browse through them or search for something specific using the Search field in the upper right corner.

At first, it may seem overwhelming trying to choose the right theme, but don’t worry. You can choose one, start adding content to your site, and then switch to another theme later without losing any of your work. To select a theme, just put your mouse over the theme and then click on the Install button that appears. It should only take a few seconds to install the theme. Then click the Activate link. Now click the Customize button and it will take you to a screen where you can add things like the Site Title and menus.

That’s it. You’ve created your own website!

If you need more help with WordPress, try this WordPress Tutorial. You can also get context-sensitive help by clicking on the Help button in the top corner of every page in WordPress.
Would you like to know when there is new content on Linux Survival? Subscribe to the mailing list.
What other topics would you like to learn more about? Let me know at .