1 Matching Annotations
  1. Sep 2024
    1. When Yukihiro Matsumoto started working on the Rubylanguage in February 1993, he had full control over the first aspect.‘Matz’ – the name that Matsumoto-san goes by – had been searching for alanguage that would make him happy, but failing to find one. He wantedan object-oriented scripting language, but was not happy with Perl. Object-oriented programming languages rely on digital objects called classes, ableto send and receive messages to and from other classes. Object-orientedprograms thus consist of many different classes interacting with eachother. But Perl, thought Matz, did not explore this philosophy enough. Itseemed like a toy-language to him. He wanted a programming languagethat was truly object-orientated – one in which ‘everything’ was an object.Python, another language that already existed at the time, didn’t workeither. Python’s object-oriented features seemed like an after-thought, akind of add-on to the language. Like many other programmers before andafter him, Matz decided to build what he couldn’t find.2It was another developer, however, who came up with the name.Keiju Ishitsuka suggested ルビ in a private chat message. ‘Why Ruby(ルビ) ?’ asked Matz. ‘Because of Perl,’ Ishitsuka-san replied. Aftera brief chat about what kinds of shellfish actually generate pearls,both programmers agreed on a provisional codename for the language.‘Indeed, Ruby is okay,’ wrote Keiju. ‘But Coral is also okay ... tsk tsk,’replied Matz. After a few days Keiju wrote again to say that he hadremembered that Ruby was his birthstone. Matz, now convinced, replied‘Ruby, then.’3From the very beginning, Matz thought the language should be opensource. There was no point in keeping it to himself and not allowing otherpeople to use it. If he hadn’t open sourced it, Ruby might have followed thepath of many other languages that are now completely dead; languagesthat only lived in the machines of their creators. Thinking back on it, Matzsays that Ruby only became widely used ‘because of the decision to goopen source, along with a fair amount of luck’.4 That ‘fair amount of luck’was the second thing that makes programming languages, the one overwhich Matz had little control: the Ruby community.Making software open source does not automatically guaranteeits longevity. Many open-source projects perish