Some Days You Get the Bear

IT系エンジニアの、日々の気づきや考えたこと。

『関数プログラミング実践入門』 もっと早くに読んでおくべきだったよーっ!!

[増補改訂]関数プログラミング実践入門 ──簡潔で、正しいコードを書くために (WEB+DB PRESS plus) | 大川 徳之 |本 | 通販 | Amazon
 
組込みばっかやっていると、あんまり新しい言語の需要がなくって、ついつい勉強がおろそかになってしまった。
 
それに「言語なんて、サンプルやひとのコードを真似ながら使えるようになるもの」
程度にナメてみてた。
(まぁちょっとくらいのことはなんとかなったりするから、また勉強がおろそかになってしまうという悪循環。)
  
そうは言ってもここ最近の、C# や Rust やらは、サンプル見たって正直太刀打ちできなくって、何が書いてあるのかわかんなくって、
「なんでこんなに何でもかんでも関数なんだ?」とか
「let とかわけわかんねー、代入できないとか何ソレ?」とか、ちょっとヤバくなってきてた。
 
なので、ここはやっぱ、

「おっさんは理屈を学ばないといけないのだ」 と思ったわけである。
 
 
関数プログラミング実践入門』、
もっと早くに読んでおくべきだったよーっ!! まじで。

 
第0章を読むだけで、さっきの謎が少しわかって、ずいぶんとモヤモヤが晴れた。
 
・関数
・副作用
・束縛
・純粋
 
こういう言葉をちゃんとわかっておかないと、そもそも使い方がわからない、そういう言語なのだということを、理解した。

そう、ひとのコードをながめるくらいでは、「書き方」くらいはわかったとしても、
「使い方」まではわからんのですよ。
 
やっぱ勉強はしないといけない。精進すべし。


matsujirushi.hatenablog.jp

ここに書いてある「C言語だと辛いなぁと思っていたので」という感覚が、いままでの私では理解できなくて、
「そこはプログラマがバグらんように書けばいいだけでしょ」って感覚だったのだけど、
そういう力業(ちからわざ)でどうにかしようって体育会系な発想が、そもそもおっさんすぎるし、
そんなところにパワーや頭を使うこと自体が、体力や知力の無駄遣いでもある、というふうに、ようやく思えるようになってきた。。。かなぁ?という感じ。
 
 
体力知力の無駄遣いの話しついでに。

あらためてアジャイルの話を聞いてみたくなって、これを見た。
  
www.youtube.com
やっぱ一度ちゃんとアジャイルで開発してみたいな。
一括見積で始めて、見積想定外のことが出てくれば開発を中断して、お客さんと協議して、再見積して、予算や内容が合意できたら再開して、
そういうことに無駄なパワーを使わない、そういう開発をやってみたいな、死ぬまでに。
もうすぐ定年だし、
最後はやってみたかったことをやってから、死んだほうがいいな、と思う。
死ぬにはまだ早すぎだけど。