The dRuby Book: Distributed and Parallel Computing with Ruby
Masatoshi Seki (translated by Makoto Inoue)
(Pragmatic Bookshelf, paperback, list price $35.00)
Looking to expand your Ruby horizons? Distributed Ruby, or dRuby, may be precisely the challenge you are seeking. And this new how-to book can get you started.
The author, Japan’s well-known Ruby master, Masatoshi Seki, previously has published two books (in Japanese) involving dRuby: Distributed Object Programming with dRuby and Distributed Web Programming with dRuby.
The dRuby Book from Pragmatic Bookshelf, is an updated and expanded translation of Seki’s Distributed Web Programming with dRuby.
Do not let the word “translation” stop you from considering this new how-to guide. Makoto Inoue has done an excellent job of rendering Masatoshi Seki’s text into clear, smooth English, with editing help from Susannah Davidson Pfalzer.
Seki has rewritten his book to include “the latest dRuby information and new libraries.” He notes: “Stateful web servers are a core concept of dRuby. dRuby lets you pass normal Ruby objects and call their methods across processes and networks seamlessly. With dRuby, you’ll experience the world of dirtributed computing as a natural extension of Ruby.”
He adds: “You don’t need to know much about distributed systems as a prerequisite for reading this book, but you should know the basic Ruby syntax, know the standard Ruby classes, and be able to write some simple code.”
dRuby is “one of the standard libraries that comes with the Ruby core code, and you can use it to write distributed programming apps without the hassle of installing and configuring additional components,” the author points out.
But be sure you have worked with Ruby a bit before jumping into this 253-page book. Its requisite “Hello, world” example – with no preliminary how-to instructions – shows (1) how to create a server that prints out strings and (2) how to code a simple client that can make the server print “Hello, World” – and each process is run from a separate terminal window. Code-wise, it’s not a big deal, but don’t try this at home without learning the basics of Ruby first.
Seki’s book is organized into four major parts:
- Introducing dRuby
- Understanding dRuby
- Process Coordination
- Running dRuby and Rinda in a Production Environment
The 12 chapters utilize short, to-the-point paragraphs and offer numerous short code examples.
If you thinking of diving into distributed systems, client-server network programming, or concurrent programming, or maybe just seeking “a more lightweight alternative to Ruby on Rails or Sinatra,” definitely check out The dRuby Book.
– Si Dunn