[Tutor] is it a right choice? [secondary languages besides
Python]
Danny Yoo
dyoo@hkn.eecs.berkeley.edu
Thu Jul 3 14:53:02 2003
On Thu, 3 Jul 2003, Alan Trautman wrote:
> In you case I certainly can't recommend C or C++ (to in-depth for no
> gain) but could recommend JAVA if you have in house/friends who are JAVA
> programmers to consult with.
Hello!
I can't recommend C as a first language. But I feel it's a good secondary
language, particularly because it exposes a lot of the stupidity that goes
on in a computer's hardware. *grin*
C encourages putting oneself more into a low-level mindset, where we have
to deal with gory details like memory management and pointer arithmetic
and integer overflows. Learning C helps one to appreciate the features in
a high-level language like Python, and will make you a better programmer.
Java, too, will pose little problem once you learn Python: Java's very
much like Python in a very rigid, concrete-reinforced straightjacket.
The book "The C Programming Language",
http://cm.bell-labs.com/cm/cs/cbook/
is well known for its brevity and depth, so if you're going to do C soon,
look into K&R.
Python's a very good first choice, not just because it is itself a great
language, but because, when you want to branch out, it serves as a gateway
to the other more "mainstream" languages.
> Before I venture in the python infested world,
^^^^^^^^
Infested? This makes it sounds like Python is some sort of disease or
something. *grin*
Anyway, you can't really go too wrong with Python (or Perl). *grin* Just
make sure it's not the only language you look at, if you're serious about
learning how to program well.
> I want to ask whether I am making a right choice by taking python as my
> first programming language. I cannot program in C, C++ or Java etc. I
> can *just* do little shell scripting.
One other alternative beginners language you might want to check is
Scheme. There's a good implementation of Scheme from the PLT Scheme
folks:
http://www.plt-scheme.org/
Scheme is definitely not mainstream. But it does have a good get of
libraries, and quite a few good books both on paper and online:
http://www.cs.berkeley.edu/~bh/simply-toc.html
http://mitpress.mit.edu/sicp/
http://www.htdp.org/
The Scheme community appears to be much more academically oriented than
others --- this may be a good thing or a bad thing, depending on your
background.
Good luck to you!