So I find myself needing to create a new website and this created a world of complications with one very easy solution, which I’m assuming you can guess from the title above…
I started GameFromScratch.com some 5ish years ago and the state of the web has changed a great deal since then. I had a dedicated server from other projects, so the sky was the limit when it came to choosing a server technology. I had little idea what GFS would evolve into or how much control I would require over my CMS, so as a programmer I went with the language/technology I was most comfortable with at the time, C#/Asp.net. Instead of doing everything myself I built the site around BlogEngine. It’s served me well enough, but in this age of mobile, SEO and responsive design, it’s a needlessly complicated mess.
I did a recent redesign of the site, but in the end I want to do a clean break. Problem is, you can’t. I have years of Google search engine juice, thousands of in-bound links and many other things that would break if I ported to a new site. Beyond that, ugly or not, creaky or not, GameFromScratch is still my baby and I couldn’t just put her out to pasture.
After some thought on the subject I figured out how to go forward. GameFromScratch is going to continue exactly as it is. I will continue hosting 100% of my content here, I will add new blog posts and tutorial series here just like normal. However, “finished” tutorial series will also be available on another home. With the exception of perhaps pissing Google off due to duplicate content, I think it’s the best of both worlds. People can continue to enjoy GameFromScratch.com as it is today, while people using it for straight reference material can enjoy a much cleaner and hopefully faster site. Also it gives me the opportunity to introduce a slightly shorter and more accurate URL. Win/win for everyone I hope.
This however lead me to the same challenge I had years ago… choosing a technology. Now though I have come to realize less is more. I have no desire to use a gigantic bloated CMS like WordPress or Drupal. More to the point I have absolutely no desire to install another server or database technology (and potential security loophole) on my servers. I also had, have and always will continue to have a gigantic aversion to PHP, which winnows down the field a heck of a lot. On the other hand, I also have little desire to manually craft a site from scratch.
Jeykll is what you could call a “Static Site Generator”. Basically its the framework to create a site within, couple with some tools that generate the site for you. No database, no server technology, nothing. The end result is simply a folder full of clean, modern HTML that can be deployed however you want. This means no added security risks, no performance overhead and extremely simple backups. It does however provide a framework of local tools that make your development process a heck of a lot faster than just writing HTML.
I am still very new to Jekyll, but so far it ticks all of the boxes I need. The only real complication in the scenario is Ruby, the language it depends on. As a language/ecosystem, Ruby seems horrifically fragile and it’s 10x worse on Windows where it is a bit of a red headed step child. Point blank, getting and keeping your Ruby stack running is going to be by far the most challenging part of the process.
Anyways, if you find yourself needing to create a website, consider checking out Jekyll, I’ve created a small video about it available here or embedded below.
I looked at a few other options that you might wish to be aware of and why I personally didn’t go with them.
- Adobe Muse
- It was a nice editor and with it’s themes provided a great deal of what I needed. The resulting code though wasn’t extremely clean, it has a rather hefty pricetag, and worse of all, once you commit to Muse you have to stick to Muse to generate new versions of your website.
- Siteleaf is very similar in basic process to Jekyll. With a few major differences. First, it includes web hosting options as well as an in cloud content editor. Second, it’s got a price tag attached. Third, it simply didn’t work on Windows… bit of a deal breaker there. It’s not really Siteleaf’s fault, it’s Ruby, but still a rather large deal breaker for me.
- Dozens of other static site generators
- You certainly aren’t starved for choice in this category. That said, if in doubt, go with the one with the biggest community. That’s Jekyll. I was tempted to find one that was built on top of Node instead of Ruby for a better Windows experience, but with Jekyll releasing version 3 with less dependencies and a smoother Windows experience, this became unimportant.
- WordPress/BlogEngine/Drupal et al
- What can I say, they are still an option. Jekyll certainly isnt for everyone. Each of these CMSs is absolutely huge, some are downright dinosaurs at this point. On the other hand… there is no scaffolding, no hosting requirements, a huge community of people you can contract work out to, etc. If you are not moderately tech savvy, these are still most likely your best best. Just be aware, you pay for that convenience when something goes wrong… it goes REALLY wrong. Then again, you can also hire someone to fix it.
Totally Off Topic