News for hackers. Stuff that matters.
Re:System design and the cost of architectural complexity by dustymcp on Thursday April 06, 2023 @02:07PM (#35472062)
Man the dead weight around development in corporations are mind numbing..
Re:System design and the cost of architectural complexity by nerpderp82 on Thursday April 06, 2023 @02:13PM (#35472177)
The institutionalized brain damage is real, I see bright new hires coming in, within 3 months they are towing all the lines, spouting tautologies, seeking alignment with corporate velocity vectors to gain momentum, generate impulse. Talking in non-specific platitudes that could literally mean anything and thus mean nothing.

The biggest problem with a simple architecture and often why someone would complexify it up, is as a protection mechanism so you don't get some performance review motivated yokel doing a drive by to add in a feature and look like a rock star because it was so damn easy. NSS, that was the next step. You see this in open-source as well. Someone builds a beautiful foundation, and Steve rolls up with a submarine pull request to slam that cherry on top.

A complex architecture ensures that you can adequately gate keep.

The next aspect is you have to relentlessly say no to feature requests that literally destroy the system to add some new feature, the pressure to smash it to bits and make it a no longer simple system is such a perverse incentive that unless you have support from on high, every simple system will decay into a total mess, then the finger-painters will have moved on to some other system to predate on.

Re:System design and the cost of architectural complexity by babyshake on Thursday April 06, 2023 @02:21PM (#35472289)
> non-specific platitudes

Anything specific that tends to be used often?

Re:System design and the cost of architectural complexity by nerpderp82 on Thursday April 06, 2023 @02:24PM (#35472349)
It is org specific, I have already triggered myself and need to find a safe space.
Re:System design and the cost of architectural complexity by damiankennedy on Thursday April 06, 2023 @03:20PM (#35473104)
"Move fast and break things".

At 48 I've stopped fixing other people's things.

Re:System design and the cost of architectural complexity by runlaszlorun on Saturday April 08, 2023 @11:23AM (#35494134)
Prob OT but ‘break things’ old Zuck sure did. A bit sad given the billions folks made in the meantime.

I almost said that I’m surprised they weren’t held accountable… but we all know better.

Re:System design and the cost of architectural complexity by bradstewart on Thursday April 06, 2023 @03:44PM (#35473386)
Appealing to "best practice" without concrete, specific reasoning is a big one.
Re:System design and the cost of architectural complexity by whstl on Thursday April 06, 2023 @05:06PM (#35474450)
"We need to build something that scales" to justify virtually every single source of complexity.
Re:System design and the cost of architectural complexity by dahauns on Friday April 07, 2023 @09:21AM (#35481304)
Especially when then understanding of scaling only distinguishes between "unmaintainable monolith" and "full-blown web scale".
Re:System design and the cost of architectural complexity by waynesonfire on Thursday April 06, 2023 @02:46PM (#35472638)
I don't think it has to be so nefarious. What I've experienced is developers taking the path of least resistance and failing to perform proper analysis to arrive at a less complex architecture.

Why are folks taking the path of least resistance becomes an interesting question.

Re:System design and the cost of architectural complexity by a4isms on Thursday April 06, 2023 @02:54PM (#35472754)
FYI, it's "toeing" the line. It's an expression from track and field, where at the start of each race the competitors place the tip ("toe") of their foot on the start line when they're ready to run.

Similar to the expression "Up to scratch." In a boxing ring, there is a line in the ring that boxers must come to to begin the fight. To be "up to scratch" is to be ready and worthy of the fight, and from that, to be of acceptable quality or capability.

Re:System design and the cost of architectural complexity by pksebben on Thursday April 06, 2023 @03:14PM (#35473028)
Minor correction for your correction:

"Toe the line" most likely has it's roots in military tradition [1]. To toe the line is to stand at the line for inspection - it's still used that way today (I had to do it myself in boot camp).

Relevant, as in this context, it means being obedient to the hierarchy.

1 - https://en.wikipedia.org/wiki/Toe_the_line#:~:text=The%20mos....

Re:System design and the cost of architectural complexity by a4isms on Thursday April 06, 2023 @03:26PM (#35473187)
Most interesting, I do believe you're right!
Re:System design and the cost of architectural complexity by piotr-yuxuan on Thursday April 06, 2023 @04:29PM (#35473964)
Interesting, I hadn't seen #:~:text=abc before. It does nothing on my browser (Firefox 109.0b9 on macOS) but is it inteded to highlight text?
Re:System design and the cost of architectural complexity by aidos on Thursday April 06, 2023 @05:52PM (#35475034)
It does on Chrome. I believe it’s used from Google search results to link you to the relevant place in the page.
Re:System design and the cost of architectural complexity by johnmaguire on Thursday April 06, 2023 @02:57PM (#35472797)
> The next aspect is you have to relentlessly say no to feature requests that literally destroy the system to add some new feature, the pressure to smash it to bits and make it a no longer simple system is such a perverse incentive that unless you have support from on high, every simple system will decay into a total mess, then the finger-painters will have moved on to some other system to predate on.

Would you rather have a simple system that does nothing, or a complex / difficult-to-work with system that solves customer needs? It's easy to go too far in either direction.

Re:System design and the cost of architectural complexity by hbrn on Thursday April 06, 2023 @04:15PM (#35473761)
In my experience, most of the software complexity is accidental, i.e. it doesn't directly emerge from customer needs.

And even if your framework is to use customer needs as justification for complexity, people will still use something like Kubernetes for an app with 10 monthly users, because it "helps us deliver features faster, have zero-downtime deployments and be scalable".

Most (non-product) engineers have a natural inclination to introduce more complexity, and will use mental gymnastics to justify it.

Re:System design and the cost of architectural complexity by nerpderp82 on Thursday April 06, 2023 @08:35PM (#35476548)
The majority of human intellect is used to justify actions they have already taken.
Re:System design and the cost of architectural complexity by PaulStatezny on Thursday April 06, 2023 @04:33PM (#35474004)
> Would you rather have a simple system that does nothing, or a complex / difficult-to-work with system that solves customer needs?

With respect, this is clearly a false dichotomy.

Creating the "simplest possible system" that solves customer needs is the entire point of this discussion. Avoiding as much complexity as possible brings enormous benefits. (Less bugs, less employee turnover, higher productivity, etc.)

Never accept the notion that systems must be "difficult-to-work with" in order to solve customer needs.

Re:System design and the cost of architectural complexity by johnmaguire on Friday April 07, 2023 @03:48PM (#35486175)
It would be a false dichotomy, if I meant to say that you must choose one of these paths. I suppose "it's easy to go too far in either direction" was not clear enough. The argument I'm making is that the OP is creating a false dichotomy: that you must reject feature requests, or ruin the system.

My point is that there are many, many developers who "relentlessly say no to feature requests that literally destroy the system to add some new feature" when the reality is that they do not want to put in the effort required to add the (meaningful) feature to the system.

They are choosing system purity and laziness over delivering customer value, which requires more work in order to keep things simple.

Re:System design and the cost of architectural complexity by whstl on Thursday April 06, 2023 @05:05PM (#35474434)
I never really had to make this choice. But I often had to choose between a system that is reasonable and actually solves the needs of customers, versus a system that is complex, made in a hurry and full of badly made features that only some project manager cares about. I know which one I prefer.

Just today, for example, I removed several thousand lines of code from a very complex form that no customer ever really used other than for testing. My boss told me "just nuke it". Life goes on.

Re:System design and the cost of architectural complexity by WakoMan12 on Thursday April 06, 2023 @05:15PM (#35474574)
i want to die
Re:System design and the cost of architectural complexity by zaphar on Thursday April 06, 2023 @07:35PM (#35476017)
On the chance that this is a real cry for help and you are in a really bad place, please seek help.