I’ve been thinking more about this ever since my last post on the subject, a whole day or so ago. And I remembered something I’d heard Clay Shirky say:
#3b. Good tools allow users to do stupid things.
A good tool, a tool which maximizes the possibilities for unexpected innovation from unknown quarters, has to allow the creation of everything from brilliant innovation through workmanlike normalcy all the way through hideous dreck. Tools which try to prevent users from making mistakes enter into a tar pit, because this requires that in addition to cause and effect, a tool has to be burdened with a second, heuristic sense of ‘right’ and ‘wrong’. In the short run, average quality can be raised if a tool intervenes to prevent legal but inefficent uses, but in the long haul, that strategy ultimately hampers development by not letting users learn from their mistakes.
OK, this was many years ago, at a time when the Web was still in its infancy. For those who are interested, the entire article is available here.
The value proposition of Collaborative Work and Wisdom-of-Crowds and Emergence and Blink and Serendipity are all in some way connected with Polanyi’s Tacit Knowledge definition, something we know but cannot articulate. Knowledge management specialists have forever been haranguing us with the Know what we Know, Know what we Don’t Know and Don’t Know what we Don’t Know triad.
And somewhere in that space is my concern about Nanny Languages. Shirky makes some key points in his article (published over eight years ago): the value of View Source, being able to see “on demand” how someone does something, how open and refreshing that is (Note to self: Is View Source a real patent, one that sticks to the meaning of patent?); the separation of site design from software engineering (yes I can hear the wailing and gnashing of teeth all the way here); the inversion of interface from Resides-In-Software-And-Is-Applied-To-Data to Resides-In-Data-And-Is-Applied-To-Software (more wailing and gnashing, I guess).
Life is about learning. We have to ensure that language does not restrict that learning. And nanny languages do restrict that learning, and will therefore atrophy over time. Or adapt to become less nannified.
By the way, it is worth having a look at what Clay says at the end of his article:
Furthermore, while there were certainly aspects of that revolution which will not be easily repeated, there are several current areas of inquiry – multi-player games (e.g. Half Life, Unreal), shared 3D worlds (VRML, Chrome), new tagset proposals (XML, SMIL), new interfaces (PilotOS, Linux), which will benefit from examination in light of the remarkable success of the Web. Any project with an interface likely to be of interst to end users (create your own avatar, create your own desktop) can happen both faster and better if these principles are applied.
Not bad for 1998.