Friday, August 12, 2011

I'm going to lose it..

If I have to deal with another so called software developer who cannot handle the basics.

Please, don't call yourself a developer if you cannot do the following (or, when told about it, go "hey wow thats great I never learned about that, I will start doing that, thanks!").

* Use SVN (or Git, or Mercurial, or CVS, or something).

If another developer wipes out my commits by committing his code over mine (not even sure how this can happen) and then when told about it has no idea what went wrong or how to fix it I swear I am going to napalm your house with marshmallow cream.

* Say that you understand MVC and then proceed to make a single model with all the database queries for all tables in seemingly random order with random method names.

* Give a daily simple update about what you going to work on, what you have completed, and if you have any issues you need help with.

Look, I dont expect you to understand what Scrum is or Agile this or that, but all I'm asking is for a simple 5 minute update in the morning.  I'm trying to help, not micromanage.  I understand, you're a programmer and you think you are a virtuoso artiste and you cannot be tied down whatever.  Its just a simple informal update.  Would you rather I gantt chart out every task and put a due date on everything?

* Estimate tasks.

Ok, look, really, I understand.  This sort of thing strikes angst and apprehension in the souls of creative people.  But come on, any decent programmer can at least tell if a task is "an hour", or "half a day" or "A day" or "more than day".  If you can't tell me that much, then break down the task more.  Furthermore you don't have to kill yourself to meet the estimate.  The great thing here is that if you at least try to estimate, and then complete the task, you can go back and think about it and learn from it and compare your estimate to your actual time.  And then improve it for next time.