Monday, August 24, 2009

Can I do 'this' with my favorite language?

When we need to start a new project we use our favorite language by default. Is it wrong? The short answer is "No, it's not wrong". But the correct answer is a bit more complex.

Before starting a new project we should answer some basic questions.
  • Is our project a desktop or a web application?
  • Do we need a user interface?
  • Should it be cross-platform?
  • Do you need to integrate with some external service/platform?
Answer these points and now think for a couple of minutes if your favorite language is good enough.

Almost all the "
General Purpose Languages" (and here) are good enough to do any kind of application, but there are cases where it is much better to use some "Domain Specific Language" or, at least, a different language that is better suited to do the specific kind of application we want to do.

Let's see some extreme examples:
  • If I need to create a program to automatize my connection to different SSH server, I could do it in Java, but that would be overkill, and too complex. A simple BASH script will be faster and easier.
  • If I'm a PHP developer and I need to create some simple desktop application. What should be my choice? Sure I can compile PHP code into an exe file, but probably I would get a much better and faster solution using Java, C# (or any other .NET language) or even Python.
  • As I said, these are radical examples, but I think that shows my point. Don't be lazy when choosing the language you need. Even when a lot of languages would be OK to solve the problem, maybe your choice is not the best one.
See you soon.

No comments:

Post a Comment