Discover more from Architecture Weekly
Architecture Weekly #123 - 17th April 2023
Welcome to the new week!
Intriguingly, PostgreSQL is both popular and underrated. Many people use it because it's for free, not knowing its superpowers. Not that they're super hidden, I think it's because the PostgreSQL team is too focused on delivering new user value that they don't put enough into advertising them.
I decided to help them and explain why PostgreSQL is so unique, demonstrating the use case of Fleet Management and how it can help together with plugins like Timescale and PostGIS to build the real platform that detects the anomalies and pushes the notifications through .NET application to React app! Fasten your seat belts, and have a read, as it's gonna be a long but fun ride!
I’m super happy and incredibly proud that Marten got a sponsorship from AWS. That’s a big deal as it’s a sign of our maturity and kudos to our community around Marten! It’s also intriguing and a sign for .NET devs that it soon might not be just an MS thing. The more diversity, the better.
Not all talks deserve full attention. That's their pros and cons, as you can watch them while doing something else. Vlad Khononov's is the opposite. I enjoyed it live at last Domain-Driven Design Europe. I cherished the patient flow and storytelling, with the grand finale getting all the narratives into one.
I second the main thought: you need to focus on small things and compose them to achieve the properly working big things. It's a must-watch, but to enjoy it, take your time and put your focus on. You won't regret it.
As the final thought, Crockford said that he predicts we’ll get language and runtime designed from the ground basis for the distributed environment. Indeed, most languages and tooling are built considering that software has to be run on a specific single instance and then orchestrated. Event serverless underneath it’s a set of containers wrapped with a sugar of APIs that enables us to ignore it, but they’re still there.
As those environments are containerised underneath, we can try mimicking them in the local stack to enable a better developer experience. And yes, we also usually build on a local computer and test our code initially like that.
We’re getting the battle of two approaches: people claiming that we should be able to test and work with our code on a single machine, and vendors are trying to lock us in and charge us even for the time we’re coding. Some say that we should accept that even though those environments look similar, the consequences of small mistakes can be so severe that we should also work locally as close as possible to the end environment.
My take is: we should push vendors to enable us to develop locally without the microcharges but always verify during Continuous Integration and Deployment processes on the env environment. I tested it on production and I'm not ashamed of it. That’s also why it’s important (as Vladik said in his talk) to build our design from small components focusing on composition; they’re much easier to isolate and test.
We’re close to getting the GPU acceleration as a standard in Web UI. Google just shipped WebGPU inside Chrome. I’m in the Firefox team, but this is a big thing, especially if a single vendor didn’t just make it, but
Do you like to read tech radars or get learning maps? As always, I recommend having a healthy scepticism while checking them, but they’re a helpful tool in assessment when we need to see what to learn or predict trends while designing the greenfield software. Still, remember that boring decisions usually win in the end.
Authentication and Authorization is a neverending story. For some reason, people are still trying to implement that on their own or choose free and not battle-tested solutions instead of just paying for the comfort and focusing on delivering business value. Luckily we have more and more standards and commodities solutions. One of them is Google Zanzibar and its clones, e.g. OpenFGA. Check before you choose DIY.
Check also other links!
p.s. I invite you to join the paid version of Architecture Weekly. It already contains the exclusive Discord channel for subscribers (and my GitHub sponsors), monthly webinars, etc. It is a vibrant space for knowledge sharing. Don’t wait to be a part of it!
p.s.2. Ukraine is still under brutal Russian invasion. A lot of Ukrainian people are hurt, without shelter and need help. You can help in various ways, for instance, directly helping refugees, spreading awareness, and putting pressure on your local government or companies. You can also support Ukraine by donating, e.g. to the Ukraine humanitarian organisation, Ambulances for Ukraine or Red Cross.