|
|
|
|
|
by simplotek
1230 days ago
|
|
> They are aware of things like the separation of concerns, but as soon as they run into a situation wheres its easier for them to leak one layer's concern into another they will do so. That says nothing without context. If you want to move fast then it's ok to break things, and leaking layers is far from a non-negotiating tradeoff. Software is soft, and you can always revisit a piece of code to refactor it to suit someone's architectural tastes. It makes no sense to criticize someone for focusing where it matters the most and actually deliver critical features without delay if the tradeoff is some legacy debt, and that by no mean implies they're junior. One important skill of a senior is being able to keep their eyes on the prize and be smart about tradeoffs. Prioritizing subjective opinions over software architecture over delivering value is more in line with a junior way of thinking about software than not, and to me doesn't sound like a position to criticize others. |
|
The problem is people don't want to expend the very minor extra amount of effort.
So you do it once. Then the next person does it because hey we already do it there so the code is not even subjectively worse, it's objectively the same, cuz you already crossed that line.
After a while you have a giant festering pile of shit that you just keep making bigger and bigger and now people are talking about rewriting it.
In my experience you start actively losing velocity in this situation very quickly. If you're doing this when you still your have 3+ months on a project, you're likely making poor decisions.
I'm not saying you need to constantly gold plate your architecture. But it should be palatable.
The subjective part is what is palatable. But I don't know anyone who thinks steaming turdpiles are palatable.