Welcome to our new series of posts where we discuss ideas about “blogging the right way”. We will share our experiences of blogging with the Jekyll platform and other suporting technologies we have incorporated to get TheNextGeek.com up and running. We will discuss about the options one have while thinking to dive into blogging world and how to choose the best one depending upon yor skillset.
So, the first thing first. Which platform to choose? It is a crucial component to devise your ideas into reality - The Blogging Platfrom. Here we discuss about the available options and choosing the one that fits your needs.
What options do we have?
Options everywhere! As soon as you start exploring, you are greeted with plethora of options, but quite a few might be overwhelming or misleading. Here we take a bottom-up approach to explain how to classify these options and how to pick one.
Blogging Platform is a very generalized term - which consists of mainly two types of options:
- Static Site Generators
- Dynamic Content Management Systems
Static Site Generators
As the name suggests, these are the tools that generates static websites for you. No client-server calls, databases, nothing. Just simple and plain HTML pages serving the purpose of all your blogging needs.
One might argue that how is it possible to load the content without any client-server paradigm? Well, that is where the magic happens! Simply put, a static site generator will do all the work at compile time and will generate HTML files right when compilation completes.
Static site generators are just perfect for a blogging platform which do not need much of interactive or dynamic data loading capabilities. There are lot of options available like Jekyll, Hugo, Hexo, Gatsby, GitBook, Nuxt, Pelican, Middleman,…and the list goes on. One of the most comprehensive and feature rich among these is none other than Jekyll. If you are interested in exloring all the options - head over to StaticGen - which enlists all available static site generators.
This platform is entirely built with Jekyll and we will cover more aspects of setting up a Jekyll blog and availabe hosting options in the posts to come in near future.
Dynamic Content Management Systems
These can be classified as “conventional” approach to the content management system - the best example would be none other than WordPress. It is very old and proven concept of blogging and you will be rather surprised to know that roughly 74.5 million websites are powered by WordPress alone - which is one hell of a feat.
So you might wonder, why didn’t we chose the most obvious option - WordPress? Answer of this would be gradually provided through this blog series. Right now all I would say is that in the age of cloud computing - Jekyll is more suited for our requirements than WordPress, and other obvious reason is SPEED!! Even though years of development and optimizations on WordPress ensures an overall speedy browsing experience, it just cannot compete with a static HTML website. Hands down.
WordPress, as discussed, is a conventional client-server architecture powered by PHP programming language, which makes runtime calls to server to fetch the content and render onto the client’s browser. So at first, even if WordPress is appealing, in terms of setting up a professional blog, the free services offered by WordPress.com are just not enough. You will need to purchase wordpress hosting and set up your instance there - which also seems not-so-difficult - but the cost upfront just to get your website up and running might get too overwhelming for newbies who are setting up their first blog and are short on budget.
Web security is nowadays something that one just has to focus upon from very beginning. With all outrageous crawlers wandering around the public internet, security is something we must need to ponder upon - and here also Jekyll has an edge.With no client-server paradigm or any databases, jekyll offers absoulte no backdoors for hackers to hack-into anything. Just a static website with nothing available to exploit.
Whereas, wordpress on other hand is vaulnerable to such security threats due to its client-server architecture. Hackers these days are targetting the older wordpress websites which are not updated to the latest version of wordpress. So if you are choosing WordPress, then you have an overhead to make sure to install updates as soon as they are made publicly available.
As discussed earlier, Jekyll is having zero competition in regards of speed of loading webpage - which turns out to be one major factor to get higher ratings by Google. Google’s web crawler loves the websites with lesser loading times since Google believes that ease of usage is major factor of pleasing users.
Other aspect is that a Jekyll generated website is static HTML - crawlers simply love it. By making your website static, you are ensuring that a web crawler is accessing every bit of information on your website, which is not possible everytime in case of WordPress since crawlers will not be able to make certain server requests due to security reasons. Hence Jekyll websites also have an SEO upperhand here.
If you have any sort of hands on experience with programming, you must know the pain of getting out releases for every minor change. What if I tell you that Jekyll along with Github Pages or other similar continuous integration services will only require you to push your changes to remote repository and within minutes the change will be publised on live website? Cool, isn’t it.
In wordpress, it is entirely different scenario. Even though wordpress post editor provides functionality to write posts and revert them at will, you will need to ensure that the database is being backed up regularly and plugins are all in place. There are no sophisticated version control like systems there. With Jekyll on the other hand, you can manintatin full history of changes to your website layout, design, or posts itself and you can revert them as and when required.
So,with Jekyll, practically you would not have to leave your console on development machine to make changes to your website and make it live! It’s all happening with one code commit!
Due to its sophisticated client-server architecture, WordPress comes with a list of hosting requirements that one need to fulfill and monitor in order to ensure a good performing website. Since the wordpress architecture requires a server like nginx, programming language support like PHP and database support like MySQL - it becomes a tedious task to handle everything for just a blog.
Scalability is also a long term concern in case of wordpress website, since one will need to setup more than one databases to ensure the growing demand and all other tedious jobs comes along with it (which we will not stress about at the moment).
Which one’s appropriate? - The Conclusion
It entirely depends upon your needs and expectations. We would highly recommend you to get your hands dirty by exploring both Jekyll and WordPress once. From our personal experience we would only say that - If you are a geeky personality with a great grasp of technical stuff, then Jekyll is a no brainer. Just put aside any other options and get started with Jekyll.
On the other hand if you need a ready made platform with some great themes and stuff readily available, then go for WordPress - keeping the cons explained here in mind.
If you are inclined towards Jekyll platform, we are glad to announce that we are composing a series of blog posts that will help you get started with all the resources at a single place here at TheNextGeek.com. You may subscribe to our newsletter by entering your email below and get notified as soon as any new post is up here! Keep watching this space and Happy Blogging!
Subscribe to TheNextGeek.com
Get the latest posts delivered right to your inbox