見出し画像

型理論はフェルミ推定や論理的思考より仕事に役立つからみんな学ぼう

前回のあらすじ

投下する労働や使う材料など仕事に必要なものを厳選して入力制限する必要性に関することを前回では書きました。と一旦まとめます。クソ堅苦しいですな。
型理論を仕事に使う最大のメリットは入力制限をするためにはまず何が必要かを考えることができます。簡単にいうと業務フローが分かって来ます。本当に必要なものが分かるためにはその後の処理に何が必要か、またどんな処理が必要かが分かる必要があります。必要な処理、また必要なものをリストアップして整理することは業務フローをまとめることと同義になります。

今回は抽象化と業務フロー

上の本はものすごく高いですが、高いなりの内容が詰まっています。まぁ買ってびっくり院生が対象らしくかなり読み進めるのが難しい。
ただ最初の方の章だけでも知見に富んだ内容です。
タイトルである型システムとは何か?型システムとはラッセルの発明した型理論が発展させリニューアルしたものです。

上の本にありましたが、型システムの恩恵の一つとして抽象化があるようです。ソフトウェア開発の現場だとプログラミングの規律が強化されるとのこと。他の業界で例えるのが難しい概念です。それまで野放図だった業務の内容をいい感じに分割して整理していい感じに業務の段取りや手順を決めることと言えばいいでしょうか。

型システムは大規模システムシステムのコンポーネントをパッケージ化し、つなぎ合わせるモジュール言語の基幹をなす

ベンジャミン・C・ピアス『型システム入門 -プログラミング言語と型の理論-』p26

またもや会社の業務に例えると部署や課、係などに業務を細分化することをパッケージ化と言えばいいのでしょうか。また部署や課、係同士の連携をコンポーネントをつなぎ合わせることと言えそうです。もっと具体的にいうと営業が売り上げてその数字を経理が計上するみたいなことですね。営業部と経理部は同じ会社でありますが別の部署で其々〇〇部としてパッケージしてあります。その上、営業課の成績を営業部自身でなく経理課が計上するという部署同士を連携、つまりつなぎ合わせています。こうして型システムによって業務はこのように抽象化できます。

大きい視点で言えばこのようなところですが、課や係のレベルの業務でも抽象化はできます。業務マニュアルはこのレベルで大体作られてます。
ところでクライアント企業自身が抽象化して業務をまとめることができたら要望定義などが省略でき、ソフトウェア開発はもっと安価になり、今ソフトウェアを導入している企業よりもっと小さい規模の会社でもシステム導入することができるようになるのではと私は予想してます。
今はAIやRPAなどで開発会社を通さず自社で自動化はできる時代なので、大企業など人材に余裕がある会社は余剰人材で自動化を始めたらそれこそIT業界に人材不足の波が来るとかいわれている状況とは反対に人材が余ってくるのではとも考えられます。新卒の就活で本当に優秀な人材が大企業にいっているなら私の予想通りになるでしょう。そうならない時は大企業の新卒採用はあまりうまくいってないのかもしれません。

AIが世間や企業に浸透し始めたら、確実にIT関連は単価が下がっていくでしょう。SIer企業やSES企業は潰れていくかもしれません。しょうがないことです。私みたいな大したスキルもない、学歴もしょぼい人間は生存戦略を見つけないと淘汰される運命を辿りそうです。いや自分のことなのできついことを言いたくないですが、辿りそうではなくて確実に辿ります。

型理論とその後継である型システムを知ることは物事を把握するのに便利なので、フェルミ推定のように問題の要素が何かわからないとできない分析や三段論法くらいしか使い道のない論理的思考より学ぶことをお勧めします。型システムによって抽象化して初めてフェルミ推定は問題に焦点を当てられて、論理的思考で問題を詳細に分析できます。

おわりに

ラッセルやゲーデル、コーエンこの辺りの数学、論理学の歴史はもうちょっと世間に知られるべき。数学のモデルという概念はルールが変われば結論が出せることがあるという高校までの数学では考えられないことを教えてくれます。
実社会で例えると法改正で業界の流れが変わり、今まで儲かる企業も儲けない企業も両方同じくらいみたい状況が明らかに業界全体で盛り上がるようになったみたいなことですかね。
私は体力がないので、ちょっと行動が起こせてないのですが、体力に自信ある方はぜひ型理論学んで、現状を抽象化して構造を暴いてみてください。そうすると無駄なことや良くない流れなどつけ込む隙が見つかると思います。そこをハックして成り上がって欲しいです。多くの人が今の社会を変える力を手にして欲しいと私は願ってます。

次回は、というかまだ書くことがあるのでしばらく間はあけますが、ドキュメント化や安全性について書きたいです。


いいなと思ったら応援しよう!