Friday 26 September 2008

Developers Productivity Toolkit

Change should be logged.

This is the thought that recently hit me while I was working on some code. Programmers use many ways to keep track of their progress and boost their productivity while working on projects. These ways can be useful for future developers to continue work on abandoned projects and to help the current developers not to step on each others toes. Basically, these productivity tips work and it hit me that they can also be applied to many things other than just programming.

These ways are usage of the Change Log and the TO-DO list.

The Change Log

This is how programmers keep track of changes they've made to a program since they've released it and it normally features bug fixes, added features, removed features and modifications made to the code. The benefits of this is that they can see how far they've gone with something and how many improvements they've made within that program.

I've modified it a bit to work and log changes I've made within my life instead - call it a shortened journal entry to keep track of my accomplishments. I started off adding to it daily by writing down what I've archived for that day and which changes I've made by adding, removing or correcting things within my life. This is also where the TO-DO list comes in handy, because what you remove from there, gets added to your change log.

The TO-DO list

This is how programmers keep track of things they're yet to achieve, add, fix or remove with their program. It's also keeps programmers from working on the same problem at the same time, because a programmer can 'claim' it and only once they fail to do it, can it be passed on to the next programmer to attempt. This is also a very different kind of TO-DO list than those you normally use, because of the fact that it includes future and current goals.

I applied the same principles with my TO-DO list. My list comprises of future and current changes I want to make in my life with a few rules on how to do them. The first rule I have is that once it's done, it goes straight to my change log for that day, the second rule is that once I take on something on my TO-DO list, that I keep going for it for that day until I either achieve it or fail to do it at which point it goes back on to my TO-DO list. The third and final is rule is you can keep adding to the list, but once you decided on what you're going to do for that day, you cannot add more things from for yourself to do for that day - this also works vice versa, were if you take on too much for a day, you can drop it back on to your TO-DO list. See the third rule as reward for a day of being productive and once you're done with your goals for that day, that you can relax. However don't use the third rule as a excuse to move things on to the next day, because you're TO-DO list will only get bigger while your Change log doesn't.

The Aim of the TO-DO list is to give you a idea of your current and future goals, while the change log is to remind you of the things you've succeeded in and hopefully motivate to keep succeeding. The trick to both these methods is realistic goals and the commitment to them.

Hopefully the DPT can be as useful for you as it has been for me. At the moment, it's still a work and progress and I'll expand on them a bit more in the future and maybe even start a series on them. I wish you all the best of luck with them.

No comments: