June 30, 2006

Some recent technical books: Concurrency, Messaging, Ajax, Web design

The start of a project is always a great time to get books.[1] Since I'm learning new stuff, new books are called for. Here's the ones I've picked up so far; I'll try and write more about them individually later:

Java Concurrency in Practice

I'm not sure what server our new platform will run on or if we'll need to create our own for certain parts of the application. And Java 5 has lots of useful additions for concurrency that I haven't caught up on yet. This book should rectify that. The fact that some heavy names (Doug Lea and Josh Bloch, among others) are co-authors doesn't hurt either.

I've only flipped through this so far, no comment yet.

Enterprise Integration Patterns

aka, "the messaging pattern book"; I don't know why they didn't put "messaging" in the title (although it is in the subtitle); maybe someone's derived a sales stat:

$sales += $sales * 0.30 if ( $title =~ /enterprise/i );

I've read through a chapter or so of this. Looks great so far -- that they don't use UML for the diagrams is a plus. It also doesn't contain pages on pages of code. Skimming the WSDL/SOAP examples in the implementation section I read (loan broker), makes me glad I'm not planning to go there.

Ajax Hacks

For technologies like this (uncomplicated but lots of uses and gotchas) I find myself leaning toward the recipe-style books rather than the comprehensive manuals. Partly because I have a short attention span and do not have public transportation time to read, but also because ideas stick better for me if I implement them or even review an implementation.

The only downside of this is that it doesn't seem to cover dojo, which I'm considering as a core component.

I also looked at the Ajax book with Dion as one of the co-authors. I like Dion even though I've never met him; unlike many Java people he doesn't think 'Perl' is a dirty word and he's very pragmatic about technology and applications. But it was more of a manual; I already know half the stuff in there. And the dojo coverage looked like an intro only.

Bulletproof Web Design

To me it sounds weird to get a book on web design. Probably all the tips and tricks here are readily available on the web. But web documents (even tutorials) tend to be really short because, of course, nobody reads long documents on the web. And while you can find a good tip for layout, another for menus, another for pull quotes, etc., they're all presented differently.

This book also looks excellent for showing you the ramifications if you don't do something or if you do it in a suboptimal way. (He has to show you the non-bulletproof way to show the benefits of the bulletproof way.)

It also has excellent graphics and the author seems to have taken his time thinking hard about how to present a particular implementation method.

I also flipped through Non-Designer's Design Book for more general ideas on design. It looks very useful, breaking down designs into what works and what doesn't. But I shouldn't be doing too much of that.

[1] Actually, it's never a bad time to get books, but at the start of a project it's very easy to justify expensing them.

Next: Clumsiness strikes again!
Previous: MJD on Class::Observable and false trade-offs