今週のQiita技術書まとめ
2020年5月3日配信
文系ド素人が Web エンジニアとして新卒入社するまでに読んできた本をまとめた
はじめに こんにちは。新卒Webエンジニアの@sho-hataです。 この記事では、人差し指タイピングをしていたレベルの自分が、「Web エンジニアになろう!」と決意してから入社するまでの一年半で読んできた本を、振り返りもかねてご紹介したいと思います。 この記事を読んでくださった方の刺激になったり、少しでもお役に立てれば嬉しいです! 読んできた本
Webを支える技術
本書のテーマはWebサービスの実践的な設計。まず良いWebサービス設計の第一歩として、HTTPやURI、HTMLなどの仕様を歴史や設計思想を織り交ぜて解説。そしてWebサービスにおける設計課題、たとえば望ましいURI、HTTPメソッドの使い分け、クライアントとサーバの役割分担、設計プロセスなどについて、現時点でのベストプラクティスを紹介。
マスタリングTCP/IP-入門編ー(第6版)
TCP/IP解説書の決定版! 時代の変化によるトピックを加え内容を刷新! 本書は、ベストセラーの『マスタリングTCP/IP 入門編』を時代の変化に即したトピックを加え、内容を刷新した第6版として発行するものです。豊富な脚注と図版・イラストを用いたわかりやすい解説により、TCP/IPの基本をしっかりと学ぶことができます。プロトコル、インターネット、ネットワークについての理解を深める最初の一歩として活用ください。
Web API:The Good Parts
Web APIの設計、開発、運用についての解説書。本書ではAPIをどのように設計し運用すればより効果的なのか、ありがちな罠や落とし穴を避けるにはどういう点に気をつけなければいけないのかを明らかにします。ターゲットは、URIにアクセスするとXMLやJSONなどのデータが返ってくるシンプルなタイプーXML over HTTP方式やJSON over HTTP方式ーのAPIです。
独学プログラマー Python言語の基本から仕事のやり方まで
本書は「Pythonだけ」を学ぶ本ではありません。Pythonを使ってプログラミングを紹介していますが、伝えたい内容はPythonに限らない「プログラミング全般」の知識です。 本書の著者、コーリー・アルソフ(Cory Althoff)は、「独学プログラマー」です。本書は、彼が独学で、ゼロからプログラミングを学んだ体験に基づいて書かれました。 プログラミングを独学で身に付けるために、著者がPythonを通して学んだエッセンスが書かれています。彼の独学プログラマーとしての学び方は、Amazon.comでの本書の評価を見るとわかるように、多くの人に支持されています。 ーー訳者あとがきより 第...
Docker/Kubernetes実践コンテナ開発入門
コンテナ開発、運用がゼロからわかる。本番で使えるコンテナアプリケーションをつくる。Docker/Kubernetesの基礎から、コンテナを中心とした実践開発スタイルまで。
イラスト図解式 この一冊で全部わかるクラウドの基本 第2版
これからクラウドにかかわる人が知っておきたい知識をこの一冊で丸ごと解説! クラウドの基礎知識から、代表的なサービスの種類、クラウドを支えるさまざま技術、クラウド導入の考え方、各クラウド事業者の特徴、業種別・目的別のクラウド導入例まで、これからクラウドにかかわる人が知っておきたい知識をこの一冊で丸ごと解説! 第2版では時代の変化に合わせて内容を追加・修正し、特にクラウドサービス事業者の記述を大幅に更新し、エッジコンピューティングなどの注目すべきテクノロジーの解説も盛り込みました。 すべての項目の解説は、徹底的にイラスト図解化。 これから仕事に必要な知識を学ぶ方に、すばやく、たのし...
リーダブルコード
コードは理解しやすくなければならない。本書はこの原則を日々のコーディングの様々な場面に当てはめる方法を紹介する。名前の付け方、コメントの書き方など表面上の改善について。コードを動かすための制御フロー、論理式、変数などループとロジックについて。またコードを再構成するための方法。さらにテストの書き方などについて、楽しいイラストと共に説明する。日本語版ではRubyやgroongaのコミッタとしても著名な須藤功平氏による解説を収録。
エンジニアの知的生産術
仕事をするうえで、どのように学び、整理し、アウトプットするのか、エンジニアの知的生産の方法を解説した書籍です。知的生産の方法を解説した書籍のほとんどは執筆者の方法の紹介にとどまっており、各自の環境に合うようにどのようにカスタマイズするかまでは書かれていません。本書では、数々の知的生産術の共通点や特徴を知ることで、どこが重要な部分なのかを解説します。これにより、みなさんが自分の環境に合わせて手法を変化させ、取り入れられるようになることを目的とします。筆者が日ごろ行っている具体的な手法や試行錯誤も紹介します。
ハッカーと画家
普通のやつらの上を行け。天才LISPハッカーにして、ソフトウェアベンチャーを成功させた筆者が、ものつくりのセンス、成功するビジネスの秘密、発想を刺激するアイディアを語る。
Team Geek
複数のプログラマが関わる場合、優れたコードを書くだけではプロジェクトは成功しない。全員が最終目標に向かって協力することが重要であり、チームの協力はプロジェクト成功のカギとなる。本書は、Subversionをはじめ、たくさんのフリーソフトウェア開発に関わり、その後Googleでプログラマを経てリーダーを務めるようになった著者が、「エンジニアが他人とうまくやる」コツを紹介するものである。「チームを作る三本柱」や「チーム文化のつくり方」から「有害な人への対処法」までエンジニアの社会性について、楽しい逸話とともに解説する。
はじめての統計学
数学が苦手な人でも理解して読み進めるように基礎的な知識を丁寧に解説した統計学の入門書。練習問題を解いていくうちに、統計学のエッセンスを身につけることができるワークブック。 学習のためのこころがけ 第1章 統計学はどのような学問か 1.1 統計学とは何か 1.2 統計学の考え方の基礎 1.3 統計学の分析概念(その1)-確率と確率分布ー 1.4 統計学の分析概念(その2)-母集団と標本ー 1.5 標本抽出 1.6 階級分けしたデータの作り方 補論 第1章の練習問題 第2章 標本分布の特性値 2.1 いろいろな形の分布 2.2 分布の特性値 第2章の結語 第2章の...
ゼロから作るDeep Learning
実際にシステムを作りながらディープラーニングを学ぶ! ディープラーニングの本格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優...
詳解ビットコイン
ビットコインをゼロから概念的に組み立てていきながら理解する本! ビットコインの仕組みを、技術的にじっくり理解するための本。架空の会社内におけるトークンシステム構築に携わる過程を通じて、ビットコインブロックチェーンの仕組みと概念を、豊富な図解を交えて丁寧に解説していきます。順にたどることで、ビットコインがなぜ現在の形になっていったのか、なぜ信頼できるシステムなのかを、深いレベルで理解できます。ある程度のコンピューターネットワークの知識があれば、プログラミング経験や数学の知識は不要です。
インフラ屋がお題として「Webツール」を開発することになったが。。 「Webツール」作成用の環境を考えるまで。
-- 目次はこちら。PythonでBINGOの「Webツール」をつくる( -- 記事作成:2019年12月,記事修正:2020年5月 とあるきっかけで「Webツール」を開発することになったインフラ屋です。 しかし、インフラ屋にとって開発するということを日頃行うことがない。というこでチャレンジしてみようかという気楽なノリで始めた訳です。 よって、日頃業務で開発に精を出されている方々には大変申し訳ない…
Pythonエンジニア育成推進協会監修 Python 3スキルアップ教科書
本書は、Pythonエンジニアとしてのスキルアップを目指す人のための、Python 3の本格的な学習書として執筆されました。Pythonの基本文法、オブジェクト指向、データ構造やコーディング手法、例外処理、標準ライブラリなど、データサイエンスやWebアプリのエンジニアとして必須となるPythonプログラミングの知識やテクニックを、実際に手を動かしながら学べる一冊になっています。「Python 3エンジニア認定基礎試験」を実施している「Pythonエンジニア育成推進協会」が監修しているので、試験を受験する方のための副読本としても役立ちます! ●第1章 Pythonの基本 1.1 Pytho...
初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)セキュリティ編
背景 個人的にインフラの知識以上にこれからのアプリケーションが動く環境を作ってデプロイしたりしてこれからの知識を身に着けたい。そしてより一層、自分の知識のアップデートをしたいと思いました。 その中でこの本に出会い、これから少しずつやったことを残し、未来の自分への手紙としてもあり、見つめ直せればと思いました。 引用や参考と今回の自分の勉強用の書籍の紹介 技術評論社『Kubernetes実践入門』のサ…
Kubernetes実践入門
Kubernetesは、Dockerなどを使ってコンテナ化されたアプリケーションのデプロイ、設定、管理を自動的に行うオープンソースソフトウェアです。本書は、これからKubernetesに触れる方や、本番環境での利用を検討している方が、最短でKubernetes上でアプリケーションを本番運用できるようになることを目指して書かれた書籍です。アプリケーションをKubernetes上で動作させ、本番環境で運用するために必要な変更を徐々に行っていくという構成で解説を進めます。単にKubernetesの機能を知ることができるだけでなく、利用方法もイメージしやすくなっています。
本日出版される本をまとめて表示するサイトをラズパイサーバーで公開する
はじめに 昨今の新型コロナ騒動で時間が有り余っていたので、以前より構想していた「本日出版される本のデータを集めて一覧で表示するサイト」を勉強を兼ねて作り、ラズパイの自作サーバーに実装しました。 github 作る動機 毎日約200冊の本が新刊として出版され、月刊では約6000冊の本が出版されていますが(日本著者販促センター(
移動革命
100年に1度のパラダイムシフトに乗り遅れるな! EVや自動運転、ドローンといった技術革新がめざましく進展し、空飛ぶタクシーまで夢ではなくなる一方で、スマホアプリによるタクシー配車やカーシェアリングなどの新しいサービスが次々と立ち上がる現在。ソフトとハードの両面で「モビリティ(移動)」の形が大きく変わるこの機をとらえて、関連する自動車・鉄道・IT業界などでは、一大競争が始まっている。日本の産業界の地図は、今後どのように塗り替えられるのか? そして、私たちの暮らしはこれからどのように変わっていくのか? 経済・企業経営・公共分野などの広い領域にわたって調査・研究を行っているシンクタンクが、...
プログラマのための圏論
YouTube 都度都度でプログラミングとからめて講義を進めてくれるので、はたと膝を打ちながら理解できる プログラマのための圏論 1 動機と哲学 圏とは?
圏論の道案内 〜矢印でえがく数学の世界〜
圏論は最近人気がある数学の分野の1つで、その考え方はプログラミング、人工知能、物理など幅広い分野に応用されています。本書はそんな圏論を一から知りたい人に、圏論とは何かをわかりやすく解説していきます。異なるものをどうやってつなげて矢印を引き、同じようなものとして見立てていくか、その過程をじっくり味わってみてください。自ずと、圏論とはそういうことだったのか、とお分かりいただけるはずです。 第1章 道案内の前に 第2章 圏 1圏の定義1:対象と射、域と余域 2圏の定義2:合成 3圏の定義3:結合律 4圏の定義4:恒等射 5圏の定義:完全版 6圏の例1:前順序、半順序、全順序 7圏の例2:モノ...
駆け出し1年。その間に学習してた教材もざっくり紹介
はじめに フリーウェブクリエイター(デザイン少・コーディング多) →インターン(トランスレータ、ディレクター、コーダー) →現在Railsエンジニア という変遷を辿っています。
開眼!JavaScript
JavaScriptの言語的特性で知っておくべきポイントをまとめた書籍。「オブジェクト」の理解を中心に据えて、ひと通り経験した後に陥りがちな落とし穴であるthis、プロトタイプチェーン(継承)、スコープチェーンなどをサンプルを使って解説した。
Flutter初見が5日間のハッカソンでアプリ開発してきた
はじめに この記事はコロナで外出自粛ムードの中、 おうちハッカソン なるものでFlutterアプリ開発をしてきたのでその体験記になります。 自分 @hohohoris( - サイバーエージェント21年度入社予定 - Androidエンジニア
【最短で理解する】データ分析のためのPython基礎
はじめに Pythonを使ってデータ分析をしてみたい...とか、ゼミや研究でPythonを使うことになったけどプログラミングやったことない...という方へ。 これさえわかればとりあえず基礎は大丈夫です (多分)。知識のおさらいに使うのもありだと思います。 まず、汎用的なPythonの文法の基礎を最小限扱ってから、データ分析に用いる基本的な道具やテクニックについて記載しています。 Pythonの基本…
Pythonではじめる機械学習
数学の知識がなくても読み進められる、理論だけでなく実践面も重視した機械学習の入門書! バックグラウンドに数学的な知識がなくても理解できるように書かれた、Pythonを使った機械学習の入門書。Pythonの機械学習用ライブラリの大定番、scikit-learnの開発に関わる著者が、scikit-learnを使った機械学習の方法を、ステップバイステップで解説します。最初に実践について述べて後から理論を補強するスタイルで、理解しやすいように工夫されています。理論面と実践面のバランスが良く、モデルの評価と改善について多くの紙面を割くなど、類書にはない特徴を備えています。
機械学習のエッセンス
本書は具体的なデータ分析の手法を説明する意図で書かれたものではありません。 実用的な目的ならscikit-learnやChainerなどの既存のフレームワークを使うべきですが、本書では機械学習のいくつかの有名なアルゴリズムを、自分でゼロから実装することを目標としています。こうすることにより、とかくブラックボックスになりがちな機械学習の仕組みを理解し、さらなる応用力と問題解決力を身につけることができるようになります。 また、処理系にはデファクトスタンダードであるPythonを使い、機械学習に必要な数学の知識もわかりやすく解説しています。 これから機械学習を始める学生さんや、いきなりプロジェ...