I have had this website up and running for more than 5 years. In that time more than 50,000+ unique visitors have landed on the site (according to Google Analytics). However, it was time for a change, time to be more transparent, discuss my work, research and interests. You are now reading this blog on a new platform, with weekly (time permitting) content being published detailing my research, presenting code and general research ramblings.
My first blog post accompanying this website will explain why I made the choice to use Ghost, the design and other technical aspects (like https and CloudFlare). I'd love any feedback you may have on any aspect of this post, the site and its general usability.
I spent some time looking into different options available - this included WordPress - which I use on MCRCyclist.Com. Since I setup MCR with WordPress it just did not feel right, I have several issues including security and user control. One of the major issues, security, with third party add-ons, MySQL injection and poor vetting of third party add-ons (see some examples here. Another is the time I spend updating add-ons, configuring them and ensuring that they work - I simply didn't need them - I just wanted them on the site.
That is why I decided to use Ghost, built using node.js, ember.js and Handlebars it is truly at the forefront of web technologies and blogging platforms. Side note: I do plan on adopting MCR to use the Ghost platform, when I find time.
There was a great buzz around the use of Ghost, for example Snarky, Mehdi, Julian and Troy Hunt have all blogged extensively on how great the platform is.
Troy Hunt gave a really compelling case to the reasons as to why he chose Ghost and provided a comparison to Ghost Pro. Ghost, well the developers, offer Ghost Pro which is a managed platform that removes the need to manage any severs, install updates or patch any software. Hosting your own website is similar to when you’re on the underground - constantly getting attacked by nasty airborne viruses like a cold, you need to be careful and ensure you manage the systems, they also cost a lot of money in the long run.
See the cool infographic below, it puts it all into perspective:
Even though you end up losing control of the server (surely a good thing) you are still able to inject custom header and footer code - including custom response headers. So, after all the reasons as to why you should use Ghost Pro, I'm going to make an admission. I do not currently use Ghost Pro, as a developer I need access to a platform that enables quick deployment and sharing of code via sub-domains. However, I'd recommend anyone seriously considers using Ghost Pro. I will be moving over to the platform at a later date.
You may first be asking, What is CloudFlare and that is a very good question. CloudFlare is a company that provides a content delivery network, simply it sits between the visitor to a website and the web site server. It acts as a filter of all traffic, but also provides a https connection as standard (see below). Why does any blog need this type of service, firstly its free; secondly, any website is vulnerable to attack. Hackers are out there looking to take over servers to ustilise for their own means; any additional layers of security protect the server and the end user.
Every website, irrespective of its genre or target audience should use HTTPS as standard. This website now uses HTTPS as default which means all interactions are secure. The HTTPS begins and ends with CloudFlare and its service, with very little effort they allow you to go from no encryption to very high-end encryption. This service allows you to protect from passive eavesdropping on any network you use to get to my server.
I will make more posts about how to undertake this, the importance and why a secure site is important.
Why re-create a design when one already exists? Troy Hunt kindly released his source code on GitHub. The design follows his own structure, however over the next couple of months I will work towards tweaking the design to make it more custom. I welcome any suggestions you may have on what doesn't work on this site.