Running on Simplist 2

Apr 03, 2007

MyersDS.com is now running on the newest version of the Simplist CMS. It’s almost a complete rewrite of the original codebase, with only a few snippets of code here and there remaining.

Simplist is now RESTful, and is running on Rails 1.2. Despite the fact that Rails 1.2 is said to be slower than Rails 1.1, I’ve actually noticed a slight increase in performance. This may be more likely to the fact that I’m writing better code this time around on the second attempt. Just more proof that performance boils down most of the time to the programmer, not the framework.

What are the biggest changes to Simplist?

Dynamic URLs

dynamic page

While blog posts have always been dynamic, pages previously were static in Simplist, requiring an associated rhtml view for each page. The main motivation at the time was that it allowed for an easy mixing of ruby and dynamic content in pages. Pages seldom were added or removed, so it wasn’t a big problem to have all pages be semi-static in nature.

Taking inspiration from Radiant pages can now be added and removed without having to touch the code. Fear not though, static pages still exist when custom functionality beyond html is needed. And it’s still done in good ‘ol erb, so no need to learn a custom tag language like liquid.

Less Interface

Gone is the old monolithic admin interface and in its place is a nice streamlined toolbar that lives in the upper-right corner of the browser window. The biggest benefit is that you can create and edit pages and blog posts with a single click.

top page

Also gone is a substantial amount of code. There is nothing resembling an admin controller or admin pages anymore, just simple actions that represent a page as a resource. Embrace the power of filters for protecting actions.

Up Next

icon bar

Within the next week I’ll extract the current code base into something a bit more generic, and slap on a basic design for people to use. Hopefully the end result will be something that people can modify to their liking and be up and running quickly.

Oh, and some new documentation, screenshots, and other important things.