Welcome to V4.0. The escape from PHP. Hello node.js

Filed Under: Servers (webnode.jsphp)

Apr 21 2013

It's been awhile since I've updated this site but I've finally made some time this past month. I've written this layout from the ground up to be responsive and mobile-friendly. That was easier to achieve this time around since I stuck to a simpler more basic layout.

Aside from the design, there's been some backend changes. Wordpress and PHP have been replaced with node.js!

Backend Changes

kwazico.com

The new backend is poet, a node.js blogging platform (http://jsantell.github.io/poet/). It's a simple blogging platform but one that is elegant and really easy to use. Once the design was done, getting the blog configured and running was very quick and easy. All posts are written in Markdown.

This will be the first node.js website that I'll have running in production so I'll be keeping an eye out on how it goes. Nginx is placed in front of node.js... as I simply can't trust node.js by itself in production (aside from web sockets or other non-HTTP web apps).

kwasik.com

As for my personal site, I decided that running some server backend for a simple HTML site was just overkill. However, I didn't want to lose the power of a scripting language. So I found a great middleground with docpad http://docpad.org

docpad allowed me to write up the website's layout using jade. This brought a cleaner layout and went well with Less that I already use for styling. docpad has so many powerful features with it. The LiveReload functionality allows me to instantly see any layout changes across the website. When I'm ready for production, I can easily convert the entire website into HTML and it's ready to be uploaded. Now I just need some git hooks and I'll really be in business! :-)

Performance Improvements

Without PHP, the site loads up super fast (my rough non-scientific methods show a speed boost of 500-1000ms). No doubt, the blog will suffer eventually if I manage to write a sufficiently high number of posts due to it's file-based backend.

However, I see this as a good challenge. If I'm forced to upgrade my blog platform again soon, it'll mean I was successful at updating this blog regularly!