Live data from Hacker News

Why Segment Went Back to a Monolith

infoq.com

311–320 of 328 posts

Re: Why Segment Went Back to a Monolith

#311
post #196

Earlier quoted context omitted.

Have you tried coordinating entire teams to work on a shared codebase? Honestly, I have never been in an organization so large that this became a necessity (if you solve tens of different problems, that would require almost thousands of developers). But coordinating single developers without an API is hard enough already, I can only assume for teams its nearly impossible.

Define “codebase”? You can have multiple services, user facing apps or modules inside a single repository, but if there are no boundaries coordination will be difficult of course.

The definition implied by the GGP is: shared codebase = everybody will change the same lines; separated codebase = people will work on different sides of an API.

At least, that's what I understand from his comment.

Re: Why Segment Went Back to a Monolith

#312
It seems like a lot of the issues were around sharing code and libraries, resulting from isolated codebases per service and the versioning hell of shared libraries.

I work in a org that migrated to microservices over time, but intentionally adopted a monorepo approach as part of it. It works quite well and seems to avoid a lot of the pain points expressed here, while also gaining the benefits of microservices.

There are definitely tradeoffs to the monorepo approach. It makes development on shared libraries more delicate and stressful, however this can be mitigated by more robust cross-service CI, and I definitely think it's a worthwhile tradeoff to the painful cycle of shared lib versions diverging across services and finding issues when some service finally gets around to upgrading its version weeks/months after shared lib changes.

Re: Why Segment Went Back to a Monolith

#313
post #249

Earlier quoted context omitted.

Amazon has a famous love for what they call “two-pizza teams” and you can find writeups about the philosophy by searching the term. The joke is that a team should be small enough that you only need to order two pizzas to feed them all. The philosophy is about the number of participants in the decision-making process. Keep teams small and give them total ownership of decision making so that decisions can be made by a…

Amazon is very well known for having A LOT of middle managers too, so I'm not sure it's a good example?

Seems sorta reasonable that if you need a manager for every 6-8 engineers, you would end up with a lot of managers.

Re: Why Segment Went Back to a Monolith

#314
post #179

Earlier quoted context omitted.

There is a difference. OOP is just one of many tools to help accomplish a task. Many other tools as well. It is up to the people how to use tools for a job and what tools for what job. You equating OOP with the dangerous things that should be kept away has no basis in programming.

I want taking a side here, just noting a tradeoff inherent to the choice in programming paradigm. When you make effective abstractions, you make your program bendy in all the right places. It's easy to add new objects where you will need them, and it's easy to extend behavior in places you need to do that. Of course, if you guess wrong, you're totally fucked. Well, either that, or you are smart and see it coming in t…

I am in total agreement with what you've just said. Basically it all comes down to programmer being either smart or stupid. OOP on its own has nothing to do with the overall complexity and where it is "moved". Shitty programmer will fuck things up no matter paradigm. And good programmer can use various paradigms to their advantage depending on particular situation. But no. From what I see we have crusaders here.

Re: Why Segment Went Back to a Monolith

#315
post #179

Earlier quoted context omitted.

There is a difference. OOP is just one of many tools to help accomplish a task. Many other tools as well. It is up to the people how to use tools for a job and what tools for what job. You equating OOP with the dangerous things that should be kept away has no basis in programming.

The way people use OOP causes them to move the complexity in a particular way. That's why the distinction doesn't make a difference in this context. You're right, technically it wasn't OOP that was writing the code, it was the person. We would have never figured that out without your guidance, we all just though OOP was banging away on the keyboard.

"The way people use OOP causes them to move the complexity"

Why don't you try to read carefully what you've just said in the sentence above

Re: Why Segment Went Back to a Monolith

#317

I bombed an interview before because I said microservices can be really bad.

Were you being sarcastic again? Or maybe they just didn't need another "idea guy"?

This person has been stalking me across threads and topics and deliberately trying to ignite conflict. Please warn.

Re: Why Segment Went Back to a Monolith

#318

I bombed an interview before because I said microservices can be really bad.

Were you being sarcastic again? Or maybe they just didn't need another "idea guy"?

There is zero chance I will ever communicate with you about anything ever gain. You need to back off now.

Re: Why Segment Went Back to a Monolith

#319

Earlier quoted context omitted.

Were you being sarcastic again? Or maybe they just didn't need another "idea guy"?

This person has been stalking me across threads and topics and deliberately trying to ignite conflict. Please warn.

I see you were being sarcastic about there being zero chance you would ever communicate with me again, because you just did one hour later, so I'll reply:

Freedom of speech doesn't give you the right to not be replied to: that's not how it works, and you aren't the dictator of what I "need". But it's 100 percent in your hands to not reply to me, after you proclaim there's zero percent chance you ever will. Since you just broke your word about not communicating with me about anything ever "gain" (sic), by replying to my same post a second time within an hour, I'm certainly under no obligation to you. You have no right to control which threads I read and who I respond to. Freedom of speech doesn't mean freedom of consequences from what you said, or censorship of people who disagree with you.

Re: Why Segment Went Back to a Monolith

#320

I bombed an interview before because I said microservices can be really bad.

Maybe it's because you weren't able to explain why you thought microservices can be really bad, or your explanation didn't hold water. So what was the explanation you gave them, or do you not want to say?

Or perhaps there are other reasons you're simply not recognizing? Like your sarcastic tone?

Post reply on HN