Linked by Thom Holwerda on Wed 11th Apr 2007 16:35 UTC, submitted by ShlomiFish
General Development "What makes programming languages are suitable or unsuitable as introductory languages? Which languages are better learnt first and at which order? And why what the masses think is the most suitable introductory programming language is not in fact that. This paper examines several approaches to which programming language is the best, and afterwards gives several useful relations for which languages should come first. Finally it gives a final verdict, defends it and then gives some other good food for thought."
Thread beginning with comment 229863
To read all comments associated with this story, please click here.
My issues with this article
by urbanRealist on Thu 12th Apr 2007 04:17 UTC
Member since:

1. The author wants us to believe that "learning how to write quick and dirty code is a mental leap that is large enough as it is".

If you feel this is true, you should not be programming. I've been a developer for several years now. Every developer I've met in my professional career has been able to whip out some "quick and dirty code", but when I have to debug it a year after the author quit, I wish s/he was a little more capable.

2. "Almost all Java code looks the same, and feels boring" is a lie, plain and simple. I don't know where he came up with his issues against Java, but it's a very elegant and expressive language.

The downsides in my opinion are lack of multiple inheritance and excessive memory usage. Surely the former is not addressed by Perl and the latter should not be of concern in an introductory language.

Personally, I feel that C++ would be the best introductory language since it's the best of the (widely used) languages period. Java is certainly more elegant and would be perfect if it were not so restrictive.

Perl and python should not be taught because they are literally scripting languages!

Reply Score: 1

RE: My issues with this article
by jrlah on Thu 12th Apr 2007 07:11 in reply to "My issues with this article"
jrlah Member since:

Perl DOES support multiple inheritance. Perhaps you do not like the way it is implemented. Or perhaps you just do not know Perl well enough...

Reply Parent Score: 1

urbanRealist Member since:

After some research, I see that you are correct. While I may be biased, the C++ way of doing inheritance seems much simpler to me.

Reply Parent Score: 1

RE: My issues with this article
by japh on Thu 12th Apr 2007 11:25 in reply to "My issues with this article"
japh Member since:

"Perl and python should not be taught because they are literally scripting languages!"

Define "scripting languages".
You have a language that can be compiled to an executable (or Java .class files and whatever the .Net version is called) and doesn't rely on calling external programs for every little thing.

So what is really the reason not to teach it? Because you categorized it as a "scripting language" and put it in a group with bash/awk?

Feel free to argue against Python/Ruby/Perl because of dynamic typig, performance, standard libraries or readbility. Just writing them off as "scripting languages" just makes it look like you haven't even tried them.

Reply Parent Score: 1

urbanRealist Member since:

If I write a complicated program in a scripting language, I spend most of my time trying to find the typo in the variable name. Compilers make learning how to program MUCH easier.

Reply Parent Score: 1