℘ make now just

if you wanna break free you better listen to me

JanFebMarAprMayJunJulAugSepOctNovDec/post/2024-12-08-diary//post/2024-12-09-diary//post/2024-12-10-diary//post/2024-12-11-diary//post/2024-12-12-diary//post/2024-12-13-diary//post/2024-12-14-diary//post/2024-12-15-diary//post/2024-12-16-diary//post/2024-12-17-diary//post/2024-12-18-diary//post/2024-12-19-diary//post/2024-12-20-diary//post/2024-12-21-diary//post/2024-12-22-diary//post/2024-12-23-diary//post/2024-12-24-diary//post/2024-12-25-diary//post/2024-12-26-diary//post/2024-12-27-diary//post/2024-12-28-diary//post/2024-12-29-diary//post/2024-12-30-diary//post/2024-12-31-diary//post/2025-01-01-diary//post/2025-01-02-diary//post/2025-01-03-diary//post/2025-01-04-diary//post/2025-01-05-diary//post/2025-01-06-diary//post/2025-01-07-diary//post/2025-01-08-diary//post/2025-01-09-diary//post/2025-01-10-diary//post/2025-01-11-diary//post/2025-01-12-diary//post/2025-01-13-diary//post/2025-01-14-diary//post/2025-01-15-diary//post/2025-01-16-diary//post/2025-01-17-diary//post/2025-01-18-diary//post/2025-01-19-diary//post/2025-01-20-diary//post/2025-01-21-diary//post/2025-01-22-diary//post/2025-01-23-diary//post/2025-01-24-diary//post/2025-01-25-diary//post/2025-01-26-diary//post/2025-01-27-diary//post/2025-01-28-diary//post/2025-01-29-diary//post/2025-01-30-diary//post/2025-01-31-diary//post/2025-02-01-diary//post/2025-02-02-diary//post/2025-02-03-diary//post/2025-02-04-diary//post/2025-02-05-diary//post/2025-02-06-diary//post/2025-02-07-diary//post/2025-02-08-diary//post/2025-02-09-diary//post/2025-02-10-diary//post/2025-02-11-diary//post/2025-02-12-diary//post/2025-02-13-diary//post/2025-02-14-diary//post/2025-02-15-diary//post/2025-02-16-diary//post/2025-02-17-diary//post/2025-02-18-diary//post/2025-02-19-diary//post/2025-02-20-diary//post/2025-02-21-diary//post/2025-02-22-diary//post/2025-02-23-diary//post/2025-02-24-diary//post/2025-02-25-diary//post/2025-02-26-diary//post/2025-02-27-diary//post/2025-02-28-diary//post/2025-03-01-diary//post/2025-03-02-diary//post/2025-03-03-diary//post/2025-03-04-diary//post/2025-03-05-diary//post/2025-03-06-diary//post/2025-03-07-diary//post/2025-03-08-diary//post/2025-03-09-diary//post/2025-03-10-diary//post/2025-03-11-diary//post/2025-03-12-diary//post/2025-03-13-diary//post/2025-03-14-diary//post/2025-03-15-diary//post/2025-03-16-diary//post/2025-03-17-diary//post/2025-03-18-diary//post/2025-03-19-diary//post/2025-03-20-diary//post/2025-03-21-diary//post/2025-03-22-diary//post/2025-03-23-diary//post/2025-03-24-diary//post/2025-03-25-diary//post/2025-03-26-diary//post/2025-03-27-diary//post/2025-03-28-diary//post/2025-03-29-diary//post/2025-03-30-diary//post/2025-03-31-diary//post/2025-04-01-diary//post/2025-04-02-diary//post/2025-04-03-diary//post/2025-04-04-diary//post/2025-04-05-diary//post/2025-04-06-diary//post/2025-04-07-diary//post/2025-04-08-diary//post/2025-04-09-diary//post/2025-04-10-diary//post/2025-04-11-diary//post/2025-04-12-diary//post/2025-04-13-diary//post/2025-04-14-diary//post/2025-04-15-diary//post/2025-04-16-diary//post/2025-04-17-diary//post/2025-04-18-diary//post/2025-04-19-diary//post/2025-04-20-diary//post/2025-04-21-diary//post/2025-04-22-diary//post/2025-04-23-diary//post/2025-04-24-diary//post/2025-04-25-diary//post/2025-04-26-diary//post/2025-04-27-diary//post/2025-04-28-diary//post/2025-04-29-diary//post/2025-04-30-diary//post/2025-05-01-diary//post/2025-05-02-diary//post/2025-05-03-diary//post/2025-05-04-diary//post/2025-05-05-diary//post/2025-05-06-diary//post/2025-05-07-diary//post/2025-05-08-diary//post/2025-05-09-diary//post/2025-05-10-diary//post/2025-05-11-diary//post/2025-05-12-diary//post/2025-05-13-diary//post/2025-05-14-diary//post/2025-05-15-diary//post/2025-05-16-diary//post/2025-05-17-diary//post/2025-05-18-diary//post/2025-05-19-diary//post/2025-05-20-diary//post/2025-05-21-diary//post/2025-05-22-diary//post/2025-05-23-diary//post/2025-05-24-diary//post/2025-05-25-diary//post/2025-05-26-diary//post/2025-05-27-diary//post/2025-05-28-diary//post/2025-05-29-diary//post/2025-05-30-diary//post/2025-05-31-diary//post/2025-06-01-diary//post/2025-06-02-diary//post/2025-06-03-diary//post/2025-06-04-diary//post/2025-06-05-diary//post/2025-06-06-diary//post/2025-06-07-diary//post/2025-06-08-diary//post/2025-06-09-diary//post/2025-06-10-diary//post/2025-06-11-diary//post/2025-06-12-diary//post/2025-06-13-diary//post/2025-06-14-diary//post/2025-06-15-diary//post/2025-06-16-diary//post/2025-06-17-diary//post/2025-06-18-diary//post/2025-06-19-diary//post/2025-06-20-diary//post/2025-06-21-diary//post/2025-06-22-diary//post/2025-06-23-diary//post/2025-06-24-diary//post/2025-06-25-diary//post/2025-06-26-diary//post/2025-06-27-diary//post/2025-06-28-diary//post/2025-06-29-diary//post/2025-06-30-diary//post/2025-07-01-diary//post/2025-07-02-diary//post/2025-07-03-diary//post/2025-07-04-diary//post/2025-07-05-diary//post/2025-07-06-diary//post/2025-07-07-diary//post/2025-07-08-diary//post/2025-07-09-diary//post/2025-07-10-diary//post/2025-07-11-diary//post/2025-07-12-diary//post/2025-07-13-diary//post/2025-07-14-diary//post/2025-07-15-diary//post/2025-07-16-diary//post/2025-07-17-diary//post/2025-07-18-diary//post/2025-07-19-diary//post/2025-07-20-diary//post/2025-07-21-diary//post/2025-07-22-diary//post/2025-07-23-diary//post/2025-07-24-diary//post/2025-07-25-diary//post/2025-07-26-diary//post/2025-07-27-diary//post/2025-07-28-diary//post/2025-07-29-diary//post/2025-07-30-diary//post/2025-07-31-diary//post/2025-08-01-diary//post/2025-08-02-diary//post/2025-08-03-diary//post/2025-08-04-diary//post/2025-08-05-diary//post/2025-08-06-diary//post/2025-08-07-diary//post/2025-08-08-diary//post/2025-08-09-diary//post/2025-08-10-diary//post/2025-08-11-diary//post/2025-08-12-diary//post/2025-08-13-diary//post/2025-08-14-diary//post/2025-08-15-diary//post/2025-08-16-diary//post/2025-08-17-diary//post/2025-08-18-diary//post/2025-08-19-diary//post/2025-08-20-diary//post/2025-08-21-diary//post/2025-08-22-diary//post/2025-08-23-diary//post/2025-08-24-diary//post/2025-08-25-diary//post/2025-08-26-diary//post/2025-08-27-diary//post/2025-08-28-diary//post/2025-08-29-diary//post/2025-08-30-diary//post/2025-08-31-diary//post/2025-09-01-diary//post/2025-09-02-diary//post/2025-09-03-diary//post/2025-09-04-diary//post/2025-09-05-diary//post/2025-09-06-diary//post/2025-09-07-diary//post/2025-09-08-diary//post/2025-09-09-diary//post/2025-09-10-diary//post/2025-09-11-diary//post/2025-09-12-diary//post/2025-09-13-diary//post/2025-09-14-diary//post/2025-09-15-diary//post/2025-09-16-diary//post/2025-09-17-diary//post/2025-09-18-diary//post/2025-09-19-diary//post/2025-09-20-diary//post/2025-09-21-diary//post/2025-09-22-diary//post/2025-09-23-diary//post/2025-09-24-diary//post/2025-09-25-diary//post/2025-09-26-diary//post/2025-09-27-diary//post/2025-09-28-diary//post/2025-09-29-diary//post/2025-09-30-diary//post/2025-10-01-diary//post/2025-10-02-diary//post/2025-10-03-diary//post/2025-10-04-diary//post/2025-10-05-diary//post/2025-10-06-diary//post/2025-10-07-diary//post/2025-10-08-diary//post/2025-10-09-diary//post/2025-10-10-diary//post/2025-10-11-diary//post/2025-10-12-diary//post/2025-10-13-diary//post/2025-10-14-diary//post/2025-10-15-diary//post/2025-10-16-diary//post/2025-10-17-diary//post/2025-10-18-diary//post/2025-10-19-diary//post/2025-10-20-diary//post/2025-10-21-diary//post/2025-10-22-diary//post/2025-10-23-diary//post/2025-10-24-diary//post/2025-10-25-diary//post/2025-10-26-diary//post/2025-10-27-diary//post/2025-10-28-diary//post/2025-10-29-diary//post/2025-10-30-diary//post/2025-10-31-diary//post/2025-11-01-diary//post/2025-11-02-diary//post/2025-11-03-diary//post/2025-11-04-diary//post/2025-11-05-diary//post/2025-11-06-diary//post/2025-11-07-diary//post/2025-11-08-diary//post/2025-11-09-diary//post/2025-11-10-diary//post/2025-11-11-diary//post/2025-11-12-diary//post/2025-11-13-diary//post/2025-11-14-diary//post/2025-11-15-diary//post/2025-11-16-diary//post/2025-11-17-diary//post/2025-11-18-diary//post/2025-11-19-diary//post/2025-11-20-diary//post/2025-11-21-diary//post/2025-11-22-diary//post/2025-11-23-diary//post/2025-11-24-diary//post/2025-11-25-diary//post/2025-11-26-diary//post/2025-11-27-diary//post/2025-11-28-diary//post/2025-11-29-diary//post/2025-11-30-diary//post/2025-12-01-diary//post/2025-12-02-diary//post/2025-12-03-diary//post/2025-12-04-diary//post/2025-12-05-diary//post/2025-12-06-diary//post/2025-12-07-diary//post/2025-12-08-diary//post/2025-12-09-diary//post/2025-12-10-diary//post/2025-12-11-diary//post/2025-12-12-diary//post/2025-12-13-diary/
  • Less
  • More

2025-12-12: _whyについて僕が知っていること

はじめに

whywaita Advent Calendar 2025 12日目担当のmakenowjustです。
whywaita Advent Calendar 10周年 Party に参加してしまったばかりに、今日こうして記事を書くことになっています。
10日目と11日目はlast_scene_7_7さんが書くことになっているみたいですが、2025年12月12日現在記事が上がっていないので、どんな内容なのかはよく分かりません。

https://x.com/whywaita/status/1997687522072395798

問題はないようです。

というわけでやっていきたいと思います。

君は_whyを知っているか

whywaitaさんはしばしば「ホワイさん」と呼ばれます。
ですが、Rubyコミュニティには_whyと呼ばれる伝説的なプログラマがいて「ホワイ」と言ったら概ねこの人を差すことになります、多分。
今回はその_whyについて説明していきます。

why the lucky stiff

_whyあるいはwhy the lucky stiffと呼ばれる彼は何者なのでしょうか?

_whyは2000年代 (ゼロ年代) に活躍したプログラマであり、ミュージシャンでもあります。
2005年頃にRubyコミュニティに颯爽と現れて、様々な影響をRubyに残していきました。
そして、2009年にネット上から痕跡を全て消去して、忽然と姿を消したのです。

自分がプログラミングを書き始めた頃に既に彼は消失していて、実際に彼を目撃したことは無いのですが、この経歴だけを見てを興味深い人物だと分かります。

詳しくは彼のWikipediaを参照してください。

_whyの残したもの

_whyはその活動期間の中で様々なライブラリ・プログラム──あるいは作品を残していきました。
ここではその一部を紹介したいと思います。

shoes

http://shoesrb.com

shoes と呼ばれるRubyのGUIライブラリがあります。
このライブラリはもともと_whyがHackety Hackというプログラミングの作り方を教えるソフトウェアのために開発したもので、宣言的な・直感的な方法でUIを書けるGUIライブラリになっています。
チュートリアルを見ると、今の観点からしても魅力的なライブラリに感じます。

残念ながら最近はあまりメンテナンスされていないようですが、JRubyで書かれているので動作自体はするのではないかと思います。

ホワイの (感動的) Rubyガイド

https://poignant.guide

_whyと言えばこれ、という、もっとも有名なコンテンツなのではないかと思います。

タイトルの通り (?) Ruby・プログラミングのチュートリアル的な本です。
軽快な文体でRubyの様々な機能やプログラムの書き方が紹介されています。
かなりフランクに進むのでこれ一本でプログラミングやRubyを学ぶものではないのですが、面白い例が多いので楽しいのではないかと思います。
何より読み物として面白いです。

日本語訳もあったはずなのですが、なんかサイトがつながりません。
Wayback Machineとかで見つかるかもしれませんが、自己責任でお願いします。

try.ruby-lang.org

https://try.ruby-lang.org

オンラインのRubyプレイグラウンドでチュートリアルであるTry Rubyも_whyの創作物の一つです。
また、この実行環境のために作られたsandboxというライブラリもあります。

Try Rubyの歴史について説明したページもあり、こちらも非常に興味深いのですが、微妙に古い部分もあります。
というのも最新のTry Rubyはデフォルトでruby.wasmを使うようになっていて、Opalではなく本物のCRubyが動いています。
_whyはいなくなってもTry Rubyは進化し続けているわけですね。

"so create."

when you don’t create things, you become defined by your tastes rather than ability. your tastes only narrow & exclude people. so create. – Why the lucky stiff

彼がTwitter (現X) で残した名言です。
日本語で解説する記事もあります。
いいこと言ってますね。

記事を見たらfavstar.fmとか言ってて懐しさで涙が出ました。
ふぁぼ (現いいね) は最近元気にしているのでしょうか。

最後に

この記事を通じて、過去に_whyという偉大な人物がいたのだということを知ってもらえたら幸いです。

_whyの残したものを見ると共通して、プログラムを楽しむことを大切にしているように感じます。
AIによって様々なプログラムが自動で書けるようになった今、プログラムを楽しむという視点は昔よりも重要になっているように思います。

それでは、最後まで目を通していただきありがとうございました。
明日のwhywaita Advent Calendar 2025の担当はakirauenoさんです。
どんな記事が出てくるのか楽しみですね。


2025-12-13: MOIW 2025 DAY 1

2025-12-12: _whyについて僕が知っていること

2025-12-12: 大阪に来た