Юкихиро Мацумото
Юкихиро Мацумото (яп. 松本 行弘, род. 14 апреля 1965, префектура Осака, Япония) — японский программист и разработчик, наиболее известный как создатель языка программирования Ruby. Мацумото, также известный под псевдонимом Matz, является одним из ведущих специалистов в области объектно-ориентированного программирования и дизайна языков. Его работа оказала значительное влияние на развитие веб-разработки, особенно в области фреймворков, таких как Ruby on Rails.
Биография
Ранние годы и образование
Юкихиро Мацумото родился 14 апреля 1965 года в префектуре Осака, Япония. С детства он проявлял интерес к компьютерам и программированию. В 1985 году он поступил в Университет Цукуба, который окончил в 1990 году со степенью бакалавра в области информатики. Во время учёбы он начал изучать языки программирования, включая Lisp, C и Smalltalk, что впоследствии повлияло на его подход к созданию Ruby.
Карьера
После окончания университета Мацумото работал в нескольких японских компаниях, включая Open Software Foundation (OSF) и Network Applied Communication Laboratory (NACL). В 1993 году он начал разработку Ruby как хобби-проекта, стремясь создать язык, который сочетал бы лучшие черты существующих языков. Первая публичная версия Ruby (0.95) была выпущена в 1995 году. С тех пор Мацумото остаётся главным архитектором и поддерживающим разработчиком языка, хотя в 2010-х годах он передал часть обязанностей сообществу.
В 2007 году Мацумото присоединился к компании Heroku (впоследствии приобретена Salesforce), где работал над улучшением Ruby и его экосистемы. В 2011 году он стал главным научным сотрудником (Chief Scientist) в Heroku. В 2020 году он перешёл в компанию Cookpad, где продолжил работу над Ruby и связанными технологиями.
Создание Ruby
Мотивация и философия
Мацумото создал Ruby, стремясь объединить лучшие свойства языков, которые он считал наиболее эффективными: объектно-ориентированность Smalltalk, гибкость Perl и функциональные возможности Lisp. Основной принцип, которым он руководствовался, — «принцип наименьшего удивления» (POLA, Principle of Least Astonishment): язык должен вести себя так, как ожидает программист, минимизируя неожиданные ошибки. Мацумото подчёркивал, что Ruby разрабатывался для повышения продуктивности разработчиков, а не для оптимизации производительности выполнения кода.
Развитие языка
Первая версия Ruby (0.95) была выпущена в 1995 году. В 1996 году вышла версия 1.0, которая привлекла внимание сообщества. Ключевые версии:
- Ruby 1.8 (2003) — долгое время оставался стабильным стандартом, но имел ограничения в производительности.
- Ruby 1.9 (2007) — ввёл новую виртуальную машину YARV (Yet Another Ruby VM), значительно улучшившую скорость выполнения.
- Ruby 2.0 (2013) — добавил ключевые слова для оптимизации и улучшил поддержку многопоточности.
- Ruby 3.0 (2020) — представил концепцию «Ruby 3x3» (ускорение в три раза по сравнению с Ruby 2.0), а также новые инструменты, такие как RBS (типизация) и TypeProf.
Мацумото активно участвует в обсуждениях и разработке новых версий, но с 2010-х годов он делегирует часть задач core-команде Ruby.
Влияние на сообщество
Ruby стал основой для фреймворка Ruby on Rails (создан Дэвидом Хейнемейером Ханссоном в 2004 году), который популяризировал язык и привлёк миллионы разработчиков. Мацумото неоднократно выступал на конференциях, включая RubyConf и RailsConf, где делился идеями о дизайне языков и открытом программном обеспечении.
Другие проекты и вклад
Разработка и консультирование
Помимо Ruby, Мацумото участвовал в создании нескольких библиотек и инструментов, включая:
- RDoc — генератор документации для Ruby.
- RubyGems — система управления пакетами (хотя основная разработка велась сообществом, Мацумото консультировал).
- mruby — легковесная реализация Ruby, предназначенная для встраиваемых систем и микроконтроллеров (выпущена в 2012 году).
Публикации
Мацумото является автором книги «The Ruby Programming Language» (совместно с Дэвидом Фланаганом, 2008), которая считается одним из наиболее авторитетных руководств по языку. Он также написал несколько статей о дизайне языков программирования, опубликованных в японских и международных журналах.
Признание и награды
- 2005 — Премия «Free Software Award» от Free Software Foundation за вклад в развитие свободного программного обеспечения.
- 2011 — Включён в список «50 самых влиятельных людей в области программного обеспечения» по версии журнала Dr. Dobb's Journal.
- 2014 — Получил премию «Japan Prize» в категории «Информатика и технологии» за создание Ruby.
- 2020 — Награждён медалью «За заслуги в области информационных технологий» от Японского общества информатики.
Личная жизнь
Мацумото женат, имеет двух детей. Он известен своим скромным образом жизни и предпочитает избегать публичности. В свободное время он увлекается чтением, игрой на гитаре и программированием на других языках, включая Python и Go. Мацумото также является сторонником открытого программного обеспечения и активно участвует в сообществе Ruby.
Критика и влияние
Некоторые критики отмечают, что Ruby, несмотря на свою выразительность, уступает по производительности языкам, таким как Python или Go, особенно в задачах, требующих высокой вычислительной мощности. Однако сторонники языка подчёркивают его удобство и скорость разработки, что делает Ruby популярным в веб-разработке и стартапах.
Влияние Мацумото на программирование выходит за рамки Ruby: его идеи о дизайне языков, особенно принцип наименьшего удивления, были приняты многими разработчиками и повлияли на создание других языков, таких как Crystal и Elixir.
Интересные факты
- Псевдоним «Matz» происходит от первых букв его имени и фамилии (Matsumoto).
- Мацумото является поклонником языка Lisp и часто цитирует его как источник вдохновения для Ruby.
- В 2010 году он участвовал в создании операционной системы Plan 9 от Bell Labs, но проект не был завершён.
- Несмотря на широкую известность, Мацумото продолжает жить в Японии и редко путешествует за границу, предпочитая работать удалённо.
Источники
- «The Ruby Programming Language» (Дэвид Фланаган, Юкихиро Мацумото, 2008)
- Официальный сайт Ruby (ruby-lang.org)
- Интервью с Юкихиро Мацумото для журнала «InfoWorld» (2008)
- Статья «Matz on Ruby» в журнале «Dr. Dobb's Journal» (2011)
- Документация Ruby 3.0 (ruby-lang.org/en/documentation)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →