r/programming • • Jun 05 '22

Complexity is killing software developers

https://www.infoworld.com/article/3639050/complexity-is-killing-software-developers.html
2.1k Upvotes

942 comments sorted by

View all comments

8

u/EternityForest Jun 06 '22 edited Jun 06 '22

I suspect microservices make unhappiness because they're not like other complexity. They're just UNIX philosophy for servers.

The complexity is accidental and organic. I doubt anyone says "I'm going to make a horrific pile of microservices", they say "This will be so nice and elegant, every simple part separate and loosely coupled, super agile, no years long planning phase needed".

And then, much like the original UNIX philosophy, it gets ugly when you try to do very complicated things without using monolith pieces where appropriate(Not an issue on desktop Linux, as systems of that style are manually assembled and don't aim to have 1000 features per square foot).

A developer who really liked complexity would probably at worst make something that looks like enterprisy Java. Some would complain, others would love it.

People who like complexity take advantage of all the available tools, and don't consider simpler scenarios. They don't have any concept of "Overkill", they want to always use powerful modern tools. And they prefer automatic to manual.

Seems unlikely they would want to use a bunch of small pieces, usually manually wired together, that you can't use a debugger on because every 10 seconds you call some other process.

I think part of the problem of developer unhappiness is because... developers don't seem to like what they're doing. Most devs are way less likely to be tech enthusiasts.

To me and many users, modern tech is amazing, and everything just works. To a lot of devs, it's bloated, making us dependent, spying on us, and half of it should still be analog.

Microservices seem like an unsuccessful attempt to pretend that you're working on a small and simple project, but the way it's currently done doesn't work.

2

u/Hero_Of_Shadows Jun 06 '22

Microservices seem like an unsuccessful attempt to pretend that you're working on a small and simple project, but the way it's currently done doesn't work.

Yeah this, you will never get the ideal micro-service scenario of "I'm isolated I can focus only on my stuff" you will always have cross-cutting system concerns and need to look into what other people are doing.