Dear Great Hackers

  1. Qiita
  1. トピックス

『Qiitaユーザーが選ぶ、2019年に読んで良かった技術書』アンケート結果発表

こんにちは。Qiita Zine 編集部です。

2019年も残りわずかとなりました。
年末年始休暇には、読書をされる方も多いのではないでしょうか。

この記事では、先日Qiitaメルマガで行った『Qiitaユーザーが選ぶ、2019年に読んで良かった技術書』アンケートの結果を、選出理由を交えて紹介します。

ぜひ、ご自身へのクリスマスプレゼントや、年末年始の読書のお供の参考にしてください💁‍♀️

プログラミング言語・フレームワーク

プログラミング言語図鑑

こんな言語あったんだっていうのも知れるし、個々のプログラミング言語の特徴が素早くわかる手元に置いておきたい一冊。

やさしいC++

C++を習得したかったから。

独学プログラマー Python言語の基本から仕事のやり方まで

復習になる。

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

Kernighanが著者の一人だった。

Vue.js入門 基礎から実践アプリケーション開発まで

今年からVue.jsの学習及び案件に関わっており、基礎的なことを一通り学べるので、この書籍の内容をベースにQiitaの記事を参考にしたりなど非常にお世話になりました!

設計・コーディング

オブジェクト指向設計実践ガイド

本を読む前はオブジェクト指向をある程度理解したものの、「では実際にどんな風に書けばいいのか」が分からなかった。
これを読んでRubyの書き方が劇的に変わった。オブジェクト指向なのでRuby以外にも使える。

ドメイン特化言語 パターンで学ぶDSLのベストプラクティス46項目

タイトルは「ドメイン特化言語」となっているが、言語実装に限らず、プログラムの構造を決定する上で、参考になるポイントも多い。
第14章 コンストラクションビルダー、第35章 メソッドチェーン等はDSLの表現方法の例として挙げられているが、これらは通常のプログラム設計、実装方法としても応用できる。

コーディングを支える技術~成り立ちから学ぶプログラミング作法 (WEB+DB PRESS plus)

読み物としてとても面白い。

CODE COMPLETE

「コードをきれいに書きましょう。そのために有用と思われる著者の経験を語ります」という内容。本書と違っていつ読んでもいい『闘うプログラマー』と並ぶ必読の書。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

なにかしら気を付けてプログラムを書いている人にとっては、本書の訳者まえがきに記されているように「Nothing New」と感じられるかもしれない。
しかし、命名に悩んでいる場合には、その理由を啓示してくれるかもしれない。

コーディングルールを全く知らない人からそうでない方まで、チームで開発する際の考え方の指針になると思う。

レガシーコードからの脱却 ソフトウェアの寿命を延ばし価値を高める9つのプラクティス

レガシーコードから脱却するためのプラクティスを紹介していて実際に業務にどうやって導入していったらいいのかが分かりやすく説明されているところ。

勉強になった。同僚にも勧めた。

WEBテクノロジー

WebRTCをブラウザ外で使ってブラウザでできることを増やしてみませんか?

ただでさえ情報が少ないlibwebrtcの詳細な解説が日本語で書かれており、libwebrtcの利用に関わらずWebRTCについて学ぶ上で必読であると感じた。

Real World HTTP 歴史とコードに学ぶインターネットとウェブ技術

HTTPのみならず、様々なプロトコルやネットワークの知識、Goによるネットワークプログラミングの解説まで載っており、様々な知識が得られる。

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

Webエンジニアとして飯を食うなら必読の1冊だと思う。

データベース

達人に学ぶSQL徹底指南書 第2版 初級者で終わりたくないあなたへ

SQLの高度な利用方法に加え、SQLの背景にある理論(集合論、3値論理)まで解説されている。
直接言及されていた言葉ではないが「集合の部分集合もまた集合」という概念は、複雑なSQLを書く上での道しるべとなり、大いに役立っている。
また、SQLの背景理論は、関数型プログラム(あるいはそれに類似した記法)を理解する時にも参考になる。

OS

The Art of UNIX Programming

現在でも通じるプログラムに必要な考え方について改めて学ぶことが出来た。
特に「5.1 テキストであることの重要性」「11.6.8 エンジンとインターフェースの分離」などは、自作ツールの作成にあたり、大いに参考になった。
原文が2003年と古く、PDF(英文)でも公開されていますので、英語に自信がある人は買う必要はないかも知れませんが。

データ分析・機械学習

Pythonではじめる機械学習 scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

scikit-learnの知識整理ができた。

東京大学のデータサイエンティスト育成講座 ~Pythonで手を動かして学ぶデ―タ分析~

Pythonを使いながら、データサイエンスの基本からしっかりと学ぶことができるから。

Python 実践データ分析 100本ノック

業務の中で出てきそうな状況をもとに、実践的な分析の進め方が記されているため。

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

機械学習の基礎をすごくわかりやすく解説してある。

Excelパワーピボット 7つのステップでデータ集計・分析を「自動化」する本

勉強になった。

チーム開発

カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで

物語形式でたのしくスクラムを学ぶことができてよかった。

アジャイルサムライ 達人開発者への道

アジャイル開発の一通りのプロセスを広く学べるため、アジャイル開発学習の導入本としておすすめ。

[イラスト解説]ティール組織――新しい働き方のスタイル

これからの働き方。

その他(エンジニアとしての学び・働き方)

エンジニアの知的生産術 効率的に学び、整理し、アウトプットする (WEB+DB PRESS plusシリーズ)

振り返りができた。

最強のエンジニアになるための 話し方の教科書

議論の際、言葉の伝え方に悩んでいた自分に「相手と共存して問題を解決する」ということを教えてくれた本。

学びを結果に変えるアウトプット大全

完璧ではなくて良いので、アウトプットする!
最近紙のノートに何かを書くことは減ったけど、紙に書いてにアウトプットすると記憶に残るということが実感できたので今後も続けたい。

ハッカーと画家 コンピュータ時代の創造者たち

ポール・グレアム氏の思考がのぞけるこの本は世のプログラマは一度は目を通すと良いと思うくらいおすすめ。
プログラミングの話だけでなくLifeハッカーなこともたくさん書いてあって面白い。


今年は、28冊の本を紹介させていただきました。

来年もQiita Zineでは、――「エンジニアを最高に幸せにする」を加速させるメディア――として、
ソフトウェアなどの技術情報を中心とした情報や、その情報や投稿者に付随する情報をたくさん発信していく予定です。

来年もQiitaとQiita Zineをよろしくお願いします🙇‍♀️

2018年版の記事はこちら▼
『Qiitaユーザーが選ぶ、2018年に読んで良かった技術書』アンケート結果発表

関連記事