Wednesday, 7 February, 2018 UTC


Summary

Our industry has a problem. It's a trend problem. Whenever you hear two developers talking libraries you'll hear a heated debate between personal preferences. There's no objective discussion. Nobody talks about contributor count, who are the project maintainers, pending issues, release frequency or availability of training material. You do hear discussions about GitHub stars, hacker news and reddit. Unfortunately, it's the same with higher-level architectural patterns like microservices. Honestly, this is how I started getting into microservices. Yes, I did read some books, went through some video tutorials, but I did it after I started advocating and using the concept. The trigger was adding Docker to my technology stack. It was the gateway drug towards microservices.
Now, to circle back to the articles in this issue, I had a couple of discussions during the past two weeks about the usefulness of microservices, and how they compare to monoliths. Personally, I don't think they're better, at least not for every problem out there. So I went to the Internets and asked it to tell me what should one choose and in what situation. I ended up with the articles below. Enjoy!
The list
Microservices vs Monolithic Architecture
This article talks mostly about the benefits of using microservices. I think it's because they're focused on cloud, and you know that when you pair "cloud" with "distributed" and "scalable" you get a recipe that gets even the most conservative business people wet. It's interesting if you want to learn more about the perspective businesses who use cloud extensively have on microservices. It's also a great vocabulary builder, if you want to go down the cloud migration, decoupling part with your professional services.
Why Microservices?
Aah, DZone. I love this blog. I find myself looking up stuff on this website all the time. Although in the beginning, the author states that they will compare and list benefits and drawbacks of both approaches, the article is still structured into: here's why monoliths are bad and here's why microservices are good. In any case, I find the way the information is structured very easy to digest and make sense of.
Microservices – Please, don’t
Loved it. It is written in a way I can relate to very easily. I love that style of writing that starts with controversy, and ends with moderation. The author makes a compelling case for monoliths and warns against the adoption of microservices just because they're in-fashion. I highly recommend you read it thoroughly. I also found this quote to be exceptionally true: “You don’t need to introduce a network boundary as an excuse to write better code”.
What is Microservices Architecture?
A really smart article. It walks you through the ins and outs of microservices based architectures, and most importantly, it makes the distinction between SOA and microservices. Not only does the author make the distinction but also tries to point out in which aspects is MSA different from SOA.
Microservices vs Monolithic Architecture
Good ole' StackOverflow! I specifically the second answer due to the concise, bullet-point based structure. If you read this, you can look inside your pockets and figure out for yourself if microservices are worth the investment.
What are Microservices? Code Examples, Best Practices, Tutorials and More
Oh, I hate "... and More" like the plague! If you've known me well enough, you also know I hate Java. So why would I put this article here? It's about microservices in Java, and it also mentions that microservices are a kind of SOA. Well, aren't we coding in Java Script? Doesn't it make sense that we should know how our big brothers think? Ok, irony aside, although this article looks more like a filler, to cover this topic and to get some more SEO, it lists a couple of Java tools and frameworks for microservices. I actually did front-end work on projects that were using either Spring Boot or Jersey, so that made me decide to include the article here.
The Martin Fowler series
I've been following Martin Fowler for over 5 years and I always found his articles and presentations very useful. These articles make no difference. I won't do a review as I would probably oversimplify. You'll have to read and understand for yourself.
MonolithFirst
Microservices Resource Guide
Microservice Trade-Offs
No long tail?
I also published an article, earlier in January tangential to the topic — CLICKBAIT: MICROSERVICES ARE BAD! SO ARE MONOLITHS .
Closing thoughts
Did I mention I launched my very own podcast? Well I did.
You can also listen to the episodes on my website, by clicking this link.