
Controlling Nested Class Instantiation in C#
Feb 17, 2025
Categories: C#
Restrict nested class instantiation within your assembly. C# solutions using delegates, factories, and static abstract members.
Read
How to Ask Programming Questions: The Importance of Defining Data Over Code
Feb 10, 2025
Categories: General
The importance of data over code when asking programming questions and solving problems. How a well-formed question should always start and end with a clear definition of the data, rather than focusing solely on code implementation
Read
Data Driven Code Design
Feb 3, 2025
Categories: C#, Architecture
How to think in terms of data when designing a system. The importance of designing systems where impossible states are impossible to represent by using a single source of truth instead of multiple state variables
Read
How to Extend a Type's State by Adding Fields with ConditionalWeakTable
Jan 27, 2025
Categories: C#
Learn how to extend a type's state by adding fields to it with the use of the ConditionalWeakTable that pairs additional data with an existing type and the differences between ConditionalWeakTable and Dictionary
Read
Static and Compile-Time Polymorphism in C#
Jan 20, 2025
Categories: C#
What compile-time and static polymorphism are, how they work, and the various ways to implement them in C#
Read
Understanding Nullable Value Types in C#
Jan 14, 2025
Categories: C#
Nullable value types in C#, their purpose, and how to use them effectively. Where nullable value types can simplify code, such as replacing 'magic numbers', handling value types with undefined states, and managing values that may not be immediately available.
Read