Readit News logoReadit News
Ozzie_osman · 2 years ago
I worked at a certain FAANG company at a time where the promo process rewarded "solving complex problems". The more complex of a problem you could solve the higher your level (and your pay, your status, etc).

Naturally, people were incentivized to find complex problems so they could solve them. Not only that, I think a lot of tech stacks at other companies evolved by copying this company's ideas, so even smaller companies with even less need for complex solutions ended up having them as well.

oytis · 2 years ago
I don't say it is necessarily a good metric for promotions, but solving complex problems is not the same as finding complex solutions
dimal · 2 years ago
I’ve seen teams destroy themselves by solving complex problems that didn’t need to be solved. Instead of solving the real problems, they imagined a problem that was more interesting and complex, and tried to solve that.
stinkbutt · 2 years ago
finding complex solutions to complex problems is easy. finding simple solutions is whats hard.
AJRF · 2 years ago
Solving complex problems is worth promotion. Delivery complex solutions for the sake of them being complex is not.
bobsomers · 2 years ago
No, it’s not. Identifying which problems are worth solving (regardless of their complexity), and solving those is worth promotion.

Lots of engineers have a fascination with solving complex problems purely for the sake of solving them. When you make that your criteria for promotion you end up have to do many rounds of layoffs in harder times because you’re staffed to the gills with people solving complex problems that deliver little to no actual value.

arp242 · 2 years ago
Solving problems that move the needle for the company in terms of customer experience, financials, or things like that are worth promotion. Sometimes these are complex problems. Sometimes not.

Software isn't an art project; it's a practical tool to solve practical problems.

Some of my more impactful changes haven't been all that complex; it was just a matter of knowing where and when to spend my time, based on working with our customer team, sales team, and directly talking to some customers.

One of my more praised changes was adding a link to our support backend that saved our customer team minutes of manual work every time. This was literally just adding a permalink: 3 minutes of work. Simple and low-complexity? Yes. But also impactful and moved the needle, and no one else had done it in the previous years.

sratner · 2 years ago
Sometimes the promo committee can't tell the difference, i.e. was the problem complex to warrant the complex solution. They just see the effort put into solving it.
itronitron · 2 years ago
Bonus points if you can describe it using mathematical terminology that few people have heard about.
nasmorn · 2 years ago
At the Austrian Institute of Advanced studies there was a professor that got real good at stochastic differential equations and made a career out of applying them to anything and all in economics. One big advantage was that almost no other economist can actually follow it. Those few that can are obviously super invested in the technique
api · 2 years ago
Google? The place that gave us the current cloud native complexity trap?
pphysch · 2 years ago
Google giveth K8s but also giveth Golang
r0ze-at-hn · 2 years ago
The wording might have changed, but the culture is 100% still there and is draining fighting against it.
closeparen · 2 years ago
Similarly, when the promo process rewards impact and influence on other engineers you get all the smart ambitious people making overengineered platforms, frameworks, and standards while no one competent or engaged is minding the actual end-user products.
hintymad · 2 years ago
This is a really tough problem to solve. If the company has amazing leaders, the leaders can correctly judge the depth of the problem and its impact, therefore rewarding the problem solver properly. Unfortunately promotion is really a tool for most leaders to advance their agenda. In a way Google invented this "solving complex problems" just to counter balance the misaligned incentives of the leaders, but to no avail.
chii · 2 years ago
When the value generation is so far removed from the individual, the system will get skewed towards private taking over something more globally beneficial (globally as in for the entire company).
7d7n · 2 years ago
The goal is to solve complex problems with as simple a solution as possible.
jayd16 · 2 years ago
The goal is to provide user value. Complexity is falsely valued.
gofreddygo · 2 years ago
Given the high bar that FAANG has set for filtering in self centered innovators, I bet some employees simply invented problems for solutions they already had at hand.
weaksauce · 2 years ago
so that's how react was made
rsync · 2 years ago
Hmmm ...

I have been thinking about this recently in relation to the complex and unwieldy nature of modern car UI (especially in electric cars).

It's so bad that it is keeping me from buying a car that I need.

The conclusion that I have come to is:

Sophisticated consumers are very different than aspirational consumers - and there are always many, many more aspirational consumers.

Therefore, catering to aspirational consumers at the expense of sophisticated ones is a rational economic choice.

An aspirational consumer will put up with all manner of deficiencies and gimmickry because they perceive them as being emblematic of their consumer achievement.

In cruder terms:

They are so happy to be driving a "luxury" car that they don't notice the garbage that came with it. Meanwhile, after decades of luxury car purchases, I just want the shifter to be intelligible ...

m463 · 2 years ago
> keeping me from buying a car that I need.

The older tesla cars had better controls. The software updates made things worse. The targets became SO small, for no reason. I think the developers must have written and tested the UI on a display firmly mounted on a desk or non-moving car. In a moving car, everything goes to hell.

The newer cars with no stalks (shifter, turn signals, wipers, lights) are just a mess. The display has nowhere to rest your hand, you must stab and hit the correct small target from your seat. They all make you a worse driver, through indirection, confusion, inaccuracy or distraction.

andruby · 2 years ago
> complex and unwieldy nature of modern car UI (especially in electric cars)

Honestly, I love the UX and UI of a Tesla.

It automates so many things that I find tedious in other cars: lock/unlock, close windows, pre-heat/cool, auto-set navigation to office in the morning and home in the evening, set seating and other adjustments for the driver based on which phone key was used. Navigation works thanks to the free connectivity (all other in-car gpses I've had to use were useless). Nice screen to select and play music. Voice command works reasonably well for selecting music.

It's not perfect, but I prefer the UX & UI over all ICE cars I've driven before.

As an example: my user journey when starting my drive to the office in the morning is a 2 step process: (1) open door and (2) put in drive.

Especially in the winter that used to be 10+ steps for an ICE car: (1) find key (2) unlock car (3) open car (4) adjust seat because my wife drove before (5) press button to start engine (6) front-window defrost (7) rear window defrost (8) manually scrape the ice off the front window (9) select office in gps (10) release parking brake (11) clutch (12) put in gear.

Repulsion9513 · 2 years ago
Coming back to this I just wanna make an accurate comparison here

As an example: my user journey when starting my drive to the office in the morning is a 2 step process: (1) find phone, or hope it hasn't run out of battery while you were wherever (2) open door (3) sit down (4) close door and (5) put in drive and (6) drive because it's not actually self-driving despite the name.

Especially in the winter that used to be 10+ steps for an ICE car: don't find key because it's on the keyring I used to lock the house; unlock car while you're walking to it so it doesn't make any difference; (1) open door; (2) sit down; don't adjust seat because plenty of ICE cars have had automatic seat adjustment for decades, this isn't even remotely close to an innovation, I used to have a 1996 with this feature, and it could even be linked to the keypad code you used or the keyfob you used; (3) close door; (4) press button to start engine; automatic defrosters also exist; remote start also exists; (5) put in drive and (6) drive

It's almost like either way the process is literally "get key, get in, and drive away" because a car is a car... The key being your phone doesn't actually change anything.

Repulsion9513 · 2 years ago
So the UX and UI that doesn't relate to driving is great, but the UX and UI that relates to driving is crap.

Good thing it's not an object whose entire purpose is to be driven. Oh wait.

screamingninja · 2 years ago
While I agree with the sentiment that Tesla has wonderful UI/UX, your 10+ step EV-to-ICE comparison is disingenuous. Tesla does not scrape the ice by itself.
BLKNSLVR · 2 years ago
1974 Celica is 'peak car' for mine.
rtaylorgarlock · 2 years ago
How dare you call out BMW's iDrive explicitly ヽ(ಠ_ಠ)ノ ;)
iknowstuff · 2 years ago
It’s kinda funny reading this as an owner of a Tesla. People who don’t have them like yourself keep lamenting touchscreens online, whereas Tesla owners explicitly stay with the brand because of how excellent it is compared to other vehicles, touchscreen or not.

Technology Connections just posted a video where he explains how he had to hold his car’s ugly 90s era stalk for 4 seconds to change his wipers. Had to read a manual to discover that. This kind of crap is very standard in cars with disjoint components cobbled together.

Meanwhile I get my live video sentry alerts on my phone, my car drives me to work, my gear selection is typically putting on a seatbelt and pressing the brake pedal as the car knows the right direction, everything important is contextually accessible via the wheels on the steering wheel instead of having 50 buttons for everything, and so on.

It is simple and powerful. The problem with those luxury vehicles you mention is just awful execution.

SoftTalker · 2 years ago
Humans are good at adapting to the common operations of even the worst user interfaces and then they will stop thinking about how awkward they are.

The iPhone is lauded as having a good UX. I think (even confining yourself to Apple's own apps) it's actually pretty inconsistent and a lot of things you "just have to know" because there are no cues that would lead you to discovery. But millions of people use them mindlessly because they have adapted to them.

JackSlateur · 2 years ago
I'm working on a r&d team dedicated to finding ways to repair modern cars at scale

As such, we get lots of car, mostly EV (but not only), up to 100k€/u

The Telsas are indeed not the worst

They are still boring af and not in the top of the basket

photonthug · 2 years ago
> my gear selection is typically putting on a seatbelt and pressing the brake pedal as the car knows the right direction

What a hugely efficient time and energy saving innovation and only at the cost of lots of your money, personal safety, and basic human agency.

Soon you can probably just hop in and without facing difficult decisions about where to go, get instantly taken to the biggest corporate partner or affiliate advertisers. Maybe robots there can invert you and shake you down so you don’t even need to pull out the money

AlexandrB · 2 years ago
As a Canadian driver, I'll take an ugly 90's era stalk over a touchscreen any day of the week.

Teslas seem great if you live in California though.

Deleted Comment

Repulsion9513 · 2 years ago
> Technology Connections just posted a video where he explains how he had to hold his car’s ugly 90s era stalk for 4 seconds to change his wipers. Had to read a manual to discover that. This kind of crap is very standard in cars with disjoint components cobbled together.

Yeah, he had to take a minute to pull the manual out of the glovebox, flip to the index, look under W, and then flip to another page. I guess he could have had to hunt through a bunch of different menus on a touchscreen instead?

(BTW the fact that you're worried about a stalk being ugly - and the fact that you think they're from the 90s? - shows which type of consumer you are :))

> my car drives me to work

Oh, so your Full Self Driving is actually fully self driving? Weird, I didn't think that existed.

Dead Comment

AJRF · 2 years ago
I watch a YouTuber called Theo Browne sometimes. He is primarily a front end dev. When I watch him talk about his solutions to things I feel like i've been hit on the head with a baseball bat. The sheer number of things that go into his demos is eye watering. The number of arcane terms about React he will mention in a single video astounds me.

I don't mean to specifically call him out, but I worry that the complexity is what keeps him popular. And then you have someone like Pieter Levels just slinging raw php into production and not talking about anything like Suspense or Server Side Rendering or Hydration.

They both get to the same ends (well Pieter Levels makes magnitudes of order more money I think) but there is a gulf in complexity. I'd actually argue something like Nomad List is much more feature rich than anything I see from Theo.

thjdidiend · 2 years ago
I met Theo once. I didn't know who he was, but he made sure to tell me within the first few sentences that he was a very popular streamer/youtuber. I then watched him get recognized by someone else and they had a sort of friendly shouting match about something Theo has recently talked about in an opinionated way on his channel. His personality seemed perfectly suited for maximal media engagement through needless complexity. The more complicated things are the more arguments you can have and the smarter you can sound to those less familiar with all your esoteric choices.
tonyhb · 2 years ago
I know Theo. He’s a good person who wants to educate folks, and make things simpler.

There are problems with education: you often have to make things contrived to show problems as fast as possible, and it’s hard to convey all of the nuance. Theo, and others, definitely try to strike that balance and I think it’s fair to say that this is because of how the front end world works rather than because of personalities.

whstl · 2 years ago
I'm finding more and more that Youtube influencer software development is completely disconnected from real world software development.

The amount of libraries and code for toy stuff is humongous compared to anything I see in production, and I've seen some monstrosities.

I wonder for how long, though.

vbezhenar · 2 years ago
My experience with frontend people is that they don't think twice about adding random libraries they just found that was released month ago. Also their projects are unmaintainable after one year, but they are long gone by that time and new developers arguing that they need to rewrite everything.

I really hate small libraries and in my projects I tend to rewrite lots of trivial stuff, but that keeps me comfortable.

latexr · 2 years ago
> I'm finding more and more that Youtube influencer software development is completely disconnected from real world software development.

You don’t need the qualifiers. Influencers are disconnected from the real world, no matter the area. That’s why they’re “influencers”, being a celebrity is the point. Think of it in contrast to someone you’d label a “maker” where the value of what they teach/build is much higher yet they have a comparatively much smaller (and usually geeky) audience.

Repulsion9513 · 2 years ago
No, I think it's pretty well connected to real world software development. Most software developers these days, especially in web, tend to be more of "copy the stuff I've seen in tutorials before or find a library that does it" rather than "understand how the stuff I'm copying works and adapt it"
Repulsion9513 · 2 years ago
Each layer of framework or abstraction you add, actually tends to make the complexity go up, as it includes so much crap you'll never use but gets in the way of the stuff you will use. And now when something goes wrong not only do you need to understand the programming language, and your own code, but also all the code in the paths you use through this framework, which can easily be 10-20 functions deep (hi facades), and is extremely rarely documented with enough specificity to understand what happens in various corner cases.
YeBanKo · 2 years ago
My biased opinion that this is Frontend/JS landscape. The amount of tools used to make relatively simple things is staggering. I feel similar things going on in DevOps.
briantakita · 2 years ago
I have been hoping that isomorphic JS would take over PHP for a long time. Sadly these complexity gurus have been sucking the oxygen out of the room for over a decade now. I think it's the corporate "front end developers" who caused these problems. Almost like an envy of full stack or back end developers doing the "real engineering". Which drove the desire to have "real engineering" problems on the front end.
hooby · 2 years ago
Over some decades of doing development work on legacy systems - sometimes by my companies own design, sometimes contract work for a customer - I've seen lots of things that make me believe that certain customers do prefer complex, buggy software for a very specific reason:

They can hide behind it. "I couldn't finish the task on time because the software had a bug" - sort of stuff. "I couldn't do X because the software doesn't support Y", "The dog ate my homework", etc.

In many cases, it would have been quite possible to design simple, easy and far less bug-prone solutions - but then people working with the software would no longer be able to hide that certain failures might be due to their own incompetence, rather than being a software issue. Therefore - especially in companies with high top-down pressure - people actually prefer working with software that their managers don't fully understand, and that's known for having some bugs and problems.

pdimitar · 2 years ago
> They can hide behind it. "I couldn't finish the task on time because the software had a bug" - sort of stuff. "I couldn't do X because the software doesn't support Y", "The dog ate my homework", etc.

I was quite naive most of my career (and life, come to think of it). Back when I changed my first job where I spent 5 years, and was 27 at the time, I replaced one super-complex GUI program with a small GUI wrapper around 2 CLI programs. The thing worked EVERY TIME even with faulty input and on the rare occasion it did not work it gave informative error messages.

The 3 women working with it HATED my guts for it. Took me probably a year after I left to finally understand why. Yeah, I was not very bright back then.

And with time I started to think that people want e.g. Microsoft Teams because they can wipe their arse with it when the need calls for it.

smetj · 2 years ago
This x 10
2four2 · 2 years ago
In physical UI our group calls this the Microwave Problem. No one uses the 20 extra buttons on the microwave, they mostly just use one or two buttons. But no one will buy a microwave with few buttons.
jeffreygoesto · 2 years ago
I must be no one. Love my Samsung ME82V since a decade now. Two dials. Period.
closewith · 2 years ago
If you know the model of your microwave offhand, you're definitely an outlier!
diarrhea · 2 years ago
Hilarious coincidence. I had and loved that exact same model for the same reasons. Until one of the dials broke and I discovered how utterly irreparable the thing is. Had to get rid of it and indeed, it’s impossible to find similarly simple models. Oh well!
euroderf · 2 years ago
I'm sure that having two dials costs more to produce than a crappy membrane keypad, and that the product manager was nearing retirement.
mekoka · 2 years ago
I was confused for a moment as to which "no one" you were. The "no one" who uses the 20 buttons, or the "no one" who buys microwaves with few buttons.
andruby · 2 years ago
same. love it. had to buy a microwave oven last year and went out of my way to find the same one.

two dials is the only ui you need for a microwave.

NortySpock · 2 years ago
"Dial-A-Yield: Not just for nuclear warheads!"
mekoka · 2 years ago
And none of those 20 buttons can turn off the beep. So 2am sneak snacking means watching your oven like it's 1999.
kibwen · 2 years ago
They can, actually! Your microwave probably has an arcane button combo that will turn off the beep. You'd never, ever stumble across it randomly, you need to read the manual. On mine, I need to hold the "2" button for five seconds.
kayodelycaon · 2 years ago
Some microwaves do have this feature. I don't think you'll ever see it on the box so you won't know until you've read the entire manual.
mattmaroon · 2 years ago
High-end blenders too. All I want is speed dial, pulse switch, and on/off switch. And that's all anyone wants, but for some reason every new generation has to have all these functions nobody uses.
namaria · 2 years ago
No one has ever been paid for keeping a good design the same.
bombcar · 2 years ago
Commercial ones are simple - unless it has a programmable “do the smoothie steps” button.
wry_discontent · 2 years ago
You can buy that. That's what's on my VitaMix I bought a few years ago.
thaumasiotes · 2 years ago
> All I want is speed dial, pulse switch, and on/off switch.

Really? I want "quiet". A certain level of noise is inevitable, and blenders are way, way past that point. They're louder than food processors!

PurpleRamen · 2 years ago
There is value in choice. Not won't necessary always use just the same two buttons, so people like have the option to use other buttons. And quite often more buttons also come with better specs.
blue1 · 2 years ago
Apple used to sell stuff that had “curated UIs”: few control, few functions, and excellent UX. I remember the cleanliness of the iPod vs the overfeatured and complicated competitors.
makeitdouble · 2 years ago
iPod was useless without iTunes, and I wouldn't call iTunes a curated, excellent UX. We can't only look at the beautiful light and ignore the angler fish behind it.

PS: if we include Sony's minidisk in the competion, the overall listening experience, especially the wired remote was just better. The digital walkman was still a better UX on the device side, except it has an even worse horrible PC experience and Sony barriers that made it a non starter.

realusername · 2 years ago
The competitors were too cheap to have any feature, usually they had a big play button, a next and previous button and that's pretty much it.

The settings were usually pretty poor on those mp3 players, on mine you had a microphone mode, language, timezone, some shuffle configuration and that's pretty much it.

The iPod did look much much better and refined but in terms of simplicity, it's hard to beat the single play button of an mp3 player which doesn't know to do anything else. Those things were designed like appliance more than tech products.

aatd86 · 2 years ago
Alledgedly simple UI (although I never was a Apple guy, was using iRivers at that time), but building the iPod was hard, probably entailing a flew of difficult, complex hardware and design issues to tackle.
lo0dot0 · 2 years ago
A lot of the competitors had less features, like not being able to select the next song without stopping the current song.
swayvil · 2 years ago
Just got a new microwave. Panasonic NE 25 F.

One dial.

Built like a tank. Stainless steel. Compact yet roomy.

And there's no stupid rotating platter.

What they do is rotate the microwave antenna instead. But that's inside the guts somewhere so you never see it. (Why don't they do that on all microwaves? I dunno)

So it's easy to clean. Even cooking. Max microwave.

I love it

xorcist · 2 years ago
> Why don't they do that on all microwaves?

They used to, but the standing waves are formed by the cavity geometry, so it's not nearly as good as rotating the platter.

acheron · 2 years ago
I searched that one up and it's on the "commercial" section of Panasonic's website with a price of "contact sales".

How did you end up with it?

loa_in_ · 2 years ago
So they do exist! It's a relief, honestly.
Suppafly · 2 years ago
I literally only ever use the +30 and the cancel button on mine. It'd be hilarious to see a microwave that only had those 2 buttons though.
bmitc · 2 years ago
Popcorn even comes with instructions to not use the popcorn button.
xboxnolifes · 2 years ago
Only because popcorn manufacturers don't want the quality of their popcorn to be judged by the quality of your specific microwave's popcorn button implementation. They have no control over how it's implemented.
pdimitar · 2 years ago
That figures, my new microwave somehow thinks 90 seconds is perfect for popcorn while the one I am buying requires like 3m 30s.
dimal · 2 years ago
Has anyone actually tried? I’ve searched for simple microwaves and can’t find any.
itronitron · 2 years ago
The IKEA MATÄLSKARE Microwave oven has 4 buttons, I press one to add 30 seconds and another one to cycle through the 4 power settings. That is their mid-range microwave, it has 750 watts of power and the more expensive models seem to have similar controls.

Their low end microwave TILLREDA has two knobs, but I've never used it.

Zak · 2 years ago
This is also my preferred control scheme, and I bought one a few years ago.

To see what's easy to find now, I typed "microwave oven knobs" into amazon.com and got several with the classic mechanical timer and power knob design. Most of those are relatively small, but "commercial microwave oven" found some larger ones.

youngtaff · 2 years ago
Our microwave has two knobs… one for the power setting and one for the time

My only criticism of it is there’s no button to cancel the time back to zero and you have to wind the timer knob back

jayd16 · 2 years ago
It's a nice analogy but imagine trying to thaw something for 10s of minutes with the add 20 seconds button. That would be pretty annoying.
andy99 · 2 years ago
I've seen many one-button clocks that just either increment faster or change increment to a larger value if you hold.
iknowstuff · 2 years ago
A dial should do fine
tristor · 2 years ago
Honestly, I've had a number of microwaves in my life and I have read the manuals and attempted to use various other types of operation (such as sensor cooking). The reasons why I don't typically use those additional modes of operation are perfectly rational and not due to UI bias as such:

1. I know exactly how to cook something, based on time (and power level), because that's a mental model that's universal across microwaves.

2. I don't know how to cook something and need to follow package directions, which are always expressed as time (and power level).

3. I am iterating towards a desired end state, and want to do so in small step increments. The only possible way to do so is by short bursts of time (at a specified power level).

These are the reasons I've never used any of the extra modes. Technology Connections did an entire hour long video about the popcorn button, and it sounds like at least /some/ microwaves actually implement a very good method, but most don't, and so these types of modes are also generally untrustworthy. Having additional modes has never been a deciding factor in buying a microwave for me, most of the time I bought am microwave based on materials, appearance, and mounting options.

Now, a toaster oven, on the other hand, I want all the modes, and I use them.

drdaeman · 2 years ago
> But no one will buy a microwave with few buttons.

Marketing is the king. Spend resources on memeing your way into people minds, then advertise “we removed the cruft to give you <something>” (more space, better experience, whatever you can think of, even if it’s a big stretch) as some sort of revelatory breakthrough and bleeding edge innovation - and they’re gonna buy it and joke about “uncool” others’ microwaves with silly extra buttons are, affirming how cool their microwaves are.

Worked for a lot of crap on the market.

pornel · 2 years ago
I find such laments annoying, because they're full of obvious platitudes. It's easy to sound smart quoting Einstein and Dijkstra. It's cheap to make generalizations, and point fingers at complex solutions when having both the benefit of hindsight, and ignorance about their true requirements.

"as simple as possible, but not simpler" is always right. Messy solution? You should have made it simpler. Primitive solution causing problems? You weren't supposed to make it too simple. Why didn't you think about making it just perfect?

In reality, it's very hard to even get people to agree what is simple, when solutions have various trade-offs. Maybe it is easier to focus on maintaining one complex database, than to have 3 "simple" ones, and triple admin work, and eventually end up having to sync them or implement distributed transactions.

Something simple to implement now may cause complex problems later. A simple off-the-shelf solution that doesn't fully solve the problem will breed complex workarounds for the unsupported cases, and eventually add complexity of migrating to something adequate. If you didn't correctly predict how a solution will fit all your requirements, you should have simply listened to Einstein.

All the advice to "just" do something "simple" is blissfully unaware that these solutions are not panacea, and it's rarely a plain choice between complex vs simple. Projects have constraints - they may need to work with existing messy systems, inconsistent legal requirements, or changing business requirements. They may prioritize time to market, or skills they can hire for. And there's brutal economics: maybe annual report export is a Rube-Goldberg machine, but it's done once a year, and a rewrite wouldn't pay for itself in 50 years.

The discussion about complexity rarely acknowledges that projects and their requirements grow, so something perfectly simple now may become complex later, in a perfectly rational way, not due to incompetence or malice. Storing data in a plain text file may be beautifully simple in the beginning, and become a bad NIH database later. But starting with a database for 3 rows of data would be overcomplicating things too. And there's cost to refactoring, so always using the ideal solution is not that simple either.

pdimitar · 2 years ago
You and I would think the platitudes are obvious but I've been at tables with people where stating those made people blink with that unnamed dread that hits you when you realize you haven't understood something super simple for a very long time and are just now getting it for the first time. That happened... a number of times in my life and career.

Truth is, much less things are as obvious as you and I think.

> "as simple as possible, but not simpler" is always right. Messy solution? You should have made it simpler. Primitive solution causing problems? You weren't supposed to make it too simple. Why didn't you think about making it just perfect?

Nah, that's obviously (heh) a non-sequitur; iteration always beats planning. We know it by practice.

> In reality, it's very hard to even get people to agree what is simple, when solutions have various trade-offs.

That's why you don't ask for permission, you ask for forgiveness. :) Another law of our profession, if not in many others too.

pornel · 2 years ago
> That's why you don't ask for permission

I didn't mean agreement as permission, but as having the same judgement. One person may say bash is the simplest, another that Makefile is even better, and third person will say they'll both become a mess, and it's simplest to use Python from the start, and so on.

Reasonable people may disagree where is the line of "but not simpler". Something that is "simple" to one person, is "primitive" to another.

If someone says they have a simple and elegant solution, but it requires their skills, is it really simpler than a "dumb" solution that more people can understand? (e.g. DB vs Excel? C vs JS?).

Everyone may be in agreement that things should be super simple, but there may be a choice between simplifying implementation vs simplifying operations. Or people may disagree about future requirements and argue that a solution that is the simplest now will hit a complex scaling problem later, and the total-lifetime-complexity of the product will be minimized by another solution instead.

carl_sandland · 2 years ago
Some complexity is inherent to the problem, but most seems to be incidentally introduced by the realities of deployment (non-functional), configuration (functional) and chaos monkeys (users). There is a particular 'breed' of incidental complexity I see with space cadets and front end developers for sure. Complexity is complex lol.
sesm · 2 years ago
> ignorance about their true requirements.

But why the true requirements are hidden?

pornel · 2 years ago
Outsiders don't see what happens inside companies.

A solution may need to integrate with in-house frameworks and billing (and you'll die trying to make billing simple).

A feature may get added for a big customer, and be warped by their requirements.

A feature may need to be implemented in a hurry (taking on tech debt) to win a bid/contract.

Conway's law shapes implementations - the right team to implement a thing simply may be busy with something more important, so another team will need to work around them.

In such situations the obvious simplest solution may not be available, and you either do what you can given the constraints, or fail to meet business' requirements.

tolmasky · 2 years ago
There is also a secondary effect where more complex systems generate a bunch of surrounding materials: tutorials, videos, etc. It also creates job security for the people who learn it, as they have a necessary skill and responsibility in the company, as opposed to something that "just works" which doesn't require that.
RetroTechie · 2 years ago
https://en.wikipedia.org/wiki/Full-employment_theorem

So many people in IT have a job because if software were constructed that would be both simple & Just Work, those jobs wouldn't exist.

j45 · 2 years ago
It would seem that way, but organizations that are truly about improving and growth would have the people available to help improve other things.
valiant55 · 2 years ago
As a SQL Server DBA I couldn't possibly understand what you mean.

(For simple cases it "just works" just don't look under the hood or try to do anything non-trivial and it'll be fine.)

antupis · 2 years ago
Yup sometimes it feels like AWS and Azure are like this.
namaria · 2 years ago
Bingo. Complexity is vendor lock-in catnip
astrobe_ · 2 years ago
Of course. If you were running an evil open-source company, you would favor "solutions" that generates demand for the services you sell (training, tech support contracts,...) while maintaining the belief that all this is necessary in "modern" IT.

I think it's Rich Hickey who links in his one of his talks complexity with entanglement through etymology. This entanglement is sometimes also there to bind the customer. Although more often the "never attribute to malice..." rule is at work, as it's just easier, cheaper, etc... to let the complexity grow.

euroderf · 2 years ago
You make it sound like Scientology or some such. The analogy might be apt.
bbminner · 2 years ago
If we are talking about paper reviews, what I am looking for in a paper as a reviewer is neither simplicity nor complexity. I am not even looking for "novelty". What I am looking for is a thorough and thought-provoking empirical analysis of a problem.

I see plenty of submissions where 1) authors propose a system that is clearly a monstrosity Frankenstein patched together from a dozen of existing ideas - clearly a successful attempt at getting "bold numbers" using as many new shiny toys they could get their hands on without analyzing failure modes of either part in depth; 2) a simple modification of an existing method that accedentally improves the performance of the system but still lacks proper empirical or therotical justification of why this modification helps.

While the second type of papers has at least some marginal value to the community or the reader, I still find such papers mostly useless. What brings value to the reader is a phd student who stared at the problem long enough to find quantitative and verifiable confirmations to his intuitions about the problem that lead to reproducible observations with predictive power. Ie "we experimentally verififed that indeed X affects Y exactly though the mechanism Z described in this paper in all cases, this helped us to improve metric A by B%, agreeing with Z". Not "we did X, and we saw A increase by B%", regardless of the complexity of A.

Not all reviewers agree with me, sadly.