.NET Weekly #153 (25.11 - 01.12)
Cloud & Web
- Static File CSV Content-Type Changed to text/csv
- Building a real-time .NET GraphQL Client API
- Guaranteed Delivery with gRPC Streams
- Converting a terminal middleware to endpoint routing in ASP.NET Core 3.0
- Why you should be storing remote data in a cache
- New for Amazon Aurora – Use Machine Learning Directly From Your Databases
Tooling & Libraries
- Dark Mode by Default - 95% Prefer Dark over Light Mode
- Bootstrap 4.4.0
- Everything I know about Kubernetes I learned from a cluster of Raspberry Pis
- Kubernetes-based event-driven autoscaling (KEDA) 1.0 release
- A History of HTML Parsing at Cloudflare - Part 1
- Introducing real-time anomaly detection in Open Distro for Elasticsearch
- Feature Toggles, Blue-Green Deployments, & Canary Tests with Terraform
Architecture & Databases
- Mergeable replicated data types – Part I
- How to Approach State Management in React, Vue and Angular
- Discovering less-known PostgreSQL v12 features
- Who is a software architect? What is software architecture
- Lessons learned using Single-table design with DynamoDB and GraphQL in production
- How Does Accelerated Database Recovery Work
- Lambda Architecture for IoT and Big Data Systems
Programming Languages
- TimeSpan configuration values in .NET Core
- Rebase Considered Harmful
- Is Entity the same as Value Object
- Lessons Learned Building Distributed Systems with CQRS and Event Sourcing
- Protecting Data with IDataProtector in ASP.NET Core
- Embracing nullable reference types
- Using proper culture with C# string interpolation
Runtime
- Consolidated dotnet runtime repository
- Using BenchmarkDotNet to find methods that can cause longe GC pause times