Input中心のブログ

2019/11 読んだ本まとめ

December 02, 2019

読んだ本について振り返る

なぜ科学はストーリーを必要としているのか──ハリウッドに学んだ伝える技術

博士課程を修了したにも関わらずハリウッドで映画監督になろうとしている著者が、科学者がハリウッドに習うべきことを記した本。 論文やこのサイトの記事などを書くときに参考になりそうな内容が詰まっていた。

基本的にはABT(And, But, Therefore)を繰り返すときに読者にわかりやすい文書が書けるようになるという内容だった。 内容は一つのことを繰り返している印象だったけど、その一つのことが結構説得力がある内容だった気がした。 最近は文書を書くときに気にかけている。

硬めの文章を書きつつ、説得感をもたせたい人におすすめ 自分は文章を書いているうちに何を書いてるかを忘れちゃうので、この本は結構参考になった。

スタンフォード式 人生デザイン講座

スタンフォードで教えられているライフデザインの講義の内容をまとめたもの。 内容についてはなるほどなーと思わされるものが結構あった。 しかし、読んでから1ヶ月くらい経ったけど講義の内容があんまり出来ていない。 なので、もう一回読み直しながら講義の内容をやろうと思っている。

結構人生をどう行きていこうという人にはおすすめ。

「ついやってしまう」体験のつくりかた――人を動かす「直感・驚き・物語」のしくみ

任天堂出身の著者がなぜゲームがこれほどの没頭感を生み出しているのかについて仕組みを解説した本。 僕は基本的には参考文献とかがしっかりしていない本はあんまり読まないけど、友達が面白かったと言っていたので読んでみた。

マリオの例などは面白くて、マリオの操作方法は誰も教えてくれないのに誰でも操作方法が分かるという設計になっていた。という説明は目から鱗の話であった。 ストーリーとかのデザインをする人は結構読んでおくと面白いかもなーと思った。

SINGLE TASK 一点集中術――「シングルタスクの原則」ですべての成果が最大になる

マルチタスクではなく、シングルタスクに専念することによって効率的に仕事を終わらせられるという本。 マルチタスクが良いと思っている人にはぜひとも読んでほしいなという本。 自分は結構知っている内容があったので、再確認という感じ。

シングルタスクは良いとわかっているが、なんやかんやで他のことをやりながら作業してしまうという事があるのでたまに読んで意識しておきたいなあと思った。 内容は是非読んでくださいな。

実践Rust入門 [言語仕様から開発手法まで]

プログラミング言語であるRustの入門書。 Rustは公式ドキュメントがしっかりしているので正直買わなくてもなんとかなるかなと思ってずっと買わずにいた。 しかし、この本を読んで今まで買わずにいたことを後悔するくらい良い本だった。 この本を読んだことがないRust入門者はぜひとも読んでほしい。

最初の方も結構良かったけど、7~10章あたりがすごく参考になった。 今でもRustでプログラミングをするときは結構参考にしている。 プログラミングをしているときによく読み返したくなるので、Kindleで買ったのは正解だったなと思った。

11章のActixの例は、新しいバージョンが全然違ってなかなか進めづらかった。 現在はRustいAsync・Awaitが追加されているらしいので、そこら辺は自分で調べながらやる必要があると思う。

テスト駆動開発

有名なTDDの説明をしている名著。 テスト駆動を例を示しながら進めている。 著者がテスト駆動開発で開発を行いながら書いているので著者がどういう思考で進めながら開発をしているのかというのが進めながら分かる。 また、後半ではテスト駆動開発に有用なデザインパターンやTDDの歴史などが書いてあり結構面白かった。 一度目は特に写経などはせずに読み進めたが、読み終えたときに写経すればよかったなあと思って2周目に突入中。

TDDのことを誤解していたなあと思って、テスト駆動開発素晴らしいという気持ちがすごい。 今後はTDDを取り入れて開発を行いたいと思った。

最後に

以上11月はこんな感じで本を読みました。 自分は本にハマる時期とプログラミングにハマる時期が交互に来るらしく、前半は普通に読書を後半はプログラミング関係の本を読むという生活でした。 あと、論文も5本くらい読んだ気がする。 12月に入ってからは本ではなくGoなら分かるシステムプログラミングにハマっていてしばらくはこれをやるかなあという感じ。 現在は2冊くらい本が溜まっている状態なので来年に持ち越さずに読み切りたいなあと思っています。

とりあえずおすすめとしては

非プログラミング系ならSINGLE TASK、プログラミング系ならテスト駆動開発という感じです。