Wordpress is not a toy

I write this out of great frustration, because, as far as I remember, toys are fun to play with. There is a well known CompSci joke: “You have a problem. You try to solve it using regular expressions. Now you have two problems.” I feel like that, with the difference that Wordpress causes more than just one thing to break. At the end of the day, its architecture is wrong, and its information model flawed. Tools should be robust and bomb-proof, always guaranteed to produce correct output, but Wordpress cannot.

I have been trying to get MathML working, and it is not hard, but it should not take bug fixes (one, two). Several things worry me: all my text is stored using a woolly markup language, namely HTML minus some paragraph and break elements, which are added back in according to some internal Wordpress craziness (using the wpautop function) which is not stable and far from obviously bullet-proof. This is fundamentally the wrong thing to be storing in the database. Secondly, my text is processed by very non-trivial regular expressions many times. That is dangerous, because they could break the content in many corner cases. On the other hand, ought I not to be confident that at least a large number of test pages have ensured the corner cases are very infrequent? Unfortunately not, because thirdly and most worryingly, I can be absolutely sure that the Wordpress team has not checked a single page for well-formedness. I know this because on a default installation every page contains some tiny errors which nonetheless force any validator or XML parser to abort with a fatal error. So, in fact, apart from the few dozen pages on this site, I cannot assume that any testing at all has been done.

That is extremely worrying indeed, and I will dump Wordpress after the exams. A tool I thought would be easy to set up a site with quickly, and having so many raving reviews, turns out not only not to stroke the techie in me, but is in fact genuinely and consistently flimsy.

Only expect fun from your toys.