On my early days of computers and programming i used to be fanatic and passionate about the programming tools I used. I still remember the early days of Java programming. I would bet that no other language is there except for Java. Today, i still think that it is a great language to work with but i have changed my point of view.

All languages, frameworks, programming techniques etc are all tools in a big toolbox a programmer has. The variaty of things he knows actually gives him the necessary equipment to deal with the daily challenges he faces. It’s all wrong to think that one tool is the best to be applied in any program you are trying to code. Once they provide you with details on what you need to be doing, on what hardware, what software then you should start considering all your options. For instance, not long ago, i needed to code a small application, along with a friend, that had to be windows compatible, be able to minimize to tray and integrate with the OS is some other ways too. The things it needed to do were fairly simple. So, for that matter, why should we go with Java? We would have to code a lot, so we could add structure for Object Orientation, without thinking the ways we would have to invent on how to integrate with Windows. I know it’s possible but think about this. Why not Visual Basic? I mean it’s .Net compatible and the things we needed to do were done extremely easily. That’s what we actually did and got it done in three days.

Here is another example that actually gave me the idea to write this article. Let’s say you want to put up a little website that all it does is actually have a few info about you and maybe some photos. Why should you start coding PHP? What would that add to your project? Absolutely nothing! The only thing it could do is add complication to what you are trying to accomplish and maybe set you wide open on dangers like SQL Injection. Moreover it would be much slower than writing simple, easy renderable, HTML. The general rule is that when you have static content (that is content that does not change over time and is not a variable of some kind of input) then HTML is the way to go. Ofcourse, there can be exceptions, depending on what exactly you want to do. Keep your toolbox near by! 😉

Now think it the other way around. Let’s say you want to open a big community site with news on a certain topic. Would you choose WordPress for that? Well it depends. But, if you wanted a true CMS that is scalable then probably our beloved WP wouldn’t do.

My point here is this. When you are trying to get a job done you need to get an objective perspective on the subject. Analyze all the scenarios and come up with the best solution that would actually work and not the one you are accustomed with. I have one saying that i keep in mind when trying to choose the best tool out of my toolbox:

Don’t use a cannon to kill a mosquito.

– Confucius

Keep that in mind and you should be just fine.