Mailinglist Archive: opensuse (2773 mails)

< Previous Next >
Re: [SLE] Choosing a programming language ( Offtopic/maybe )
  • From: activex1@xxxxxxx (Sam Carleton)
  • Date: Wed, 22 Dec 1999 15:21:49 -0500
  • Message-id: <386132DD.437EA827@xxxxxxx>



Keith White wrote:

> Hi.
> have played with the idea of learning a language
> for a long time.
> have looked at perl,done some shell scripting,and have
> done some work with elisp(very basic though).
> Whats the best language long term,to go with.
> I want to invest my time in something for the future.
> then there is the procedural vs functional argument !.
> Its all very confusing.
> Any input would be welcome.

Keith,

You have opened up one ugly discussion:) It is like asking which
political party you should join! Here are MY thoughts on the subject of
learning to program:

First off a bit of background, I am a programmer. I have been a
programmer for four years. I first learned to program on my own, I have
had some formal training but not much. What languages do I know? There
are a number of different langauges, but my strongest language is C/C++.

To anyone that wants to learn to program, I recommend starting with C,
then learning just enough about ASM to understand what is going on under
the hood of C, and then moving onto C++. This happens to be the way I
did it. Keep in mind that C was written by ASM programmers looking to
have an easier go at it without giving up the power or speed of ASM. By
learning C, compared to anything else including C++, you often use the
same high level logic of the ASM programmer, without the pain. The
result is that you will better understand what is going on in ASM which
will make fixing your bugs that much easier. It also results in code
that is written to cater to how a computer process things, not a human,
which will make code run faster.

Then take the time to go through a book on ASM so that you understand
what the compiler is REALLY doing for you. This helps you better
understand how to write good clean code in the higher level languages.

Then dive into C++. C++ will expose you to the whole world of object
orianted programming, compared to simply functional programming of C.
With the correct usage of objects, you can write and maintain MUCH
easier then you can in C.

Once you really understand C++ and OOP, then there isn't a language in
the world that you cannot master. I say this simply because all other
languages are higher level languages then C/C++. Because of my
understanding of C/C++, other languages like Java, JavaScript, VB,
Lotuscript, shell programming, and others have been simply a matter of
learning the syntax for that language, there where no new consepts.
>Fromtime to time there are new features because they are higher level
languages, but all the features can be translated into a number of steps
in C/C++.

If you make C/C++ your base with a understanding of ASM, there isn't a
programming task that you cannot overcome.

Sam


--
To unsubscribe send e-mail to suse-linux-e-unsubscribe@xxxxxxxx
For additional commands send e-mail to suse-linux-e-help@xxxxxxxx
Also check the FAQ at http://www.suse.com/Support/Doku/FAQ/


< Previous Next >
References