Some times ago, I've read "How to make wealth" of Paul Graham. And I've finally found why I don't enjoy when I code for my company as when I code for fun.
Thanks Paul Graham, I'm sorry that you hate Microsoft so much, but I figured out what is fun for the developer.
The response is "Measurement and Leverage".
When you code for yourself, you have both. I mean that you can measure if what you've done is useless, and if you like it, because... you work for yourself.
Most of the times, when you code something for yourself, either it's a great utility which saves you lots of times so it have an impact on your life, either you have learned something valuable in the process which will change your habits and your way of thinking. That's Leverage, what you do for yourself has impacts on you.
Coding for fun has both measurement and leverage. Contributing to a community, and share what you do increase measurement, a lot of people can tell you how much you suck.
Now, why I don't enjoy what I do at work ? Even if it's technologicaly interesting ? Even when I learn something from it ? Even if I'm in a cool company ?
I thought that the only things I'll love to do at work was stuff for myself : if we tell me to do X, I will create a tool Y to do X for me, this way it's fun because I'm my own user... But recently, I've had a project which wasn't for me, and that I enjoyed. So maybe I'm not that selfish, why did I enjoyed that?
Two things: First, I was sure the user will like what I do and that my dear code will be directly useful to him. That's leverage, my program will change the way the user do things, that's so cool!
The other thing, is that my user was frequently trying new versions of my program and he gave me his feedback, that was measurement.
So from now, I want nothing between the end user and me.
If the user ignores me, I'll ignore the program and seeks users who cares, or maybe I'll create a new program which users care.
The bad things, is that from what I've seen, when you are an employee, most of the times you loose leverage and measurement. The "team" do something and the "manager" will tell you if the overall program is good. In this case, you've lost everything.
So now, I'm very excited, I will create a startup with Vincent. This adventure will be a great playground to test this theory : "Making stuffs in collaboration with the end user is fun!".
I don't know where it will bring us, future will tell us.
mercredi 23 septembre 2009
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire