Why Org?

There are a ton of options when it comes to creating a website; from designing it to picking tools for it to hosting it, there is a plethora! As a professional web developer, I know this first hand. In fact, there is a painful sickness called JavaScript Fatigue that effects tons of developers because there are so many friggin' options! Given all these choices, why on Earth did I choose to use org-mode to create this site?!

Before we get into the he-said-she-said, let me explain some stuff. There are a few requirements that my site needed to have: no (or very little) JS, an early 2000s look, a hacker feel, and Emacs created.1 NO JS? But JS runs the web! It makes things fun! Why wouldn't you want to use it? Good question ambiguous person, the answer is simple: JS sucks and I just didn't want to mess with it. Don't get me wrong, I love ReactJS! It's truly the best way to use JS - but I use JS pretty much everyday and don't feel like using it on my site. Not to mention, what the heck would I use it for? Games? Pssst, that's what this is for. Why do I want it to look like it's from the early 2000s and have a hacker feel? Because I like that stuff. Nuff said. Why Emacs? What else would I make a website in? Emacs is the only option! It's the best OS known to man!

Now that you understand my requirements, we can talk business. Originally, I created this site with Common Lisp using the fabulous Hunchentoot and cl-who. This was really cool because you get the power of Common Lisp in the web. You can also use parenscript to write JS, which is really fun. This was great and all but a little overly complicated for something as simple as this site. So I began thinking about using something else. Many months went by and this site crashed because someone unplugged the Raspberry Pi and I never got around to starting the server again. Some time later, zacts, a user on freenode #dragora, began talking about creating his site with org-mode. I had heard about this task before but never tried it. So, I thought I'd give it a try! So far, it is awesome!

Using org-mode to create a static site is truly amazing! Once you setup org to handle things the way you like, all you do is run org-publish and your site is created. Of course you must host it and all that nonsense, but you don't have to do much else! What I use is nginx and rsync to host and push updates, respectively. This makes it easy to update content without having to mess around with HTML. Plus, you can still use plain old CSS to style things. In conclusion, org-mode makes creating and updating your site extremely efficient which is why I chose to use it.

Footnotes:

1

Meaning that I can create and update the site from inside Emacs.