2020年買ってよかった本【技術書編】
株式会社NoSchoolでCTOを務めているmeijinです。普段はWeb技術全般を駆使して開発業務に取り組んでいます。
2020年に買ってよかった技術書をまとめます。
プログラミングTypeScript
2020年は自分にとってTypeScriptの経験値が一番増えた年でした。最初は見様見真似でNuxt.jsなどを書いていましたが、この本を読むことで体系立てられた知識が入りました。
ジェネリクスや関数の型宣言について学べたのが大きかったです。PHPやRubyを主に書いてきたのでジェネリクスについて扱えるようになったのはエンジニアとしても大きな進歩でしたし、OSSで公開されているライブラリのソースコードを割と読めるようになりました。
特定のフレームワークによらず、リファレンスとしても使えるので、紙で買うことをおすすめします。
Webフロントエンドハイパフォーマンスチューニング
年初に購入しました。ブラウザにおけるJS/CSS/HTMLのパース、実行順と言った基礎知識から、CSSでパフォーマンスを重視したアニメーションの書き方といった細かめの知識まで網羅されています。
今となっては全部自分にとっては常識なのですが、ということはこの本で書いてある内容が非常に網羅的で血肉になる内容だったのだと思います。
Real World HTTP
これは名著。
Webをやっている以上はHTTPとの関係性は切っても切れないです。
multipart/form-dataってどんな仕様だっけ?Cache-Controlヘッダってどんな仕様だっけ?WebRTCの基礎をもう一回学びたいな、といった要望を一通り叶えてくれます。
一度読んだだけでは全部覚えられないのですが、何度か読んで付箋をつけました。
・TLS
・コンテンツ圧縮
・仮想DOMとSSR
・Cookie
・CSP
・CQRS
こういった何やるにしても必要な内容について、適宜RFCへの参照なども付けながら丁寧に説明されています。
SQLアンチパターン
以前から気にはなっていたのですが、業務で難しいDB設計が相次いで、重い腰を上げて購入しました。
かなり良いです。SQLのアンチパターンというか、DB設計のアンチパターンに近いかな。
具体的にこういうテーブル構成にしたほうが良いです、という例まで示してもらいつつ、それぞれのメリデメとか、アンチパターンを実施してもいいケースについて明記するあたりがフラットな視点で勉強になります。
ゼロから作るDeep Learning②
初代ゼロから作るDeep Learningはずっと持っていたのですが、唐突に自然言語処理に興味が湧いてきたので読んでみました。
文章生成とか、自動翻訳とかがどういう仕組みで生まれているのかがよくわかります。サンプルコードも全部GitHubで提供されているので、Cloneして手元で動かしてみることができます。
だいたい話はわかるようになってきたので、インターネットの海から日本語Wikipediaから作成済みのWord2Vecを使った類義語判定のスクリプトを書いて動かす程度ならできるようになりました。
とはいえこれくらいだと数年前の自分でもできる内容なんだよな・・・という葛藤もありますがw
あとは自然言語処理×Deep Learningを主題においた書籍だけに、ニューラルネットワーク前提の技術解説が多いので、シンプルな文書分類タスクとか特徴語抽出とかは載っていないです。これらは別途勉強する必要があります。
---
以上です。年を追うごとに基礎を固める書籍の大事さが身に沁みますw