Posted May 19, 2011 17:11 UTC (Thu) by fuhchee (subscriber, #40059)
Parent article: The platform problem
"the ability to reach across arbitrary module boundaries and fix problems encountered in other parts of the system. [...] It is a valuable freedom that we do not exploit to its fullest."
But maybe that is just as well - meaning that the platform "problem" is an honest trade-off, with nothing to be ashamed of.
The module boundaries represent different pools of expertise. Only a few superstars can make meaningful contributions across many layers & subsystems. Many of those same superstars are strong personalities who would likely clash if they were encouraged to cross-contribute without restraint.
They also represent an opportunity to version-control the system incrementally. It allows release schedules that suit the respective groups. It encourages more vigorous attention to interface stability & compatibility.
In the cafe_ccic case, if Jon had had the wisdom to undertake a videobuf reorganization, is there reason to believe that this could have been done within the various constraints? And even if yes, the harm done by the cafe_ccic being written this way is limited to throwing away some code, and the opportunity cost of not helping a few other drivers. Since the videobuf rework was done only a "few years later", neither cost must have been very high.