Releases: oskardudycz/ArchitectureWeekly
19th February 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - Implementing Closing the Books pattern
- Eric Evans, Dave Farley - How AI Will Change Software Development In The Next 10 Years
- vjeux - End-to-End Encryption in the Browser
- Ivar Jacobson, Alistair Cockburn - Use-Case Foundation
- Michael Nygard - Consequences are not Pros or Cons
- The Serverless Edge - SCORP – the well-architected tool for Architecture Reviews
- Gregor Hohpe - Debugging Architects
DevOps
Databases
AI
AWS
- Yan Cui - How would you reprocess Lambda dead-letter queue messages on demand?
- Steef-Jan Wiggers - AWS Launches CDK Migrate and CloudFormation IaC Generator for Infrastructure as Code Adoption
Azure
- Mattias Karlsson - Introducing ARI. A DevOps tool to document a Azure tenant resources
- Microsoft - Announcing general availability of Microsoft Graph APIs for Microsoft Teams meeting recordings
- Microsoft - End of SSH-RSA support for Azure Repos
Java
- Nicolai Parlog - Data Oriented Programming in Java 21
- Paul Sandoz - Emulating C# LINQ in Java using Code Reflection
.NET
- Microsoft - Introducing ASP.NET Core metrics and Grafana dashboards in .NET 8
- Nick Chapsas - Build Clean Messaging in .NET with Wolverine
- Jeremy D. Miller - Answering Some Concerns about Wolverine
- Andrew Lock - 8 ways to set the URLs for an ASP.NET Core app
- CSharpier - An opinionated code formatter for c#
Node.js
- Node.js - Native test runner
- Sarah Gooding - Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npm
Windows
Coding Life
Management
- Cliff Hazell - The one thing nobody copies from Spotify
- Matthew Roche - Being a PM at Microsoft: Thriving in ambiguity
- Forbes - CEOs Are Using Return To Office Mandates To Mask Poor Management
- The Register - Dell said to be preparing broad Return To Office order this Monday
Industry
Security
- Virgil Security - Essential security platform for your product
- Mateusz Jendza - Time for Passwordless
Trivia
12th February 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- George Ball - Achieving High Throughput Without Sacrificing Latency
- Luc van Donkersgoed - The single-tenancy to multi-tenancy spectrum
- Microsoft - Smart load balancing for OpenAI endpoints using containers
- Wim Debreuck - Event Driven Architecture & Governance in action
- Martin Schimak - Tackling Complex Event Flows
- Eric Evans, Dave Farley - Applying DDD Beyond Object-Oriented Programming
- Nick Tune - Architecting for Independent Value Streams
- Tim Wellhausen, Andreas Fießer - How to write a pattern? A rough guide for first-time pattern authors
- Neil B. Harrison - Advanced Pattern Writing. Patterns for Experienced Pattern Authors
DevOps
Testing
Azure
Go
Java
.NET
- Tim Deschryver - Translating Exceptions into Problem Details Responses
- Fga.Net - OpenFGA & Auth0 FGA for ASP.NET Core + Worker Services
- Reqnroll - Open-source Cucumber-style BDD test automation framework for .NET
- Cronos - Fully-featured .NET library for working with Cron expressions. Built with time zones in mind and intuitively handles daylight saving time transitions
Node.js
- Oskar Dudycz - Announcing Emmett! Take your event-driven applications back to the future!
- Emmett - a Node.js library taking your event-driven applications back to the future!
Performance
Management
Industry
Security
- ZITADEL - Identity infrastructure, simplified for you
- The Hacker News - Hackers Exploit Job Boards, Stealing Millions of Resumes and Personal Data
- ArsTechnica - Canada declares Flipper Zero public enemy No. 1 in car-theft crackdown
- Information is beautiful - World's Biggest Data Breaches & Hacks
Trivia
5th February 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - Production-Grade Event Sourcing Workshop - Modelling, DevOps, Process
- RevenueCat - Scaling smoothly: RevenueCat’s data-caching techniques for 1.2 billion daily API requests
- Lastminute.com - Evolution of a high-performance system: from synchronous to seamless scalability
- Alex Strachan - Understanding Architectures for Multi-Region Data Residency
- Alistair Cockburn - Hexagonal Architecture from its Inventor
- Ian Cooper - Adopting Polyglot Flow
- Cloud Native Computing Foundation - Announces the Graduation of CloudEvents
- SingleStone - New Miro Templates for Domain-Driven Discovery
- Jeff Atwood - When Understanding means Rewriting
- Kris Van Vlaenderen - 5 pitfalls to avoid when implementing an Event-Driven Architecture
DevOps
Databases
Testing
- Microsoft - APIs testing using HTTP files and Rest Client
- Hillel Wayne - I have complicated feelings about TDD
AI
- LM Studio - Discover, download, and run local LLMs
- Rachel Coldicutt - Is it possible for general purpose AI to do no harm?
.NET
- Kyle Kukshtel - So You Wanna Package Some Native Libs Into A NuGet Package
- Nicholas Blumhardt - SerilogTracing
- Charles Chen - .NET Task Parallel Library vs System.Threading.Channels
- Egil Hansen - Testing .NET Web APIs from A to Z
Node.js
Smalltalk
TypeScript
Management
- Avraham Poupko - You can’t fight Conway’s law
- Jamie McDonald - Roadmaps are tools
- Sam-Nicolai Johnston - Improving Delivery Rate by Subtasking
Industry
Security
29th January 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - How TypeScript can help in modelling business workflows
- Fathom Analytics - Reducing our AWS bill by $100,000
- Pierre Pureur - How Much Architecture Is “Enough?”: Balancing the MVP and MVA Helps You Make Better Decisions
- Discord - Maxjourney: Pushing Discord’s Limits with a Million+ Online Users in a Single Server
- Jack Vanlightly - The advantages of queues on logs
- Andrea Medda, Matt Boyle - Tales of Kafka @Cloudflare: Lessons Learnt on the Way to 1 Trillion Messages
- Juan Manuel Garrido de Paz - Ports and Adapters Pattern
- Cyrille Martraire - Domain modeling with monoids
- Mario Bittencourt - Why AsyncAPI Matters — Bridging the Gap in API Documentation — Part I
- Eduardo da Silva - Towards Architecture Organization Topologies for Sustainable Fast Flow of Change
- Nick Tune - Forming an Architecture Modernization Enabling Team
DevOps
- Bernard Pietraga - Practical solutions for dealing with high cardinality metrics
- Dreams of Code - Using docker in unusual ways
Databases
- Gwen Shapira - The Rise of the Serverless Data Architectures
- QuestDB - An open source time-series database for fast ingest and SQL queries
- Alicja Kucharczyk: Leveraging pgBadger for Effective PostgreSQL Troubleshooting
- PopSQL - How to Calculate Cumulative Sum-Running Total in PostgreSQL
AI
- The Motte - ChatGPT does Advent of Code 2023
- Wired - Most Top News Sites Block AI Bots. Right-Wing Media Welcomes Them
.NET
- Joel Verhagen - The fastest CSV parser in .NET
- Aaron Stannard - How to Distribute Roslyn Analyzers via NuGet
- Microsoft - Introducing the MSTest Runner – CLI, Visual Studio, & More
- .NET Team - Eventing Framework in .NET 9
Node.js
Product Design
- Oskar Dudycz - When Agile is not enough
- Henrik Kniberg - Making sense of MVP (Minimum Viable Product) – and why I prefer Earliest Testable/Usable/Lovable
- Rik Higham - The MVP is dead. Long live the RAT.
Management
- Simon Wardley - Pioneers, Settlers and Town Planners
- Bjarte Bogsnes - Hitting the target but missing the point - myths about target setting
- Atlassian - Lessons Learned: 1,000 Days of Distributed at Atlassian
Industry
22nd January 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - Stream ids, event types prefixes and other event data you might not want to slice off
- Andreas Pinhammer - DDD in large product portfolios
- Slack - Slack’s Migration to a Cellular Architecture
- Pete Hodgson - Tech Debt Walls
- Netflix - Rebuilding Netflix Video Processing Pipeline with Microservices
- Phil Calçado - Pattern: Using Pseudo-URIs with Microservices
- MongoDB - A Comprehensive Guide to Data Modeling
- MongoDB - Data Modeling for MongoDB
- InfoQ - The InfoQ Trends Reports 2023 eMag
- Ryan Shriver - Start Your Architecture Modernization with Domain-Driven Discovery
- C.ristian Axenie, O. López-Corona, M. A. Makridis, M. Akbarzadeh, M. Saveriano, A. Stancu, J. West - Antifragility as a complex system's response to perturbations, volatility, and time
- Barry M O’Reilly - An Introduction to Residuality Theory: Software Design Heuristics for Complex Systems
- GitHub - Our move to generated SDKs
DevOps
Frontend
- Tomasz Ducin - Signals are VALUES, not EVENTS
- The AHA Stack - Combine Astro, htmx and Alpine.js to create modern web applications sending HTML over the wire, replacing the SPA JS-heavy approach with a much simpler set of mental models and workflows.
Hardware
- Roy Longbottom - Cray 1 Supercomputer Performance Comparisons With Home Computers Phones and Tablets
AI
AWS
Azure
Java
.NET
- Jeremy D. Miller - Building a Critter Stack Application: Messaging with Rabbit MQ
- Cezary Piątek - Mocking GraphQL queries with WireMock.NET
- The Hanselminutes Podcast - ASP.NET Basics for Experts with Layla Porter
- .NET Rocks - .NET 8 Migration with Jimmy Bogard
TypeScript
Coding Life
Management
Industry
15th January 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Martin Schimak - Talk Session: Know the Flow! Events, Commands & Long-Running Services
- Nick Tune - Beyond Problem and Solution Space: Better models for modern product development
- Maciej 'MJ' Jedrzejewski - Mastering Strategic Domain-Driven Design – 6. Context Map
- Simon Wardley - Wardley Maps and Cynefin
- Leslie Lamport - Time, Clocks and the Ordering of Events in a Distributed System
- The Seattle Times - Boeing wants FAA to exempt MAX 7 from safety rules to get it in the air
- Gartner - Software Engineering Predicts 2024: Leadership During Disruption
DevOps
- OpenTofu - OpenTofu is going GA
- Awesome Self-Hosted - A list of Free Software network services and web applications which can be hosted on your own servers
- Julia Evans - Some notes on NixOS
AI
- ArsTechnica - UnitedHealth uses AI model with 90% error rate to deny care, lawsuit alleges
- Einar W. Høst - The AI Puppet Dance
- Mike Loukides - Can Language Models Replace Compilers? Don’t get your hopes up
- Karawynn Long - Language Is a Poor Heuristic for Intelligence
- Futurism - Amazon Is Selling Products With AI-Generated Names Like "I Cannot Fulfill This Request It Goes Against OpenAI Use Policy"
C
Functional Programming
JavaScript
.NET
- João Antunes - A .NET parallel Kafka consumer proof of concept (feat. Akka.NET and the actor model)
- Falco.Htmx - An experimental Falco integration with htmx JS package.
- Andrew Lock - A brief look at StringValues
- Gérald Barré - Making primary constructor parameters read-only
Tools
- Jacqui Read - How to get started with Obsidian Dataview and DataviewJS
- Everything curl - an extensive guide for all things curl.
- Cloudglare Website Analytics - Privacy-first, lightweight, accurate web analytics—for free
Coding Life
- Steph Ango - Don't specialize, hybridize
- Salem Group - Unlocking the Secrets of T-Shaped and V-Shaped Employees: How to Position Yourself for Career Success
- Vanderbilt University - Just-in-Time Teaching
- M. Gupta, A. Sharma - Fear of missing out: A brief overview of origin, theoretical underpinnings and relationship with mental health
Management
Industry
- Rand Fishkin - Google, Apple, and Amazon Stifle Innovation When They Favor Their Own Products
- The Register - Broadcom ditches VMware Cloud Service Providers
- The Verge - Unity is laying off 25 percent of its staff
- The Verge - Amazon lays off more than 500 employees in its Twitch unit
Trivia
8th January 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - Not all issues are complex, some are complicated. Here's how to deal with them
- Leslie Lamport - A Science of Concurrent Programs
- Dave Snowden - Complex Adaptive Systems
- Thomas Pierrain - Discover ReBAC, the next-generation authorization model compatible with DDD
- Steve Sanderson - Keynote: Where Web Tech is Going Now
- Jake Lazaroff - The Website vs. Web App Dichotomy Doesn't Exist
- Gunnar Morling - Seven Ways to Put CDC to Work
- Shopify - Refactoring Legacy Code with the Strangler Fig Pattern
- Indi Young - Why Problem Space?
Testing
DevOps
- Google - Developer Productivity for Humans, Part 7: Software Quality
- Sean Trane - GitHub Labels that are logical, colorful and sensible
- Dennis Doomen - 22 reasons to ditch Azure DevOps and switch to GitHub as soon as possible
AWS
Java
.NET
- Vogen - A semi-opinionated library which is a source generator and a code analyser. It Source generates Value Objects
- Fluid - An open-source .NET template engine based on the Liquid template language.
- Cezary Piątek - Common Setup and Teardown in dotnet tests without test framework magic
- Khalid Abuhakmeh - Faster .NET Database Integration Tests with Respawn and xUnit
Node.js
TypeScript
Management
- Charity Mayors - Becoming An Engineering Manager Can Make You Better At Life And Relationships
- Gergely Orosz - Inside Stripe’s Engineering Culture - Part 1
Product Design
Industry
- Financial Times - Mariana Mazzucato: ‘The McKinseys and the Deloittes have no expertise in the areas that they’re advising in’
- Armin Ronacher - The Life and Death of Open Source Companies
- Josef Průša - The state of open-source in 3D printing in 2023
Security
1st January 2024
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Florian Bellmann - You are never taught how to build quality software
- Denise Yu - Why are Distributed Systems so hard? A network partition survival guide
- Dave Snowden - Patterns all the way down
- Alessio Coser - Escaping the magics of the frameworks: 5. The framework
DevOps
AI
- Martin Krasser - Implementing JSON mode for open LLMs
- Rafal Gancarz - Griffin 2.0: Instacart Revamps Its Machine Learning Platform
- GitHub - GitHub Copilot Chat now generally available for organizations and individuals
Java
- Vlad Mihalcea - The best way to map multiple entities on the same table
- Sirisha Pratha - Spring Boot 3.2 Delivers Support for Virtual Threads and Modern RestClient and JdbcClient
.NET
- Jeremy D. Miller - Building a Critter Stack Application: Durable Outbox Messaging and Why You Care!
- Ian Russell - Discriminated Unions in C#
- Milan Jovanović - Global Error Handling in ASP.NET Core 8
- Michael Shpilt - How to Debug LINQ queries in C#
Rust
Tools
Coding Life
- Oskar Dudycz - What Dune can tell us about setting our goals
- Barry Overeem - Programmer- or Product Developer? Why The Difference Matters!
- CoRecursive Podcast - Quitting (And Then Rejoining) Stack Overflow with Ben Dumke-von der Ehe
Management
- Jeff Gothelf - Roadmaps are linear. Software projects aren’t.
- Jeff Wofford - How to Boss Without Being Bossy
- Stephen P. Anderson - Toward A New Model for Corporate Learning and Development (Part 1)
Industry
- Justin Garrison - Amazon's Silent Sacking
- Adrian Cockcroft - Signs that it’s time to leave a company…
- The Verge - The New York Times is suing OpenAI and Microsoft for copyright infringement
- Axios - Elon Musk's X gets another valuation cut from Fidelity
Security
Trivia
25th December 2023
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Andrea Magnorsky - Knowledge sharing is Systems building
- Pete Hodgson - Expand/Contract: making a breaking change without a big bang
- Yan Cui - How to perform database migration for a live service with no downtime
- Glenn Vanderburg - Real Software Engineering
- Oddly Influenced Podcast - Interview: Glenn Vanderburg on engineering
- Stefan Tilkov - Practical (a.k.a. Actually Useful) Architecture
- Einar Høst — Agile and Architecture: a meeting of the undead
- Julien Topçu, Josian Chevalier - Model Mitosis
- McDonald's Technical Blog - Hexagonal Architectures — the sequel
DevOps
- Martin Thwaites - Building a secure OpenTelemetry Collector
- Kubernetes Unpacked Podcast - Kubernetes Long-Term Support With Kubernetes Co-Founder Brendan Burns
Databases
- Gwen Shapira - Transaction Isolation in Postgres, explained
- Jepsen - MySQL 8.0.34
- Rajendra Gupta - Table Partitioning in Azure SQL Database
- Branimir Lambov, Shylaja Kokoori - Memtable Pluggability and Alternate Memtables (CEP-11 & CEP-19) in Cassandra
Frontend
AI
Java
- A N M Bazlur Rahman - Stream API Evolution: a Closer Look at JEP 461's Stream Gatherers
- Inside Java - Introducing the Oracle Java Platform Extension for Visual Studio Code
.NET
- Oskar Dudycz - Why I won't use .NET Aspire for now
- Anthony Simmon - Exploring the Microsoft Developer Control Plane at the heart of the new .NET Aspire
- Khalid Abuhakmeh - MemoizR - Declarative Structured Concurrency for C#
- Angel Daniel Munoz Gonzalez - Revisiting WASM for F#
- Jeffrey Rennie - Turn your ASP.NET MVC/Razor Website into a SPA Without Blazor
Coding Life
- Jeff Atwood - The Ten Commandments of Egoless Programming
- Will Larson - Notes on How Big Things Get Done
Product Design
- The Logan Bartlett Show - Confluent’s Resilient Rise To Software Juggernaut with Jay Kreps
- Krisztina Hirth - Shifting from Projects to Feedback-Based Product Dev: Practical Tips and Insights
- Penpot - The Open-Source design & prototyping platform
Industry
- The Verge - Adobe abandons $20 billion acquisition of Figma
- Figma - Figma and Adobe are abandoning our proposed merger
- The Verge - 2023 in social media: the case for the fediverse
Trivia
18th December 2023
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation or donate Ambulances for Ukraine.
Architecture
- Oskar Dudycz - Hitchhiker's Guide To Moving From Relational Data To Events
- Dave Farley - Engineering for Software
- Hillel Wayne - Is Software Engineering Real Engineering?
- EDA Summit - 2023 Summit Sessions
- Pierre Pureur - 12 Software Architecture Pitfalls and How to Avoid Them
- Martin Kleppmann, Jesse Anderson - Designing A Data-Intensive Future: Expert Talk
- Graphite - Why we use AWS instead of Vercel to host our Next.js app
- Erik Wilde, Fran Mendez - AsyncAPI 3.0: What's new and should you upgrade?
- DDDUS Online Meetup - Alexander Miertsch - prooph board
DevOps
- Honeycomb - Observability Is About Confidence
- Gregor Hohpe - The Magic of Platforms
- Fly.io - Rethinking Serverless with FLAME
Databases
- Arslan Ahmad - Scaling SQL Databases: 8 Challenges of Horizontally Scaling SQL Databases
- Redis - Introduction to Conflict-Free Replicated Data Types (CRDTs)
- Oren Eini - Production Postmortem. The Spawn of Denial of Service
Frontend
- Scott Jehl - How to Use Responsive HTML Video (...and Audio!)
- Facebook - Introducing StyleX
- Dan Abramov - A Chain Reaction
Testing
AI
- CNBC - How to stop Dropbox from sharing your personal files with OpenAI
- Simon Willison - The AI trust crisis
JVM
.NET
- James Hickey - High-Performance .NET CRON Jobs
- Layla Porter - Cloud-native apps with .NET Aspire
- Damian Płaza - FSM - Functional State Machines
- Fiodar Sazanavets - Building your own audio player with .NET – part 1
- NDepend - .NET Native AOT Explained
Rust
Coding Life
Industry
- Hashicorp - Mitchell reflects as he departs HashiCorp
- TechCrunch - Docker acquires AtomicJar, a testing startup that raised $25M in January
- The Verge - Epic win: Jury decides Google has illegal monopoly in app store fight
Security
- Kelly Shortridge - Cybersecurity Isn’t Special
- PromptArmor, Kai Greshake - Data exfiltration from Writer.com with indirect prompt injection