The Nature of Software Development, by Ron Jeffries
I've had this book on my shelf for quite a while, and I’m not really sure why. Honestly, I now regret not having read it sooner. It’s a truly superb work and also a very enjoyable read.
I've had this book on my shelf for quite a while, and I’m not really sure why. Honestly, I now regret not having read it sooner. It’s a truly superb work and also a very enjoyable read.
Test doubles are objects used to replace a dependency of the unit under test that we prefer not to execute, often because it involves external services. There are several types of test doubles, ea...
Exposing an object’s fields publicly is a practice that I prefer to avoid at all costs. I’ll try to explain why. In a nutshell, public fields… Break encapsulation. Violate the information hi...
Generic subdomain is a concept from Domain-Driven Design I find especially useful for the modern software engineer. DDD splits the domain — the problem space of the business — into specific areas ...
Recently, I participated in a discussion about revamping the technical interviews we conduct for Software Engineer candidates. It’s a deeply interesting topic, one we could discuss for hours, but t...
Do you remember the scene from Indiana Jones and the Temple of Doom? The evil Mola Ram sticks his hand inside a poor guy’s chest and pulls out his heart while he elevates a prayer to Kali Ma. For s...
The Lift-Up Conditional is a refactoring technique useful in those situations when a conditional logic consisting of several cases is mixed in the shape of a mess of nested conditions. I came acro...