How to Create a Blog: Getting started
One of the biggest barriers that many developers have with creating a presence on the web is getting started. I’m going to try to make getting started as easy as possible, but not gloss over some of the important details that could hurt you later on when you grow.
In life, I have learned there is always a balance that needs to be achieved between doing things the best way and doing things in a way that is easy enough that you will actually do them.
So, I am going to present you with a few options for how you can get started with creating a blog and you can choose which path to follow based on what fits for you.
Blogging software
The first thing we should talk about is blogging software. What kind of software should you use for your blog?
There are quite a few options out there, including writing your own custom made blog, but I think the best option for most developers is to use WordPress.
I don’t say this lightly, and I realize that in the developer community WordPress might not seem like the best option, but let’s dissect this a little bit.
When you are creating a blog, most of the time your goal is not to show how good you are at creating a blog or using blogging software, but instead your goal is to get your message out, control your image, and build a home base for yourself on the web.
In business, we’d say that your blog software is not your core competency, instead the content you put on your blog is your core competency.
Many developers are tempted to start out by creating their own blog or use a less popular blogging software solution, and they end up wasting a huge amount of time messing with or creating software instead of blogging.
I choose WordPress, because it is the most popular and widely used blogging software, which means it is well supported, has tons of plugins and just works.
You can literally get a new WordPress install up in minutes, even from a bare server, and you can find plugins for just about anything you can think of.
Sure, I come from a .NET and C# background, and WordPress is PHP, but I can’t deny how easy it is to use and customize WordPress.
You can, of course, use another popular piece of software or write your own blog from scratch, but if you want to get up and running quickly, I’d recommend you just use WordPress for now and you can switch later if you want to, once you have a better idea of what you are doing.
Buying your lot
Your first goal should really be to create something that belongs to you and only you.
If you spend a large amount of time producing content for a blog and someone else is ultimately in control of that content, you are putting quite a bit at risk.
Just like you wouldn’t build your house on someone else’s lot of land, you shouldn’t build your blog on someone else’s domain.
So, the first thing you want to do is buy your lot. You are going to need your own domain that is owned by you.
Several free blogging platforms will gladly host your blog for you and give you an address within their domain. Even though this is free and the cheapest way to get started, you need to look a little bit deeper into the future and realize it is worth the $1.99 or whatever it costs to buy a domain for a year.
Whatever you do, don’t botch this one up, because you will regret it. Everything else can be changed later on, but moving domains and trying to keep your search rankings and all your content in place, is a pain that you don’t want to have.
You can register a domain pretty cheaply by using a service like GoDaddy. I usually use GoDaddy for initially registering my domains, even through I may move the registration later.
Choosing a hosting method
As long as you have your own domain, the choice here won’t be as important when you are first starting out, but it is still good to consider your options.
There are three main options to choose from for hosting your new blog.
Completely Free Hosting
This option is the cheapest and will allow you to get a blog up without having to do much management of any software or any operating systems, but it has the drawback of giving you the least amount of control over your blog.
I started out my blog with this option using WordPress.com, but you can also use a fee service like Blogger, from Google, or one of the other free blog hosting companies.
I originally started out with this option, because I didn’t want to make a big investment in something that I didn’t know if I would stick with. But, I later came to regret that decision, because of the lack of control over my blog.
With this option, you basically just register a new blog and can start posting immediately. The hosting company gives you access just to create and edit posts and a few management functions, but you don’t have access to more advanced options that you would get with your own install of WordPress or other blogging software.
This might not seem like a big deal, but if you eventually want to put ads on your site, sell something, or customize your theme, you may quickly regret this decision.
If you do go with this option though, make sure you pay the optional fee most of these services offer to allow you to use your own custom domain for your blog. Don’t make the mistake of skipping this. You do NOT want to change your domain later—trust me.
Shared Hosting
With this option, you are usually using some space on a web server that is shared with other blogs or websites, but you are in control of a large portion of that space.
Shared hosting companies usually will have some options to preinstall or automatically install WordPress or another blogging platform for you and give you access to that blogging software as if it were installed on your own machine.
You usually access your “server” through the use of a control panel application that gives you options to add and remove certain software applications, access your database and files directly, and do other administrative tasks that you can’t do with a free hosting platform.
Once I got off of free hosting on WordPress.com, because I wanted to be able to fully control my theme and add plugins to my blog, (something you can’t do with free hosting,) I switched to Bluehost.com, one of the most popular shared hosting platforms for WordPress. I was able to get everything migrated from WordPress.com to my WordPress install on Bluehost pretty easily, and my readers never even realized it.
This is actually the option I’d recommend for someone starting out, but I’ll get to why a little later on.
The big thing with shared hosting is that it gives you almost full control over your blog. The only thing you don’t have control over is the web server that is being used to handle the web requests and the actual OS your blog software is running on. This means that you can install plugins, add custom themes, add your own HTML code and JavaScript, or pretty much anything else you want to your blog.
The other thing about this option is that it is pretty cheap as well. The prices can vary based on features, but you can expect to pay around $6 – $10 a month for a fully hosted setup when starting out. (In my opinion well worth it compared to the free hosting.)
I ended up moving off of shared hosting pretty quickly, because by the time I had moved from free hosting to shared hosting, my blog was a little too big already. I ended up having a little more traffic than the shared hosting could easily handle and I wanted to experiment with the 3rd option, which I’ll tell you about next.
I could have stayed on shared hosting, but my blog was getting frequent enough spikes from articles becoming popular on Hacker News that I decided to try and optimize things myself.
Virtual Private Server or VPS
This brings us to the 3rd category of hosting options, VPS or virtual private server hosting.
VPS hosting is pretty close to what it sounds like. A VPS is basically a virtualized private server in the cloud. Most VPS hosting solutions will give you the ability to create your own virtual server running Linux and configure it how you wish. You are basically given the keys to the car and you are on your way.
This of course can be a bit intimidating for starting out, but if you know what you are doing, or you are willing to learn (sometimes the hard way), this can be the most cost effective and efficient option to choose. But, you can definitely get yourself into trouble—I know I have.
With great power comes great responsibility!
This blog is currently hosted through a VPS provider called DigitalOcean, but there are several other VPS solutions out there as well. I found DigitalOcean to be the best priced option and it also seemed to have a very simple to use interface to create new virtual servers. I actually run several VPS’s for my different blogs and sites through DigitalOcean and I only pay for what I use, since DigitalOcean bills by the hour based on what kind of hardware configuration you are using for your server.
So, like I said, the big benefit of a VPS is that you have ultimate control of pretty much everything. You are just given a Linux server and the root password and you are on your own.
But, this can also be the big disadvantage with a VPS. You have to know or learn enough about Linux and installing your blogging software to be able to get up and running, and you’ve got to be able to troubleshoot your own problems.
For me, it is worth it because I get quite a bit of traffic to this blog, so my optimizations really make a difference, but for someone just starting out, I really wouldn’t recommend a VPS until you feel you’ve outgrown shared hosting.
My recommendation: shared hosting
If you are just starting out with your blog, I’d really recommend going with shared hosting with a company like Bluehost.
Going with free hosting is nice, really easy, and you can’t beat the price, but it comes at a cost of not really having control over your blog. I felt this pain pretty quickly with my blog, but I didn’t have enough knowledge to know what to do about it and to know what my other options were.
Free hosting really restricts what you can do and diminishes a large amount of the value of using something like WordPress for your blog. WordPress has a huge number of free plugins available that allow you to add many different features to your blog and really customize the appearance of it, as well as integrate with other software systems. For example, I use a WordPress plugin with my Get Up and CODE podcast to automatically publish my podcasts to iTunes when I publish a blog post of a new podcast episode.
Free hosting also tends to hide you from what is really going on with your blog. When I first moved from WordPress.com to shared hosting with a real WordPress install, I was a bit overwhelmed, because I had to try and figure out how to add the same functionality I had with my free hosting on my new shared hosting install. I had really wished at that time that I had just started out with shared hosting.
The other thing to consider is that you’ll probably eventually want to move off of free hosting when your blog grows, especially if you want to monetize it somehow, and even though migration is possible, it isn’t the easiest thing and it is a bit nerve wracking. I was very concerned that something would go wrong in transferring my blog over to shared hosting—that was not a very fun time in my life.
On the other end of the spectrum, is the VPS, which really is not something I’d recommend for starting out, because you won’t see any real benefit when your blog is small, but you’ll inherit quite a bit of headache. I’d still rather see you use a VPS than free hosting, but if you do go with a VPS, just know what you are getting into.
So, all things considered, my recommendation for starting out is definitely shared hosting. You get the benefit of a very low price to get started, good support, and the power to do what you want with your blog.
Bluehost is the shared hosting provider I’d recommend, simply because the price is really reasonable, the customer service was excellent, and I felt like the setup was extremely easy. I was able to sign up for an account and click a single button to install WordPress. (It appears that Bluehost actually has a VPS offering now as well, but I haven’t tried it yet.)
More details
Hopefully this two part series has helped you realize why having a blog is so important to promoting yourself and advancing your career, and given you enough information to get started creating your own blog.
I’ve just talked about the basics here, but I’ll be posting more about marketing yourself and creating a blog in the future. Make sure you sign up for my newsletter, so you don’t miss any of these kinds of posts and I can let you know when I release a few products I am working on that cover more about marketing yourself and creating a blog than I can fit here.
And be sure to let me know what you think. If you use this information on how to create a blog to create your own blog, send me a link to it or leave a comment below.