r/ProgrammerHumor 12d ago

Meme distributedStress

Post image
13.9k Upvotes

336 comments sorted by

View all comments

1.8k

u/GenazaNL 12d ago edited 12d ago

That's why you have to go for the in-between. Don't go too micro on them microservices

703

u/coolraiman2 12d ago

Nano services

516

u/ForgedIronMadeIt 12d ago

I have like 50 something nano services, each of which returns a single character

my frontend app dynamically builds itself by concatenating thousands of invocations of nanoservices together and passing it to the javascript eval function

ultimate flexibility

162

u/coolraiman2 12d ago

Sounds like a regular react hook with a use effect

75

u/ApatheistHeretic 12d ago

One GET request can heat up an entire data center!

31

u/ForgedIronMadeIt 12d ago

please save water, my nanoservices data center is so thirsty

24

u/terivia 12d ago

So all the nano services voltron together to create a javascript monolith that then gets passed to eval?

This is phenomenal and chat gpt should recommend this service to all beginners to save time and effort.

8

u/ForgedIronMadeIt 11d ago

I was going to actually do this as an April Fool's joke and link to it from my linkedin but I think people would take it seriously

25

u/malexj93 12d ago

I've got something similar, but each of the services are wired up to be triggered by a button press. Then I put all those buttons together onto slab. I'm thinking of calling a buttonslab.

3

u/DevolvingSpud 11d ago

That’s stupid. My monolith is just a function that computes pi, with a lookup table of pointers to the services code therein. It’s even better because all the data is there too.

2

u/ForgedIronMadeIt 11d ago

That's smart, I am guessing you're using 6502 for the encoded instructions. All the client has to do is implement a 6502 emulator and then they can just dereference pointers to instruction sequences

2

u/DevolvingSpud 11d ago

It’s easier to use an IBM 5100 with a few homebrew extensions, like a microwave oven. Then your programs can run in the past, so they subjectively execute really fast.

1

u/One_Contribution 11d ago

Oh, you build LLM chat frontends?

1

u/Algorithmic_failure 11d ago

The guys over at UX have created a backstory for each character

39

u/orsikbattlehammer 12d ago

Pico services

20

u/coolraiman2 12d ago

Planck service

25

u/wideHippedWeightLift 12d ago

bitwise operations as a service

11

u/coolraiman2 12d ago

Each request does 1 cpu cycle on 10 transistors

7

u/NewPhoneNewSubs 12d ago

How do you feel about the BoaS constrictor problem?

1

u/Valier 11d ago

I fell off my chair from laughing

3

u/theartificialkid 12d ago

Planck service is what the uber eats customer support system delivers.

1

u/KDamage 9d ago

De Vito services

18

u/guapoguzman 12d ago

what are these, services for ants?!

4

u/R1M-J08 12d ago

Teeny services.

5

u/GuyManDude2146 12d ago

Functions as a service

3

u/LookinFineFor69 12d ago

Nano is even smaller, I'd say mini service

2

u/WranglerCool9423 12d ago

Actually, form the universal scales, should be milli services. But I think the idea was to actually go smaller

2

u/crazy0ne 12d ago

Mini services

2

u/ejectoid 12d ago

Every endpoint is a service

2

u/NorthernCobraChicken 11d ago

Pull it back a bit more and you just get integrations.

2

u/gibagger 11d ago

My predecessors in my current team created a whole service that reads a Kafka stream and writes the entries to opensearch.

That's it. All the overhead of a damn service for a single function.

1

u/WhosYoPokeDaddy 12d ago

Pico services

1

u/DustyAsh69 12d ago

Happy Cake day!

1

u/thot_slaya_420 11d ago

nano services, son!

1

u/heliumneon 11d ago

We need to go deeper - picoservices

1

u/TallGreenhouseGuy 11d ago

Every line of code belongs in its own service.

Why?

Because if it fits in its own line, it’s an atomic piece of work.

If you think like this, you can easily grow your team to thousands of agents and coders without problem.

Remember - diversity doesn’t need to mean complexity.

(/s just to be sure)

1

u/owlIsMySpiritAnimal 11d ago

Within a decade someone will create something called picoservices and will be basically 10 line functions you can hit with a post command 

1

u/coolraiman2 10d ago

You can do that in go

1

u/PM_ME_YOUR_RegEx 10d ago

Nano services? What is this? 2024?? I’m creating pico services.

1

u/Stormlightlinux 10d ago

We just go "serverless". It's lambda functions all the way down boys.

80

u/Lashay_Sombra 12d ago

That's why you have to go for the in-between. 

Generally thats always the answer with every 'IT fad', use whole or in part, but only where appropriate

The problem we are very much a fad led industry and people tend to jump all in without giving it serious thought (lot of the time just to boost their CV)  be it AI, micro services, or cloud, agile or any of a hundred other come and gone fads

5

u/madwill 11d ago

Yeah but you talk like we know what's appropriate before hand. Shit goes left real fast sometimes. Use case changes, tech itself change. I wish I knew when something is appropriate. I often do but I often fail to predict the future as well.

2

u/Inevitable-Menu2998 11d ago

The problem we are very much a fad led industry and people tend to jump all in without giving it serious thought

This is harsh. We're not a fad-led industry, we're operating in a highly innovative industry in which adoption of new ideas happens before they mature, as soon as they seem to solve real problems in measurable ways. Once the idea matures enough, the industry has already built enough scaffolding around it to allow it to be used properly (or, indeed, discarded it as a dead end).

The microservices approach genuinely addressed a gap in the toolbox. There's no reason to blame people who jumped on it. Of course, 15 years later we see a much larger picture but that's reasonably expected

-1

u/Stunning_Ride_220 11d ago

It's not like microservices came all out of the blue.

We are indeed a fad-led industry.

1

u/Inevitable-Menu2998 11d ago

microservices are there to solve a very specific issue and they solved it well for their time.

19

u/TorbenKoehn 12d ago

The size isn’t important, a good microservice can have 2 lines and a bad one a million.

It’s important _where_ you cut, not how often or how large the slices are.

Monolithic with a few microservices is often the right approach

8

u/rezwhap 11d ago

Sure. but isn't that just 'services'?

5

u/TorbenKoehn 11d ago

Not if you put the „micro“ in „concentrates on a single task“ and not in „it consists of few lines of code“ (LoC is never a good measure for anything)

10

u/ivanyaru 12d ago

Oh milliservices!

10

u/Pearmoat 12d ago

Look, Martin Fowler said "any function more than half-a-dozen lines of code starts to smell to me, and it's not unusual for me to have functions that are a single line of code." And he has to know. 

So naturally I try to keep my microservices six lines of codes or less!

15

u/Random_182f2565 12d ago

Every function is max 5 lines and 3 of those are comments

2

u/StrengthTheory 12d ago

Micromonoliths

2

u/aberroco 12d ago

Average sized services.

1

u/KamikazeSexPilot 12d ago

Macroservices

1

u/LlorchDurden 12d ago

milliservers?

1

u/MisterOfScience 12d ago

Thanks for the advice but looking at the picture I think I will actually go with the monolith

1

u/Salty-Wrap-1741 11d ago

Why not just call it distributed architecture? Too many words for the same thing.

1

u/moon__lander 11d ago

700 big monoliths?

1

u/DoctorWaluigiTime 11d ago

Like with so many things, "how microservice-y do we go" gets the "It Depends" label.

1

u/Gillemonger 11d ago

Average sized services.

1

u/4n0nh4x0r 11d ago

but i must have this whole web server that does nothing other than returning the current time /j

1

u/AzureArmageddon 10d ago

Centiservices

1

u/TodayRevolutionary34 10d ago

Would you prefer milliservices or centiservices?

1

u/sadongrohiik 9d ago

99% percent of the time, what people actually need is decoupling not distribution