All Coder Things
Articles, references, and practical project series on software development.
Guides
Featured Articles
Delegates and Events in C#
Learn delegates and events in C# to build event-driven applications using callbacks, subscriptions, and real-world examples.
C# Operators and Expressions
Operators and expressions in C#: arithmetic, comparison, logical, increment/decrement, ternary, and null-coalescing usage.
Design Patterns in C# (Factory, Singleton, Repository, Observer)
Learn design patterns in C#, including Factory, Singleton, Repository, and Observer, to build flexible and maintainable applications.
Dependency Injection Basics in C#
Learn the basics of Dependency Injection in C#, including managing dependencies, loose coupling, and improving testability.
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.
Asynchronous Streams in C# (IAsyncEnumerable)
Learn asynchronous streams in C# with IAsyncEnumerable to process data step by step using modern async iteration patterns.
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.
Introduction to C# and the .NET Ecosystem
C# is a modern, safe, and object-oriented language. With the .NET ecosystem, it is possible to develop web, mobile, desktop, and game applications.
Methods and Parameter Usage in C#
Learn how to define methods and use parameters in C#, including value and reference parameters, optional parameters, and examples.
C# Basic Data Types
Basic data types in C#: numeric, text, logical, object-based, and nullable types.
Layered Architecture and Clean Architecture in C#
Learn layered architecture and Clean Architecture in C# to build maintainable, testable, and well-structured applications.
C# Console Commands
Learn how to work with the C# console by writing output, reading user input, and formatting text with practical examples.
Addresses and Memory Basics in C++
Learn the basics of addresses and memory in C++, including memory layout, variable addresses, and how data is stored.
LINQ Basics in C# (Where, Select, OrderBy)
Learn LINQ basics in C# using Where, Select, and OrderBy to query, filter, and sort collections with practical examples.
C# Math Library
Learn how to use the C# Math library, including Pow, Sqrt, Round, Abs, and other essential mathematical methods with examples.
Using FluentValidation in C#
Learn FluentValidation in C# to define clean and maintainable validation rules for models and application inputs.
References vs Pointers in C++
Learn the differences between references and pointers in C++, including use cases, advantages, and memory management.
Using Benchmarking in C# (BenchmarkDotNet)
Learn benchmarking in C# using BenchmarkDotNet to measure performance and optimize your code with accurate metrics.
Arrays in C#
Learn arrays in C#, including declaration, indexing, looping through elements, and common array operations with examples.
Lambda Expressions in C#
Learn lambda expressions in C#, including concise syntax, Func and Action delegates, and practical LINQ usage examples.
Constructors, Destructors and this in C#
Learn how constructors, destructors, and the this keyword work in C# to manage object lifecycle and class-level access.
C# Boolean Operations
Learn how boolean operations work in C#, including the bool type, comparisons, and logical operators like &&, ||, and ! with examples.
Abstract Classes and Interfaces in C++
Learn abstract classes and interfaces in C++ using pure virtual functions to design flexible and extensible software architectures.
What is C++? First Steps in Programming
Learn the basics of C++ programming, its core concepts, common use cases, and how to write your first programs.
Polymorphism in C++: Virtual Functions and Vtable
Learn polymorphism in C++ using virtual functions, vtables, and dynamic dispatch to build flexible object-oriented applications.
Latest Examples
Atomic File Write in .NET: Prevent Partial and Corrupted Files
Write files safely in .NET by saving to a temporary file, flushing it, and replacing or moving it into place to prevent partial updates.
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
Featured Examples
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.
Atomic File Write in .NET: Prevent Partial and Corrupted Files
Write files safely in .NET by saving to a temporary file, flushing it, and replacing or moving it into place to prevent partial updates.
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.
ProblemDetails in ASP.NET Core: Clean Error Responses with TraceId
Map exceptions to RFC 7807 ProblemDetails and include a traceId so clients get consistent errors and you can match the exact request in logs.
Cleaner Pagination in ASP.NET Core Web API (Headers + Link)
Return only items in the body and move pagination metadata to headers. Add RFC 5988 Link header (next/prev) for clean, predictable API navigation.
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.
Standard API Response Wrapper in ASP.NET Core (Result)
Standardize success and error responses in ASP.NET Core using a Result
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.