where web content management and user experience collide

Eye candy? Wash your mouth out

I recently saw a tweet along these lines (I’m paraphrasing to protect the guilty):

Looking for a designer to spray some eye candy on our web app

Ouch. This says to me that somebody has built an app without understanding the purpose and value of interaction design. You can’t really improve your user experience by bolting on prettier icons as the last step. Good interaction design requires you to really sweat the details, and preferably from the outset. The beauty of a great application isn’t just a matter of form; it arises from function.

I agree there is value in polish: a more professional interface raises user expectations about robustness. Cynically, people are more likely to blame themselves if they hit a bug on a polished interface; if the software looks Heath Robinsonish otoh, they’re waiting for it to fail. But polish without real attention to the interaction details is a flimsy trick, a petard to hoist yourself with.

Traditionally, of course, developers got away with a lot of crap when “designing” their user interfaces. But that crap won’t wash so well any more, because too many users have seen better, and understand that they’re being shortchanged. Can you still build successful apps without good UX? Yes, sure. Maybe if you’re inventing a new market, or if you’re not really selling the app but the services around it, but most of all if the buyers are not the users.

Unfortunately, that’s very commonly the case in WCM, except at the bottom end of the market—which is why low end products (eg. Squarespace) often have better usability than high end ones (eg. Oracle). Things have been improving over the last couple of years admittedly, but you still see a lot of sloppy, ill-thought out design. Too much excise, technical jargon (“nodes”!), inconsistent gestures, etc.

I start every project by thinking about the interaction design, and slowly work around to the implementation model. Not so much “test driven development” as “design driven development”. Sometimes that makes things much harder for the developers; but hey, developers are smart people and they like hard problems. If they don’t; well, you need to find better developers.


Filed under: Design, ,

Stupid rocket science and BaseKit

I’ve been playing a little bit with BaseKit. It’s a nicely designed and well executed web app, sort of like Dreamweaver as a SaaS solution. It’s UK based and has some VC backing. Still, when I bumped into one of the investment team at a networking thing last week, I’m afraid I chuckled at the foolishness of the investment (OK, I’d had a drink).

That’s because it’s one of those apps I think of as “stupid rocket science”—brilliant engineering that’s not solving a real problem. It’s a category error. Who’s the audience for this thing?

Here’s the problem that BaseKit and others are trying to resolve: most websites of any complexity require at least two quite distinct specialist skills beyond business skills: design and development. That drives up cost and implementation time. Well, what if we could automate away one or both of these skills requirements? Then, hurrah, the business user would be able to just get on with the job, without waiting on designers and developers to do their thing.

Website-in-a-box solutions like SquareSpace and approach this by fixing both the design and dev axis: design comes from fixed themes prepared by professional designers; development needs are handled by choosing from a plug-in module library.

But there’s an alternate approach where you give the business user a toolset that lets them do the design and build themselves. Technically, this is an interesting problem: challenging but doable. Hey, I’ve tried solving it myself, about 6 years ago.

But here’s the thing: having a design tool does not make you a designer. You don’t have to believe that design is an innate skill that some people have and some people don’t: it’s enough to realise that even if it’s learnable, it’s one hell of a big learn. It’s time consuming and requires practice: a lot of practice. Real design starts with paper and pencil, not a GUI tool.

The website-in-a-box solutions are better not despite being less flexible, but because they’re less flexible, ie. there’s less room for the non-designer to screw up the design.

So, who’s the audience for BaseKit? Can “business users” really handle their own design? No. Do designers want to master another visual tool for web design, or would they rather stick with what they know (ie. Photoshop)? Afraid it’s Photoshop. Do developers want to nudge GUI controls to resize columns, or would they rather write code? Code please!

I guess there may still be a class of hobbyist webmasters out there who might find this useful. Doubt they want to spend actual money though…

A slightly more interesting take on this idea is the forthcoming Drupal Gardens (though I’ve not actually tried it yet; still waiting for my beta invite). At least it will let you export out a real Drupal implementation. I imagine that’s a one way ticket, but at least might give you a graceful exit when you realise you don’t have the skillset and hire in a real designer and developer…

Filed under: General, , ,

Is WordPress a CMS?

Well, I’d say no, but it depends on your definition of what web content management is (assuming you even believe it exists). WordPress is weak on workflow and approval. There’s no in-context editing. The metadata options are limited. Extensibility is somewhat idiosyncratic, to say the least. And so forth.

At the same time, if you follow the #cms hashtag on Twitter, you’ll see a steady trickle of links with titles like “10 best websites using WordPress as CMS”. And of course, it can be a very good solution in many scenarios where a more CMSish CMS would also be an option to consider. There are three huge pluses: instant-on deployment of new sites, integrated near-realtime analytics (albeit very limited), and good usability (well, compared with other services in this space: MovableType’s recent imitation-is-the-best-form-of-flattery redesign is an indicator of that).

There’s also the question of whether it might evolve into something more like a real CMS over time. I’m doubtful: the interface and (no doubt data model) betray its strong focus on blogging. And as far as I can see, this is a route that Automattic anyway have no real interest in; or if they have, they’re been slow to reveal their hand.

Rather, they’re leaving it to third parties. I’ve mentioned Pagely before. Tierra Innovation’s WordPress CMS Toolkit is another example of how some companies are taking up the gauntlet here. Their toolkit provides a set of plugins that can be used to extend WordPress in the direction of CMS. It looks pretty early stage to me, and the additional functionality in the plugins is pretty weak—still, will be interesting to see how this evolves.

Filed under: General, , ,

Meanwhile, in other 2010 WCM prediction news…

You don’t want to hear me repeat the same old predictions as everybody else, right? So none of the really obvious stuff here.

We’ll stop talking about marketing so much
Marketing is not the only or even the most important form of human communication. The downturn has lead to an excessive focus on WCM as a marketing solution. I’ve seen vendors resolve that old debate over what to call “non-technical business users” in favour of the word “marketers”. Not to mention those vendors who’ve redefined themselves as offering “Marketing Resource Management”. Yes, yes, business needs are important, but they are wider than that. In 2010, I predict we’ll back away from this reductive obsession even if the recession double-dips; if only because it’s ultimately rather dull.

Legacy WCM delivery tiers will start creaking loudly enough to be audible
Compared with modern MVC web frameworks, where there has been significant innovation and development over the last several years, the typical WCM delivery tier is showing its age. This will become more obvious as they try to achieve “cloud-scale”. And that includes some of the more recent open source WCM platforms. Which leads to my next prediction…

NoSQL will become a buzzword in the WCM space
Yes, vendors will be falling over themselves to declare nosql “compliance”. Not such a bad thing either; SQL was never a good fit for WCM. It’s documents, baby. Plus, who elected Larry Ellison supreme overlord of content querying?

CMIS will break all records in hype cycle transit speed
I predict we’ll see CMIS zip over the Peak of Inflated Expectations and into the Trough of Disillusion before Gartner have even had time to publish.

WCM vendors will start bolting on interfaces targeting content strategists
Partly because they watched this presentation and saw it was good. I’ve got some more specific thoughts about this, but hey, I don’t have to share all my good ideas with you guys. Work it out.

Something will happen in the .NET shadow universe
But I won’t notice. Anyway, it will probably happen very very slowly. Whatever.

OK, that’s it. Tune in this time next year and tell me I’m wrong.

Filed under: Uncategorized, , ,

Sorry, it’s too late to COPE

I was just reading an interesting couple of posts by Daniel Jacobson on the content storage strategy they’ve adopted for the U.S National Public Radio (via Justin Cormack). The basic  idea is to ensure hardcore content portability by very cleanly splitting out presentational markup even from inside styled text. So you store plain text in all cases, with the markup stored separately using character offsets in much the same way that (I think) a word processor does. I’ve mucked about with this approach myself in the past, for implementing undo stacks in a web-based WYSIWYG editor back in the days before contenteditable worked properly (well, it still doesn’t work properly, but at least there are libraries to gloss over some of the pain).

It looks like an impressive piece of work, in an academic kind of way. But this approach would be overkill for the great majority of scenarios, and I’d be surprised if that didn’t include NPR itself. Daniel doesn’t talk much about the downsides around the complexity it adds to their implementation. It’s likely to be error prone and difficult to debug. Html markup is after all rather more human readable than a set of document offsets. Be interested to know how well it copes with bidirectional scripts. Plus, it doesn’t even ensure full content portability: there are still all sorts of reasons why you might need to munge your content before delivery. What if you’re delivering headlines to a platform that only accepts 140 characters? What if the delivery platform doesn’t handle unicode? (you’d hope there aren’t any such platforms left, but I wouldn’t put it past the mobile guys)

But actually, that’s not what I started this post meaning to talk about. COPE stands for “Create Once, Publish Everywhere”. It sounds nice in theory, and five years ago I would have been cheerleading: but that horse has now bolted. It’s a “publication” philosophy. We inherited that one-to-many model from print and broadcast, and it’s taken us a while to move on.  But the stakeholders in your business – staff, customers, partners, prospects – are already distributing information and communicating about your business through other channels. They’re putting photos on Flickr, they’re posting to WordPress, they’re messaging on Twitter, they’re commenting all over the place. They couldn’t wait for your IT dept to sort out a usable file sharing solution, so they’re using Dropbox. Next summer they’ll be doing something else that hasn’t been invented yet. Some of that content isn’t that interesting; some of it is very valuable, because it’s more authentic, because people are risking some jot of their reputation by saying it.

Daniel goes so far as to say:

COPE is the key difference between content management systems and web publishing tools, although these terms are often used interchangeably in our industry

I couldn’t disagree more. To me, this is the big challenge CMS is facing over the next couple of years; what do we do about all that “outer content”? We can just ignore it, and ensure that we’re pushing out sanitised, presentation-agnostic official content. There may be organisations for which this is the right approach, say if you’re publishing legal advice. But for most of us, it would be to miss out on where the interesting action is.

Filed under: General,

Content vs presentation

One of the most frequently cited aims of CMS is to separate content from presentation. That way we enable content reuse across multiple channels, allow for redesign, etc. It’s one of the core features that any CMS has to provide to be considered a CMS at all, and not just a web page editing system.

But, just because we have to separate these two, it doesn’t mean we have to separate them at birth. It’s been said that being “too difficult to use” is the single biggest reason for the failure of content management projects (45% of failing projects according to one survey). There are various reasons for this, but here’s one:

Mental models are a concept from interaction design. A mental model is an end user’s (perhaps naive) idea of how a system works. The user thinks their contacts app is something like a physical address book, except magically embedded in their computer. Mental models often resort to magic, and why not? This is true for most of us in domains that are not our day jobs; personally, I can offer no coherent non-magical explanation for how my iPhone works.

Of course, the underlying implementation might work in quite a different way; in fact, it’s likely to. That contacts data is really a bunch of rows in a database; that’s the implementation model. Finally, there’s the way that the software presents whats going on to the user on their computer screen: this is the representation model.

Good interaction design favours the mental model over the implementation model; it hides the complexity of the underlying implementation, and as much as possible presents an interface that conforms with the user’s expectations. This is part of what we mean when we say a UX design is “intuitive” – that it conforms to the mental model. More work for the developer, sure, but less for the end user.


Now, let’s think about the mental model for WCM. Generally, the user has this idea that the CMS is a kind of box stuffed with web pages. A web page is a document containing a mix of text, pictures, links etc – a lot like a Word doc. A typical goal will be to edit a bit of text on a page.

One way to tackle this is to expose the implementation model in a web form (or series of forms, depending on the complexity of the implementation) which is effectively an edit mask for the database tables where the web content really lives. You can “educate” the user to understand and use this kind of system.

But why would you? It’s not the author’s job to understand database structures. In most cases I’d say it’s better to provide a WYSIWYG interface that lets users make the edit “in situ”, just as if their web page was a Word doc. This gives a much better approximation to the mental model. Then, behind the scenes the CMS can disassemble the edited content into all the correct boxes, keeping it cleanly separated from the presentation, and stripping out any truly evil presentational gubbins.

But what if this content is being channelled to more than one format? Well, in the real world there is normally a primary channel, and I bet the mental model says that content is being “copied” from that to other channels (eg. from the website to the mobile site). So the CMS can give a preview of the other channels, even an editable preview if there’s an option to override bits of content for other channels (though good luck with resourcing that kind of workflow) without disrupting the model.

Filed under: General, , , ,

Hey everybody, let’s #fixwcm right now!

So Jon Marks had the idea of crowdsourcing material for his panel discussion at the J. Boye conference, by asking for tweets with the hashtag #fixwcm. It would be an uncharitable soul who’d suggest this was mere laziness – but whatever! It provoked a strong reaction, with hundreds of well-made points and passionate opinions (and no doubt more to come). I’d like to pick out a few tweets to comment on here in a little more than 140 characters.

justincormack First off too many vendors cannot be sustainable

Probably true, though it’s been probably true for a long time. Somehow the great winnowing never quite seems to happen. I think this is largely because WCM is such a big, fuzzy domain that covers a huge range of different scenarios.

@HammerToe: WCM vendors add features to justify license fee; Lather, rinse, repeat. Need to break cycle. OSS breaks that cycle.

Afraid not. Open-source developers have to buy attention and mindshare to boost adoption, and they sell features to do that. New features get attention, whether or not money changes hands. Take a look at CMSWire for many examples.

tednyberg Implementer should be selected based on chosen CMS, not the other way around. Vendors: stay away from implementing! 🙂

A few people offered vendors this advice. I sort of agree that the vendor is not necessarily the right party to do implementation. The fly in the ointment is that product designers need to be close to end users, if we’re really going to solve WCM’s endemic usability problems. But as Peter Monks points out, having your vendor do implementations doesn’t necessarily make that happen, especially if there’s a sales/services team sitting between the product devs and the customer.

benmorrisuk We need fewer tick-box style RFPs that fail to prioritise requirements and encourage boiler-plate functionality from vendors

sliewehr … the RFP checklist paradigm is a *result* of the #WCM vendors’ sales process. Live by sword, die by it

I don’t think vendors can take the blame for mind-numbing checklists. If you’re parachuted into the “select a new CMS” job at your business, the easy/lazy thing to do is is download an RFP from somewhere and chop it around a bit. Much easier than doing real analysis of your business needs, and at least it will help you winnow out some vendors from that very large pool of possibles. How about if agencies and vendors boycotted the damn things? I’ll do it if everybody else does…

adrianmateljan Are the likes of @cmswatch diverting us from the real implementation issues? Perhaps #agencywatch would be more appropriate?

I’m sure Adrian knows CMS Watch are on the ball with analysing needs rather than software. But I’d certainly agree that resolving these issues is more a job for agencies than vendors: agencies are building solutions; vendors are selling tools to implement those solutions. Come on, agency guys! Do your bit!

sliewehr @HammerToe Ah, the $1m question…A: Stop selling features / function and start selling value. Make the selling process educational.

“Make the selling process educational”, that’s a useful thought. Without consciously setting out to do it, I’ve generally found customers very receptive to some element of education (in a non-electrode kind of way) during the sales process.

s2d_jamesr I would like CMS vendors to spend a few days with actual authors using their product, to really understand needs

You mean “understand pain” really, don’t you? But more than a few days! Vendors need to see how actual authors use their product continuously. Somehow. The advent of better user experience monitoring tools might be part of the answer here.

scroisier IS WCM all about (intelligent?) aggregation and rendering of content or should it also covers Social Collaboration tools

Good question. Your best advocates aren’t even on your payroll, they’re your customers and partners, and the content they generate can be some of the most valuable. Plus everybody is anyway generating content in other apps (like Twitter or WordPress, eg. for this discussion). So federating all that looks like an increasingly important part of the puzzle.

One thing does seem clear from this exercise: a lot of people who work in this industry think WCM is broken and needs fixing. Which brings us back to Justin’s point: there are too many vendors because it seems like there is (still!) opportunity in this market to (finally!) do it right.

Filed under: General, , ,

CMS and the innovator’s dilemma

At the recent StackOverflow DevDay in London, Joel Spolsky talked about whether your product design should favour simplicity or features, continuing a simmering debate he’s been having with 37 Signals. Spolsky wouldn’t disagree that simplicity is generally better for user experience. But – and it’s a big but – he argues that features are better for revenue. His experience is that customers buy features: whenever they release more features for FogBugz, they see sales go up. More features help protect revenue, not least because you can upsell to existing customers.

This made me think about the trend for CMS vendors away from loosely coupled solutions and towards big all-singing, all-dancing suites, which are competing on essentially the same feature set. The CMS market (at least at the ECM end) now looks like classic innovator’s dilemma territory. Briefly, the innovator’s dilemma is that successful innovation-based businesses usually got to be that way by listening to their customers. When a new innovation comes along, it’s typically only better in some specific way, fitting some edge case; a worse is better solution. For the vendor, the profit margins on the new thing are worse than for the existing business, and the existing customers don’t even want it. So it’s hard to justify putting resources into addressing this new thing. By the time you (and your customers) realise you do need to do something about it after all, it’s too late. Some startup business has captured the new market.

In the CMS world, WordPress are the obvious threat here. Other vendors might scoff and say “it’s not even CMS!”. Well, no. Quite. That should set your innovator’s dilemma alarm jangling. There’s an “edge case” problem that WordPress solves rather well: instant-on deployment. As the web gears up for real-time, that starts to seem less and less of an edge case. Also check out (when their servers are up 😉 – a kind of frontend for building business sites on WordPress. is another contender. No, it’s not really a CMS either, just a content repository. But a very extensible, web-oriented content repository. Hey, we shouldn’t even write off Google Sites, even though it’s crap. Maybe sometimes crap is better.

I’m sceptical of the suite approach. It doesn’t even fit the facts on the ground: your staff are already using other tools outside your firewall to contribute and curate content about your business: get over it. A loosely coupled solution that connects people (in and outside the business), content (wherever it lives), and apps (that are already in use anyway; that are “best-of-breed”); now, that looks like a better idea.

Filed under: General, , , ,

Another blog about content management

I’m going to use this new blog to talk mostly about web content management, and a little bit about interaction design. (If you’re actually interested in where I’ve been on holiday, what books I’ve read recently, which bands I’ve seen, or what leftish Euro political views I espouse, you can always check those things out here.)

Web content management is a field I’ve been working in for 10 years now, initially as a developer at, more recently as product and interaction designer at Kitsite.  A decade might seem a long time to be plugging away in one category of software, but in many ways WCM is more interesting now than it has ever been. That’s because it sits at the intersection of the web and the workplace, and both are undergoing fundamental change.

The web’s becoming more social, open, and (finally) mobile. While the workplace is becoming more agile, personal, and distributed. For business, these trends mean the boundaries between what’s inside your company and what’s outside have become more permeable. At the same time, the advancing capabilities of web browsers and spread of broadband mean that it’s possible to deliver richer web-based user experiences.

This all has a huge impact on WCM and will I think create a lot of new opportunities for what until fairly recently seemed a moribund field. After a decade of seeing content management platforms converge in functionality, the game has got exciting again. Hurrah!

Filed under: General, ,

My tweets

Other stuff