Philosophical underpinnings of system design

More from New Challenges… Dan Brown leverages Lakoff’s ideas on the central and exceptional elements of concepts in categorization to question how we design computer systems. We’ve built a lot of exception handling into systems to the point where we take some actions for granted, where computers are enforcing rules that perhaps people should (or shouldn’t).

He ends by asking if we should go back to how we understand businesses and design applications that follow that understanding. “…alternate conceptions of business may lead to other foundations for content management. What if business is a factory? A family? An army? A conversation?”

Build a CMS, go to heaven

Brian Alvey, speaking on a panel about CSS back at SXSW, asked, “Who’s building a CMS on these tools that spits out valid markup? Not many. A few. They’re going to heaven.”

Well, I don’t exactly believe in heaven, but to play it safe I wrote an article illustrating a few different ways you could integrate cascading style sheets with content management systems. The ideas came to me while I was working on a big Vignette-powered project, but the function is fairly easy to build in. The change is less about technology and more about organization and process: designers become empowered to improve the design through CSS as frequently and easily as authors change text.

It’s also just as useful on smaller systems, as demonstrated by Textpattern.

CMS Playground

I used to say CMS user interfaces were developing slowly because, like intranets, they were all behind the firewall. But I’m wrong, opensourceCMS has many CMS packages installed for you to try out and learn from. An excellent resource.

Design Principles for Content Management Applications

I’m working on a content management application – the part of the content management system the authors and administrators use – and jotted down a few principles to follow. They may not be applicable in every case, but expanding along these lines might lead to some design patterns.



  • Manage content, not pages. This makes content reuse easier.

  • Reuse existing content when possible. The interface should make it easy to


    do so.


  • Content should improve the user experience. When deciding whether to reuse


    content or create new content that will facilitate a significantly better user experience, create new content.


  • Store content once: Do not create (or allow the user to create) copies.

  • Facilitate quick updating: Reduce need to update the site through less


    convinient processes, such as uploading templates outside of the CMA.


  • Content is valuable: Content takes a long time to create and update. Do


    not delete or expire content unless absolutely necessary. In general, more content is better.


  • Separate content from presentation: wherever possible, separate display


    text from HTML and other formatting information.


  • Design CMA display to resemble CDA: when possible, this helps to present


    authors with a familiar visual design


The Killer, Open Search Engine

What the independent publisher needs now is a killer, free, open-source search engine for our sites. The Movable Type of search engines, with a plug-in architecture allowing individuals to add features. None of the free search engines currently available achieve what MT has in terms of simplicity, usability, performance, and usefulness. Lazy Web, I invoke thee.

Articles on Indexing Software, December 2002

An introduction for the knowledge management crowd.

Data By Design in eWeek.

Metadata Helper Applications: Tagging and Entity Extraction from Search Tools.com

Automatic Indexing: A Matter of Degree from Marjorie M. Hlava in the ASIST Bulletin is still the most sober introduction to the topic.

Thanks to Demetri and Ed for links.

Later…

From eContent, Auto-Categorization: Coming to a Library or Intranet Near You!

Learning XHTML

XHTML sounds scary to me. Once you put that X in the name I assume it’s over there, over that threshold of actually learning XML (as opposed to learning what it can do and collaborating with smarter folks who have actually learned it). That’s a pretty common threshold, from what I’ve seen. A lot of us can hack together HTML, maybe CSS or a bit of Javascript, but anything more is for ‘developers’.

Then the other night T. says, ‘Oh, XHTML is the same as HTML 4, you just have to close all your tags.’
Me: like meta tags and BRs, just close them?
T.: Yeah.
Me: [ ! ]

Turns out XHTML can be quite simple. Of course, I realize there’s more to it, but ‘just close all your tags‘ might be the line that gets people in the door.

Mozilla

Mozilla reaches 1.0. It looks like it was four years in the making. That says something about the speed of open source development, or the project management, or the scope.

Maybe scope. I like Bill’s description: The OpenSource version of the NetScape Navigator browser. Or, a RichClient development platform.

So far I’ve tried the Windows version and I’m pretty happy. The default theme, or whatever the skin is called, resembles good ol’ Netscape 4. Pages load fast and, my biggest problem with IE/Win, it knows that when I type Google into the URL box that I want to go to www.google.com. The page up and down keys don’t work like I expect (read: like they’re supposed to), but that’s a small price to pay. It’s a good first impression.

Stupid Visio Tricks

I usually abhore keyboard shortcuts, since everyone knows mousing is faster. But for zooming and moving in Visio, this rocks…

hold down Shift + Control, then:


– Left click zooms in
– Right click zooms out
– Hold right button to drag page (Adobe-style)

thanks to Brett for the tip.