Languages and Books
Levi Pearson
levi at cold.org
Thu Jul 21 14:25:41 MDT 2005
On Jul 21, 2005, at 2:10 PM, Eric Jensen wrote:
> I've been strictly a web scripter with Perl and PHP and I am
> wanting to
> branch out. I've seen you guys talk about all kinds of books and
> languages and so I am asking for a few recommendations and
> opinions. I
> took a C/C++ class 6 or 7 years ago and have been really thinking of
> resuming that so I can make some Windows/X-Windows apps. I'd rather
> learn on my own since my last C/C++ instructor was horrid. He was way
> too hard core nerd and loved math and Fortran. Out of 30+ students, 2
> would pass his Intro class and that is because it was their 2nd or 3rd
> time through. He eventually had a nervous break down and they
> found him
> running around town naked and screaming incomprehensibly. So I am a
> little hesitant to go that route again. Anyhoo, recommendations are
> very appreciated.
My recommendations are a bit unconventional, but I'll make them anyway:
For a strong computer science education, read (and do the exercises
for) The Structure and Interpretation of Computer Programs, which is
available for free online at: http://mitpress.mit.edu/sicp/full-text/
book/book.html
It will teach you Scheme while it teaches you computer science, and
you will be a better programmer afterwards even if you never touch
Scheme again.
I happen to also really like Common Lisp, and a great introduction to
it is a book called Practical Common Lisp, also available in full
online at: http://www.gigamonkeys.com/book/
It'll teach you how to make spam filters, mp3 streaming apps, and web
apps in a language that covers the gamut of language features.
Master Lisp, and very few programming paradigms will be unavailable
to you.
I haven't read it, but I've heard good things about Programming from
the Ground Up, which starts you off with assembly language in Linux.
This is a good complement to the Lisp books, as it approaches
programming from the machine perspective rather than the
computational theory perspective. Both are useful and well-worth
learning if you want to be a well-rounded programmer. This book is
also available for free here: http://savannah.nongnu.org/projects/
pgubook/
Unfortunately, I don't know any good C++ tutorial books to recommend,
but Stroustrup's "The C++ Programming Language" would be great to
have as a reference, at least. Unless you have a specific need to
learn C++, I'd recommend taking a look at Digital Mars D as a more
modern C language that will be easier to learn than C++ and less
likely to blow your leg off. :)
--Levi
More information about the PLUG
mailing list