I’ve just come across this article on one of the many web forums that I browse:
10 Programming Languages You Should Learn Right Now
Very interesting read, although I disagree with #10.
I found the article misleading and mistaken in a couple of areas. In particular:
‘”One of my mentors once told me that a programming language is just a programming language. It doesn’t matter if you’re a good programmer, it’s the syntax that matters,” Tim Huckaby, CEO of San Diego-based software engineering company CEO Interknowlogy.com, told eWEEK.’ < -- This is a load of rubbish. A decent programmer can pick up a new language fairly quickly while a bad programmer can write broken code in any language he knows.
‘”Learning C#, which is just Java with a different name plate, is critical if you heavily use Microsoft,” said Duquaine.’ < -- Sure, they're based on similar principles. So are Perl and Ruby. They're different in a couple of important ways.
‘7. Ruby and Ruby on Rails’ < -- Rails has been getting a lot of publicity, but it's just a web framework. Ruby's useful far beyond Rails.
‘Hailed by many developers as a “beautiful” language, it [Java] is central to the non-.Net programming experience. “Learning Java is critical if you are non-Microsoft,” said Duquaine.’ < -- I know nobody who considers Java "beautiful". It's not as ugly as Perl, but the best I've seen is "necessarily verbose".
’10. VB.Net (Visual Basic .Net)’ < -- Popular amongst managers and quiche-eaters for its apparent simplicity. Broken in a number of fairly fundamental ways.
All in all, there’s very little I agree with here. Some of the languages she proposes are worth learning, but often not for the reasons given. There are a few that should be required that aren’t on the list. For starters, there’s nothing functional on there at all. Lisp, Scheme, Haskell, Erlang, etc. all bring insights that imperative languages miss.
And now I really should get back to work…
Looks like I’m not the only one: http://bluebones.net/2006/09/five-programming-languages/
Just keep in mind that the article is based on what jobs are out there – but yes, I agree with most of the points made (in your article, not the one I posted).
On a related note, I googled for some articles on why VB .NET sucks, but couldn’t find anything useful. If anyone has anything good in that regard, please post them.
As a matter of interest for anyone else reading this, I did a little bit of VB .NET for a while, saw the light and switched over to C# (I was keen on doing .NET development at the time), and now I’m moving to C++. I’ve got some Perl knowledge (but wouldn’t write anything in it) and can write basic Java applications. At one stage, I also messed around with TCL scripting. I’d like to try Ruby and Python out, they sound interesting.
Something else – I’ve been following links, and I’ve stumbled across a programming language called “D”. It’s still in the development phase, but I reckon that this could be replacing C/C++ ten years down the line.
(I know what you’re planning to do now – post back in ten years time to tell me that I’m wrong… :P)
The D websiteThe Wikipedia article
I’ve been told that VB.NET is much nicer than VB4/5/6 (which are what I’ve used). Still, VB is well known for not only keeping big wodges of crap for “backwards compatibility” but also breaking compatibility for other reasons. Just try compiling a VB5 project in VB6. (I have. It breaks.)
I’ve seen references to D, but never actually looked at it. It’s really worth looking into Ruby/Python/Perl and at least one functional language.