Octopress

Ready for it? Here comes the obligatory “Why I chose Octopress” post.

I love the concept of static web sites. Back in the mid-90s when I created web sites for a living I wrote two types of web pages: those whose URL ended in .html and those whose URL ended in .cgi. Every time I typed “emacs index.cgi” I knew I was opening myself (and my clients) up to potential security holes and reduced page performance versus static .html pages.

Fast-forward through the dynamic website revolution to today. By my unscientific estimate, 99% of public web sites are driven by some variation of the model-view-controller pattern. Server-side code and client-side code are often co-mingled in complex ways that defy explanation. Security is achieved through obscurity more often than through any explicit decision on the part of the developer.

That’s the environment and the mindset I was in when I discovered Octopress. Octopress is a static web site generator based on Jekyll, the blog-aware static web site generator that powers Github Pages. Using Octopress, I am able to create and edit posts, style sheets and templates on my Macbook Air. When I am ready to publish all it takes are two commands to generate the static HTML content then push the changes to an Amazon S3 bucket (fronted by Amazon Cloudfront, more on that in a future post).

Easy, safe, and fast! It makes me smile!