where web content management and user experience collide

Hey, agile developers: the CMS is a different product from the website

So you’re working on a big new website development, overhauling all the functionality and delivering a better user experience to your site visitors. Naturally you’re using an agile development methodology. It’s going to rock.

In this scenario, it’s very easy to think of the CMS as merely a component of your solution. Probably there’s a little box for it on your high-level architecture diagram.

But really, the CMS is a distinct product (in the agile sense). It has a different set of customers, ie. the staff who will be updating the site content. They have different goals from your site visitors.

That means the CMS needs its own agile track in your development process. Most importantly, CMS development (or, more likely, customisation) must have its own customer representative, who represents the product stakeholders (the staff), and who drives development priorities.

If you treat it just as a component, then chances are your developers will implicitly be taking this role on themselves. They will be setting priorities and making decisions on behalf of stakeholders who they simply don’t represent and quite possibly haven’t even spoken to. This is a recipe for bad product.

How will you know if you’ve succeeded? Again, you should apply many of those same techniques that you’d use to optimise your site to ensuring that your CMS is also great. A/B testing might be tricky given the likely small size of the customer base. But you should definitely have a clear idea about success metrics and how to measure against them. Whatever methods you’re using to evaluate the site, it’s worth thinking about whether and how they can apply to the CMS.

It’s puzzling to me that there are some developers who seem to think that this is a waste of time. I bumped into one on Twitter recently. But over the last decade in particular, developers have benefited enormously from better tools and processes, making them way more productive and happier with their work [yeah, “citation needed”, but I believe it’s true]. Why would you expect that you can dump crappy tools on other staff and still expect them to do the best possible job?

This post based on a true story.


Filed under: Development, ,

You need to pivot for your internal customers too

I’m a fully paid-up fan of the lean startup movement, as popularized by Eric Ries. The core idea: iterate fast to discover who your customers are, and pivot to better address their needs. Given the way agile methodologies and modern web frameworks have accelerated the pace (and reduced the cost) of web software development, this approach makes a lot of sense if you’re building a new consumer-facing app.

But are these ideas also applicable in the CMS world? I think so. CMS is a broad church, with many products and very many features bundled into the average product. That diversity is good because (as, eg. Tony Byrne and co never tire of telling us), so are customer needs and use cases. For most CMS projects of any size, there will be a significant amount of implementation and customisation work to get the product tweaked for the particular scenario; often half the budget or more.

One approach would be do to a detailed analysis before you start the implementation; define stories, roles etc. Then configure your product to match that specification.

Or you could go the lean route. Just ship. Install the product, watch what the users do, and tweak the implementation as you go: pivot to meet their needs.

But that suggests some new requirements for your CMS. First, you need to be able to see what users are doing: what kind of analytics does the CMS expose for editorial usage? To some extent you could use surveys or workshops here, but hard stats will certainly help. And then how quickly can you act on your findings? For example, how easily can you reconfigure your CMS UX—and then roll back if you get it wrong?

There are risks with this approach of course: your editorial users need to be involved in the process so that they don’t get frustrated by the ground shifting under their feet: consistency is close to the first law of UX, after all. But on the plus side, you can get started more quickly, and your solution should end up better aligned to editorial needs.

I’d be interested to hear any success (or horror) stories from people who’ve gone down this route.

Filed under: General, , , ,

Stickybits: more content management for the internet of things

where “things” in this case are identified by barcodes, rather than any kind of geocode. Yeah, barcodes, the poor man’s RFID. Except that 1) you can actually find them in the wild, and 2) barcodes are like class variables to RFID’s instance variables. In a lot of contexts (eg. shopping) that’s more useful.

Stickybits’ focus seems to be on tagging barcodes with related digital assets; but you can add text as well, and you can imagine how the service could be quickly extended to add more CMS-like functionality (assuming anybody turns out to want it).

Unsurprisingly – given the somewhat porny name – they’re a startup. My guess is that most of the interesting plays in this new arena are NOT going to come from established CM vendors, though there might be a bit of acquisition down the line.

Filed under: Recently seen, ,

CMS events at SXSW 2010

Here’s a list of the obvious content management-related events I’ve found in the SXSW schedule. Do let me know if I’ve missed anything.

Web Content Management Systems from a Designer’s Perspective
Sat, 9:30
Not a lot of info at this one. By Scott Fegette from Adobe and  Chris Charlton from XTND.US

CMS Admin. UX Gateway to Heaven or Hell
Sat, 11am

With so many different people using Content Management Systems there should be a best practice, intuitive user experience for the admin. So why do Drupal, Joomla, WordPress and others do it so differently? Take an inside look at the UX process used in developing some of the leading CMS admins.

A topic dear to my heart. Though if those are the only products under consideration, the scope is a little narrow.

Bringing it All Back Home: CMS Communities
Sat, 12:30

When you adopt a Web content management platform, you’re not just getting the software, you’re also becoming part of a community that develops, uses, and supports it. With the help of representatives from the Drupal and SharePoint communities, we’ll explore how different CMS communities are structured and operate, and the impact that they have on the experience of using that software.

Managing Your Content Management System
Mon, 9:30

An effective content management system is a must for any content-based web service. This technical session will discuss elements of designing and building a custom CMS that leverages technology and existing web data from sources such as Flickr and Wikipedia to automate research and increase time spent writing original content.

R.I.P. Content Management System
Mon, 11am

The medium is the message. On the web, the medium is community. This shift has made legacy CMS products as outdated as scribes and printing presses. Open source technologies are disrupting this market and moving into mainstream enterprises. Join Drupal founder Dries Buytaert as he discuss how social publishing will bring content and community together.

Slightly provocative (ie. troll baiting) title for this talk by Mr Drupal, Dries Buytaert

ExpressionEngine 2.0: Total Domination!
Mon, 12:30

ExpressionEngine is growing in popularity and with the release of 2.0, it’s power has expanded to the stratosphere. Powering great websites such as, A List Apart, and Campaign Monitor, it represents an amazing way to build websites and publish content. Join us as 5 experts give best practices from a beginner front-end level up to extension developer supreme

Official winner of the “most product-pitching event title”, 2010.

It’s worth noting that there are many other events of interest to CM people; in particular, a load of stuff around content strategy.

Filed under: Events, , ,

What’s the core entity in the WCM data model?

Is it Document or Page? Or should you go lower level: what about Component or even Attribute?

Actually, trick question. I’d say the core entity is more like Task or Process. Without these kinds of things, where’s the “management”? You’ve just got a content repository. WCM is about letting people do things with their content. If you’re doing goal oriented design (a good idea!) then this is the place to start.

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, , ,

My tweets

Other stuff