Wiki Words Considered Harmful

This page points out the disadvantages of WikiWords. For another point of view see WikiWordsAreConcepts.

They promote the use of the awful trendy "StudlyCaps", which is unfortunately now too established to truly call trendy, but perhaps not embedded into the culture firmly enough to be tolerable.

They screw up search engines. Google does not stem words. If you put BobJonesUniversity? in your page, google will not find it when someone searches for "Bob Jones University". It will find it in the title however, and will follow the links to increase the overall page rank, but not the relevance since the links to the page aren't the same as the search term).

OTOH, if you enter BobJonesUniversity? into google, it will not hit your page easily. And if in the page you enter "Bob Jones University" you will get hits using either.

Actual Results:
 Searched the web for BobJonesUniversity?.       Results 1 - 10 of about 63.     Search took 0.34 seconds. 
 Searched the web for "Bob Jones University".   Results 1 - 10 of about 42,400. Search took 0.21 seconds 

63 results vs 42,400. I think that sums up my point quite nicely. One presumes that when they are searching, more is better, and that sorting by relevance is more important than narrowing the results to pages hosted by a specific software. Searching for BobJonesUniversity? is great if all you want to do is search Wikis (and the first page that comes up is probably this one).

Actually, it's "The Multiracial Activist - 08/31/98 Interracial Dating Policy" at (this page is currently fourth). -Josh

This could be solved if Wiki displayed links in browsers (and, thus, bots) with spaces, instead. Of course, this would have problems with pages such as Zo Pe... but since most links are multiword, this would be an acceptable loss, IMHO. Dragon Dave, <d.n.mckee@durham ac uk>

You can't link single words or longer phrases effectively, and have to rewrite your vocabulary to fit the tool instead of letting the tool assist you. I want to read about Java, not JavaLanguage. If I'm on a programmer's wiki, there's really only one context for this noun, and it's simply pedantic to insist otherwise, that someone might be referring to an Indonesian island.

They screw up the symbolic recognition systems built into our own brain (aka language). The flow of text is supposed to be natural, WikiWords force you to readjust your reading comprehension. I predict that if a scientific study were conducted, it would show that reading comprehension would go up! // Hypothesis, experiment, conclusion. I suggest doing so with a statistical sample. Given the way German likes to compound words, it would probably make little difference in germanic language speakers though. // There is research that shows the opposite, namely that people recognize words as a unit (not composite wiki words), and that capital letters slow things down. See, for example, the article titled "The Science of Word Recognition" at

After reading the article, one might come away with a an understanding that the studies seem to indicate that the mind works to assign meaning to a word in a stepwise fashion, looking first at word extremes, then letter by letter until the word makes sense in the context presented. If a word is a WikiWord, in a WikiContext?, it seems to follow that modification of how the mind parses WikiWords would be similar, and easily integrated. WikiWord recognition can most easily be explained as recognizing NamesConceptsAndProcesses? within a simple singular word construct, and existing to establish a meaning as ExternallyElaboratedWords explained by pursuing the link to explain, aid comprehension and promote understanding. The recognition of this nuance of word construction remains contextual and should be interpreted in the same sense: ItDepends. -- DonaldNoyes

Wikis are supposed to be textual, great medium for the blind. Have you heard what happens when a screenreader hits a WikiWord? Usually it gets it right, but the pacing is completely screwed up. (So the blind could then tell the difference - right? Isn't that what your want?) // No, a screenreader is able to distinguish a link through other mechanisms that blind folks are used to.

Abominations: CeeLanguage, ZoPe. Those just stand on their own and need nothing from me.

I'll admit that while WikiWords have their uses, this is a one-sided rant, and I'll leave it to defenders to present arguments in favor. (The best argument is based on successful usage, and there are nearly 23000 such WikiWords used as page links. That is argument enough.) // Argumentum ad populum has no truck with me. There are more VB programmers than Java Programmers too; this does not make the DIM keyword intrinsically better

What relationship does acceptance and usage have to intrinsic worth? Does this not depend more on who you ask?

VisualBasic and Java were created for different purposes and use greatly different syntax and construction.

Each wiki has different purposes and means of linking. To be successful in using either, you are required to follow the rules.

To expect all languages and wikis to use a common and universal set of rules is not realistic. WikiWords are certainly considered harmful when used outside the rule set of the server/browser used.

This is precisely the point. WikiWords limit their applicability to the WikiWikiWeb, and not the WorldWideWeb. The requisite shift in cultures and philosophies is, in the opinion of this author, gratuitous and avoidable. This seems to be an entirely moot point though, and the whole rant approaches intellectual indulgence, because most new wiki engines support some form of free links, and don't appear to push the WikiName syntax too heavily.

The standard retort to this is "do you have something better?". Well, yes: FreeLinks (WikiWorded here because I don't know of free link support on this wiki). Everything2 used square brackets, UseMod uses double square brackets, some wikis use double parens, one uses backticks. Considering the rest of the wiki markup one must learn, it's not a difficult conceptual leap to grasp free links. Linking something becomes an explicit action, and one can link anything, including a whole phrase.

Abominations: CeeLanguage

When I'm trying to *search* the web for information on the C programming language, I find that I *can* search Google for "CeeLanguage". Is there *any* non-abominable way to spell it that still lets me search for it on Google? (How did Robert Munafo search for C for his programming language comparison ?) -- DavidCary

Thank you for following ThreadMode conventions. I think I've spilled enough bits explaining where the restriction is not successful. I'm not saying they're useless - typing out the word ThreadMode itself had a certain flow for me, I knew the single AdjectiveNoun combination would be the most likely candidate for a WikiWord and not some random clause of a free link, and so on. But being forced to find the "right" WikiWord ... what's the "right" wiki word for Zope? (see WikiSingleWordProblem)

I still can't help but think it's due to the simplicity of the tool. I don't see why the wiki engine or even the editor couldn't simply pull out "Bob Jones University" in any context once it's been free-linked once (I have no special affinity or emnity for this university btw, it was just for sake of example). I think the savings in readability, printability (WikiPages loaded with WikiNames look WikiWeird? when printed ;) ) and ease are well worth any extra complexity this might add.

Admittedly, it might not be Wiki, but I'm not fond of the way the philosophy is approaching religion...

For display and readability purposes it might very well be that rendering the WikiWords with spaces is advantageous. The best example is WhyClublet. But that has nothing to do with editing or the restrictions associated with WikiWords.

In my RebolWiki, I use question mark, double quotes, the name then double quote. For example: ?"Bob Jones University" and for names with no space, just a initial question mark, like: ?Test. It seems to work very well for me.

Is there a reason for the restriction that the words in a WikiWord must have "at least two letters each?" If the rule was simply that it must contain more than one upper case letter this would also make acronyms automatic WikiWords thus inviting a definition for anyone who doesn't know the acronym.

Also, is there a reason why numbers are not allowed in a WikiWord?


-- PaulRautenbach

I totally agree on this. I didn't know what CRC sessions are and there is no easy way to create a good WikiWord, without changing it to something ugly like CrcSession?s, which obfuscates the term.
WikiWords represent everything that is wrong with software engineering today. Convenient for the developer, but confusing for the naive user and ugly for everyone.
That post reflects everything that is wrong with those that exaggerate.
One main objection seems to be that wiki words make it hard to link things casually in the middle of a sentence. On the other hand, I don't think that's such a good idea to begin with. In my experience, such links tend to be visually distracting, break up the flow of the material, and usually end up being spurious. Most well-designed pages tend to keep links separate semantically. For instance:

With or without wiki words, the former is more useful, and as such it's not really bad that they act like compound nouns. In particular note the Language suffix serves to identify the word as a page name - otherwise we would tend to refer to it as the [Java] page anyways. Not that this is to say wiki words should be used to force good style, or that they don't have other disadvantages.

I agree. Most Wiki implementations smell too much of the code and not enough of the user. My personal pref would be a full-out LJ-style Ajax editor that would handle any styling through GUI, but in the absence of that an HTML-style syntax would be better than mucking about trying to remember which apostrophes correspond to which styling, and why the hell my text didn't italicize. Is [Code][/Code] and [li] and suchlike really that hard? Everybody knows HTML, not everybody wants to learn a new style over and over again.

As for the links themselves: case insensitive matching, whitespace stripped to one character, full matching. Title editable in a separate window from the page, so that pages can be recased or even renamed (currently a copy/paste pain) with optionally auto-update of backlinks. Colon-based Namespace scoping optional for convenient inter-wiki connections (rather than the big graphic "this is located on X" - it's practically a title page). Convert spaces into underscores and underscores into double-underscores just for the URL to make it easier to write outside of wiki.

But I'm just a complainer. -- MartinZarate

Isn't the idea behind WikiWords just a way to auto-generate web links in pages created with a plain-text editor, sort of like the auto-HTML for other text formatting syntax?

Why not just have the Wiki server put html links for any word or word group that matches an existing page on that server? I can only assume that the original design created WikiWords because they can be converted to links without pattern matching against a changing database of known pages. In other words, WikiWord processing is the easy way out of doing it the Right Way.

One advantage of doing away with WikiWords is that one page could include keywords so that more than one word/phrase could point to the same page.

See also WikiNameDisadvantages, WikiWordsAreConcepts, HolyWar, WikiNameInRealLifeSyndrome, CamelVsNonCamel PleasePleaseTryToAvoidLabeling

Category ConsideredHarmful

EditText of this page (last edited October 12, 2010) or FindPage with title or text search