About This Site

The main site uses the Nesta content management system. My blog runs on the Octopress blog engine. Both Nesta and Octopress are fairly typical Ruby web frameworks, relying on template engines to generate HTML. This makes creating rich web content simple, but the process is very geek-oriented and anti-WYSIWYG.

Strictly speaking Nesta isn't a CMS and Octopress isn't a blogging engine; they're both application frameworks where most of the application "source code" is content. Editing a web page or adding a blog post consists of editing a content file (usually in Markdown) and then updating the whole application. I review the edits by running the application in a CentOS VM on my laptop, then update the running instances on AppFog, a Portland PaaS provider.

This is markedly different from the previous incarnation of my personal web site, where I used static HTML for basic web pages and CGI programs for a blog engine and a Wiki. This change reflects the fact that I mostly work with cloud technology companies these days. By using their technology, I get a running start on understanding their products.

The author of Octopress might cringe at the above workflow — Octopress actually generates HTML and CSS files, which can then be uploaded as a static web site. But I haven't figured that part out yet, so it's easier just to deploy the whole thing on AppFog. As the blog and my expertise grows, I'll need to switch to the static deployment model.

He might also wonder why I need Nesta, since Octopress (like most blogging engines) has some general CMS features. For that matter, Nesta has some blogging features. I simply prefer Nesta for CMS and Octopress for blogging.

One way in which I find Octopress superior to Nesta: the default Octopress template is agnostic about screen size — it does something reasonable on a superwide display and on a phone, without using specialized style rules. I haven't yet found a Nesta template that does anything like this, or that even goes beyond primitive fixed-width pages.

I'm moderately competant with CSS, but both Nesta and Octopress rely on Sass, a sort of style DSL, to generate their style sheets. I'll have to learn that one before I start tweaking Nesta's style sheets, which are just a little complicated. If I become sufficiently adept, I might well try to adapt Octopress's stylesheets for use with Nesta.