Let me begin by saying I love Wikitext. It’s not pretty, but hell if it doesn’t get the job done. There’s been a lot of talk floating around (especially in light of this grant to improve usability in MediaWiki, which I am 100% for) about trying to get a WYSIWYG working–to acceptable standards–to help lower the bar to contribution.

I hate WYSIWYGs. Granted, I’m also a developer, but I’ve never felt that a WYSIWYG ever gets you as close to what you want as editing the raw source (and hence, I’d be opposed to any solution that took away raw editing and forced a WYSIWYG). I’m not the first to say it, but WYSIWYGs are a misnomer. You will never “get” what you “saw.” However, you’ll get a pretty good approximation of what you meant for it to do. I suppose for basic editing, this is good enough. Bold, italic, that kind of thing is easy to reimplement in a new interface for editing. It gets a whole lot harder when you start adding more complex things, such as tables, templates and other block-level elements.

Unfortunately, without a well-defined grammar (see bug 7), it gets really really hard to do back-and-forth translation of wikitext. Right now, wikitext parsing is a 1 way move. We can turn wikitext into XHTML, but we cannot go the other way. Given a block of arbitrary XHTML, we cannot turn it into appropriate wikitext. This is a bad thing and makes developing a WYSIWYWLTG (What-you-see-is-what-you’d-like-to-get) much harder.

In other wiki news, we’ve got a nice discussion going on on a previous post. Trying to make the ForeignApiRepo more fault-tolerant. Right now, when it fails, it fails hard. Graceful failings are nicer to end users.