eWeeek’s Top 10 Programming Languages you should learn

Last week eWeek published a list of the top 10 programming languages they suggested everyone should learn

http://www.eweek.com/article2/0,1759,2016415,00.asp?kc=EWRSS03119TX1K0000594

Note: This list was posted in the Careers section. So I’m taking it as a suggestion to job hunters based on the number of job posting found per language. This is not a rating based on the ‘better’ language. So in other words PHP is not in the number one slot because it is a better object oriented language than Ruby or Java. Also this article did not state the purpose of the languages. My assumption is this is the top10 languages for Web Development. Not client applications, Embedded applications, etc.

1. PHP
2. C#
3. AJAX
4. JavaScript
5. Perl
6. C
7. Ruby and Ruby on Rails
8. Java
9. Python
10. VB.NET

This rebuttal is my opinion. I’ve been a developer for over 18 years on various platforms using various languages. I like to believe I’m successful in that I provided the needed service to internal or external customers

PHP – I could not agree more with this language. I’m currently a PHP developer and working on my Zend certification. I tend to look at PHP for Web Development like I look at C/C++ for server applications. They are both very general but powerful languages. Sure there are some funny syntax issue that newbies tend to trip over and fall flat or go running to other language that tend to require less skill. PHP can run on any platform you can compile it on, Linux, Windows, OSX, etc. Plus PHP is over 10 years old. In Web Development languages this is ancient. But is that a bad thing? To me this shows the language is well established. Most anything that can be done with the language had been done.

C# – Have not used this language. I stopped using Windows-based languages in 1998. I tend to hate using a language that is limited to only one OS platform. gain this is my opinion and not a slam on Microsoft.

AJAX – I find this item totally hilarious. Considering the next item, number 4, is JavaScript. I mean how can you even use AJAX without JavaScript. Dumb.

JavaScript – I agree with this choice though I would add this as number 2 or three. AJAX would be moved lower

Perl – I find Perl too broad. I will admit Perl has more power than PHP and is very flexible. But there is a syntax to some of the language constructs  that I find difficult to get my head around. Another issue I see common is how install/upgrading one Perl module will totally screw up your entire Perl library. Also getting some modules compiled is a task in itself. Case in point I tried to install bugzilla on this server. It runs under Red Hat Enterprise. I spent all day trying to get everything coordinated. After still not getting anywhere I found a better package written in PHP, Mantis.

C – C was my first real language I learned and used on my first development job back in 1991. I love it an at times miss it. Sure it got lots of very bad press in the 90s. Most of this was marketing crap from the folks trying to get you to switch to Java or VB.  I’m glad to see C/C++ is making a comeback. Sure in today’s Web drive world is has a much narrower use in that it is for server-side development. As for client side development I would not use C/C++. Go with a GUI language like Java or VB.NET.

Ruby and RoR – In my opinion this language is all hype. Sure there are some great things about the language that make it easier to write a full blown web application. But it is limited in that you have to follow the established RoR conventions. If you want to try something outside of this you are fucked! And just to be clear I have no idea where Ruby ends and Rails begins. I know Ruby the language has been around for like 5-8 year but the use was very limited. All the media attention being provided is mostly gear to how the result is better than X language (insert PHP, Java, C#). Again, to me this is all marketing trying to get you to switch. Other than the few applications developed by the folks are 37Signals, I’ve not seen or heard of any great examples of R or RoR applications.

Java – I actually started learning Java back in 1997. This was more for a potential replacement for C. It was mostly to appease management who wanted my group to use something other than C. In the end another group chose VB as the language for the department and we went through this multi-million dollar migration plan. This was almost 10 years ago. Since I’ve left the company in 2005 the original Unix server running C were still in place going strong.

Python – Know zip about Python. To me it’s another Perl but with different syntax.

VB.NET – Is this still even around. Last I read the Microsoft marketing C# was going to take over the world. Have the tides turned? Or does Microsoft want those who have worked on C# for the last 3-5 years to now switch to VB.NET so they (Microsoft) can sell them new tools?

Editorial – Overall I like the list from eWeek. But I think there are some major missing items.

For one Web Standards. Sure Web Standards is not a language. I don’t consider AJAX a language that is separate than JavaScript. Yet eWeek listed both on the list as separate items. It would be the same as listing RoR without Ruby. Web Standards should be the number one item s it applies to all HTML produced by the other items of the list. Without Web Standards you have Web Chaos.

Another issue I have with this list is the few paragraphs presented before the items. The paragraphs mention someone who has learned 24 languages in 30 year. I cry bullshit. You do not learn a language on a year, sorry. Sure you can get through part of the learning curve but you need s good 3-5 years to really use the language effectively.

Lastly, I am gld to see tht PHP is the top languge in the list. Very happy indeed.

Â