Subject: Re: C programing
To: Andrei Zaitsau <mertis@ameritech.net>
From: Richard Rauch <rauch@eecs.ukans.edu>
List: netbsd-users
Date: 01/28/2001 09:39:10
A very relavent question is: What sort of a beginner are you?

That is, do you have some reasonably strong programming background, or
have you never programmed in any language before?  Or somewhere in
between?

When I learned C, I had some background, albeit in (don't tell anybody)
BASIC.  Some BASIC's, including one of the BASIC's that I knew, have
reasonably nice structure to them.  I found the transition to C to be
straightforward, using ``K&R'' (Kernighan & Ritchie's _The C Programming
Language_).  In addition to being (for me) an excellent tutorial in C, the
book became an invaluable reference: Short, concise, and even with ANSI C
still nearly authoritative.

However, K&R, like C itself, is somewhat unforgiving.  If you aren't
comfortable programming in another language already, I might recommend
either using a slower-paced, thicker book, or perhaps even starting with
another language.  C is a good language to know, but I'm doubtful that
it's a good _first_ language to learn.  (Of course, maybe there is such a
thing as a good C programming book for absolute beginners...)

Other languages that you might find easier to learn, if you are new to
programming, include Scheme (we have a nice DrScheme package that I like
and can recommend) or Python (also available as a NetBSD package).  
Scheme (or LISP in general) is nice in part because it has a much simpler
syntax, letting you get on with the process of learning how to solve
problems with a computer (it has general appeal as one gets to know it,
too).  Python is just a really nice language.  (^&


Good luck, in any case.  And have fun.  (^&


  "I probably don't know what I'm talking about." --rauch@eecs.ukans.edu