5th - 11th March 2007

Ruby Weekly News is a summary of the week’s activity on the ruby-talk mailing list and its cohorts, the comp.lang.ruby newsgroup and Ruby forum.

It is brought to you this week by
  • Tim Sutherland (firstname.lastname at gmail.com)
  • Robert Postill (robert-at-grinning-cat.com)
  • Christian Carter (cdcarter at gmail dot com)

Articles and Announcements

  • Google Summer of Code
  • Pat Eyler notes that Google’s Summer of Code is coming up shortly. “Ruby Central is once again planning to act as the mentoring organization for Ruby.”

    Google will post the list of mentoring organizations on March 14th. Google will be accepting student proposals March 15-24, so, if you’re a student, this is the time to start putting together a proposal.
  • Free webcasts on Ruby and Rails from CodeGear
  • Joe reports that CodeGear are hosting a free “live virtual developer conference” on March 12th – 16th. At least four session are to do with Ruby.

  • Speaker Selection for Gotham Ruby Conference
  • Gregory Brown posted the official speaker list for GuRuCo, the Gotham Ruby Conference. (New York City, April 21st.)

    It will be a technical conference aimed at highly motivated Rubyists, Rails developers, and language enthusiasts. GoRuCo is a joint effort by volunteers from NYC.rb and the New Haven Ruby Brigade. It’s supported by the sponsors of this conference including Google, StreetEasy, and Jonathan Summers.

    According to the website, the conference has now sold out, but you can sign up to a waiting list in the hope someone cancels.

Threads

SimFrost (#117)

James Edward Gray II posted this week’s Ruby Quiz. “This was one of the Perl Quiz of the Week problems a couple of years ago. It’s also my favorite computer simulation.”

Create a simulation of frost, following the (given) rules that describe how to iterate the animation. “Again, use whatever output you are comfortable with, from ASCII art in the terminal to pretty graphics.”

What is Ruby Quiz? From the website:

Ruby Quiz is a weekly programming challenge for Ruby programmers in the spirit of the Perl Quiz of the Week. A new Ruby Quiz is sent to the Ruby Talk mailing list each Friday. (Watch for the [QUIZ] subject identifier.) After a 48 hour no-spoiler period has passed, everyone is invited to contribute solutions and/or discussion back to the list. The following Thursday a Summary will be sent to the list, discussing the quiz, solutions and discussion. The next day, the cycle begins again.

It’s a great way for new and experienced Ruby programmers alike to try their hand at problems, and get feedback from others.

Duck Typing Hash-Like Objects

Gary Wright asks for ideas on the best way of identifying a “hash-like” object, so that the check relies only on the interface, as in duck typing.

Various suggestions were put forward including the detection of the to_hash method, using #fetch and the discussion also careered through the meaning of duck typing.

If you want to know more about hash behaviour and/or duck typing you could do a lot worse than reading this thread.

Ruby.on-page.net - Evolution began

A flurry of feedback greeted ruby.on-page.net, an online Ruby documentation site featuring a novel interface.

The idea appears to be help offered on a single page with wiki-like attributes. Give it a shot and see what you think.

Yahoo!'s Ruby Developer Center

Brian Adkins ran into Yahoo!’s Ruby Developer Center and thought it looked interesting.

“Nice heads up”, concluded Richard Conroy.

the name of Matz

In this thread you’ll find Matz’ name in Kanji, how to pronounce “Yukihiro Matsumoto”, and a discussion of naming conventions to distinguish given and family names.

Following a comparison with Matz’ non-capitalisation of his family name, Akinori MUSHA said “Although passports and other formal documents may have restrictions, one should be allowed to spell one’s name as one wants, so long as it is used consistently and serves as social identification.”

why the lucky stiff’s name was also dissected, with Wilson Bilkovich reckoning that the underscore in _why “represents the intake of breath before speaking his name”.

Matz said (without joking) “I’ve heard that it’s his REAL first name”, and Hal Fulton backed up the rumour – he’d heard it was based on a younger sibling’s alternative to _why’s real first name; “Wyatt or something”.

New Releases

Rassmalog 3.1.0 - the mutant

Rassmalog is a blog engine based on RSS 2.0, YAML and Textile. By the end of the thread v3.0.0 had mutated into v3.1.0, so it’s definitely under active development.

JRuby 0.9.8

The JRuby folks are obviously busy as there is yet another release for your delight. Highlights here are the Rails support (say goodbye to irksome WAR deployments :) which the developers reckon is good enough for testing.

ActiveWarehouse ETL 0.6.0

Check out the latest release of ActiveWarehouse’s Extract, Transform and Load project. Gem goodness is included and there are a “slew” of new and improved features. Definately one for Ruby in the Enterprise folk.

rcairo 1.4.0

The ruby wrapper for the Cairo library was released this week. This release has emphasis on performance and PDF output. Also some standardisation with Ruby-GNOME2 has occurred.

memcache-client 1.3.0

The pure Ruby client for memcached has been released. Patches and new functionality appear to be the order of the day. So if your DB development lacks a certain dash of speed, why not give this a shot?

Instant Rails 1.6, with MySQL 5

Instant Rails now includes MySQL 5. The Instant Rails installer is an easy way for Windows users to get up and running with a Rails development environment.

Curt Hibbs: “Many thanks to Jirka Pech who made the MySQL upgrade possible.”

Ruby ORBit2 (CORBA)

Max Lapshin implemented preliminary support for the ORBit2 library (for CORBA).

“No IDL is required at all: all information about method calling can be accessed via CORBA reflection mechanism.”

New "Ruby for Windows" Installer

Lothar Scholz posted a new Ruby installer for Windows, as an alternative to the widely-used One Click Ruby Installer, with a different philosophy as to which packages should be included in the base install.

Everything is compiled with MSVC 6.0, so it is compatible with the one click installer and all the “msvcrt” binary gems.

Rack 0.1, a modular Ruby webserver interface

Christian Neukirchen released Rack, a webserver and framework interface for Ruby. It is based on Python’s WSGI and PEP333, and he believes it will bring a lot to the Ruby web community.

Rack provides a minimal, modular and adaptable interface for developing web applications in Ruby. By wrapping HTTP requests and responses in the simplest way possible, it unifies and distills the API for web servers, web frameworks, and software in between (the so-called middleware) into a single method call.

With the Rack standard, any Rack compatible framework (Rails, Camping, custom, more to come) will work with any Rack supported web server (Mongrel, WEBrick, FCGI, CGI).

This means that we would need to develop just one Rack adapter per framework, and one Rack handler per webserver. Currently, each framework has to implement its own support for each web server.