Stuff thats Broken: WYSIWYG Editors

This comment started me thinking about GUI design again:

This incident strikes me as a glaring example of how broken web design is.

A simple page like that should be easier and faster to create from scratch using a WYSIWYG tool, and then publish to a web platform that support it…. than copying the source and then editing it in a text editor.

I know in the past such WYSIWYG tools were too rigid and thus we have a generation of designers that work in text…. but it just seems so archaic to me.

Like building images with text, rather than using photoshop. — nirvana on hn

I completely agree with nirvana. Just think about it. Web designers still have code their designs, the existing WYSIWSG editors pretty much suck and make the process more difficult than writing HTML code with a text editor.

Imagine a world where this whole process of slicing, coding and cross-browser testing won’t exist anymore. This would be pretty awesome. Just create your design in Photoshop, export the .psd file into the application and specify the behavior of the resulting html file, possibly with customization for various template engines like WordPress, Drupal, RoR or Django. That would be awesome. The resulting code should be small and work on all current browsers.

I saw some auto-generated html code and often it’s pretty terrible. Why not start off with simple grid frameworks and define semantic elements a priori. Most websites share common elements like content, navigation, a footer or info boxes.

That’s one thing I’d love to see, so if somebody want to accept the challenge, go ahead!

One man’s meat is another man’s poison. user interfaces.

GUI/UIs are important. It’s often crucial.
People use Kate instead of emacs or vim although vim and emacs are more powerful. But using emacs/vim is not that intuitive as using Kate.
There are many other comparisons. So, why do (open-source) developers neglect the UI?
From my point of view, making UIs is kind of boring. Mostly, it’s redundant, time-consuming and not decently abstracted.

Redundancy: Sometimes you’ve made a proper simple CLI. It works really fine but not for your users.

Time-consuming: Some clever frameworks generate parts of the UI for you. That’s pretty nice. Though, if you don’t have a suitable framework and your data isn’t modeled correctly you have to do it manually.

No decent abstraction: I think that’s a deciding point. Which UI is right? Which UI is wrong? If you are working on a DBMS you know which output is right or wrong. If SELECT user_id FROM user returns nothing although there are thousand entries, you know that is wrong. Its behavior is bad. But you don’t know if it’s bad if you put the calculate button on the left or on the right. There aren’t really metrics for UIs.

So, what can we do? Delegate the work. Look for someone who loves creating UIs. If you are working in a large (software) company there are probably UI-Designers. In open source projects UI-Designers are rare. Maybe because most open source projects don’t attract designers. Many websites are simple and pragmatic and designers aren’t attracted. It’s a vicious circle.

Time for intervention. Looking for someone on a flashy graphics board and maybe introducing him into the basics of a graphic framework.
They will love it because they are working on a great project and you will love it because you can concentrate on the code.

Update Here’s an article and some great comments about visual artists in open source: Pin Stack.