Live data from Hacker News

Ask HN: What are good books on SW architecture that don't sell microservices?

news.ycombinator.com

21–29 of 29 posts

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#21
So much is wrong with your starting point.

a) Microservices are a 20+ year old concept and for the right use cases are a better choice than monoliths. Likewise the reverse is true. Being successful with your architecture is all about being pragmatic and choosing the right tool for the job.

b) Don't fall into the trap of being obsessed about what is cool or not. No one really cares other than you and it isn't going to affect your career prospects despite this being a popular myth.

c) What does affect your career is being narrow minded, acting like you're smarter than other engineers and being closed off to other ideas. You should understand micro services, monoliths, 90s style SOA etc. You should understand everything. Why they were invented and their relative strengths and weaknesses. Being able to articulartly defend your architecture is a fundamental aspect of working in IT.

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#22
I really enjoyed: Software Architecture, The Hard Parts.

https://www.oreilly.com/library/view/software-architecture-t...

One part it discusses is in fact communication patterns along the dimensions of:

- sync/async

- atomic/eventual consistent

- orechestrated/choreographed

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#23
If you want to learn to build software well, I can’t recommend the Eventide community enough. Eventide is a ruby toolkit for event sourced autonomous services, but the people there have a proven track record of understanding, executing, and teaching software design and architecture.

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#24
post #10

The Architecture of Open Source Applications has some great lessens learned. It's also free: https://aosabook.org/en/ . I don't think there are lots of examples of the distributed systems discussion though, since most of the writing is about how to structure the source code of a single program. That's not unrelated , since most of what you're asking about is how different interfaces or modules should interact. In a d…

I really like how AOSA just describes things that exist, rather than trying to push a particular way to design/architect

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#25
post #7
post #4

I would recommend Release It! by Michael T. Nygard first edition, the second edition talks about microservices

I have the first edition and thoroughly recommend it. The rules he sets out seem to adequately account for any architecture. I’m slightly surprised that the second edition covers microservices. Have you read it? Do you know what angle he takes on them?

Unfortunately, I haven't read it, so i do not know what angle he takes.

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#26
I'm not against starting with a monolith and even keep evolving it if that makes sense but the problems with microservices I've seen were about poor design. They were mostly problems that could be avoided if people designed good DDD Bounded Contexts in the first place, regardless of being microservices or not.

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#27
To proponents of large monorepos/monoliths at larger orgs (say 100+ developers):

What is your build time? How long to go from PR to deployed?

In my experience, this is usually _hours_ at least. In my microservice shop at my previous org, full end to end regression tests included, meant code was in production in 10-20 minutes.

Re: Ask HN: What are good books on SW architecture that don't sell microservices?

#29

To proponents of large monorepos/monoliths at larger orgs (say 100+ developers): What is your build time? How long to go from PR to deployed? In my experience, this is usually _hours_ at least. In my microservice shop at my previous org, full end to end regression tests included, meant code was in production in 10-20 minutes.

Working on massive C++ monoliths here. Equally fast to test and deploy.

A friend of mine is working on a 30+ years old micro-services system. Worst piece of garbage I have ever seen in my long career.

So my conclusion is that it is the team not the architecture that ultimately decides how good the resulting software is.

Post reply on HN