There's also the possibility of faulty parts (as distinguished from tools). They may have invisible limitations or some pairs of parts may have difficulty understanding some of the anonymous collaborative messages. In general, what does one do when things go wrong? Murphy's Laws have not been repealed! :)

Another item the author did not really explain is how two people who have a different conception of how the system should work (e.g. workflow related) can be simultaneously satisfied? User is supposed to be king. No mention of how the developer collects these system views or controls the variations of behavior. Or how the user customizes such without subverting the application.

He had no discussion of the validation of proper application behavior or how that aspect of development has "moved on to the next generation".