In a very recent email I wrote about how you need to have a blog.
The question that pops up next is usually …
What blog platform should I use? Medium? WordPress? Gatsby? Jekyll? Or something else?
This is a HUGELY important question that needs a bit of thought put into it … but first things first …
You Need to Focus on Writing
Before I get into comparing the vast array of options that you have out there I want to state that if your goal is to start bogging then ….
YOU SHOULD NOT BE FOCUSING ON BUILDING SOFTWARE TO RUN A BLOG
In other words, if you’re a software engineer (and some of you are) you should not get consumed with “building my blog” with some latest and greatest technology that you can learn along the way.
If your goal is to write ….
Then put your ego away and start writing.
If your goal is to learn a new technology then stop reading this and go learn a new technology.
Far too often I see software folks lose all of their time “building” something like a blog with technology X, Y and Z and then never ship a blog post because they were too busy optimizing CSS, HTML, JavaScript, deployment methods with integrated CI/CD pipelines.
All of that is a waste of time if your goal is to start writing a blog.
So focus on writing – not on building a blog engine.
Choosing a Platform
Choosing a platform can turn into a serious case of analysis paralysis. I hope to solve that for you today by comparing some of the top platforms and what they have to offer (on the good and bad front).
At this time I’m going to compare the following blog systems that you can use.
- Medium
- WordPress
- Ghost
- Static Sites (Jekyll, Gatsby, etc)
I’m not going to cover SquareSpace or Wix or Blogger or any of those because I don’t feel they’re in the top three choices for the folks that read this blog (mainly software engineers and entrepreneurs).
Medium
Everyone loves Medium because it’s drop dead simple to get started with blogging. You can sign up for a free account and then start writing in their editor in less than a minute.
The tooling that they have is top notch. The editor is gorgeous and they make it really simple to craft your content quickly. They also have a very powerful recommendation engine for readers. Meaning that if you have a blog on Dog Grooming and you write about Dog Shampoos then another reader who is reading another dog blog about walking dogs (on Medium) then there is a very high chance that Medium will recommend your article to them to read next. Again this is only for other blogs on Medium. Medium will not recommend other sites to visit for you to find similar content. Just doesn’t work way. The power of their network recommendation engines for exposing your content to others is fantastic.
However, that’s where the great news comes to a close. Medium has more downfalls than positives in my opinion:
- You have no ability to customize your blog.
- You CANNOT ADD features like:
- Custom Domains
- Email sign up forms
- Payment forms
- Customized landing pages
- Contact pages
- Custom integrations
- Etc
I could write a small book about things I don’t like about Medium.
Lastly, and most importantly, if your content is on Medium –
You are the product.
Meaning that Medium is using YOU as their product to sell other services.
Medium is using YOUR content as a way to recommend other things to other viewers.
Medium is using your content as a place for them to throw up their pay wall to get folks to convert to paid members.
They own everything on the site and can do that they want with it (to an extent of course).
Lastly, one of the things that REALLY bugs me about Medium is that you cannot have your own domain (they use allow this, but not anymore). That means your blog will be medium.com/@yourusername
So … thats kind of lame.
Thats like having a business and then printing your AOL email address on your business card.
In other words – it looks like shit it makes you and your brand look half-assed.
That said, Medium is simply a “easy to get going” blog. Game over.
PROS
- Super simple to get started
- Gorgeous editor
- Great Recommendation Engine
CONS
- You are their product
- No custom domains, have to use the ugly medium.com/@yourusername format
- No ability to provide landing pages, payments, custom pages, forms, opt-in, etc
- Locked into their platform
- Integrations are poor
WordPress
WordPress is the 800 pound gorilla in the blogging world (and internet in general). It has been reported that WordPress powers over 1/3 of the internet.
Thats wild. That’s a lot of sites. Apparently WordPress is doing something right.
To get set up with WordPress, you have a couple of options:
- Host on WordPress.com (they manage it)
- Self host or managed hosting.
Hosting on WordPress.com makes it easy to get going, but you’re limited because WordPress.com restricts certain plugins from being installed or utilized and there are a few other restrictions. Therefore I’m going to focus on the self-hosted or managed hosting solution. I’ll provide some links for self hosting and and managed solutions below. Sure, you’ll pay a few bucks, but it’s worth its weight in gold.
WordPress is very powerful. You can build a blog to a full blow website using WordPress. In this instance you will be building a blog.
You can use one of the built in themes or you can search for free themes on the internet (you can also search for premium themes if you don’t mind spending a few bucks). I recommend searching for “WordPress Themes” or “Free WordPress Themes” or “https://www.google.com/search?q=premium+wordpress+themes” if you’re searching online.
One of the best things about WordPress is the powerful plugin ecosystem. There are hundreds of thousands of plugins for WordPress. If you can think of it, its very possible a plugin has been created for WordPress. Plugins allow you to quickly add new features to your blog/site without any additional coding.
With a WordPress plugin you’ll be able to easily add email newsletter option support by adding of any number of email plugins that will allow you to do that. (You may need a email list provider already, such as ConvertKit, MailChimp, etc) but the plugins will be there for you to easily add it to the side bar or bottom/top of your site.
You can create custom pages to house custom content that is perhaps not a blog post, but something like a landing page where you decide you sell a product. Speaking of selling things, you can sell products on WordPress if you use one of the premium plugins like WooCommerce or Easy Digital Downloads.
If you think about doing something down the line, most likely it can already be done with WordPress.
Writing in WordPress is drop dead simple too. You create a new post, give it a title and write your blog post as you normally would. Add images, audio, video, etc all via the online editor that is built into WordPress. Hit publish and you’re live.
Hosting WordPress
I recommend using managed solution to handle your WordPress installation. I’ve tried running my own servers and then moved over to managed hosting years ago and I highly recommend it.
I recommend using a hosted solution such as:
What about GoDaddy? Meh.
GoDaddy overloads their servers with other sites which can be a real problem when your site needs to be responsive. WpEngine and FlyWheel have great response times and have fast servers and don’t overload you with other folks. If you have a problem with anything you can reach out to them and they’ll help you.
I’ve even had WpEngine representatives write some code for me to fix a particular image problem I had with their CDN – which brings up a good point. All of their images are stored on a CDN and delivered globally – making your site load that much faster.
Lastly, since you’ll be running your own blog you can have your own custom domain.
PROS
- Simple to setup with a managed host
- A huge plugin ecosystem
- Very customizable
- Good Editor
- Supports Custom Domains
CONS
- You have to pay $$ to host it
- It can get slow if you over load your site with plugins
- Often targeted by hackers because of how popular it is (if you stay with a managed host, like WpEngine they do a great job of keeping you up to date with security releases.)
Ghost
Ghost is another open source platform that is similar to WordPress but built on completely different technology. One of the biggest selling points of Ghost is that it’s fast.
The editor is simple and is very easy to use and you’ll find yourself creating some great looking pages quickly.
Ghost also offers a set of plugins, but it does not match the breadth of WordPress and that’s a downfall.
Hosting Ghost
Installation is where you’ll get stuck because you either need to install it yourself or host it. I’ll focus on hosting it.
At this point I’d only feel comfortable hosting on Ghost’s platform (Ghost(Pro) Pricing – Hosting from the creators of Ghost – Ghost.org) as they have the necessary skills to ensure that it runs correctly. I’d be skeptical that it would run correction or efficiently on another hosting platform.
Custom domains are also supported, which is great.
PROS
- Simple to setup with a managed host
- A growing plugin ecosystem
- Good Editor
CONS
- You have to pay $$ for managed hosting
- Customization options are limited
Gatsby/Jekyll/Hugo/Etc
This section is meant to cover all static sites. Static sites don’t have a database and render pure HTML to the browser. This typically results in a site that is very fast with minimal configuration and can scale very well due to demand.
While these benefits sounds great there are a lot of downfalls.
Unfortunately you need to learn a templating language (such as markdown or something else). You’ll often need to work with HTML/CSS and perhaps some JavaScript. If you’re a coder, then this might be something that is interesting to you. Otherwise, this is something you’ll ant to avoid.
However, it is important to remember that the point of the blog is so that you can start writing, not create software to render the blog. If you find yourself writing HTML/CSS/JavasScript to render you’re writing … well … what are you really doing then?
Static sites do offer a lot of flexibility though. You can code them to do whatever you want.
Want a payment form?
Code it.
Want a email opt-inform?
Code it.
Want an Image Gallery?
Code it.
Sure, there are other tools that you could use to provide this functionality, and you should evaluate those … but you get the point… a static site through one of the many static site generators.
The real rub here is that your blog is going to be written in a text editor. You typically do not get a great editor to write your blog in. Furthermore, very often you’ll need to “compile” your pages so that they’re read to go on the web. Once again, you’ll need some technical prowess to handle this.
Hosting a Static Site
Hosting a static site requires that you have a place to put the files. Typically this can be done on a web server, Amazon S3, GitHub pages, or through other services like Nelify and Zeit. You will need some technical know how in order to set these up (which is beyond the scope of this article).
As you can imagine, since Gatsby is very customizable and can be hosted anywhere (it’s just HTML) you will be able to use a custom domain.
PROS
- Very customizable
- Very fast (response times)
- Can Scale to many viewers due to it being raw html
CONS
- Hosting is not simple
- Most likely need to know how to code
- Spend more time configuring the site and writing (most likely, yes I’m pointing at you engineers).
- Technical Prowess is needed to fully use the platform
So, Which One Should I Use?
WordPress.
WordPress is the market leader for these types of sites (blogs). It has a rich plugin ecosystem that will be ready for you to grow when you need it and hosting with companies like WpEngine ensure your website is fast and secure.
You’ll find that as you need more from WordPress, it can offer almost anything you need.
Last piece of advice – try to build everything without code first.
WordPress allowed me to do that. It forced me to focus on my content and not on some cool engineering that ultimately would have acted as a distraction.
But … Can I go from X to WordPress if I like X better initially?
Sure, you can, but here again, if you decide to go to WordPress later you’re going to have to spend time migrating from one platform to another. If your goal is to write, why would you want to create more work for yourself?
Just go with WordPress now and save yourself the trouble.