News for hackers. Stuff that matters.
Re:Give Me Back My Monolith by tabtab on Wednesday March 13, 2019 @06:25PM (#19384548)
How does one know if X is the wrong solution or if X is the right solution but the shop is "doing X wrong"? This also applies to monoliths: maybe they can scale, but one is doing them wrong. Changing from doing monoliths wrong to doing microservices wrong is obviously not progress.

The same issue appeared when OOP was fairly new: people started using it heavily and ended up making messes. They were then told that they were "doing it wrong". OOP was initially sold as magic reusable Lego blocks that automatically create nice modularity. There was even an OOP magazine cover showing just that: a coder using magic Legos that farted kaleidoscopic glitter. Microservices is making similar promises.

It took a while to learn where and how to use OOP and also when not to: it sucks at some things.

Re:Give Me Back My Monolith by taneq on Wednesday March 13, 2019 @08:57PM (#19385558)
Simple:

If X is a technology I don't like, and it's not working for you, then it's the wrong solution.

If X is a technology I don't like, and it is working for you, then you simply haven't scaled enough to understand its limitations.

If X is a technology I like, but it's not working for you, then your shop is "doing X wrong".

If X is a technology I like, and it's working for you, then it's the right solution and we're both very clever.

Re:Give Me Back My Monolith by staticassertion on Wednesday March 13, 2019 @10:48PM (#19386130)
edit: See below
Re:Give Me Back My Monolith by taneq on Wednesday March 13, 2019 @11:02PM (#19386193)
Uh, my post was snark towards engineers' general tendency to champion and defend their own favourite architecture over competing approaches rather than focusing on the most suitable architecture for the circumstance, in response to this question:

> How does one know if X is the wrong solution or if X is the right solution but the shop is "doing X wrong"?

Edit: And a civil conversation ensued. :)

Re:Give Me Back My Monolith by staticassertion on Wednesday March 13, 2019 @11:19PM (#19386278)
Sorry, I just misread your post as being more of an attack. As I had said, I dislike the constant "hype means something is bad" posts that I've been seeing for years - I think it's really unfortunate.
Re:Give Me Back My Monolith by taneq on Wednesday March 13, 2019 @11:34PM (#19386333)
No worries, I can see how it might have been read that way in the wider context of the conversation. And I totally hear you on the "hype equals bad" thing. If something's popular, it's popular for a reason. That reason MIGHT just be trendoids jumping on a hype train, but it might also be because the thing is good.
Re:Give Me Back My Monolith by freedomben on Wednesday March 13, 2019 @07:35PM (#19385081)
If you want to learn "the right way" I highly recommend "Building Microservices: Designing Fine-Grained Systems" by Sam Newman[1]

[1] https://smile.amazon.com/Building-Microservices-Designing-Fi...

Re:Give Me Back My Monolith by notyourday on Wednesday March 13, 2019 @08:13PM (#19385299)
I have posted about this before. OP is describing nano-services, not micro-services. Nano-service is micro-service that provides leftpad via JSON api.

You have an auth.yourapp.com and api.yourapp.com and maybe tracer.yourapp.com and those three things are not a single app that behaves like auth, api or tracer depending on setting of a NODE_ENV variable? If so, you have micro services.