[NTLUG:Discuss] Wanting to speak the language

Patrick R. Michaud pmichaud at pobox.com
Wed Feb 23 20:52:29 CST 2005


On Wed, Feb 23, 2005 at 06:52:27PM -0800, Steve Baker wrote:
> Ohh!! Language War!!

Indeed!

> The top four most popular languages are:
> 
>       C++  (14830 projects)
>       C    (14341 projects)
>       Java (14095 projects)
>       PHP  (10439 projects)
> All of the other languages are *FAR* below those in popularity (PERL
> is number five with 5691 projects).

Actually, these numbers may be a bit suspect -- many (most?)
Perl programs wouldn't be listed on SourceForge but would appear
instead on CPAN (the Comprehensive Perl Archive Network).

Also, SourceForge tends to post things that are "application/package
/project" oriented, whereas there's a lot of programming tends to 
be "glue" or "how do I accomplish this task specific for my needs?".
Perl tends to fall in this latter group.

(In the interest of "full disclosure", I should also note that I'm
currently the lead developer for the Perl 6 compiler.  However,
I've got lots of experience in all of the languages and use them
all frequently.)

Here are some more opinions based on my experiences 
in teaching the above languages at A&M-Corpus Christi:

 - It's better to first learn one language in great depth than
   to try to briefly master many different languages all at once.  
   Once a person has gained depth in a language, it's much easier
   to apply concepts to another one.

 - If you expect to want to eventually know several languages,
   start with C or C++ first.  All of the other languages have been
   heavily influenced by C.  (Many CS curricula have discovered
   that it's relatively easy for someone to move from C/C++ to 
   another language such as Java or Perl, but difficult to 
   transition from Perl or Java to C.)

 - It's always easiest to learn a language when you have a project
   of some sort that you're interested in.  

 - For text/database programming, or things that manipulate lots of
   symbols, use Perl.
 - For server-side web programming, use PHP.
 - For doing things on browsers, use Java.
 - For device drivers and standalone applications, tend towards C/C++.

I've never used Python, myself, but I hear it's mostly like Perl
with a slightly less steep learning curve.

Hope these help.

> OK - now that's out of the way...Emacs or Vi?

vi, of course.  :-)

Pm




More information about the Discuss mailing list