views:

619

answers:

14

If one would be allowed to read only one book to learn new programming language what book would that be?

My (rather small) list would be

  • C - C Programming Language by Brian W. Kernighan, Dennis M. Ritchie
  • C++ - The C++ Programming Language by Bjarne Stroustrup
  • Java - Thinking in Java by Bruce Eckel
  • Lisp - Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman, and Julie Sussman
  • ML - Elements of ML Programming by Jeffrey D. Ullman

What about Python, Ruby, C# and others?

+5  A: 
Corey
+5  A: 

Programming Python

Why's Poignant Guide to Ruby

Maudite
+1  A: 

F# - Expert F#

Brian Leahy
+1  A: 

+1 for C Programming Language by Brian W. Kernighan, Dennis M. Ritchie, It is the first book that got me into programming during junior year of high school. I now have a BS in Computer Science from Purdue and am a full time software developer.

mmattax
+2  A: 

A little clarification:

+3  A: 

I recommend the Head First Series from O'Reilly for basic introduction to any of the topics they've published. Typically, these books will need to be followed up by something more in-depth afterwards, but they're excellent for quick and easy reading, retaining the presented information and getting up and running in the new area of interest.

C# - Head First C#

Ben Robbins
+2  A: 

C# - CLR via C#

John
+5  A: 

The Little Schemer by Daniel P. Friedman and Matthias Felleisen. A wonderful introduction to thinking recursively using the Lisp dialect of scheme.

David G
+2  A: 

Python in a Nutshell by Alex Martelli is fantastic for someone who's already a programmer.

dF
Yes, the book is great, but only for those who are already familiar with the basic design patterns and algorithms.
Alex
+4  A: 

Ruby - Programming Ruby: The Pragmatic Programmers' Guide. Sometimes referred to as the Pickaxe book. This is the book I used to learn Ruby. It's great!

Vinnie
+1  A: 

I have a thread that tries to document the best books and online tutorials. I would greatly apprecate adding your suggestions to it here

Craig H
+1  A: 

Real World Haskell -- One of my professors at UT always managed to sneak in a few Haskell examples into each of his courses, and at the time I managed to learn enough to get by. Ever since then I have installed Hugs and/or GHC on every computer I have ever used and continued to play around with Haskell but never really learning to use it seriously until I got this book.

unclerojelio
A: 

If you know other programming languages and the target programming language is not too dissimilar from what you know, an O'Reilly Cookbook (or equivalent) in the target language can be a good introduction. Once you've put the new language to use a bit, you can go back and fill in the more technical knowledge gap with other books. But's it's often nice to get a bit of code that does something meaningful early on to catch a feel for a new language.

DWright
A: 
Ryan Ransford