Why might this work?
By strictly defining interfaces and preformatting input and output, we eliminate many causes of trouble, because we know in advance what’s legitimate
We free people up to concentrate on their areas of specialization by allowing layers to be more discrete
We focus on exposing only atomic units of functionality, which are simpler, and therefore easier to produce safely