Wingo: embracing Conway's Law

At his blog, Andy Wingo writes about how Melvin Conway's observation that "the structure of things that people build reflects the social structure of the people that build them." Notes Wingo: "This division goes down to the inner life of programs, too; inside it's all just code, but when a program starts to interface with the outside world we start to see contracts, guarantees, types, documentation, fixed programming or binary interfaces, and indeed faults as well: how many bug reports end up in an accusation that team A was not using team B's API properly?" The subsequent discussion explores how forks, not-invented-here syndrome, and bundling may help development projects reshape other people's code to fit their own needs. "You can't be responsible for everything. One way out of the mess is just to give up, cross your fingers, and hope for the best. Sure. Fine. But know that there is no magical first-person-plural; Conway's law will apply to you and the things you build. Know what you're actually getting when you depend on other peoples' work, and know what you are paying for it. One way or another, pay for it you must."

