views:

196

answers:

7

I'm a big fan of Bill Wagner's Effective C#.
(I believe he's got a sequel out, too)

What I love about this book are:

  • It's short.
  • It's not for beginners, so it doesn't waste time covering the basics (again).
  • It has good, pithy advice for programmers who want to raise their game in C#.
  • It's practical, not philosphical.

Can you recommend similar books for other languages?
I would especially like:

  • javascript
  • Ruby
  • SQL (various flavours)
  • anything else you can think of, really.

Thanks :)

+1  A: 

You seem to be aiming for intermediate and above books, but it's probably still worthwhile mentioning this related question: Language Books/Tutorials for popular languages.

Answers there include books and tutorials for beginners as well as non-beginners, and there are a lot of recommendations.

Blair Conrad
+1  A: 

Best book for ruby I've ever read. Why's poignant guide to ruby

Rayne
+2  A: 

C++

Moving from beginner to intermediate C++: Scott Meyers' Effective C++ is an absolute must-read. Follow that up with anything from Addison-Wesley's Advanced C++ series - Andrei Alexandrescu's Modern C++ Design is a real mind bender.

When you're ready to go beyond all programming languages, check out Structure and Interpretation of Computer Programs.

Matt Curtis
+1  A: 

SQL for Smarties

Hank Gay
A: 

Effective Java, 2nd Edition

Hank Gay
+1  A: 

JavaScript: The Good Parts

Hank Gay
@Hank, I really appreciate you posting one book per answer. It's nice to see some ettiquette. :)
AJ
A: 

Information Dashboard Design: The Effective Visual Communication of Data
- Few, Stephen - O'Reilly Media

Sure, design is subjective, but this book gives many practical (one of the criteria) dos and don'ts with examples. It is not language specific, and some of its content could be considered basic design. However, for many developers it will help "raise their game" when it comes to data visualization. It will steer them into a professional-looking design that users will not come to detest after having to actually try to use the data (assuming that the data is helpful in the first place, of course [grin]). And, it's not too thick.

Doug L.