The Crafting Strider

Raman But-Husaim’s personal webblog. Ideas, tech articles born through the life of a software engineer

.NET Weekly #115 (11.02 - 17.02)

Cloud & Web

  1. Help! None of my projects want to be SPAs
  2. What Hooks Mean for Vue
  3. 5 Ways to Improve the Performance of Your Web App
  4. Using ASP.NET Core Health Checks With ASP.NET Full Framework
  5. core 3 Background Worker template
  6. Reacting to Promises from event listeners in Vue.js
  7. How I wrote the Fastest JavaScript UI Framework
  8. AllowSynchronousIO disabled in all servers
  9. Breaking changes to runtime compilation for Razor views and Razor Pages
  10. An introduction to ASP.NET Core Razor Pages
  11. Be careful when manually handling JSON requests in ASP.NET Core

Tooling & Libraries

  1. SemVer’s New Maintainers
  2. Next.js 8
  3. Break When Value Changes - Data Breakpoints for .NET Core in Visual Studio 2019
  4. Writing plugins for ReSharper and Rider
  5. GitHub - Introducing draft pull requests
  6. Bootstrap 5 will remove jQuery as a dependency
  7. DigitalOcean - Fully managed PostgreSQL databases
  8. BenchmarkDotNet v0.11.4
  9. Publishing .NET Core images to Microsoft Container Registry

Architecture & Databases

  1. PostgreSQL used fsync incorrectly for 20 years
  2. Processing large volumes of data safely and fast using Node.js and PostgreSQL
  3. Breaking PostgreSQL at Scale
  4. Journey to Event Driven – Part 1 - Why Event-First Thinking Changes Everything
  5. Journey to Event Driven – Part 2 - Programming Models for the Event-Driven Architecture
  6. Understanding Database Sharding
  7. Algorithms behind Modern Storage Systems
  8. Memcached - Caching beyond RAM - Riding the cliff
  9. To Create An Evolvable API, Stop Thinking About URLs
  10. Paper review. Sharding the Shards - Managing Datastore Locality at Scale with Akkio
  11. What Two Years With Microservices Taught Me
  12. The Performance of Window Aggregates Revisited with SQL Server 2019

Programming Languages

  1. Fixing Random, part 4
  2. Fixing Random, part 5
  3. Asynchronous Injection
  4. Asynchronous programming. Cooperative multitasking
  5. Hash Tables – The Secret to Incredibly Fast Software
  6. C# 8 - Slicing with Indexes and Ranges
  7. SQL - One of the Most Valuable Skills
  8. The memory safety problem isn’t bad coders
  9. These 5 “clean code” tips will dramatically improve your productivity
  10. Reusable Code In React - Inheritance, Composition, Decorators and Mixins


  1. Running with Server GC in a Small Container Scenario Part 1 – Hard Limit for the GC Heap
  2. Readonly ref variables, in parameters and readonly structs
  3. Building your own Java-like GC logs in .NET
  4. Real-Time specification for C#
  5. Replacing a hot path in your app’s JavaScript with WebAssembly
  6. 6 distinct storage locations for variables in a .NET program
  7. Perf - Collection Count() is Slower in Core than the CLR


  1. On Being A Principal Engineer
  2. I scanned the whole country of Austria and this is what I’ve found
  3. CVE-2019-5736 - runc container breakout (all versions)
  4. 10 Years of Workshop Material Added to the Creative Commons
  5. Trends, challenge, and shifts in software vulnerability mitigation
  6. Introducing Adiantum - Encryption for the Next Billion Users
  7. Protecting your Domain Names - Taking the First Steps