All Coder Things
Articles, references, and practical project series on software development.
Guides
Featured Articles
C# Console Commands
Learn how to work with the C# console by writing output, reading user input, and formatting text with practical examples.
C# Operators and Expressions
Operators and expressions in C#: arithmetic, comparison, logical, increment/decrement, ternary, and null-coalescing usage.
Layered Architecture and Clean Architecture in C#
Learn layered architecture and Clean Architecture in C# to build maintainable, testable, and well-structured applications.
The Concept of Source Generators in C# (C# 9+)
Learn source generators in C# to generate code at compile time and improve performance with modern development techniques.
Conditional Statements in C++: if, else if, switch
Learn conditional statements in C++ using if, else if, and switch to control decision-making and program flow.
Interop in C# (Working with C/C++ Libraries)
Learn how to use Interop in C# to work with C/C++ libraries, including P/Invoke, unmanaged code, and data marshaling.
Extension Methods in C#
Learn extension methods in C# to add new functionality to existing types without modifying their source code.
Dependency Injection Basics in C#
Learn the basics of Dependency Injection in C#, including managing dependencies, loose coupling, and improving testability.
First C++ Program: How “Hello World” Works
Write your first C++ program and learn how “Hello World” works, including compilation, execution, and basic program flow.
Visual Studio / VS Code Tips for C#
Learn Visual Studio and VS Code tips for C# to improve productivity with shortcuts, extensions, and efficient workflows.
Networking in C# (TcpClient, HttpClient, REST API Calls)
Learn networking in C# using TcpClient, HttpClient, and REST API calls to handle communication and external data exchange.
Memory Leaks and Analysis with Valgrind in C++
Learn how to detect memory leaks in C++ and analyze applications with Valgrind to improve stability and memory usage.
Passing Parameters to Functions via Pointers in C++
Learn how to pass parameters to functions via pointers in C++, including address passing, memory access, and practical examples.
Generics in C# (List, Dictionary)
Learn generics in C#, including List
Introduction to Functions in C++: Define, Call, Parameters
Learn functions in C++, including defining, calling, and using parameters to build modular and reusable programs.
Using Benchmarking in C# (BenchmarkDotNet)
Learn benchmarking in C# using BenchmarkDotNet to measure performance and optimize your code with accurate metrics.
String Handling in C++: C-Style and std::string
Learn string handling in C++ using C-style strings and std::string for text processing, concatenation, and manipulation.
Relationship Between Arrays and Pointers in C++
Learn the relationship between arrays and pointers in C++, including memory layout, pointer arithmetic, and array access.
Using FluentValidation in C#
Learn FluentValidation in C# to define clean and maintainable validation rules for models and application inputs.
Unsafe Code and Pointers in C#
Learn unsafe code and pointers in C# to work with memory addresses, low-level operations, and advanced performance scenarios.
Task Parallel Library (TPL) and Parallel Programming in C#
Learn Task Parallel Library and parallel programming in C# using Task, Parallel, and concurrency patterns with practical examples.
Class, Object, Property and Methods in C#
Learn how classes, objects, properties, and methods work in C# and form the core building blocks of object-oriented programming.
Reflection and Late Binding in C#
Learn Reflection and late binding in C# to inspect types at runtime and build flexible, dynamic applications.
Memory Management and the Garbage Collector in C#
Learn memory management and the garbage collector in C# to understand object lifetime, allocation, and cleanup processes.
SOLID Principles with C#
Applying SOLID principles in C# with examples: building flexible, maintainable, and testable code.
Latest Examples
Idempotency Key in ASP.NET Core (.NET 8): Prevent Duplicate POST Requests
Use an Idempotency-Key header to make POST requests safe to retry: cache the first response and replay it for duplicates, avoiding double inserts.
Safe Sort & Filter in ASP.NET Core: Query Builder with Whitelisting
Parse ?sort=name,-createdAt&filter=country:TR,status:active safely by whitelisting allowed fields and mapping them to expressions or SQL columns—no dynamic injection.
ASP.NET Core Validation Errors: Normalize ModelState to { field, message }[]
Normalize ASP.NET Core ModelState errors into a simple { field, message }[] format using InvalidModelStateResponseFactory, so clients can render validation consistently.
Zip a Folder with Progress in .NET (WPF Example)
Create a ZIP from a folder in .NET while reporting progress to a WPF ProgressBar using ZipArchive and IProgress for smooth UI updates.
Standard API Response Wrapper in ASP.NET Core (Result)
Standardize success and error responses in ASP.NET Core using a Result
IP Rate Limiting in ASP.NET Core (.NET 8): Return 429 Too Many Requests
Limit requests per IP using .NET 8’s built-in rate limiting middleware and return 429 with Retry-After to protect your API from abuse.
Featured Examples
IP Rate Limiting in ASP.NET Core (.NET 8): Return 429 Too Many Requests
Limit requests per IP using .NET 8’s built-in rate limiting middleware and return 429 with Retry-After to protect your API from abuse.
Idempotency Key in ASP.NET Core (.NET 8): Prevent Duplicate POST Requests
Use an Idempotency-Key header to make POST requests safe to retry: cache the first response and replay it for duplicates, avoiding double inserts.
Zip a Folder with Progress in .NET (WPF Example)
Create a ZIP from a folder in .NET while reporting progress to a WPF ProgressBar using ZipArchive and IProgress for smooth UI updates.