Upgrade to Pro — share decks privately, control downloads, hide ads and more …

シェルとPerlの使い分け、 そういった思考の道具は、どこから来て、どこへゆくのか?v1.1.0

シェルとPerlの使い分け、 そういった思考の道具は、どこから来て、どこへゆくのか?v1.1.0

YAPC::Hakodate 2024 の発表スライド(v1.1.0、修正版)です。

日時: 2024-10-05 Track A, 10:10-10:50
場所: はこだて未来大学
URL: https://yapcjapan.org/2024hakodate/

スライド本文を40分をLTバリに突き進んでいきました(丁寧にスライド全部を説明するには、たぶん1学期の講義計画が必要です)。士郎政宗「攻殻機動隊」の原作のように、脚注のほうが多いわけですが、大事なことは脚注に書いてあるので、脚注のほうもお楽しみください。

目次:

(1)まえがき: 目次、自己紹介
(2)パートA: Unix上で生活する際の「シェルとPerlの使い分け」は?自分の環境と履歴から分析する
(3)パートB: Unixのパイプとは?
(4)パートC: コンピュータ開発史におけるUnixの立ち位置
(5)パートD: コンピュータ開発史: その観念/妄想は、どこから来たのか?(仮説) + お金の話
(6)パートE: ご飯を食べる手段としてのIT産業の未来
(7)おわりに - Free Software, the Endless Frontier -

CHANGES:
v1.0.1 はTYPOのみ直したもの。
v1.1.0 は文言,欠けているリンクや出典情報の修正など。あとで公開される動画版と見栄えが同じに見えるように、小さな修正だけです。もちろん大意も変わっていません

Ken'ichi Fukamachi

October 08, 2024
Tweet

More Decks by Ken'ichi Fukamachi

Other Decks in Technology

Transcript

  1. Copyright (C) 2021-2024 Ken'ichi Fukamachi, All rights reserved. CC BY-NC-SA

    4.0. We appreciate AWS Academy Japan for the offer of the learning environment. 目次 まえがき (今ここ): 目次、自己紹介 パートA: Unix上で生活する際の「シェルとPerlの使い分け」は?自分の環境と履歴から分析する パートB: Unixのパイプとは? パートC: コンピュータ開発史におけるUnixの立ち位置 パートD: コンピュータ開発史: その観念/妄想は、どこから来たのか?(仮説) + お金の話 パートE: ご飯を食べる手段としてのIT産業の未来 おわりに - Free Software, the Endless Frontier - (脚注1) 攻殻機動隊の原書なみの脚注の嵐ですが、 脚注は飛ばしていきます。 あとで質問なり、 twitterにメモってくれれば後日に... (脚注2) つまり脚注がB面(ふるっ)ですね、B面だけ読んでるほうが面白いですね〜とか言われたら、それはそれでも勝利な気がします 2/49
  2. [経歴] フリーソフトウエア(== Perl 歴), >30年, >20万行? github 本来の専門は理論物理学です が、インターネットの方が楽 しい(業界あるあるですね?)

    東京工業大学 -> IIJ(日本初ISP) -> (私立)千歳科学技術大学 -> 公立千歳科学技術大学 環境: NetBSD, Debian, Chromebook 写真(上) 学食からの風景: ほぼ滑走路端 のレストラン。 写真(下) 左端が大学、 工場(EPSON)の上に建設中の半導体工場 (Rapidus)工事のクレーンが見えてます 地図(中央上あたりが大学,左が新千歳空 港,右中でRapidusの半導体工場建設中) 自己紹介: このあたりからやってきました (脚注1) 推しのアニメ製作会社は富山県のP.A.Worksです。 年末に送られてくるBD「駒田蒸留所へようこそ」が楽しみ〜 (脚注2) 専門は 温泉ですよね?とか言われたりしますが(w)まぁいいけど (脚注3) 図(右)(C) OpenStreeMap, available under the Open Database License. 4/49
  3. 凡例 twitter モニタリングしてましたが … アカデミックな話なんて、しないですよ?;-) はこだて未来大学が舞台なんだから「未来」について〜 -> 待ってました!よろこんで!10年に1人くらいしか喜んで聞いてくれないやつを -> (中盤からは)技術史のお話へ参りたい所存です

    とりあえず、他の人がしなさそうな話ではあるはずです ご要望に応えられているのかイマイチわかりませんが… 後半の Part C 〜 Eは、半分お金の話です また、他のセミナーの伏線/宿題の回収をさせてもらっています パートDは LPI Webinar (2024-06-08)のスライド58-59頁で出題/投げっぱなしした話題の解答を兼ね ています。 もっとも時間が足らないので、やはりどこか別のところで回収が必要ですが… (脚注) でも、勢いよく書いていたら枚数が:-) ... 3枚ずつ飛ばすくらいの勢いで頑張ります 5/49
  4. 1. 自分の好きなUnixとPerl 2. 個人的な使い分けルール(マイルール) 3. 実際、どうなのか?過去23年分の履歴で検証 Part A: シェルとPerlの使い分け (脚注1)

    過去25年以上、ホームディレクトリはCVSで管理され、全Unixマシンで共通。 なぜかNEWS-OSやBSD/OSにも対応している設定 ファイル群という秘伝のタレ状態(w)。 2001年7月からのlogout時のコマンド履歴群があります (脚注2) .sh対.plの開発速度は未評価。書くそばからcommitするクセはないのでCVS logからの推定は無意味 (脚注3) 今回、最初の15分でシェルで分析するのをあきらめた(w)。ざっとした分析はシェルでもできますけどね... 6/49
  5. 自分の好きなUnixとPerl コマンドライン操作 コマンド履歴を保存・確認できる 保存した履歴をクリーニングして、何度も使えるスクリプトとしてまとめられる スクリプトが長くなりそ〜ならPerl化する(詳細は2ページ後) これが、自分の好きなunix (脚注1) 良いとか悪いとかいうと揉めるし、客観性がないので、そこは回避して、 自分の好きなところを語っています (脚注2)

    コマンド ひとつひとつはGUIアプリのメニューと同じと言えますね。 そして一度しか実行しない仕事ならCUIでもGUIでもよい。反復性が大事 (脚注3) 好きなPerlは4.019とか(古っ)(w)当時は、本などなかったのでソースコードと近藤さんが訳してくれた4.019のマニュアルで勉強 しました。 プログラミング言語版の中二病理論(?)というのがあるのではないかと思う今日この頃です。検証したいですねぇ。 ちなみ に中二病理論とは「いちばん好きな/影響を受けたアニメや漫画は中学時代に見たもの」という仮説です 7/49
  6. 使い方のマイルールあります、このあと確認してみましょう 25年前のPerl Conference Japan第1回(1998)でも似たような話をしました マイルールを守れているのでしょうか? 今回、これを検証してみました (脚注1) https://www.oreilly.co.jp/pcjp98/; 日時: 1998年11月11-12日、

    場所: パークハイアット東京(新宿)。 そうそう、これの思い出話「ア ニ(ぴ〜)新宿店で娘のお土産を買ってほくほくのLarry Wall」とか qiitaにでも書こうと思っていたのですが、 2024年秋はPCを触れない 事情があって書けませんでした。時期を逸したから、もういいですかねぇ、、、なんなら夜きいてください(ぇ?) (脚注2)パークハイアット東京は、 Lost in Translation (2003, 監督S.Coppola,主演: B.Murray, S.Johansson)のロケ地の一つです (脚注3) 5年後には、パークハイアット札幌が出来るらしいですね?ぜひLarry Wallを... :-) 8/49
  7. 例:分析を始めて … 15分でシェルをあきらめた様子 12:55 cat 履歴ファイル 12:55 cat 履歴ファイル |

    argv | sort | uniq -c | sort -n 12:56 cat 履歴ファイル | argv | sort | uniq -c | sort -n | tail 12:57 cat 履歴ファイル | egrep '\(' 12:57 cat 履歴ファイル | sed 's/\( cd/cd /' | argv | sort | uniq -c | sort -n | tail 12:57 cat 履歴ファイル | sed 's/( cd/cd /' | argv | sort | uniq -c | sort -n | tail 12:58 cat 履歴ファイル | sed 's/( cd/cd /' | argv | sort | uniq -c | sort -n | tail -20 12:58 cat 履歴ファイル | sed 's/( cd/cd /' | argv | sort | uniq -c | sort -n | tee /tmp/h 12:59 tail -30 /tmp/h | cat -n 13:00 cat 履歴ファイル | wc (... 上の30行分を見て考え中 ...) 13:09 tail -50 /tmp/h | less (... あきらめて真面目にPerlで正規化するコマンドを書こう ...) (脚注1) ほぼ同じ文字列が続きますが、これはtcshで前の行を呼び出し、編集、実行しています。 まるまる再入力ではありません (脚注2) 英語の慣用句みたいなものなので、このての定番フレーズは、脊髄反射で(考えずに)キーを打っています 10/49
  8. コマンド履歴の分析 ls pwd cd make fg scan sh シェルスクリプト jobs

    exit less sync cvs mv cat grep ng ( find シェルスクリプト w3m シェルスクリプト ssh inc du シェルスクリプト df perl date echo ベスト30のコマンド群 実はperlスクリプトはありませんでした(ベスト50にもない) 5W1H (今どこにいる?を確認する)系コマンドがベスト3なのは正しいですね make が4位なのは、何でもルールをMakefileに書いて実行するようにしているから 左括弧 ( つまりサブシェルの実行も多い(サブシェルの中身も分割してカウントしています) シェルスクリプトが4つ登場、いずれも短め スイッチ用(環境やバージョンを見て起動するパスを変更)    メール用(定番の作業のスクリプト化) (脚注) ベスト100なら前頁に登場するargvというperl scriptが登場してきます。 毎回perl -nple split ..と書くのが面倒という理由で作られ た十数行のperlです。 自分専用なのでコメントもないしオプション順の指定アリなど適当。 例: argv -2 (二列目)、argv -s , (対CSV) 11/49
  9. Part B: Unixのパイプとは? (脚注1) M.D.McIlroy(マキルロイ;大文字のI、小文字のlです。Mike charlie India lima romeo oscar

    yankee)が発案者ということで歴史的証言 は一致しているようです。 チームマネージャMcIlroyの「Unixにパイプを実装したい」という要望に根負けし、 ある晩えいやっと K.Thompsonが実装したと伝承されています。 ただしパイプに | という文字を使うようになるのは、その少し後のことだそうです (脚注2) M.D.McIlroy (1932-): 90歳超ですが、現在でもダートマス大学の非常勤やっているらしい(?少なくとも2019年まではYes)。 ベル研のUnix開発チーム陣の中では少し年上で一応このチームのマネージャだったようです。 なお、もうひとりのリーダ格(McIIroyよ り4歳ほど年上)が組版システムをやっていたこともあるJ. Ossannaで、 組版システムを研究する建前で(Unix開発用)DEC PDP-11を調達し た偉い先輩 (70年代末にOssannaは心臓病で若くして亡くなりました)。 成果物のroff一族は今でもmanの裏側で使われています 14/49
  10. // Unix Command Line Interface cat list.tsv | sort |

    uniq // Perl ? $list->sort->uniq(); print $list; // JavaScript メソッドチェーン ? var result = list.sort().unique(); console.log(result); ところで、Unixのパイプ(|)とは何か? 15/49
  11. どこからパイプという発想は来たのか? Unix史ではMcIlroyのメモ(1964)が有名ですが、似たような発想は平行進化していたよう です。 Unixで | を使うシンプルな表現が登場したことで、 この概念が、システムの操 作や構築、プログラミングで、いかに強力か? が再認識されたというところでしょう (脚注1)

    RitchieによるUnixの歴史解説があります[Ritchie 1984b]。 Bell研発行の雑誌のUnix特集第2弾にのっていた記事が大元です。 Dartmouth Time-Sharing System (DTSS)が似たような仕組みを持っていたことにも触れています。 (脚注2) 最近、 (このパイプの縁があったからか?)DartmouthにいるMcIlroy自身がDTSSのパイプ似の技術についてまとめています [McIloy 2017]。 McIlroyによればDTSSのパイプの初出は1967年らしいです。 1964年には、McIlroyがパイプの発想を持っていたことが分かってい るし、 当時McIloyはDTSSの件は知らなかったらしいので、平行進化の例なのだと思います。 DTSS側は (何かのプレゼン資料らしき物? [DTSS n.d.]で) Unixのパイプの源流はDTSSと書いていますが、それは間違いらしいということになります [Ritchie 1984b] http://cm.bell-labs.com/who/dmr/hist.html [McIloy 2017] https://www.cs.dartmouth.edu/~doug/DTSS/commfiles.pdf [DTSS n.d.] http://www.cs.rit.edu/~swm/history/DTSS.doc 16/49
  12. 科学技術史のあるある ほぼ同じ時期に、同じことを提唱・発見することはよくあります 最後の一押しをした人 or 突破口を開いた人だけが歴史書に登場しがちですけど 非合理な要素 例: コペルニクスと太陽信仰 (脚注1) 長い先人の履歴があり、同じ技術が使えるなら、同じような時期に、同じ発見が行われても不思議はないでしょう。

    特に測定装 置をはじめとして物理的な実体がある分野では、時期が揃う傾向にあるでしょう (脚注2) 紙と鉛筆だけの場合、まれに、どこからか思考過程がよくわからない天才が現れたりします。 もっとも物理の場合そんなのな いような気がしますが、 数学だと、ラマヌジャンは、そのタイプですよね? 17/49
  13. どこからパイプは来たのか?仮説2: 1950年代の事情 (SKIP) Unixどころかタイムシェアリングシステム以前の話をしますが:-) McIlroyが学生の頃は紙テープかパンチカードを使っていたと思います カードの束(= 関数 = Unixコマンド); これ(束=関数)はみんなが作った便利な束がいろいろあったはず

    カードの束というコンポーネントを入れ替えるのも自由だし、 つなぎたいときは束が横に並んだでしょ うし (ただし、そららをつなぐためのmain束が最初か最後に必要でしょうけど) 写真: https://www.ibm.com/blogs/systems/jp-ja/dream_punchedcard/ (脚注) 時間もないし、いまいち説得力がない気がするので、このスライドは飛ばしましょう 20/49
  14. Part C: コンピュータ開発史におけるUnixの立ち位置 名前 開発元 ライセンス取得 備考 Unix ベル研 必要

    オリジナル Unix System V AT&T 必要 商用 BSD Unix バークレイ 必要 ARPA IPTOの案件(TCP/IPを実装したUnix) 4.4 BSD バークレイ 不要 AT&Tのコードを使わないUnixを作る +コミュニティ    バークレイ + 有志のコードのみ GNU OS コミュニティ 不要 R.M.Stallman、GNU、FSF、未完成 Linuxユーザランドの多くがGNU由来 表: Unixファミリーの大系統(1970-1980年代,アメリカ) (脚注1) ヨーロッパの話(MINIX)は含んでいません。 (脚注2) MINIXリスペクトのフルスクラッチソフトウエアがLinux(カーネル)にあたりますが、それは1990年代のフィンランドの話 (脚注3) 上の3つはオリジナルUnixの発展版にあたるのでライセンスが必要です。 4.3BSDまでと4.4は別物です。 すでに4.4BSDがオリジ ナルUnixと無関係という建前なわけですが、 4.4がなければUnix直系に近いUnixの系統は1990年代に消え去っていたでしょう 21/49
  15. 1970年代の(オリジナル)Unixの特徴 ミニコン(最先端の激安ハードウエア)が前提 -> 潜在的なユーザ数の多さ (脚注1) それでも、ミニコンで、一通りのものが動く凄さ マニュアル完備 (リーダ/マネージャMcIloyのこだわり) B.Kernighan …

    数々の名著で知られる名解説者、今風に言えばエバンジェリストがいた 親会社AT&Tの特殊な立ち位置(電話という半国営通信インフラ事業)からくる制限 (脚注2) 異様な安さのライセンス費用でソースコードごと入手可(教育機関おおよろこび) AT&Tへの反感は、むしろユーザの結束を固めた -> (広く点在した)コミュニティの形成 仕事でもないのに親身にサポートしてくれる作者たち(おもにKen Thompson) (脚注1) ベル研は民間企業ですし、違う名目で何とか開発機材を買ってもらえました(J.Ossannaの功績)、 それでも2000-3000万円はし たはず。 この価格はARPA IPTOの本命プランAであるMITのMulticsプロジェクトの1/100, プランBのProject GENIE (バークレイ)の1/10 (脚注2) フリーソフトウエアとの関係で、よく語られるのは、この部分ですね (脚注3) このチーム編成は偶然の産物だと思うのですけれど... (脚注4) いずれにせよ、ミニコンが手に入り安くなったということは、同 じような規模感のOSの研究は他でも出来たわけで、かつては研究OSなるものがいくつもあったはずです。 でもUnixだけが生き残った (正確にはオリジナルUnixの系統は滅びたも同然で、Unixクローンたちが生き延びている)わけです。 ある臨界点を超える大きさのコミ ュニティの形成に偶然成功した唯一の研究用OSという説明で納得してもらえそうですかね? 22/49
  16. Unixの立ち位置 あくまでも民間企業の研究開発 社内に仮想顧客はいたのですが、 本業(電話事業)に反 映させるつもりはなかったはず (ARPAにくらべ桁ちがいに)少ない予算 開発史の上では、少しハズレた位置 その結果、右図のように、ある種スキマをぬう位置づ けだと考えるのですが、 結果としては、それが功を奏

    したと思います 右図は次頁以降のPart Dで少しだけ説明します (すいません、丁寧にやると一週間くらい集中講義し ていいですか?くらいの事故になりそう…) (脚注) ハズレた位置になるのは、上図が、巨額の助成金や政治経済史を主眼に書かれているせいでもあります 23/49
  17. Unix史をふりかえって Part Cを振り返る時、私は次の2つの要素を最重要と考えています 1. お金の話 2. 実用性 or 現実的な必要性 (とくに技術の側面で)

    かつてコンピュータが、 いかに高かったか、 1960年代以降、 とてつもない速度でコストパフォーマンス が改善していったことを忘れてはなりません 次ページ以降で具体的なデータを検討してみましょう 科学技術史のところで紹介したように、すべてが合理的・実用的とは限りません 何かに取り付かれている、狂気のようなものが重要なこともある Unix史では、そんなには出てきませんが … 26/49
  18. いかにコンピュータが高価だったかを振り返る(1) 種類 会社 製品名 価格(ドル) 現在換算価格(円) 換算時の想定年 備考 ミニコン DEC

    PDP-1 15万 2億 1961 メインフレーム IBM AN/FSQ-7 2000万 255億 1963 (脚注1) メインフレーム IBM 7094 250万 32億 1963 ミニコン Honeywell DDP-516 8万 8500万 1969 (脚注2) ミニコン BBN IMP 25万 2.66億 1969 (脚注3) ミニコン DEC PDP-11/20 10800 1087万 1970 (脚注4) ミニコン DEC PDP-11 3万 3020万 1970 (脚注5) 部品 MITS altair 8800 397 31万 1974 (脚注6) PC Apple Apple II 1298 74万 1977 (脚注7) PC NEC PC-8001 16.8万 1979 (脚注8) WS SUN Sun-4/110S 16950 560万 1988 (脚注9) ノートPC 日本IBM Thinkpad 220 24.8万 1993 (脚注10) 出典と脚注は次ページを参照 27/49
  19. いかにコンピュータが高価だったかを振り返る(2) 前ページの表は[深町 2024a]の付録を一部削除・改変したもの (脚注1)SAGEで使われた機材[IBM 1963] (脚注2)IMP(最初のルータ)の改造元仕入れ価格 (脚注3)ARPAとの契約は4台で100万ドル (脚注4)最小構成 (脚注5)周辺機器こみで3万ドルと仮定 (脚注6)自作キット[Levy

    1984] (脚注7)[Levy 1984] (脚注8)当時の定価 [後藤 2006] (脚注9)[SUN 1988] (脚注10)当時の定価 [IMPRESS 2002] [深町 2024a] 深町賢一,「フリーソフトウエア運動の40年(1)」公立千歳科学技術大学紀要,5(1),49-63 (2024) [IBM 1963] "SAGE", IBM Heritage, https://www.ibm.com/history/sage (accessed 2024-03-10) [Levy 1984] Steven Levy, "Hackers: Heroes of the Computer Revolution" (Anchor Press/Doubleday, 1984) [後藤 2006] 後藤富雄, "日本PC事始 その2 デバイス屋が創ったNECのパーソナルコンピュータ「PC-8001」", SSIS News Letter "ENCORE" No.45, https://www.ssis.or.jp/ssis/pdf/ENCORE45.pdf#page=14 (accessed 2024-03-06) [IMPRESS 2002] https://web.archive.org/web/20081206060853/http://www.watch.impress.co.jp/pc/docs/2002/1101/tp12.htm (accessed 2024-03-06) 28/49
  20. いかにコンピュータが高価だったかを振り返る(3) コンピュータは、とてつもなく高価でした コンピュータの研究開発には先だつ物それも巨額のお金が必要でした (脚注1,2) 巨額の助成金が注ぎこまれた分野が先に台頭したわけです (脚注3) タイムシェアリングシステム/コンピュータグラフィックス/人工知能 タイムシェアリングシステムの派生物としてコンピュータネットワーク (脚注1) デジタルコンピュータ開発史の初期は、

    MITの話のオンパレードですが、 それは第2次世界大戦以来の軍産学複合体というフレ ームワークに載っているからです。 大学の研究開発といっても実用的な案件です。近未来に実装・納品しなければなりません (脚注2) 【重要】必要性が優先事項のはずで、その分野に巨額の助成金が注ぎこまれることになりました。 ARPA IPTOのリーダは、ほぼ MIT関係者のため、この流れは当然ARPAに引き継がれました (脚注3) コンピュータが急激に低価格化していくので、後発でも台頭した分野はあるでしょう 29/49
  21. いかにコンピュータが速くなったか?(1) MULTICORE 1CORE(v4) 1CORE(v5) — SYSTEM or SERVICE — —

    VERSION — COMMENTS 11677.7 1928.4 MINISFORUM-HM90 Ubuntu/amd64 22.04 amd(8C/16T) 5606.6 1100.4 PRIMERGY_RX300S6 Debian/amd64 10.10 Xeon(8C/16T) 2338.4 783.6 Chromebook_CM3200FM1A Debian/aarch64 11.5 2252.5 1020.9 ThinkPad_X201_i5-520M_SSD Debian/amd64 10.10 i5(2C/4T) 2143.3 909.6 SAKURA_VPS_V3_2G_1480JPY Debian/amd64 10.8 3コア 838.7 706.5 NEC_S70_RB_G6950_1Tx2 NetBSD/i386 7.0 家庭向け 550.8 NEC_i110Ra-1h_PenM_1.73G NetBSD/i386 5.2 272.1 NEC_110Ge_Celeron_1.8G_1Tx1 NetBSD/i386 5.0 178.0 HP_lp1000r_P3_1.266G NetBSD/i386 9.1 P-3 7.1 SS20 NetBSD/sparc 1.4.1 6.7 alpha_200 NetBSD/alpha 1.3.3 2.1 SONY_NeWS_3470D NetBSD/newsmips 1.3 0.3 ThinkPad_220 NetBSD/i386 1.4.1 30/49
  22. いかにコンピュータが速くなったか?(2) 前ページは、過去35年分くらいの機材のベンチマーク実測値からの抜粋です 完全版は、こちら -> https://technotes.fml.org/tech/benchmark/unixbench/ すいませんが、表の読み方は、このURLを参照してください すべて、自分で実際に持っているか、使う機会のあった機材の実測値です。 そのためベンダー等は網 羅できていません。 でも各時代の機材の速度の参考になるとは思います

    1980年代後半、Perl 1.0(1987)のころのUnix環境は、前ページの表の一番下の方くらいです。 表の一番下の方にある SUN SS20 のベンチマーク値がPerl 1.0の頃のサーバに近いと思います あいにく、それ以前のハードウエアは実測できませんが … どこかでCTSSがVAXくらいの速度という情報を見たことがあります(参照先はlost) みなさんのお手元のPCは半世紀前の数百倍速く、4桁くらい安い(20万 vs 20億)です (脚注1) ベンチマークツールはbytebenchです。 むかし、雑誌Byteで紹介され、その後40年あまり使われ続けられているUnix用のベンチ マークです。 もともとはシェルスクリプトでしたが、今のbytebenchはPerlで書き直されたものです。 この結果をまとめた表を、 各欄 ごとにソートできるように作り直そうと思っていたのですが間に合いませんでした。 そのうちやっときます (脚注2) よかったら、こちらもどうぞ: この30年でコンピュータはどれだけ速くなったのか? (qiita advent calender 2022) 31/49
  23. コンピュータのコストパフォーマンスとシリコンバレーの勃興 1950末〜1970年代のコンピュータのコストパフォーマンスの改善はスゴいです ミサイルとアポロ計画という政治ショーの果たした役割は大きいのです いつのまにかコンピュータがブレイクしていたわけではありません 1967年まで、シリコンバレーの売上の過半数はアメリカ軍からのものでした(脚注3) [Kenney 2000] Martin Kenney ed.,

    "Understanding Silicon Valley: The Anatomy of an Entrepreneurial Region" (Stanford Business Books, 2000) (脚注1) どうも(日本だけでなく)洋の東西をとわず軍の関与といった話は敬遠されがちのようですが、 発注額は事実なのだから無視して はいけません (脚注2) 速度は少しずつ改善されていますが、それよりも価格が猛烈な勢いで下がっていきます。 逆に、1990年代になる と、価格の下がり方は鈍くなり、価格対速度の上昇になっていくとという印象です (脚注3) このために、高度なIC(のちにLSI)製造と大量 生産技術の開発が進み、結果として、 (速度やメモリ量を問わなければ) 10年程度で価格が1/100のミニコンが登場するまでになったと考 えられます。 そして1970年代なかばには、ついに(すこし頑張れば)個人でコンピュータを所有できる時代になります 32/49
  24. 100年スケールの思想史 右図(1945以降)の大きな矢印について (A) 軍産学複合体の系譜 例: ARPA IPTOは、そのスピンオフ(脚注1) (B) 真ん中はNSFで、平時研究の助成の系譜 (C)

    夢を追う系譜(脚注2) (脚注1) ARPA IPTOという存在自体は(A)より(B)NSF寄りと考えるべきという印象です。 ただし、初期の20年あまりのディレクタ選がMIT の軍産学複合体案件と関係が深く、 関心のあるテーマが(A)の系譜っぽいため、図では右寄りになっています (脚注2) (C)の初期典型例がD. Engelbartになります。 MEMEXの夢を追うEngelbartは理解されず、 たいした助成は得られませんでした。 ARPA IPTOの初代ディレクタJ.C.R.Lickliderなら分かってくれると思い、IPTOに提案したものの、 思ったほど助成してはもらえませんで した。 NASAのころからEngelbartを助成してくれていたR.TaylorがARPA IPTO第3代ディレクタになったことで事態は大きく進展し、 1968年末の有名な「 すべてのデモの母 」で未来のビジョンをデモできるところまでプロジェクトは進展しました 33/49
  25. Vannevar Bush (1890-1974) MIT時代 Differential Analyzer (微分解析器; Bush式 アナログコンピュータ) 実際の動作を見ないと分かりづらいですが、

    左右で回る円盤からの計算量を数百倍に増幅 して中央に回すところがミソです 増幅手段は1920年代当時の最新技術らしいで すが、 発想は大学生の頃に特許をとった土 地を測量する押し車(Profile Tracer)と同様 先祖は船乗りですが、 父親はUniversalimの 牧師で積極的に地域社会と関わっていく町の 名士でした。 この血筋の究極形に思えます (脚注1) 写真は https://www.computerhistory.org/revolution/analog-computers/3/143/312 より。 写真中の人物はV.Bush本人 今年は、ちょうどBush没後50年です。 Bushについては、 拙著のqiita記事 も参照してください (脚注2) 東京理科大学に復元したBush式アナログコンピュータがあります。 昔、神楽坂にありましたが、2019年に野田キャンパスに移 されました。 (偶然ですが) 和田先生(Happy Hacking Keyboardや和田研フォント)の解説付きで実演を見せてもらったことがあります 34/49
  26. テクノクラートのトップ(図の(A)(B)) 第2次世界大戦という科学技術の戦いの立役 者がV.Bushでした。 累計6000人の(エリー ト)科学者を動員し、 マンハッタン計画やレ ーダー技術の開発が行われました 質より量といった言い回しがありますが、 (ある程度質が高い)量は、とほうもない質に 変わることを大戦中に実感したようです

    戦後も軍産学複合体はアレコレ盛んなわけで すが、 平時研究の支援をするNSF(全米科学 財団)構想もBushの報告書が原点と言われて います[Bush 1945b] “As We May Think”(1945)[Bush 1945a] 知識人層への啓蒙活動の側面(図の(C)) Memex(Memory Extenderの略)=WWWの御 先祖様が登場する有名なエッセイで、 D.Engelbart, T.Nelson, A.Keyをはじめ多数の 人が影響を受けました。 Memex初出は大恐 慌時代のMIT同窓会誌(1933);そもそもSF仕立 Memexは単なる例として出しただけで 「戦 時研究を終えることが出来るので科学(の平 時研究)というフロンティアの開拓へ戻ろ う」 と主張するエッセイに読めるのです が、 多くの人はMemexにとりつかれました Vannevar Bush (1890-1974)と巨大科学助成そしてMEMEX [Bush 1945a] Vannevar Bush, "As We May Think." The Atlantic Monthly, Vol.176, No.1, p.641-649 (The Atlantic, 1945) [Bush 1945b] Vannevar Bush, "Science, the Endless Frontier" (Princeton Univ Pr, 2021) 35/49
  27. 【実用】人間とコンピュータの共生【軍産学複合体案件】 空軍のオペレータ(もちろんコンピュー タ素人)たちに、これを使わせたい (人間 とコンピュータの共生関係の模索?) 必要な開発案件(含スピンオフ)とは何か? 対話的なコンピュータ コンピュータグラフィックス そもそもどのように人間は考えているのか? (人工知能)

    (あとで個別案件から一般化して考える ことを試みしましょう) (脚注) 写真は SAGE を使っているオペレータの様子[IBM 1963]。 北アメリカ防空システムで、 レーダサイトの情報を集約して表示して います。 汎用ではありませんが、マルチユーザで、リアルタイムOSのようなものが動いています。 オペレータはライトガンで敵機の 迎撃命令を出せるという今見てもモダンなシステムです。 ちなみに、MITに寄贈された、このシステムのプロトタイプ(レーダコンソー ル付き)は、 MITのハッカーたちによってゲーム機にされてしまいました。 それが歴史上最初のテレビゲームと言われるSPACE WAR 36/49
  28. 【夢or妄想】人間の拡張もしくは増幅が出来るという観念 Bushのエッセイ”As We May Think”の Memex (Memory Extender)はキャッチー でしょう。 この単語のイメージだけで十

    分ひきづられるのかもしれませんが、 こ のエッセイのどこに惹きつけられるの か、よく分かりません 多くの人が影響を受けた文章なので、 狂 気を惹きつけるというか、焚き付ける何 かを、このエッセイは持っているという ことでしょうか … 37/49
  29. 250年スケールの思想史 人間の思考を拡張する道具(仮説) 「人間の(思考 or 行動?の)拡張」とは何か? アナログコンピュータは増幅がキモ 道具による増幅ができるのであれば、 道具 を使うという=行動=思考なので、 道具は思

    考の拡張も出来るはずという発想が(アメリ カ思想の王道として)ありうると思うのです そういう思考傾向の伝統があるとおもいます が、 “As We May Think”から直接は読み取れない と思います。 どこで、 D.Engelbartは取り付かれ たのか? (a)”As We May Think”をデジタルコンピ ュータで実現しようという夢 (b)(のちには)人間 の拡張(AUGMENTATION) まだまだ、いろいろ、考えたいところではありますが、とりあえず仮説を提出してみた。 先を急ぐので、これだけ 38/49
  30. Part E: ご飯を食べる手段としてのIT産業の未来 グローバリゼーション 移動とコピーコスト IT産業の要諦 参考資料(若い人向けのキャリア論) LPI Webinarの資料(動画 51:35-,

    スライド p.51-) qiita: 長くエンジニアを続けたいなら… qiita: 機械学習を超えて… (脚注) 図の左端には、政治・経済まわりの出来事が書いてあります 39/49
  31. コンテナ革命(dockerではなく輸送の方のコンテナ) コンテナ(システム)の確立でしょう 現代的なグローバリゼーションが確立し、移動コストが劇的に安くなりました これがなかったら、PCやスマートフォンがここまで低価格化しかなったでしょう コンテナがなくともインターネットは登場したと思います でも、インターネットなんてコンテナにくらべれば大した影響は与えてないように 思います [Levinson 2008] Marc

    Levinson, "The Box: How the Shipping Container Made the World Smaller and The World Economy Bigger", (Princeton University Press, 2008) [Levinson 2020] Marc Levinson, "Outside the Box: How Globalization Changed from Moving Stuff to Spreading Ideas" (Princeton University Press, 2020); 邦訳: マルク・レヴィンソン(著), 田辺希久子(訳), "物流の世界史 グローバル化の主役は、どのように「モノ」から「情報」 になったのか?", (ダイヤモンド社, 2022) (脚注) 日本の高度経済成長は、もっとずっと遅かっただろうし、ニトリ、ユニクロ、100円ショップは無かったかもしれません 41/49
  32. コピーコスト0円はIT業界の要諦 インターネット上のデジタルデータのコピーコストも異様に安いです、いや本質的に0 円と言ってよいでしょう (脚注1) 世の中には0円ビジネスとでも言うべきジャンルもありますが[Anderson 2009] コピーコスト0円はIT産業の要諦です [Anderson 2009] Chris

    Anderson, "Free: The Future of a Radical Price " (Hyperion, 2009) (脚注1) 正確には、電気代+PCの原価償却費用+インターネットを利用するための費用でしょう。 もっとも、定額のものについては、 人間、費用を気にしないらしいので、インターネットは無料の気がしているはずです (脚注2) コピーコストの歴史は、まとめられてないので、2、3参考情報を書いておきます。 いまどき白黒数十頁を100冊印刷すると1 冊300円くらいです。 写本については、よくわかりません。 プラトンのどこかに 「有名なソフィストの本をソクラテスが1ドラグマで 買ったことがある」 という逸話が出てきます。 また、本の長さも分からないですが、 プラトンのソクラテス対話篇を手本とすれば、 岩波文庫で50頁前後のようです。 職人の日給が1ドラグマ説を採用すると、 写本時代には、この薄い文庫本が2万円くらい 42/49
  33. IT産業の要諦 パッケージビジネス(いまはサブスクリプション)は正義 いちど作成したら世界中に売りさばく。 コピー代は0円なので、初期費用(開発費)の回収後の利益 はうなぎ上り。 実はソフトウエアだけでなく半導体でも同様です。 半導体は初期投資こそ巨額です が、一度まわりはじめたら急速に丸儲けの状態になります そうでないと高給の開発者を雇っていけないでしょう パッケージに業務フローを合わせれば、ユーザには大きなメリットがあります

    世界中でデバッグしてもらえている信頼性の高そうなソフトウエアを安価に利用できる 資本主義なので、この「安価」というところは疑わしいですが … 100%合うとは限らないのでパッケージを少しだけ改修する仕事があるでしょう (脚注1) この使い方をするという決断が出来ない企業は、余計なお金を払いまくっているわけです。 むしろ、その会社の行く末は(ぴ〜) (脚注2) 本来DXがホゲタラポンとか言う前にやることなんですよね 43/49
  34. おや、これはどこかで見たことがありますぞ…? パッケージビジネス -> GNU に差し替えると? こういう話を昔 Stallman がしていましたよね? 実際キグナスは、じゅうぶん儲かっていたわけです。 少数精鋭なら食べていけると

    いう実例は、1980年代の終わりのころに、すでに前例があったという話 一周して戻ってきました? (脚注) では、最後、フリーソフトウエアの話に戻って終わりにします 44/49
  35. おわりに - Free Software, the Endless Frontier - サイバースペースは論理空間なので文字どおりの Endless

    Frontier で 開拓地と言われても、耕す以前に全部つくっていく必要があるわけです。ところで、作 る?と言うと、量産品?芸術作品? (脚注1) 最初、この「おわりに」のタイトルを講演タイトルにしようと思ったんです:-) スタートレック(1966-1968)? いえ違います。 元ネ タは、 V. Bushが1945年にアメリカ大統領へ提言した報告書[Bush 1945b]。 日本人には"こっぱずかしくて"書けないタイトルですが、 Bushはガチで信じてると思います。 トランセンデンタリズム(前図(250年版)の上の方、エマソンとかソローの話)も参照 45/49
  36. プログラミングはアートなのか?そもそもアートとは? アート(芸術)ってちがいますよね? アートの必要条件 = (女神ムーサに祝福された、内なる)狂気 この説を推したい (脚注1)アートの定義が曖昧ですが、現代的な意味あいということで いわゆる美術品というジャンル? (脚注2)狂気説の初出は不明 (脚注3)手塚治虫「ばるぼら」(1973)は古すぎるかな?

    でも「ばるぼら」は手塚治虫の一番どん底だった頃(ブラックジャックの連載が始 まる直前の作品)なので、 手塚治虫の「ムーサよ、おれのところに来てくれ」と懇願する想いがあふれてると思うのです。 この手のク リエイター論は、ざっくりアマデウス(1984)ものと言えますが、 21世紀なら、やはり羽海野チカ「ハチミツとクローバー」でしょう か。 (ややネタバレですが) 天才肌のキャラが複数でてくるとおもいますが、 はぐちゃんだけが女神ムーサに祝福された内なる衝動の天 才枠ですよね? (脚注4) この10年強の範囲だと 「映像研には手を出すな!」 「映画大好きポンポさん」 「冴えない彼女(ヒロイン)の育 て方」(冴えカノ)あたりの話もしようかと思いましたが濃すぎ、 いや、脱線しすぎです。 冴えカノはオタの夢が詰まりすぎていて、 (特に一般人が見ると)ぱっと見おなか壊しそうな感じですが、 散りばめられたクリエイター論には聞くべきものがあると思うのです 46/49
  37. 自分にとっては、楽しいからおすすめする趣味の陶芸のようなもの 自分(にとってFree Software)には、アート感 or ムーサにささげる感があるのですが … (御飯を食べる話をしてはいませんが)やはり実用性があるものを作りたいものです そういうわけで陶芸ではないかと思うわけです これ違〜う、これ違〜う、これまぁまぁ …

    みたいな (脚注1) 祝!SHIROBAKO放映10周年、みなさん今月はSHIROBAKO(P.A.Worksお仕事シリーズ第2弾)を見ましょう;伏線回収:D テレビ+劇場版をセットで見るのがおすすめです。単品それぞれでは、構成に不満があります (脚注2) ITインフラは法人ビジネスなのですが、 授業で法人ビジネスの説明をするのが大変なのでSHIROBAKOをおすすめしています (脚注3) 仕事をするとは何か?を知るは、 へたなキャリア教育の授業より、 SHIROBAKOもといお仕事シリーズを見ろ!(本気) (脚注3) ITは集団作業だからという意味でもSHIROBAKOのほうがいいですよね、ハチクロじゃない 47/49
  38. 一周まわって趣味に没頭できるようになった幸せな時代か? かつては開発機材やネットワークの調達から考えなければならなかったのですが、 21世紀に物心がつい たみなさんは、低価格のPC、常時接続、(この15年くらいであれば)サーバの調達も容易です。 先人たちに くらべ、みなさんは幸せな時代に生きています 画家として食べていくのは大変だけど、趣味で絵を描く人は常にいますよね? フリーソフトウエアも似 たようなものでしょう。 画家よりアニメータという方がよい気がします(脚注3)

    「インターネットなんて毎日開催のでっかいコミケみたいなもの」なので[深町 2023]、 そこに参加する のは楽しいと思います (同人を卒業して、プロを目指すのか?は、また別の話です。脚注2も参照) [深町 2023] 深町賢一, "草の根のわれわれが伝えたかったインターネットの下位文化 序論",公立千歳科学技術大学紀要,4(1),pp.12-34 (脚注1) 「おまえが職業プログラマじゃないからだろう!」という反論は甘んじて受けますが ... (脚注2) 時間がないので削除した「幸せな時代の問題点」は、こちらを参照 「機械学習を超えて〜」 (qiita) (脚注3) (a)職人芸だし(b)集団作業で画面のすべてをコントロールするメディアがアニメだから、アニメータが近いと思うわけです。 「速くなるには書くしかない、書かないと速くならない、それが出来なくて、この業界を去る人も多い」(大意;詳細はSHIROBAKO 第7 話)。 SHIROBAKOの伏線を回収。 近未来の問題は、そういう時間の余裕がもらえないかもしれないことです。脚注2の記事を参照。 48/49
  39. 我々の思考の道具は、どこから来て、どこへゆくのか 実用上の理由や必要性があるものは、物理的な機材の開発が必要で、これは、それまでの積み重ねの上 にしか作れません 開発費を調達できるか?は時代の流行りすたりに影響を受けるでしょうが、おそかれはやかれ登場し ます。 (流行は)日経コンピュータ1年分とか読めばいいのでは:-) だれかの狂気でドライブされるものは?一般傾向として「ある」とは言えますが「個別の予言」は出来 ません。それは歴史学ではなく占いとかだ 低コストで作れるものは、ある時とつぜん明後日の方向から謎の技術や製品が登場する可能性あり ただし、製品化するには、たいていベンチャーキャピタルから資金調達するでしょうから、

    本当に個 人の狂気では取り合ってもらえないでしょう。 そこそこ有名なSFとかで説明できるネタあたりが有 望ではないですかね?(e.g. 攻殻機動隊?) あとは全然違う分野で一回大金持ちになってから、好きにやるんですかね(e.g. E.Mask?) standaloneなsoftwareはチャンス?でも例がテトリスくらいしか思いつきません… (脚注) 最終回ぽいタイトルで、無理やりのまとめスライド? これでは、おれたたエンド?と言われるかしら(今時おれたた:-) 49/49