Monday, February 4, 2002

Just released some new stuff — a clean-up of the categories user interface, and a new feature: Themes for categories.

Dave, John, and I had been thinking about ways to clean up the user interface for Radio’s categories feature. John claimed that the links to the categories that appear on the home page shouldn’t link to the XML version of the category, because new users would see the XML, get scared, and retreat. Aside from the fact that the categories feature is turned off by default, so newbies probably wouldn’t see the links anyway, I agreed.

The problem was that from a design point of view, we had to decide what change to make. Dave and I talked about the problem a few times, and the solution just didn’t materialize. One might say, “just link to the HTML rendering.” That’s fine and all, but the thing is that not all categories have HTML renderings. Moreover, to link to the XML for some categories, and the HTML for others, would fry more braincells than always linking to the XML. To only link to the HTML renderings, would leave people who are using the feature already wondering where all their links went.

It was a Don’s Amazing Puzzle type of problem. The solution was staring us in the face, but our preconceptions caused us to be unable to see it.

We were stuck, until this weekend. Dave had a thought — Radio is a dynamic web server. We can render whatever we want under those links. A category doesn’t have to have an HTML rendering for us to display it in the browser — we can do that on the fly.

Well, that as it turned out was not what we did. We remembered that another feature John wanted was a way to create or edit categories, right from the home page. We’d tried before to see what it looked like to have little Create and Edit buttons above the list of categories, but it looked really cluttered. Perhaps if we were better graphic designers, we could have made it work, but we aren’t and it didn’t.

Then came the A-Ha moment: Dave said, “we could make the category names link to the Edit Category page for the category.” That’s what we did. Then we don’t need an Edit button at all — we just needed a small, unobtrusive New link, and the whole UI falls into place.

Then I took the opportunity to do something fun. I said, “Here’s a quick-hit wish-list item: A Theme popup on the Edit Category page.” Dave said, “Go for it.” The code under the hood already understood how to apply a Theme to any given folder, so all I had to do was to hook up a POST-handler to radio.weblog.editCategory, that knows how to apply the Theme you choose to the category’s folder.

Well, it wasn’t quite that simple, because the POST handler also hat to know how to remove the Theme, and how to re-render the category’s home page, but that’s not rocket science either, and it turned out that the coding went quite quickly.