Sunday, May 29, 2011

About managing complexity

I'm convinced that my work is to make customer's life easier.
A developer is his own customer. He is the person which will read his own code. Not the customer.

So how to manage the complexity ?

Think about your customer, code, think about yourself, refactor, repeat.

Trashed code, is not wasted code, it's code which made you think on how to make things better.

Wednesday, May 25, 2011

Simplicity is not easy

Simplicity is not easy, they are two parts of the same coin.

The difference between simple and easy is... simple :

-Simple is the intellectual and physical output you saved to your customer.
-Easy is the intellectual and physical output you saved to yourself.

The more simple it is, the more you take the burden of complexity on your shoulder.
The more easy it is,the more you let the burden of complexity to your client.

How something can be more simple and more easy ? That's simple : Cut features.
But yeah I know, your boss won't let you... I never said it was easy !

Saturday, May 14, 2011

Be careful with the "Builder Gene"

The builder gene is the gene that makes you to create, to build thing because it's fun, and because it lives longer and is bigger than yourself.
Minecraft can take your whole work's day, because of that gene.

The real problem is that some of my customer uses it when they have problems they don't have knowledge to solve.
They have a problem, they build the solution in their head, and ask me to implement.

It's a shame because the greatest value of a great problem solver is to design great solution, implementation is just 10% of his value.

In this case, asks questions on all their decision and they soon will see that you can bring a better solution.
In some case they will be annoyed by your questions and ask you to do as you want.
Yes, it's risky.

Your goal is to make your customer to smile when you leave.
You can implement bad solution and reject the fault on him, but be sure you'll not sleep very well.

Great work is great solution, not only great implementation.

Tuesday, May 3, 2011

No one can beat such a good teacher !

The one who hurts when you fail.
The one who focus your emotions towards one goal.
The one who redirect the pain toward the goal to become better.
He does not ask you to be the best, just a little better every single day.

This teacher is called curiosity, and most people lost it long ago.

If you already heard "Give a man a fish; you have fed him for today. Teach a man to fish, fed him forever."

I add : bring him back his child's curiosity and he will find a way to feed all his tribes for eternity.