A Legend Never To Be Solved

September 25th 06:33
by why

I don’t mean to be overly sentimental or maudlin. Guy Decoux (pronounced ghee de-coo, I believe) was a great secret among Ruby enthusiasts. I am sad to hear that he is gone. I dropped my glass the minute I heard. He was fantastic. Of his legend I will always tell. He leaves us much to think about.

He was around long before I happened upon Ruby and, man, the guy was sensationally smart. He knew Ruby inside and out. Really, he was fantastic with Ruby internals. I’m happy to have long employed some of his cunning code in Shoes: the ts_each and ts_funcall2 in shoes/ruby.c. He only made 19 commits to Ruby in the years 2000 to 2003, but he discovered countless bugs and you can find his ruby-core messages cited often in the ChangeLog.

He was probably the earliest master of Ruby outside Japan. He began study of Ruby in 1999 (ruby-talk:859) and was right there at the inception of ruby-core (ruby-core:27.) Matz will be unhappy to hear of this news, since Guy had been so helpful over these last nine years.

He was few on words, but not necessarily because he was poor at English. I asked him for some pointers, long ago, when I started work on Try Ruby. He sent back a reply that not only detailed a number of bugs he discovered, but also a postscript asking me to fix the reverse DNS for my e-mail address, attaching some lines from his mail log as proof!

There I was, quite surprised to see actual words and paragraphs in his e-mail. The real ts! He rarely gave color commentary on his code. He gave only transcripts of his conversations at the shell prompt with his machine called pigeon. (In previous years, sometimes it had been svg.) I thought it was funny that his transcripts always ended with a blank shell line pigeon%, as if he parked it there for you, awaiting further command. And that was part of the marvel of ts: he respected your smarts to figure out his code and he let his code entirely represent him.

You’ll hear a lot of people say that we didn’t know who he was. That no one met him. But we all read alot of his code. And clearly that was how he wanted us to know him. Think of how that stands in such sharp contrast to the self-advertisement and vanity journalism of the Web today. We knew him, just not in the way we’re used to.

The RubyFrance blog has this photo of Guy:

Anyway, if the real pigeon is intact, I hope it will find its way into a wing of the Matz Museum, alongside the Perl CGI book that Matz inherited from his dad and the magnetic tapes in Matz’ closet. (Ruby pre-1.0 is lost somewhere in there on outdated media.)

Here is the very thoughtful eulogy given by Jean-François Trân. You can give your thanks to @underflow_ for writing it.

I am archiving it here, though the original is on ruby-talk. I would be very interested to hear memories from matz or David Alan Black or anyone who had correspondence with Guy. It would be great to revisit some of his finer replies over the next few days, wouldn’t it?

I’m sad to announce you Guy Decoux’s death in the beginning of the month of July 2008. He was 53 years old. He died accidentally, intoxicated by the smokes of the fire that took place during the night in his flat in Louveciennes (near Paris).

Guy Decoux was network and system admin at the Plant Genomics Research Unit of INRA (Agricultural Research labs, where he worked since 1982) in Moulon’s Farm (Moulon’s plateau, in the south west of Paris).

He was an Internet pioneer. For example, he worked on Oraplex, one of the first Oracle to web gateways. He deployed the first website that gave access to an ACeDB system by the end of 1993. He had worked on bioinformatic free software, like ProticDB, a plant proteomic database.

He was part of the generation of developers who switched from Perl to Ruby in the 90s. While his mastering of Perl was already great, his knowledge about Ruby was so deep and impressive that a lot of Rubyists would have been very happy to have the same one. Guy contributed to Dave Thomas’ book, “Programming Ruby”. Of course he polled for the comp.lang.ruby and fr.comp.lang.ruby newsgroups creation. He was maintaining some libraries like PL/Ruby a procedural language for PostgreSQL, bdb / bdb1 bindings for Berkeley DB, bz2 bindings the libbzip2 compression library and MMap class, a class for Memory-mapped files.

To my knowledge, he was the only french person to have commits right to Ruby MRI source code. I don’t know if he was officially member of the Ruby Core Team (I don’t know if there is an official Ruby Core Team list).

I’m not sure ‘ts’ (what does ‘ts’ mean in his electronic address?) had ever been to RubyConf nor any Ruby conference. Well I don’t know if there is a french Rubyist who ever meet him. Was he mysterious or secret ? Maybe he was just reserved. His colleagues described Guy as reserved, kind, available, professional and technically very competent. His messages on Ruby-Core or Ruby-Talk, sometimes with a bit of humor, show all that.

This is a loss for Ruby Community.

In the name of french association RubyFrance, I present my condolences to Guy Decoux’s family, his friends and his collegues.

Update: Matz has replied:

I was socked. He was one of the smartest guy among our community. Even thought I haven’t had a chance to meet him in person, he had been a great source of knowledge and insight. I should have exchanged ideas with him more often. I miss him.

Update #2: A nice remark from Mauricio Fernandez:

It’s sad that the aura of mystery around ts was dissipated by this tragic news. Back in the pre-Rails era, there were often jokes about him being not one but many people - such was the perception of his knowledge and skill. matz once said he hoped Guy would maintain Ruby if he got hit by a bus.

He is referencing ruby-talk:10826.

Furthermore: A few from the Decoux archive.

  • ruby-talk:20293, his lost prop extension for inserting a module between a class and its metaclass. (Diagram in ruby-talk:20296.)
  • ruby-talk:17000, where he refers to ts as his moniker. the iis extension used to spill method source code is from the 1.6 days and can be found on the moulon ftp site.
  • ruby-talk:5795, about his style of answering in code he says, “I know nothing, I just ask ruby what it do.”

Now begin the comments …


Karim Lala

said on September 25th 04:49

I’m “socked” too…especially considering that the guy was only 53 in 20008!!!!


said on September 25th 05:21



said on September 25th 06:38

Aww… Even more mysterious than our _why. Try not to think of it as a loss. He achieved so much and helped the world. That is something really positive.

Everybody dies, but not everyone contributes something to the people to follow. :)


said on September 25th 07:35

I didn’t know him, but he sounds like a phenomenal fellow and it’s always sad when one passes on.


said on September 25th 08:38

Finding this entry in my feed reader, I realized with some relief that a dream was just a dream. Having read about the passing of ts yesterday, I dreamed we’d lost _why as well, and I was terribly sad thinking about Shoes abandoned before it could fulfill _why’s dream of bringing the joy of hacking to a new generation.


said on September 25th 11:25

Very well written _why. Guy will be remembered for quite a long time by us humans, while his work lives inside the machines we daily operate.


said on September 25th 11:40

Computing is young enough as a field that this sort of thing is unexpected. Guy will definitely be missed, by me though I can’t claim to have known him even to the extent of many I only know by email. At least with projects such as Ruby we can make some contribution for others, even if it is small. But words aren’t exactly useful at this point. … Check your smoke alarms…


said on September 25th 13:53

yes, in analogy and in chorus with Danno: the Cabinet of Jan Svankmajer


said on September 25th 15:13

I enjoyed reading Guy’s posts since I started working with Ruby, a few years ago. As a French speaker it was even entertaining to read the non-Ruby parts. Guy was referring to english as “anglois” (a very old French name for english) and even more recently, Macs are “la chose” (literally “the thing”). He will be missed :(


said on September 25th 17:39

I second lrz. Ah, how much I craved his modified ruby with multimethods (ruby-talk:10424).
Sad he’s gone, nice to have had something of him.


said on September 25th 18:01

I just want to agree with you all about the sadness at learning that Guy has gone – his modest expertise was one of the things that attracted me to Ruby in the first place.


said on September 25th 22:57


Simon Strandgaard

said on September 25th 23:01

ts was incredibly skilled


said on September 25th 23:03

Sorry for the double message. I didn’t have the chance to know Guy before this piece of news. It is always inspiring to learn of the master craftsmen behind the technology.

Pablo Q.

said on September 26th 13:03

I use to check stuff in French, it’s my second language after Spanish.. We will miss this man, it was like a “guru”…
require ‘people’
p “we miss you #{People.decoux}…”


said on September 27th 00:09

I never knew ts. Legend he must have been, for _why to write such loving words.

Rest in eternal peace.

Comments are closed for this entry.