So I guess the question is : how would a pattern approach compare with a more traditional typology?
At the bottom of this page are a couple of extremely crude example patterns, just to give a flavour of how a pattern approach to documentation might work. (It's way too simplistic, of course. And this is very much in the style of a SoftwarePattern rather than Alexander's.) -- PhilJones
I guess - what i want from a typology is a (loosely) 'axiomatic' account that shews the links between the different types of collective action problem, how they would turn into one another, what has to be present for one to exist rather than another, how one could be transformed into another etc.
My gut feeling then is that a 'pattern language' would be a second best to this. I suppose this was at the root of my questions about pattern languages - 'Are the ways in which the patterns are related to each other described or 'typed'? Or are these just lists of links, like the links between pages on the wiki? If the latter, could there still be a hidden or as yet undescribed grammar of patterns out there somewhere?'
The epistemological question I'm hovering over is - are all pattern languages potentially replaceable by 'axiomatic' typlogies? -- DariusSokolov
what does "axiomatic" mean? (That's a word I'm always a bit vague about in this context.) My guess is you want something more formal, such that we can do some kind of logical reasoning / formal transformations on it. Something like "CAP1 + CAP2 are equivalent to CAP3 and you can always solve a CAP3 with a transformation T1."
If so, I agree it would be really nice to have that sort of calculus of decision making. And certainly Patterns aren't what you want; patterns basically exist as fall-back documentation of "best-practices" when you've failed to find a formal description of the problem.
Pattern : Representative Democracy
Problem : In a democracy everyone's opinion should have an influence on every issue. Unfortunately, many people don't appreciate the constraints between issues and want inconsistent ends. (eg. low taxes and well funded health-care). When agrogating opinions using DirectDemocracy, your decision making process is likely to result in an unworkably inconsistent set of decisions.
Solution : Have the people vote for a smaller number of representatives who understand the constraints between the issues, and who offer a package of internally consistent decisions. Because each voter influences the choice of representative, and each representative has a consistent package of decisions, each voter does have an influence on all decisions.
Potential difficulties : If the representatives don't offer consistent or complete packages of decisions, then electors are essentially disempowered.
See also : Consider implementing ManyFreelyCompetingParties who can offer variations on the packages of decisions. This makes it more likely that voters will find a package that represents their interests.
Pattern languages also strongly encourage the idea of documenting anti-patterns, things which look like the right solution but lead to greater problems. For example
Anti-pattern : Strong Leader
Problem : Sometimes the group doesn't seem to be effective at making a collective decision due to deep disagreements between various high-level executive agents.
Proposed solution : Concentrate more power at the very top and remove it from the second tier of warring factions. This allows the strong leader to over-ride the issues of this inconsistent second tier.
Greater Problem : Very strong centralized leaders tend to be less responsive to the desire of the whole group, due to lack of the checks given by the second tier. There is greater danger of the strong leader acting out of prejudice or blindness.
Also, this disempowering of the second tier makes them less responsive to the electorate. Instead they concentrate on ingratiating themselves with the strong leader.
Alternative Solutions :
Look into ReorganizeTheStructureOfTheSecondTier. (Either to replace individuals who's personalities clash, or to give the agencies less antagonistic roles. Perhaps there's a ModularityMistake in the second tier agencies.)
Consider DevolveResponsibilityFurther to make the second tier less powerful and more responsible with respect to the lower-levels. This can reduce the responsibility and competition between agents in the second tier.