とんでもなく危険な作業なら話は別だが、私は物理に殴られる経験は大事だと思っている。
上の写真は木工旋盤で切削した球で、一番小さなものが直径9cm程度、一番大きなものが直径17cm程度だ。材料は小さい方から、ヒノキ、サクラ、ケヤキ。
大きなケヤキの球を削るときは、
- 丸太から材料を取る
- 材料を8角形の筒状に粗加工する
- 木工旋盤に固定して回す
という手順を踏む。
直径17cmなら、元の材料は直径19cm程度の8角柱で、固定するための余裕を見て、長さは25cm程度は欲しい。この大きさのケヤキの塊は持つだけでも重いが、それを回転させるとかなりのエネルギーになる。
球の体積は、
半径 x 半径 x 半径 x 4/3π
だから、半径が2倍になると、体積と重量は8倍になる。
半径が30%増えるだけでも、体積と重量は2.2倍になる。
それが1500回転/分くらいの速さで回るから、旋盤に固定したときに少し芯がズレるだけで、旋盤は暴れ、刃物は弾かれる。
刃物の当て方が雑だと、材料に食ってしまって、材料が旋盤から外れて飛ぶし、刃物を保持する手にも衝撃がくる。
重量は半径の3乗になるという理屈と、物理的な反応から得られる印象はだいぶ違う。
これが物理に殴られるということ。
心も身体も殴られる。
これに比べると、プログラミングは、失敗してもスタックトレースが流れる程度で、身体的には痛くも痒くもない。例外を投げられても怖くないけど、デカい木の塊を投げられると怖い。
プログラミングなら、差分適用ができるが、球を削るときにはそういう考え方は使えない。
プログラミングなら、間違えたら元に戻れるが、球は削り過ぎたら終わりだ。
40年もソフトウェア開発をしてれば、精神的に削られる経験は何度もあるから、プログラミングが楽だとは言い切らない。
どちらが優れてるなどとも思わない。
ただし、散々辛酸を舐めてメンタルが鍛えられ、自由に作りたいものを作れる今では、プログラミングはすごく楽。球を3時間を削るのと、プログラミングを10時間やるのでは、プログラミング10時間の方が圧倒的に楽だ。
ちなみに私は勤め人だった頃、協力会社の作業でデータベースのインデックスが損傷して業務が止まったときに、担当者だったというだけで、顧客からは、600億円の損害をどうしてくれると詰められ、上司や同僚に逃げられ、すべての責任を押し付けられて一人で対応することになり、毎日、顧客と顧客の情シスに嫌味を言われて、死にたいと思ったことがある。障害が起きたときに、対処方法を提案したが受け入れられず、上司からはお前のせいだと言われた。私が職を辞したあと、会社がやったのは、当初、私が出した提案と同じ作業だったようだ。
良い経験だったと思っている。
画面の中だけ、頭の中だけ、では感じることができない、苦しみ、悔しさ、嬉しさ、楽しさが物理に殴られる経験の中にある。
私は二刀流を推奨している。
プログラマーが家を建てる。
会計士が溶接をする。
論理と物理の間を往復するのが、私がすすめる二刀流だ。
そうしないと、実験をしない研究者みたいなものになりかねない。
AIゴミが大量生産される時代になった今だからこそ、物理に殴られる、身体性を要求される、そういうものが生活の中にあっても良いと思う。
「プログラミングと木を削ること」への1件のフィードバック