Hacker News new | ask | show | jobs
by RangerScience 4264 days ago
Compare Rails and Django. Note that Django apps, which are meant to be made of stand-alone "apps", generally aren't - the apps end up relying on each other too much.

This seems to be because certain of what makes up each set of functionality "bleed" together - models, in particular, all seem to end up relying on each other.

I think the MVC / CDS, etc organizational structures are less about grouping things by feature and more about grouping things by common "bleed" factors (or, more likely, some deeper commonality that then causes the shared amount of "bleed"). Views pretty much never share anything. Controllers share utility functions. Models just go spaghetti.

You can also think of it like a toolbox; I keep all the screws together, rather than keeping all the flat-head screws with the flat-head screwdrivers.

That all said - Yeah, that's an excellent ideal, but it's not one that seems to occur in practice.