Category: Software Development

Tools don’t matter

Tools don’t matter I don’t use vim or emacs, but for some reason whenever I used to read a vim or emacs article or blog post, I used to download, install and spend the rest of the day reading books, manuals and playing with the editors. I’ve done this several times in the last few […]

Read More →

A case study in micro-optimization

Last week I saw a wrap up from cedric’s coding challenge on his blog, the problem looked simple enough, “write a counter function that counts from 1 to max but only returns numbers whose digits don’t repeat”. My first stab at it consisted of a brute force solution of looking at every natural number up […]

Read More →

PsTools to the rescue

We were having memory issues on one of our production servers today, no one was able to get in via Remote Desktop or any other remote access tools. PsTools by Mark Russinovich was a life saver, it allowed me to query the processes running on the remote machine and also their memory usage, we were […]

Read More →

Subversion as a deployment tool

I was thinking on the way to work today that subversion would be a great tool to overcome some of the difficulties associated with frequent deployments to the web serevers. Here’s how I see it working Create a production/live build folder in your source tree and add it to the repository. Modify our build system […]

Read More →

Programmer Competency Matrix – 32 attributes to evaluate programmers

Having worked with programmers with an extreme variance in skills, I sometimes get the feeling that there is an big lack of good programmers but when I thought about it a little more I realized that it’s not very clear cut, some of the programmers have strong areas and if you confine the tasks into their strong areas then they tend to deliver well. So I started thinking about all the lines on which we can evaluate a programmer and came up with this Programmer Competency Matrix, that organizes all the attributes that I could think of to evaluate a programmer.

Read More →