Architecture Weekly #82 - 4th July 2022
Welcome to the new week!
Last week I finished with the link about the nostalgic journey of digging out old gems and how software design has changed. This time I’ll start with a similar piece. I think it’s essential to understand where we come from and how we transitioned. Thanks to that, we can learn where are we going and predict upcoming changes. Especially in our rapidly changing industry, such knowledge can be critical. We can also find out that not all the jazzy patterns we just learned are so brand new. Check:
Computer History Museum - Oral History of Dave Cutler Part 1
Computer History Museum - Oral History of Dave Cutler Part 2
A decent example of this thesis is REST. We usually think about it, focusing on the HTTP verbs and Resource naming. This is fine, but it’s not the most crucial aspect. The most important is Hypermedia, so linking resources together. It allows for designing and semantic evolutionary APIs. That makes it also easier to create frontend applications. See more in:
Speaking about frontend. To say that I’m not a fan of client code generation is to say nothing. I think this is one of the ideas that sound appealing but ends up as a maintenance nightmare. It’s a nice dream that never comes true. Why? Read more in my article:
If Pat Helland has a new article or video, it’s a straight recommendation from me. Check his latest one:
Changing the topic, as you know, I’m an active OSS contributor. Even last week, I produced two new bigger samples:
I think that, in general, the OSS model is broken. It’s hard to maintain OSS software sustainably. I think that bigger enterprises are showing their open face just to have social proof, which is trendy to be open. Donations are not real solutions. Check:
I wholeheartedly agree that enabling tooling can be a good step forward. It won’t solve all the issues, as we maintainers need to learn how to sell our work and build products, not just code for fun and burn out eventually.
Speaking about burnout, have a look at
Wink wink.
Check also more links below!
Cheers
Oskar
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 Red Cross, the Ukraine humanitarian organisation. You may also consider joining Tech for Ukraine initiative.
Architecture
Derek Comartin - Avoiding Batch Jobs by a message in the FUTURE
Kenny Baas-Schwegler - Coach your Architects in Agile Architecture!
Distributed Systems
Databases
API
Oskar Dudycz - Should you generate the client code from the API?
Julien Topçu - REST next level : Crafting business-oriented web APIs
Go
.NET
Python
Tools
Upptime - Free uptime monitor and status page powered by GitHub
GitHub - Improve Git monorepo performance with a file system monitor
Coding Life
Computer History Museum - Oral History of Dave Cutler Part 1
Computer History Museum - Oral History of Dave Cutler Part 2
Industry
Security
Troy Hunt - Understanding Have I Been Pwned’s Use of SHA-1 and k-Anonymity
Ryan Badger - “Magic links” can end up in Bing search results — rendering them useless.