To become a software crafter…Or die in the attempt.

We’re all Domain Driven

We’re all Domain Driven

Believe it nor not, one of the main reasons why software exists is to help companies to make money. These companies earn money because they have a business. Usually they sell something to customers, in order to solve a problem for them. A software developer that doesn’t care about the […]

How do you teach DDD?

How do you teach DDD?

The more I work using Domain Driven Design in my daily job, the more I face how hard it is to teach. What’s the matter here? Why is DDD so often misunderstood? Of course, we can just consider that it’s a complex thing, hence requiring lots of knowledge and practices […]

The coding Iceberg

The coding Iceberg

Recently, I read a few posts about AIs, including Uncle Bob’s post, in response to Grady Booch (about this tweet). I think the fact that some people believe AIs might replace developers leads to interesting questions about what is programming? What is programming? As Bob recalls us, Alan Turing defined programming as a sequence […]

Abstracting the reality

Abstracting the reality

Let’s define the reality as the consequence of all previous Facts. Nobody knows every fact from the past. And when we share some facts, we don’t give them the same importance. We build our reality based on the facts we believe to know, and give them some importance based on […]

Readability

Readability

Much focus in our industry is on how we can write code faster. We want super productive IDE, high level language and huge frameworks to protect us from the hard reality of building software. In my opinion it’s more important to find how we can write maintainable code by focusing […]