revjim.net

October 20th, 2004:

weekend plans: dinner, movie, shopping, barbeque, photoshoot

First and foremost, I have a photoshoot scheduled for Sunday with the very beautiful “Jill”:http://livejournal.com/users/tigger54/. I’m very excited about all three of the sets we’re doing which incorporate many concepts I’ve been wanting to explore for a while now. She’s been very easy going so far and seems to be willing to try just about anything which should make for a very fun, very smooth, shoot. If only tomorrow were Sunday.

Friday night we’re probably going out for dinner and a movie with a few friends (“Stacey”:http://livejournal.com/users/staceylacey/ and “Alan”:http://livejournal.com/users/spurio/) in McKinney. Only we can’t seem to find a movie we want to see. So.. who knows what we’ll end up doing. If you don’t have plans Friday night, let me know if you’d like to come along.

Saturday morning is the “CHEF’s Warehouse Sale”:http://chefscatalog.chtah.com/a/hBBdnjEAC3iJUATh1v9ATFmas.AC3iJU2A/html (I hope that link works) which is a great way to get great deals on quality kitchen appliances, tools, cookware, and cutlery if you’re interested in that sort of thing.

Later on Saturday we’re having a barbeque at my brother’s new place. Should be pretty fun. I’m bringing my camera for sure. They live out in some hilly country land that is quite beautiful around sundown.

Etomite CMS

I caught word of a new CMS out in the wild and, of course, despite my reservations, I couldn’t resist giving it a test drive.

I’m pleased to say that “Etomite”:http://etomite.org/ is fairly decent. It is certainly one of the more thought out CMSes available today. The code seems to be fairly neat and clean. It has a fairly rich set of features and those features are confined to a single area of expertise: managing content. It provides a usable template engine and features rich text editing and clean URLs.

It doesn’t quite cut it for me, however. Like I said, it’s a decent clean product, but that doesn’t make it useful if it doesn’t meet your needs.

The first problem I have is that, instead of using “Smarty”:http://smarty.php.net/ or “PHPSavant”:http://phpsavant.com/ as its template engine, Etomite reinvents the wheel. Of course, reinventing the wheel means throwing away all the innovation that has come with years of development on projects like these. The template engine isn’t nearly as featureful or extendable as its more mature competetion.

Secondly, extensible functionality is provided by a feature called “snippets”. These “snippets” are small chunks of PHP code, stored in the database, and executed when a template tag corresponding to it is seen. In theory, this is a decent, innovative way to go about the process. However, documentation isn’t too liberal in regard to snippet creation. As best as I can tell, it is executed procedurally, reaping some benefit from the objects in its namespace. The biggest obstacle here is that the snippets are required to output HTML. This means that, despite all the templating available within the application, these templates are not called upon to render the data retrieved by the snippets. So any given snippet will always produce HTML in the same manner. Altering that output requires editing the snippet itself.

The API doesn’t seem to be very featureful either. What it does do, it does well. However, more advanced operations — gathering a list of recently updated documents, for instance — require manual calls to the database server and will surely suffer from complications through software upgrades.

Finally, the URL aliasing features providing “pretty URLs” are a bit… incomplete. They work, but, they don’t account for their context within the site itself. For instance, if I have a document aliased as “doc” in a folder aliased as “folder” it would make sense that the URL to that document would be me.com/folder/doc. But it isn’t. It’s just me.com/doc. A little hackery here and there can make it work the more obvious way… but that’s not quite ideal.

All in all, it seems to be a decent product. If you’re just looking to maintain mostly static pages with a consistent look-and-feel with little trouble, it might be the package for you.