Beemer (dr_tectonic) wrote,

WYSIWYG considered harmful?

I was talking to my Mom today about various Microsoft products, and had an interesting thought:

Do WYSIWYG interfaces cause more problems than they solve?

The idea behind programs like MS-Word is that they make life easier for the user by hiding the structure of the document, protecting the user from dealing with it and intead allowing him to just interact directly with what gets presented. (This is most obviously applicable to text documents, web pages, and the like; with an image, the structure is the presentation unless you start getting into color separations for printing. But there are also things like GUI builders that are WYSIWYG.)

This is a great idea -- when it works. But my Mom's complaint is that it often doesn't work, that things will look different when they print than they do on the screen. So the first problem is, how reliably is WYSI actually WYG? Because when the correspondence between seeing and getting breaks down, it's more work to fix it with a WYSIWYG interface than a more abstract interface. To work well, WYSIWYG interfaces need to be map structure to presentation in a really robust and consistent way. This problem is even more obvious with webpages, where presentation has to be handed off to one of several browsers that can render the same content very differently.

The flip side of this problem is that when you do need to actually deal with structure directly, it's often really ugly. Since all that the WYSIWYG interface cares about is presentation, there's no particular incentive for it to keep the structure clean. So you'll get things like six nested layers of HTML formating tags applied to nothing. Irrelevant to display, but a pain to wade through looking for a problem, and sometimes things that seem to be invisible can actually affect display in weird and subtle ways.

But I think perhaps the most insidious problem is that it lets users create documents without thinking about the structure in any way. There are times when that's worth doing: some tasks are lightweight one-shots that neither need nor deserve serious attention. But it also encourages users to do things the quick-and-dirty way: using tabs and spaces to center text, or increasing font size instead of applying a "header" format. This is an approach that creates a lot of extra work if the document ever needs to be modified. It also lets users remain at an amateur skill level even though they use the program frequently. Why learn the more complicated way of doing it if the brute-force method is good enough, even though it takes ten times as long?

There's also a lot to be said for treating composition and formatting as separate tasks in the creation process. I've found that working with straight text first forces me to pay more attention to the organization, and formatting it later makes it more consistent in presentation. You can waste a lot of time dithering over what font size to use for subsection headings, only to get halfway through editing and realize that you don't wany any subsections at all. Heck, I even do this with the raw text: first, I figure out what to say, then I figure out how to word it appropriately for my intended audience, and it comes out a lot better than if I just try to produce the final product in a single pass.

So I'm thinking the best match for a WYSIWYG editor, which doesn't require much thought, is a document that doesn't require much thought either. The longer-lived and more complex a document you're trying to produce, the more likely that you'll be happier in the long run using a tool that encourages you to build something with a clean structure that's been thought out.

Whaddaya think?
  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded