I’ve been working on this application that manages content. I guess you could call it a content management system, or CMS. What another CMS? Don’t worry, I’m not out to compete with with anyone in the CMS space, it’s something I need for my own purposes. I did look at a number of open-source CMS’s but none fit my requirements at the time. At some point in the future I might release it under an open-source license, but I’m not too worried about that yet. It’s pretty specific in what it does, so don’t worry, you’re not missing anything special.
As for the code itself, it’s nothing brilliant, it’s written in Perl, and uses a few simple tables in MySQL for storage, but it works, and I understand every line of code… on a good day anyway. While we (we being myself and the other person involved in this project) discuss features, I find myself saying:
We could do that, technically it’s not that difficult, and I can think of a number of ways of doing it, but the hard part will be building a good interface to manage it.
And that my friends, is the holy grail, as it were, of application building. It’s not an amazing revelation, we’ve known this for quite a while, but I’ve been thinking more and more about it lately. The key in all of that is the word “good” which is why I emphasized it, I didn’t just make it italic, I emphasized it…
While developing, I’m spending more time dealing with the interface issues than anything else. I too am promoting web standards, I mean, who hasn’t needed a CMS that works in Lynx? Seriously though, I understand the importance of creating valid pages that work, and I also understand that building tools that are easy to use, and powerful, is not always easy. That’s OK, it’s just the sort of challenge I like.