Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

83
Ruby本から読み解く Ruby考古学 斎藤ただし @_tad_

description

ぐんまRuby会議01でのLT発表です。 http://regional.rubykaigi.org/gunma01

Transcript of Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Page 1: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Ruby本から読み解くRuby考古学

斎藤ただし @_tad_

Page 2: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Ruby

Page 3: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

世の中にあふれるRuby

Page 4: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

世の中にあふれるRuby本

Page 5: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book
Page 6: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

最初は一冊しかなかった

Ruby本

Page 7: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book
Page 8: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

オブジェクト指向スクリプト言語Ruby

1999/11/1発売まつもとゆきひろ・

石塚圭樹共著

Page 9: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

この一冊から、皆さんと一緒にRubyとコミュニティを再発

見したい

Page 10: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

懐古厨

Page 11: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

斎藤は群馬の某高校出

Page 12: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

2000年の終わりごろ、とある委員会活動の副委員長に

Page 13: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

生徒1000人分くらいの集計処理が

必要に

Page 14: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「それ機械化

で」

Page 15: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ノーコン族、脳内BASIC

Page 16: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

→Excel95でVBA、

K&Rを買ってもらった直後

Page 17: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Cで文字列処理だるい

Page 18: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

スクリプト言語っていうのがあるらしい

Page 19: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「Perlはもう古い」?

Page 20: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Rubyっていうのが

あるらしい

Page 21: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

本がある!買おう!

Page 22: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

4000円! 高い!

\(^o^)/

Page 23: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「図書室の予算余って

るよー」

Page 24: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

高校に本を買って

もらおう!

Page 25: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

こうして斎藤はRubyist坂を登りはじめた

Page 26: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

一方

Page 27: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

出版前夜のRubyコミュニ

ティ

Page 28: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「俺達の本が出る!!」

Page 29: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

[ruby-list:6636]

23 Feb 1998

Page 30: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Matz「夏夏に出版

予定」

Page 31: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

その夏

Page 32: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

音沙汰無し

Page 33: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

[ruby-list:12721]

10 Mar 1999

Page 34: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Matz「Ruby本の原稿で…」

Page 35: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

\まだ書いてる/

Page 36: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

実際の発売1999/10

Page 37: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見最初から

Rubyistの原稿は遅かった

Page 38: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

偉大な著作は偉大な書き出しから始まる

Page 39: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

まえがき

Page 40: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Matz『長女は「お父さん、この本書き終わったらもう書かないでね」と頼んできました』

Page 41: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見著者の家族はやっぱり辛い

Page 42: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「しかし、娘よ、すまない、そのお願いはかなえてあげられないような気

がする……」

Page 43: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見これから生まれる何かへの期待感・

高揚感

Page 44: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

中身へ

Page 45: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

第一章「Rubyとは」

Page 46: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「『プログラミングを楽しくする言語』です」

Page 47: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見最初からブレない「楽しさ」の追求

Page 48: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Rubyに向いていること

の最後

Page 49: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ネットワークプログラム

CGIプログラミング

Page 50: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見最初から「Web世代の言語」を

意識

Page 51: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

向いていないこと

Page 52: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

数万行にもなるプロジェクト

多人数によるプロジェクト

Page 53: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見最初からここまで育つとは思ってな

かった

Page 54: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

第二章「Ruby入門」

Page 55: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

もうだいたい今と同じ

Page 56: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

コラム「なぜ『定数

か』」

Page 57: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「どうしてもクラス変数がほしい時には…定数で代用で

きます」

Page 58: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見クラス変数なんてなかった

Page 59: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

実装はその後の1.6から

2000/9 (7/20歳)

Page 60: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

第六章Rubyオブジェクト指向プログラミ

ング 実践編

Page 61: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Kconv String#jlengthTRUE / FALSE

PStore

Page 62: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見栄枯盛衰

Page 63: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「この言語の性格上商業開発は

あまりない」「顧客 == 開発者」

Page 64: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見やっぱりここまで育つとは(ry)

Page 65: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見初々しいMatz

Page 66: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

第7章応用Rubyプログラミング

Page 67: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「古いバージョン(1.0)よりも

型チェックが厳密になったところが」

Page 68: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

> "aa" + 1#=> "aa1"> nil + 1#=> 1

Page 69: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見Rubyも昔はP○Pだった

Page 70: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

第10章Rubyを取り

巻く世界

Page 71: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

CGI言語ソケットプログラ

ミング関係データベース

Page 72: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ここにもWeb言語としての芽があった

Page 73: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

「ruby-listの参加者は506名、ruby-devの参加者は135名」「Rubyユーザー

コミュニティはRubyの最大の資産」

Page 74: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見コミュニティ重視は昔から

Page 75: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

10.7Rubyの未来(最後の節)

Page 76: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ライブラリドキュメント

キラーアプリケーション海外進出

Page 77: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ライブラリ → それGemがドキュメント → それRDocがキラーアプリケーション → それRails&Webアプリが海外進出 → それPragmaticProgrammerが

Page 78: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見「未来」に必要だったものが今ある!

Page 79: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

最後にまえがきの

最初に戻って

Page 80: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

Matz「コンピュータに触れたはじめのころから

自分のプログラミング言語を作ることは私の夢でした」

Page 81: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

発見私達は今、まつもとさんの夢のなかに生きている

Page 82: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

ありがとうまつもとさん、

石塚さん!

Page 83: Ruby本から読み解くRuby考古学 - Ruby Archaeology from the Ruby Book

  ̄ ̄ ̄ ̄ ̄ ̄○ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄           O 。                 , ─ヽ________    /,/\ヾ\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|__|__|__|_   __((´∀`\ )< という夢だったのサ|_|__|__|__ /ノへゝ/'''  )ヽ  \_______||__|        | | \´-`) / 丿/|_|_| 从.从从  | \__ ̄ ̄⊂|丿/|__|| 从人人从. | /\__/::::::||||_|_|///ヽヾ\  /   ::::::::::::ゝ/||────────(~~ヽ::::::::::::|/        = 完 =