『すべてのUNIXで20年動くプログラムはどう書くべきか』を読んだ(´_ゝ`)
2015年発行なのだが、まあタイトルで豪語するだけあって今も当然使える。
使えるが…それはあくまで「コードとして」であって、実用的にはもはや使えない。
なぜなら、この本で書かれている問題を人が解くようなことはなくなってしまったからだ。
ChatGPTの登場で、正規表現をわざわざ書いたりすることはなくなった。
シェルスクリプトをPOSIXに準拠しているかどうか気にせずに書いても、ChatGPTに「POSIX準拠で書き換えて」で一発である。
たとえば「bash上で動いていたシェルスクリプトを、他のシェルでも使えるように書き直している。しかし、組込変数のPIPESTATUSを参照している箇所があり、これを書き換えられずに悩んでいる。PIPESTATUS相当の変数を用意する方法はないか?」というような問題が本書にはある。
これ、そのままChatGPTに打つと、各コマンドの終了ステータスを個別に取得して、変数に記録する方法を提示してくれる。
これが気に入らなければ関数内で手動的に各コマンドを実行してステータスを記録する方法も提示してもらえる。
んで実際に動くかどうかはその場で確認できるわけで。
もちろん、ソフトウェアの挙動は知っておく必要があるので、本書を通読することは勧められる。
でも写経して時間をかけて身に着けるスキルではなくなってしまった。
それだけのコストをかけても、得られるリターンが少なくなってしまったからね。
まさか著者も、AIが自動でコードを生成してくれる時代がこんなに早く来るとは思わなかっただろう。
もっとも、どんな知識やスキルも、何も知らない・何もできないよりははるかにプラスになるので、ちゃんと自力で実装できる人がスゴイことには変わりない。
翻訳ソフトのレベルが上がっても、英語がペラペラに喋れる人がスゴイのと同じ。
でも今後は、どんな知識やスキルを得ていくのかを慎重に検討していかないといけなくなるね(´_ゝ`)