Stop using starter packs
A critique of using pre-made project templates and starter packs in web development, arguing they hinder learning and create long-term issues.
A critique of using pre-made project templates and starter packs in web development, arguing they hinder learning and create long-term issues.
Explains C# logging source code generators in .NET 6, detailing their benefits and usage for efficient, structured logging.
Explains why function pointers fail with instance methods and large structs in C#, detailing a stack corruption issue.
A developer creates a new model for a teacher checklist feature in a Django-based homeschool SaaS application.
A tutorial on improving the user experience of a Blazor WebAssembly app by creating a custom loading screen with a progress bar.
Explores Data-Oriented Programming in Java, focusing on using records, sealed types, and pattern matching to model immutable data.
An introductory guide explaining the core concepts of Git, including repositories, remotes, commits, and branches, with practical examples.
Explores writing a .NET profiler in C# using NativeAOT to overcome traditional C++ limitations and self-profiling issues.
A critical analysis of the Fediverse (Mastodon, Pleroma) highlighting its benefits as a decentralized social network but also its toxic, Twitter-like dynamics.
Explains the difference between abstract classes and interfaces in C# using real-world analogies like animals and ATMs.
A detailed guide to SOLID principles in C#, explaining each principle with code examples to improve code readability, maintainability, and flexibility.
A technical guide for installing R version 3.6.3 on Linux Mint 19.x, including steps to remove old versions and configure repositories.
Explores potential future features for the C# programming language, including compound assignments in object initializers and discriminated unions.
A guide to implementing image resizing extensions for both UIKit (iOS) and AppKit (macOS) in Swift, enabling cross-platform code.
Explains why Terraform's nonsensitive() function fails when trying to output a sensitive value stored inside a list from a conditional resource.
A guide to using Directory.Build.props to create a central NuGet package store for managing dependencies in a UNO Platform .NET 6 application.
Explains a quirk in ActiveRecord's as_json method when deprecating fields and how to properly exclude them from nested JSON output.
Explains when Blazor components automatically re-render and common pitfalls to avoid, focusing on StateHasChanged, async methods, and lifecycle events.
Explains how to use TaskCompletionSource in .NET to convert event-based APIs into awaitable tasks, with examples for timers and error handling.
Explores the connection between observability in IT systems and the dinosaur counting system from Jurassic Park, using the story to explain monitoring concepts.