Monday 16 November 2009

Switching languages

[This is a rather unorganised chattering about programming languages and related thoughts.]

Being a devoted user of Microsoft technologies for some time, I am experiencing hard times switching to the real world again.

I was very much used to using C# for everything. I've been using it from the days of framework version 1.1 (now the version is 4.0). Actually I should make my point clearer, as a person suitable for the left-top part of this graphic, I've been using many technologies in parallel. Let's list the programming languages I used in the past 5 years:

C, C++, PHP, Javascript, Java, C#, Perl, Ruby (On Rails), Haskell. (tried to keep it chronologically ordered)


They all have pros and cons, compared to others. But I must admit; I loved programming in C back in the day, I never really liked programming in Java (although I had considerable amount of work done with it), and I enjoyed programming in C# very much.

As I said they all have some advantages over the others. For example Haskell is wonderful for some tasks, that you cannot deny using it. On the other hand Ruby with the wonderful On Rails framework was by far the best choice for our Senior project's web based information system.

I am pretty sure I can use the languages listed above (and possibly some others) effectively. But the one I feel myself comfortable with is C#. There are many reasons for this; such as it being a relatively newly designed language and consequently having a nicer design, the wonderful IDE support of VS, and many more.

I am now doing some programming for my PhD studies, and I am about to choose a language and a respective environment, given the constraint that I am using a MacBook now. It is too bad that my native (programming) language, C#, cannot be compiled to native code. (OK I know there are some options, but they are all hacks and tweaks)

No comments:

Post a Comment