-
Draft
URust Type Systems
Understanding Structural vs Nominal Typing in Rust
Discover the differences between structural and nominal typing in Rust, using examples to illustrate how Rust's type system impacts programming safety and flexibility. Compare Rust's approach to typing with Elm's, Roc's, and TypeScript's type systems, highlighting the unique aspects of each. This post offers an in-depth exploration of Rust's type system, equipping developers with insights into how different typing strategies can influence code design.
Read more -
Draft
TRust Type Systems
The Cardinal Rules of Rust - Understanding Type Cardinality for Flawless Data Models
Algebraic data types (ADTs) are a cornerstone of type theory in programming, providing a powerful framework for constructing and manipulating complex data structures. This post delves into the algebraic nature of Rust's type system, emphasizing the critical role of understanding a type's cardinality — that is, the total number of values a type can represent. This understanding is crucial for selecting the most appropriate data model, one that ensures impossible states are inherently unrepresentable. We explore the concepts of sum and product types, and highlight the intriguing way in which functions can be seen as exponentials within this algebraic framework.
Read more -
Draft
TRust Data Modeling
The Hidden Costs of Booleans
Discover the hidden costs of using Boolean values in programming when business logic changes demand a third state. This blog post explores the extensive efforts needed for refactoring — from database migrations to frontend logic adjustments — and highlights the importance of correct data modeling with enums to maintain efficient software.
Read more -
Draft
GGit
Git Under the Hood
This blog post demystifies the inner workings of Git by breaking down its core concepts into digestible sections. It covers Git Objects, Git References, and The Three Trees, using practical examples to illustrate how Git tracks changes. By exploring the .git folder's internal structure, readers will gain confidence in using Git more effectively.
Read more