About programing, a general question
K. Frank
kfrank29.c at gmail.com
Thu Dec 16 17:33:03 UTC 2010
Hello Parshwa -
Well, this is pretty much off-topic -- not really relevant to
ubuntu in particular. However,it's such a general question
that it's hard to suggest a specific forum in which to ask it.
(It also risks starting up some "conflagrations," as opinions
about programming languages tend to be devoutly held.)
On Thu, Dec 16, 2010 at 11:59 AM, Parshwa Murdia <ubuntu.bkn at gmail.com> wrote:
> hi,
>
> If one has to start from the scratch, from the zeroth level to do the
> programing, which programing language one should start with?
My personal opinion? I would start with c++. (I'm teaching my
daughter to program -- much to her dismay -- and I am teaching
her c++ -- also, much to her dismay.)
> In the ocean of
> the languages, to start with is really very typical. Can one justify it.
> Some say Python but again they say it is Perl which is better every time
> then the Python. Some say to start with C or C++ but again some emphasis to
> use Java or C#. Many say to go for .Net and VB or COBOL and some say to
> learn web based programing like HTML, PHP, ASP.Net. In this ocean who is
> just starting to learn which one he should prefer?
You will get many different heartfelt opinions on this -- some justified,
some not.
> Many say that what is the purpose of learning, then I say that to have the
> basic understanding of how exactly we can handle the machines like the CPU.
If your goal is to better understand the underlying machine, then I
would definitely start with c++, as it's the closest to the machine
(among reasonably common, modern, high-level languages). It is
(nearly) a superset of c, and, in general, a more expressive language
than c, so I would recommend it over c. The lower-level constructs
of c are closer to the machine than the higher-level constructs offered
by c++ (and preferred stylistically in modern c++), but these c-style
constructs are available to you in c++ (as it is a near superset of c).
Note, if you want to get even closer to the machine, you can use
assembly language. Many c++ compilers support (as a non-standard
extension) the ability to insert assembly language fragments (e.g.,
using "_asm" in g++, the gnu c++ compiler that you can install
on ubuntu).
> Not to generate the big projects for the management processes, not even
> banking system but to know the basic of programing like how to handle the
> machines at the first, for that purpose, for the the scratch level purpose
> and for the one which is good even for Linux, what programing language
> should one like me, initiate?
Linux is written in c, so the core operating-system api it exposes to
you is a c api, and is directly available to you in c++. So if you want
to write programs that interact with the linux os in a significant way,
c++ (or c, of course) is the way to go. (The same is true of the windows
os.)
> Regards,
> Parshwa Murdia
Happy Hacking!
K. Frank
More information about the ubuntu-users
mailing list