Patrick Michaud's comments regarding the "audiences" for which PmWiki was designed:
I think of PmWiki in terms of two audiences: WikiUsers? are the people who generate web content using PmWiki, and WikiAdministrators are the folks who install, configure, and maintain a PmWiki installation on a web server. In some senses it could be claimed that as the primary developer of PmWiki I should only have WikiAdministrators as my target audience, and that WikiUsers are the target audience for the administrators. But what really makes PmWiki useful to WikiAdministrators is that I've put a lot of consideration into creating a tool that is usable by WikiUsers, so I have to keep the needs of both audiences in mind as I'm designing and adding new features to PmWiki.
Within the WikiUsers audience I see that there are "naive authors" and "experienced authors". "Naive authors" are the folks who use wiki to generate content but may know next-to-nothing about HTML, much less style sheets or PHP or the like. Naive authors are easily discouraged from generating web content if they have to wade through markup text that has lots of funny and cryptic symbols in them. So, if we want a site with lots of contributors, we have to be very careful not to do things that will cause this group to exclude themselves from participating.
"Experienced authors" are the folks who know a lot about HTML and could write their content as HTML, but have chosen to use wiki because of its other useful features (ease of linking, collaboration, ease of updates, revision histories, etc.) or because they want to collaborate with naive authors. Experienced authors usually don't have any problem with documents with lots of ugly markup in them; after all, they already know HTML. Experienced authors are sometimes frustrated with wiki because it doesn't have markup that would let them do something they know they can do in HTML (e.g., tables, stylesheets, colored text, etc.). And, they sometimes have difficulty understanding why naive authors would turn away from documents that have lots of markup sequences in them.
For the WikiAdministrator audience--the folks who install and may want to customize PmWiki--their backgrounds and goals are often quite diverse. PmWiki is designed so that it can be installed and be useful with minimal HTML/PHP knowledge, but it doesn't restrict people who know HTML/PHP from doing some fairly complex things. For one, PmWiki allows a site administrator to build-in markup sequences and features customized to his/her needs (and the needs of his/her audiences).
The separate needs of these audiences are behind most of the PmWikiPhilosophies. The people who develop PmWiki software must continually keep naive authors in mind as new features are requested and proposed by expert authors and WikiAdministrators. Sometimes it may seem to these latter groups that it's okay to implement the complex features because "naive authors don't have to use them", but the truth is that if complex/ugly markup sequences are available then they will eventually be used by someone, and once used they become a barrier to the naive authors. So, if I see that a feature could become a barrier to a naive author I don't include it in the base implementation of PmWiki, but instead find ways to let WikiAdministrators include it as a local customization.