Halloway's Programming Clojure isn't exactly recent, but it's available used, has a lot of depth like Joy of Clojure, but is targeted at beginners. Clojure from the Ground Up is free and online, it's awesome and so is Aphyr.
I read this book after having programmed C++ with the common "C++ is C with classes" attitude for a while, and it really made me change the way I looked at this language.
It was the book that made me realize how beautiful the RAII idiom is, that the STL was clearly not hacked together by a bunch of crazy monkeys, that you rarely need raw pointers in your code and that -- in contrast to popular belief -- you seldom need to care about memory management.
When I finished that book, and though in the full knowledge that I was dealing with this ugly monster of the Frankenstein kind; just like at the end of "the beauty and the beast", I had somehow come to respect and appreciate that language.
I have to second this 180 page book "A tour of C++". A best book out there to get an overview of the C++ land. There are so many bad books out there on C++; there is a guy in Israel, who maintains a list of bad books on C/C++.
I'm going through that right now, and finding it incredibly good, but still fairly outdated. It was written for Java 6, while Java 7 and (especially) 8 have more or less re-written the language. All of the advice is still really great, but some of the items are workarounds for weaknesses in the language that have since been strengthened. I'm working through Java 8 in Action[0] in parallel, and it's been a good experience.
I've also been enjoying this Modern Java blog series, which is book-ish[1].
In a similar vein, I really enjoyed Effective Modern C++[2].
I think The Ruby Way[3] is still the best ruby book, and a new edition just came out earlier this year.
I'm looking for a good book about modern javascript if anyone has any suggestions.
I found Effective Java to be very enlightening—not just for Java, but for any language. It's especially at providing patterns for writing APIs with a guide toward future maintainability.
For C#, the book I always find myself going back to is C# In Depth by Jon Skeet. It's one of the most accessible books I've read, and it's one I always recommend to other devs that are interested in the language.
Not for Scala beginners, more for people who want to learn functional programming paradigm and how to apply its ideas in Scala. Very clear explanations of immutability, laziness, monads, etc. There are also a lot of interesting programming problems in the book to train yourself.
I haven't been using C++ for a few years now and I needed a quick refresher. While I wouldn't call C++ Primer quick it covers all the basics really well. Great resource for people new to the language.
This a good opportunity to say thank you to Anthony J. Dos Reis.
I like the way he writes and when reading his books, I feel like he is in
front of me teaching the subject.
Here are his books that I bought:
Assembly Language and Computer Architecture Using C++ and Java , Course Technology, 2004
By reading this book, I've developed my skills in programming with
C/C++, assembly language and while learning computer architecture all
at the same time. This book contains lots of low level stuffs.
The exercises are easy enough and had really sharpen my skills.
Although the target machine is theoretical, I was able to switch
easily into the real machine.
Compiler Construction Using Java, JavaCC, and Yacc, IEEE/Wiley, 2012
This book taught me how to create compilers. The author started from
simple principles in grammars then slowly introducing a very simple compiler
eventually adding more features to the compiler. I was able to adapt
his method in developing a compiler. In later chapters, the book does
a great job in presenting an application of what was learned from the previous
chapters by implementing grep using automata theory.
I might have forgotten some of the topics after more than a year but I
will not forget the fun it gave to me when reading and learning from
those books.
whoa. Thank you for this. Already shared with team at office and a whole bunch of other people. We are moving into a JS framework based project soon so having this resource is going to be pretty handy to reset and refresh our minds on any 'forgotten' or broken pieces of knowledge about JS. I'd upvote this multiple times if I could have.
"Javascript Enlightenment" is the book that made me understand the pitfalls you might encounter when you come from another language and you are learning Javascript.
I liked it very much.
http://www.javascriptenlightenment.com/
It's mostly focused around Django, but it's great for learning web app stuff in general. Has a chapter about Stripe integration, doing SASS/SCSS stylesheets, fiddling with images, and lots more. :)
SCJP by Kathy Sierra and Bert Bates is an amazing book to learn Java. With interesting examples (often about movie characters) and advanced images/graphics for a better understanding of the concepts.
I recommend it to anyone starting to learn Java, with or without any previous programming experience.
A classic is Larry C Paulson's "ML for the Working Programmer", although it's (a) apparently a bit divisive (see e.g. https://news.ycombinator.com/item?id=9667264) and (b) out of print. It's a thoughtful treatment of functional programming that happens to use ML, and a book I enjoy reading rather than just referring to. I appreciate the fact that the second edition introduces modules very early on, and that it's relatively un-mathematical in the way it presents things like module semantics.
Robert Harper's "Programming in Standard ML" (online only I think, at http://www.cs.cmu.edu/~rwh/smlbook/book.pdf) is more thorough. It's modern enough to present the Basis library as part of the language, so you do get a handful of useful existing data structures rather than feeling you're expected to build everything yourself. A pity the Basis library is so slight though.
http://www.amazon.com/Joy-Clojure-Michael-Fogus/dp/161729141...
I've heard good thing about Clojure for the Brave and True, free online:
http://www.braveclojure.com/