Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Mar 2001 15:06:21 -0500 (EST)
From:      Darren Henderson <darren@nighttide.net>
To:        <freebsd-chat@FreeBSD.ORG>
Subject:   Re: Looking for Yoda
Message-ID:  <Pine.BSF.4.30.0103111438550.22814-100000@localhost>
In-Reply-To: <v04220805b6d1796cec93@[194.78.241.123]>

next in thread | previous in thread | raw e-mail | index | archive | help

One of the common misconceptions I've seen from non-programmers is that
"knowing" a language is the same as knowing how to program. Its exactly
backwards.

Once you know how to program, are comfortable with algorithms, problem
solving, breaking projects down to their constituant parts, know about
basic efficiencies, know a little about things like queing theory etc etc,
you are on your way.

Knowing how to solve a problem is the first step, picking what tools to
use (ie what language to use) to implement the solution is almost
incidental. You pick the language that will allow you to accomplish the
task most easily or if different criteria are in play then you pick the
tool that meets those criteria.

When you know how to program and you know the syntax for one language,
learning how to use others is no big deal. You may not work as fast in
PL/I as you do in C, but if you know C, (or pascal or even cobol) and have
a good grounding in computer science then you can program in PL/I. You may
do it with the manual open continuously the first few times but you can do
it.

That said, and as has been mentioned, the first language you learn is more
about developing good habits as it is anything else. Some languages
enforce good habits (or at least what is fashionable at the time) while
others let you do what you want. C, C++, perl, are not great first
languages from that perspective while Pascal is actually pretty good if
perhaps a bit old school at this point. Learning the 10th language is
pretty meaningless.

When I started, the first languages I learned were assembler type
languages for the Motorola 6800 and the IBM 360, and pascal. While I think
pascal and maybe python now days would make a good first language,
everyone should do a bit with assembler just so they understand the
underlying nature of what they are doing with the higher level languages.

People who want to be able to say they know umpteen languages are kind of
missing the point imo. Someone who has a solid lock on theory and is
comfortable with a couple of languages is far more valuable then someone
who has done something in 30 languages (and thus claims they "know" each
one) but has little clue about how problems are solved.

Concentrait on the computer science. The programming languages take care
of themselves.

______________________________________________________________________
Darren Henderson                                  darren@nighttide.net

                   Help fight junk e-mail, visit http://www.cauce.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-chat" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.30.0103111438550.22814-100000>