You can vibe code with your favorite “AI agent bro” all you want, but you need to be in charge and know what to ask it to type. Are you going to ask it to add tests? Not if you don’t know what tests are. Are you going to ask it to do a TDD… Continue reading Programming Is Not Dead; Typing Code Is
Pure vs Impure Methods: Understanding Side Effects in Coding
What’s the difference between these two methods? and Well, there are two ways of answering this question (aren’t there always?). One way is to look from outside in. If we squint our eyes and only look at the method signatures, they are identical. (The only difference is the name, but that’s just so I can… Continue reading Pure vs Impure Methods: Understanding Side Effects in Coding
Understanding Generics and Covariance in C#
Introduction to Generics in C# Ever hit a wall like this? Yet swap to IEnumerable<Fruit> and it magically works? This trips up devs assuming inheritance flows through generics. It spotlights invariance vs. covariance – List<T> blocks it to prevent bugs, while IEnumerable<out T> enables safe read-only views. Crucial for bulletproof APIs. Core Mechanism Generics like… Continue reading Understanding Generics and Covariance in C#
Mastering Infinite Sequences in C#: A Complete Guide
Introduction to Infinite Sequences Infinite sequences in C# represent data streams that generate values indefinitely on demand, without precomputing or storing everything in memory. They leverage lazy evaluation, where elements are produced only when needed, making them ideal for scenarios like simulations or endless data generation. This approach prevents memory exhaustion from unbounded collections. IEnumerable… Continue reading Mastering Infinite Sequences in C#: A Complete Guide
Rethinking the “Audit Everything” Kata
Not every change that preserves system behavior is a refactoring. But every genuine refactoring, by definition, preserves client-facing behavior completely.
If You Don’t Want to Be Replaced by a Robot, Don’t Act Like a Robot
Here’s a rant I’ve been sitting on, and it’s time to let it out. In the modern software development landscape, there’s an unsettling trend: we pretend that the perfect project flow is a conveyor belt, and the only thing slowing us down is “imperfect” specification. Every sprint, there are grumbles about user stories that aren’t… Continue reading If You Don’t Want to Be Replaced by a Robot, Don’t Act Like a Robot
The Onion, the Layer, and the Interface
Modern software architecture is full of metaphors—and none may be as visually striking as the Onion Architecture. But what does it really mean when we talk about “layers,” “abstractions,” and “interfaces”? In this article, we’ll unravel these concepts and explore the foundational principles that shape robust, flexible systems. Peeling Back the Onion The Onion Architecture… Continue reading The Onion, the Layer, and the Interface
How to Create Tailored CVs Easily with the Europass CV Builder
Are you looking for a simple yet powerful way to create a professional CV that highlights your unique career journey? The Europass CV tool is an excellent resource designed to help job seekers across Europe—and beyond—build detailed, polished CVs with ease. Why Choose Europass CV? Europass allows you to create a comprehensive profile capturing every… Continue reading How to Create Tailored CVs Easily with the Europass CV Builder
Is There Life After SCRUM?
How many of you have actually read the SCRUM Guide? If not, I encourage you to take a look—it’s available on scrum.org and contains the foundational principles behind one of the most widely adopted agile frameworks. But before we dive deeper, let’s ask a more fundamental question: Why be agile? Why do we want to… Continue reading Is There Life After SCRUM?
Blessed Are the Pure Methods, for They Shall Be Testable!
My beloved brethren, hear me now! There are two kinds of methods in this world! On one side, there are those that walk in righteousness—methods of peace and purity, untouched by the temptations of the world! These are the pure methods, unshaken by the chaos around them. They take only what is given, mindful of… Continue reading Blessed Are the Pure Methods, for They Shall Be Testable!