3 ms·
That's true. I think that in reality, the complex has to "live" somewhere.. It is inherently present in the world. If the engineer simplifies their solution by
by sureglymop 3y ago
That's true. I think that in reality, the complex has to "live" somewhere.. It is inherently present in the world.
If the engineer simplifies their solution by relying on a dependency that abstracts away all of the complexity that doesn't mean the complexity is just gone. Should the engineer ever have to deal with that complexity, should that dependency break, they might be screwed.
On the other hand, if they over engineered a more complex solution themselves, the engineer would at least know how to deal with it and fix it if it breaks. I would say usually the issue is lack of time to generate quality work (even if complex) and lack of time to adequately document it, mainly due to the "agile engineering" trend.
It amounts to this: if there exists complexity, there must exist responsibility for that complexity (in my example in the form of the one engineer who created the complex component).