Software Architecture Newsletter #3
Welcome to the 3rd edition of the Software Architecture Newsletter!
This edition celebrates two numbers – 2020, and 1000.
The year 2020 is coming to an end. This was a very…well…interesting year. I hope you came out stronger, and I do hope next year will be much more boring.
The second number is a 1000. After only two months, this newsletter crossed the 1000 subscribers line! This is a great milestone, and it shows there’s a real need for such a newsletter.
Your feedback keeps on coming, and I’m glad to learn you see a real value in this newsletter. Keep it coming!
As usual, if you found something interesting that you think should be included here, or you have something to say about the content of this newsletter – drop me a mail at firstname.lastname@example.org
So, without further ado – here’s the 3rd edition of the Software Architecture Newsletter.
Develop Flutter with the BLoC Architecture – Flutter is my favorite cross-platform mobile development platform (too many platforms in this sentence…), but as with any, well, platform, we must learn the best practices of using it, so that we’ll design the best architecture for it.
And one of the most popular patterns for Flutter apps is the BLoC architecture.
The BLoC architecture pattern was demonstrated on last year’s Google I/O event (remember those days when we could actually gather together for live events? Yep, that was back then…) by Felix Angelov, and this article, published on DZone, provides a great introduction to it.
If you want to know anything about Flutter patterns – don’t miss it.
Read it here.
Announcing .NET 5.0 – Microsoft announced the next version of .NET, dubbed .NET 5.
This new versioning scheme marks the end of the two-heads run – .NET Framework and .NET Core. From now on, there is only .NET, no “Framework” and no “Core”
True, .NET 5 is basically a rebranded .NET Core, and the real thing here is that no more effort will be put into .NET Framework, but still – it’s a strong message from Microsoft, and one we should all listen carefully.
Read all the details here.
Connected Cars challenges and opportunities – The automotive industry has advanced in a neck-breaking pace in recent years. Large multi-media screens that controls the car features, advanced safety capabilities, electric motors, autonomous driving – all these appeared in the last 5-10 years, which is not a lot in automotive terms. One capability which overarches all these advancements is the Connected Car – a car that can talk with its environment (and the term “environment” is quite flexible here, as you’ll see). This new kind of car presents unique challenges from a Software Architecture perspective, and I believe we all need to be familiar with it.
This article presents these challenges, and discusses an architectural pattern that is well suited for the new motoring reality.
Differences between classic Architect and Cloud Architect – If you haven’t been living under a rock in the past few years, you know we’re in the cloud era. The cloud offers organizations of all kinds – enterprises, SMBs, startups and more – access to virtually unlimited compute power and a plethora of managed services that make the life of the developers much easier.
But what about Architects? Where does it find us?
Well, it turns out that there are some differences between “classic” Software Architects, and Cloud Architects, and being a great in the first does not automatically makes you also great in the second.
Read my article about the main differences between the two types of architects, and I’m sure it will help you become great at both Software and Cloud architecture.
MongoDB’s Atlas unveils multi-cloud failover support – MongoDB is one of the most popular NoSQL databases, if not the most popular of them all. A few years ago, MongoDB introduced Atlas, the hosted, fully managed MongoDB platform, and made it available in the major public clouds – AWS, Azure and GCP.
And now comes a very interesting announcement regarding Atlas: It now enables users of the platform to deploy distributed MongoDB database across clouds. That means that the same cluster can be configured to run on both AWS and Azure, for example.
The new capability enables various scenarios that weren’t available before, such as taking advantage of cloud-specific functionality, multi-cloud high-availability and more.
This announcement continues the multi-cloud trend, and it’s interesting to see what will be the effect on MongoDB users.
Read the full announcement here.
GCP DMS – One of the major pain points when migrating a system to the cloud is data migration. It’s a delicate process, and if something goes wrong – well, you want to be nowhere near when that happens.
Microsoft Azure has great migration tool just for this (Azure Database Migration Service) and now Google has one, too.
Google has announced the Data Migration Service, which helps migrate MySQL, PostgreSQL and SQL Server workloads from on-prem or other cloud environment to the cloud.
The service, currently in preview, automates the whole migration process, and is fully serverless – no provisioning is needed in order to use it.
So if you’re planning a GCP deployment – you should definitely take a look.
More info in the ZDNet article.
AWS announces Storage Lens – AWS’s S3 is probably the most popular object store out there, and many organizations store there terabytes, and even petabytes, of objects.
Problem is – it’s quite easy to get lost with all this storage, and to lose track about what do I store, where, and how efficient my storage is.
For this problem exactly, AWS announced Storage Lens, a centralized dashboard and intelligent recommendation engine to provide organization-wide visibility into your object storage. Using Storage Lens you can see your current usage, get tiering recommendations, and lots more.
Read the full announcement here.
Stop using phone based MFA – We’re all too familiar with the classic MFA (or – Multi-Factor Authentication). You know the drill – we type username and password, and then get a text message to our phone with some arbitrary code we need to type, in order to get access to the resource.
However – Alex Weinert, Director of Identity Security at Microsoft, warns against such use.
He writes that, while text-based MFA is better than not having MFA at all, it’s a vulnerable approach and shouldn’t be used. Instead, we better go with app-based MFA (such as Microsoft Authenticator).
In his blog post, Alex outlines the problems with text-based MFA, including: Easy to Social Engineer, transmitted in the clear, and more.
This is super important for every Software Architect involved in designing the security aspects of the system.
Read the full blog post here.
Dev & DevOps
7 software development models you should know – There are many ways to develop, and there are many development models to use when developing. I guess we’ve all heard about the Waterfall model and Agile, but apparently there are more…
This article, by Flexagon, describes 7(!) development models, and the pros and cons of each. Highly recommended for everyone who’s involved in a development team.
Using REST to run actions– We all know REST is great for managing entities. Its built-in support for CRUD operations using HTTP Verbs (POST, GET, PUT and DELETE, respectively) is one of the things that make it so popular.
But – how should it be used when we want to run some actions? For example – to shutdown a machine?
This issue was the topic of one of the recent posts in our Facebook Group, and that generated some interesting discussions
Want to chime in? Do it here.
End of Year Sale!
2020 comes to an end, and let’s be honest – that’s definitely something to celebrate.
That’s was definitely one of the most challenging years we had, and we sure do hope the next one will be better.
So in order to celebrate the end of 2020, and to welcome 2021, I’ve decided to run the Special End-Of-Year Sale!
In this sale, you can grab all my Software Architecture courses for special prices, from 9.99$ – 11.99$.
Tens of thousands of students already enrolled in these courses, and became great Software Architects.
The sale ends in 3 days, so you better act fast…
Here are the courses on sale:
The Complete Guide to Becoming a Software Architect
Microservices Architecture – The Complete Guide
REST API Design – The Complete Guide
Software Architecture Case Studies
Software Architecture Security – The Complete Guide
Remember – the sale ends in just 3 days, and the coupons are limited, so act fast!
So, that was the third edition of the Software Architecture Newsletter (temp name).
I hope you enjoyed it, and feel free to suggest and comment on it, simply by replying to this mail.
Also, if you created a unique content you think can be included here – drop me a note!
Looking forward for your feedback!