Books & Tools Techniques

Comprehensive coverage of Ruby 1.8 and 1.9

"The New Most Important Ruby Book"
Peter Cooper,
rubyinside.com

Completely updated for Ajax and Web 2.0

"A must-have reference"
Brendan Eich,
creator of JavaScript

Jude

Jude is my Java documentation browser. It combines Sun's definitive javadocs with the easy-to-use format of Java in a Nutshell, and tops it off with easy keyboard-based navigation and full-text searching.

Jude is available for free evaluation.

See the user's guide for more info

Java in a Nutshell

The 5th edition is now out, with complete coverage of Java 5.0!

It includes a fast-paced tutorial on the language, and a compact quick-reference for the core Java API.

Java Examples in a Nutshell

The 3rd edition, updated for Java 1.4

This edition has all-new coverage of the NIO and JavaSound APIs, completely rewritten Servlets and XML chapters, and coverage of new Java 1.4 features (assertions, logging, preferences, SSL, etc.) added througout. A great book for those who like to learn by example. 193 working examples: 21,900 lines of carefully commented code to learn from.

Java 1.5 Tiger: A Developer's Notebook

Amazon incorrectly credits me as the main author on this book. I'm actually the second author: really more of a consultant. This is a good book about all the language changes in the latest version of Java.

Effective Java

I didn't write this excellent book, but I wish I had.

Author Josh Bloch is probably best known for the collections classes in the java.util package. His experience and wisdom are apparent in this book. I learned from it and recommend it highly.

October 25, 2007

Fluent Programming in Ruby

Matz has just checked a change into the Ruby 1.9 tree to allow programming with fluent interfaces. The change is marked "experimental", but if it stays in the tree, we'll be able to write Ruby code like this:

puts "hello"
        .upcase
        .reverse
        .slice(0)    # => Prints "O"

(This is a silly example; Martin Fowler's page linked above has more compelling examples of this style of method chaining.)

We've always been able to do method chaining in Ruby, of course. What Matz's patch does is allow newlines in between the methods. This is tricky in languages like Ruby that don't require semicolons because newlines usually act as the statement terminators. So with this new modification a newline does not terminate a statement if the first non-space character on the following line is a period.

P.S. In case it hasn't been obvious from my recent postings on Ruby, I'm writing a book about Ruby. And I'm nearly done!

October 09, 2007

Last to Die

Bruce Springsteen, on Iraq, 2007:

Who’ll be the last to die for a mistake
The last to die for a mistake
Whose blood will spill, whose heart will break
Who’ll be the last to die for a mistake

John Kerry, on Vietnam, 1971:

Each day to facilitate the process by which the United States washes her hands of Vietnam someone has to give up his life so that the United States doesn't have to admit something that the entire world already knows, so that we can't say that we have made a mistake. Someone has to dies so that President Nixon won't be, and these are his words, "the first President to lose a war."

We are asking Americans to think about that because how do you ask a man to be the last man to dies in Vietnam? How do ask a man to be the last man to die for a mistake?

Advertising
About
Store
Search
Google
Web this site
Archives
Syndicate

Powered by
Movable Type