CamelCase is a form of markup for phrases, in which all the spaces are removed, and all the words are capitalised, SortOfLikeThis. The name comes from the "bumpy" look of CamelCase words, where the taller capital letters are like humps on a camel. It is a popular practice for creating links to wiki pages. The historical reason for this was that the original wiki, WikiWiki, was originally the Wiki:PortlandPatternRepository, a place to discuss design patterns for software. The Patterns community at the time were a subset of the Object-Oriented community (from the OOPSLA annual conference), who were in turn heavily influenced by the original fully object-oriented programming language, Smalltalk. Class names in Smalltalk are forced to be CamelCase, like PreferredCustomer, by the environment. The original object-oriented programming language, Simula '67, was similar, but not forced.
For people from this background, their brains automatically read CamelCase as a type loaded with the connotations that we build into that type, which seems rather appropriate for a Patterns-esque wiki.
See also DromedaryCase, LinkPattern, WikiPedia:CamelCase
Use as wiki link pattern
Good:
- Feels like a single conceptual token, which is good in a PatternLanguage. Contrast Wiki:TestInfected with [[I am infected by the idea of testing]].
- You can SmashWordsTogetherAndHope - this makes linking easy.
- You can easily select CamelCase with one mouse- (double-click) or KB-action (Ctrl+Shift+Left at the end of a word) and then with another click googling for it (via KwiC, or drag and drop into a search-bar) - this improves finding AccidentalLinks.
- Arguably better AccidentalLinking than FreeLinks.
- Discourages common forms of pseudonym
Bad:
- Single words which can have odd systems of separation such as DemaGogue, when the words are not meant to be separate. This also can look UgLy.
- Hard to read. See related discussion on AvoidClutterLinks.
- The NoSuchPageSyntax may be confusing for newcomers.
- CamelCase links match too many things accidentally. Wiki:SixSingleQuotes is bad.
- Hinders indexing by google, etc, which expects "soft security", not SoftSecurity.
- Only works for writing systems that have separate capital and lowercase forms. Other writing systems, such as Chinese characters, cannot be used with CamelCase. This may prevent some contributors from using their real names.
Distinctiveness
CamelCase is a distinctive feature of wikis, not seen elsewhere on the web. Most "thriving" wikis have strong social customs, and a distinct look may help the community form. Then again, strange quirks sometimes hold a community back from wider acceptance: and camel case looks alienating and techie. Still, this may be desirable as a HardSubmission feature, given that CommunityMayNotScale.
Stuff
You'll notice Ward inserts spaces in the page titles to make them look better, but doesn't bother in the text itself (which is where most pagenames actually appear).
At the moment, using XML is the simplest thing I can implement, because it brings a wide variety of features into a single syntactic system which is easy to parse. I'll get some experience with it and see how it goes, maybe change it later if need be. A compromise might be to adopt CamelCase but insert spaces into the text rendering as well. I am storing pages in a parsed form, so the syntax used for editing can be changed without breaking old pages. (And potentially, different users could use different syntaxes.) -- DaveHarris
When creating CLiki (Wiki:CommonLispWiki"") I was more or less forced into an alternate syntax for links: Lisp people (self included, actually) don't like CamelCase much, and most of its purpose presently is to categorize software packages - maltreating their names (MaiSQL, CLOCC, CMUCL, etc) is not going to help anyone find them. So I have _(This is a link) instead. --DanBarlow
discussion about SingleWordWikiName's '''
To improve accidental linking, it would be great to allow a single capitalized word as link pattern like e.g. "Collaboration" -- fp
The usual response is that single words lack the necessary context to form good links. I think this is less true if we have SubPages, where the main page provides the context. Thus AccidentalLinking/Collaboration may be a good link. However, the benefit over AccidentalLinkingCollaboration is fairly small.
Also, single capitalised words are very common in normal text and we don't want too many accidental links. We would probably need some more explicit form, like [Collaboration] or ?Collaboration. -- DaveHarris
Agreed that some allowance for SingleWordWikiNames would be a good thing. For example, on [NeuroWiki], I've found myself creating names like NeuronCell and NeuroBooks, NeuroJournals, NeuroNews. The Neuro-something names are redundant, as ostensibly everything on NeuroWiki has to do with "neuro" stuff. They are also a little too cute. But names like NeuronCell are the worst; it is almost painful to type, and i feel that some biologists might see a web site using the term "NeuronCells" as less than serious.
also, i concur with DaveHarris: SixSingleQuotesMustDie
(aside: strangely, i keep forgetting to use Wiki:SixSingleQuotes and leave four quotes instead) -- BayleShanks
CamelCase words qualify for GoogleTagsCombinations. -- FridemarPache
see also LinkPattern