今週のQiita技術書まとめ
2023年7月2日配信
貪欲法をビームサーチ化する際にやってはいけないこと
はじめに どうもどうもこんにちは。 thunderです。 月日は早いもので、ゲームで学ぶ探索アルゴリズム実践入門( さて、ゲームで学ぶ探索アルゴリズム実践入門(
ゲームで学ぶ探索アルゴリズム実践入門〜木探索とメタヒューリスティクス
ゲームAIの技術要素には大きく分けて「ルール」「探索」「機械学習」の3つがあります。近年話題になることの多い機械学習ですが、機械学習だけでは遠い将来の状況を正確に読むことは難しく、特に探索がなければ真に強いAIは生まれません。また、ゲームAIの技術を競う各種コンテストなどでは使用できるメモリ量やファイルの容量に制限が課され、機械学習を利用することが現実的ではないケースもあります。これは実務においても同様で、与えられた要件によっては今も探索技術が主要素となり得ます。本書は、この探索技術とそれを支えるアルゴリズムにフォーカスを当て、ゲームAIを題材にその重要性と魅力を楽しく学ぶための入門書で...
上半期で読んで良かった技術書3選
はじめに はじめまして、記事をご覧いただきありがとうございます。 社会人二年目のインフラエンジニアです。 本記事では私がこの半年間で読んでためになった技術書を紹介します。 体系的に学ぶ 安全なWebアプリケーションの作り方 第二版 脆弱性が生まれる原理とその対策の実践
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版
日本中の現場で支持されたベストセラーが、最新環境にあわせて全面刷新+大増ページ! Webアプリケーションにはなぜ脆弱性が生まれるのか? 脆弱性を解消するにはどうプログラミングすればよいか? PHPサンプルへの攻撃を通して脆弱性が生まれる原理と具体的な対処方法が学べる! Webアプリ開発者の必読書、待望の改訂版! OWASP Top 10 - 2017対応 <主な改訂内容> ・HTML5の普及に対応してWeb APIやJavaScriptに関する解説を新設 ・OWASP Top 10 - 2017に対応して、XXEや安全でないデシリアライゼーションなどを解説 ・脆弱性診断に対する関...
絵で見てわかるITインフラの仕組み 新装版
高性能・耐障害性を支える システム基盤の勘所を学ぼう! ロングセラー『絵で見てわかるITインフラの仕組み』の新装版です。大多数のエンジニアにかかわりがある“ITインフラ”。複雑化する現代のエンタープライズシステム構築において、自分の担当外の領域ではどのような仕組みで動いているのかなど、基盤技術の仕組みや全体像が理解しにくくなっています。本書では、執筆者自身が学んだ経験を生かし、アーキテクチャ、ネットワーク、サーバー、プロセス、要素技術といった基盤技術をどのようにとらえれば理解しやすいのかを意識して解説しています。 マクロの視点からミクロの視点へと解説を進めており、システムの各部分...
OKRやMBO、期中の目標は変更してよいのか
目標設定の途中変更について ITやスタートアップ企業ではOKRやMBOなどのフレームワークを用いた目標設定が増えてきているように思います。書籍や解説記事も充実しているため、目標管理の全体のやり方について理解が広まっているのではないでしょうか。一方、期中の目標の変更方法についてはあまり触れられていないように感じます。ここでは、目標設定における変更方法について、私の考えをまとめたいと思います。 ※ M…
個人、チーム、組織を伸ばす目標管理の教科書
目標管理は人事考課の道具じゃない。ドラッカーが提唱した「部下のやる気を引き出し業績を伸ばす」という目標管理の本質に立ち返り、単なるノルマ主義とは違う、人・組織を大切にして業績を伸ばすマネジメントを解説。
【凄腕エンジニアさんから学んだ例外の話】の補足
はじめに 凄腕エンジニアさんから学んだ例外の話( はてなブックマークのコメントなども読ませていただき、勉強させていただいています。 コメントを読んでみて、自分の記事がちょっと誤解を与えてしまっている部分もあるのかもしれない。。。と感じましたので、今回補足記事としてこの記事を書きます。 【例外が起こった時の挙動を決めるのはプレゼンテーション層】について
ソフトウェア設計のトレードオフと誤り
ソフトウェアで陥りやすい誤りと、設計のトレードオフを紹介! ソフトウェアにかかわるすべての人は常に、さまざまなコンテキストや制約の中で多くの決断に迫られています。本書は、モノリス、マイクロサービス、ビッグデータ処理、ライブラリなど、さまざまなソフトウェアシステムの経験から得た教訓を共有するため、実際の業務システムの開発の中で行われた意思決定、そのトレードオフ、そしてその失敗を深く分析しています。設計における潜在的な問題や限界をあらかじめ学ぶことで、より良い選択ができるようになるでしょう。
Python3ではじめるシステムトレード:ネルソンーシーゲルモデルー金利予測の原点
金利曲線をモデリングするために、1987年にCharles R. NelsonとAndrew F. SiegelはNelson-Siegelモデルを提唱しました。特に、このモデルはゼロクーポンボンドのイールドカーブを表現するのに適しています。様々な計算手法が提案されています。ここでは単純な方法で計算していますが、状態空間方程式を用いたものも多数報告されています。またストラング先生の5版のIntro…
Python3ではじめるシステムトレード第2版
本書で学べること!Jupyter Notebookの導入からPythonの利用方法。株価・為替・経済などのデータの入手方法と分析手法。時系列分析の処理と統計的手法(自己回帰モデル、モンテカルロ手法など)。あゆみ値の本質と価格形成のメカニズム。高頻度取引の世界におけるマーケットメイクの仕組み。
【ポエム版】新規開発のときの技術選定の考え方
新規開発で必要なのが技術選定です。 日々システムが作られるたびに使う技術が選ばれています。 しかし、エンジニアの専門性が深く周りの職種には分からないため、技術選定が雑に行われているケースも多いと感じています。 技術選定は将来の技術負債への影響も大きいものです。そして新規開発の技術選定のタイミングは開発の中で技術負債がゼロという数少ないタイミングでもあります。 雑に決めてもOKなときはありつつ、この…
進化的アーキテクチャ
2010年代のソフトウェア開発の全体像をまとめ、これから求められるアーキテクチャを探る! Thoughtworks社のCTOをはじめとする執筆陣が、ビジネスの要請やソフトウェアエコシステムの変化に伴い、ソフトウェアシステムは変化していくなか、最初にどうアーキテクチャを考え、そのアーキテクチャをどう育てていくのかを鋭く考察する。マーティン・ファウラーによる「まえがき」を収録。
Googleのソフトウェアエンジニアリング
Googleが強大な成果を生み出す源泉を理解し、組織に活かす! 現役のGoogleのエンジニアたちが、その姿勢から具体的なプロセスに至るまで、ソフトウェアエンジニアリングに関するすべての知見をこの1冊に凝縮。時間と変化、規模と成長、トレードオフとコストという3つの基本原理に沿って、コードを持続可能にするにはどうすればよいかを紐解いていきます。組織マネジメント論や認知心理学を背景にした人間に対する深い洞察、Googleらしいデータ駆動や論理に基づく決定プロセスがなぜそのように至ったかまでを理解できます。
チームトポロジー
DXが進み、ビジネスはIT・オンラインを基準に変化が加速している。この大きな流れを受けるのがソフトウェア開発である。またソフトウェア業界としては、アジャイルやDevOpsなどの手法を開発して、時代の移り変わりの速度に合わせるように、いかに効率的にサービスを提供できるかを試行錯誤してきた。 本書は高速なデリバリーを実現することを目的とした、4つの基本的なチームタイプと3つのインタラクションパターンに基づく、組織設計とチームインタラクションのための実践的な適応モデルを紹介する。これは、ソフトウェアの組織設計における大きな前進であり、チームの相互作用と相互関係を明確に定義した方法を提示すること...
マイクロサービスアーキテクチャ 第2版
マイクロサービスの原典とも言える書籍の待望の改訂版! 2016年に第1版が発刊された当時とは異なり、いまではマイクロサービスはすっかり市民権を得、さまざまな技法やツールが開発されています。この改訂版では、マイクロサービスの発展に伴い、重要となっている面を掘り下げ、また事例を豊富に盛り込むなど、時代に沿った改訂を行っています。第2版では「第1部 基礎」「第2部 実装」「第3部 人」の3部構成を取り、チームの構造、組織、UIといった異なる視点から考察していることも特徴です。この一冊でマイクロサービスを構築、管理、運用、拡張する内容をカバーしています。
格子暗号を用いた準同型暗号の理論ロードマップ
社会人になり3ヶ月が経ったということで,ここで理論的でもなければ技術的なことでもない今までのちょっとした(制作期間2ヶ月)振り返り記事を書いてみようと思います 格子暗号を用いた準同型暗号の論文を理解するには,どこまでの事前知識が必要なのか,他におすすめの論文などをまとめてみます 本記事はあくまで個人の見解であり,所属する組織の方針や見解を代表する・述べるものではありません また,予告なしに内容の加…
暗号から学ぶ代数学
はじめに 第1章 暗号と代数学 1.1 暗号とは何か 1.2 暗号は関数である 1.3 暗号の数学的定式化と例 1.4 暗号と代数系 第2章 シーザー暗号と合同演算,群 2.1 シーザー暗号と合同演算 2.2 群Z/nZ 第3章 ここでちょっと群論 3.1 部分群と位 3.2 位数と部分群からみる巡回群の性質 第4章 ヴィジュネル暗号と群の直積 4.1 ヴィジュネル暗号 4.2 群の直積 4.3 巡回群の直積 4.4 暗号と直積 第5章 エニグマと対称群 5.1 エニグマと群 5.2 n次対称群Sn 第6章 暗号以外の分野に現れる群 6.1 図形の...
計算できるもの、計算できないもの
ゲーデル、チャーチ、チューリングの偉業を踏まえつつ、計算理論をわかりやすくかつ厳密に説明する教科書! コンピュータサイエンスの「基本中の基本」である計算理論について、理論だけの難しい話に終始せずに、実際のプログラム(書籍ではPythonを使用。WebではJavaも用意)を示し、実践的なアプローチからも理解を促します。扱うトピックは、チューリングマシン、有限オートマトン、計算可能性問題、非決定性、NP完全問題など、計算理論の教科書としては定番とも言えるものですが、コンピュータサイエンスの根幹を支える理論だけでなく、その歴史的発展と意義についても理解することができます。
線型代数学(新装版)
本書の旧版(1958年刊、1974年増補改題)は、線型代数学に関する最も基礎的な理論および諸概念を明快に解説し、より本格的に線型代数学を学びたい読者にとって最適の参考書として、数十年にわたって理工系の多くの読者から親しまれ支持されつづけてきた定評の書。2006年には日本数学会出版賞を受賞した。 その旧版をもとに、2015年刊行の新装版では、最新の組版技術によって新たに本文を組み直して読みやすくし、読者の便宜を図った。なお改版にあたっては原則、一部の文字遣いを改めるにとどめ、本文は変更していない。 2006年度日本数学会出版賞受賞のことば 増補版への序 序 I.ベクトルと行列の演算 ...
集合と位相(増補新装版)
1986年の初版刊行以来、多くの読者から高い評価を得てきた『数学シリーズ 集合と位相』が、信頼の内容はそのままに、装いを新たに登場。 集合と位相は、概念そのものが現代数学のあらゆる分野に深く浸透し活用されている。本書は、数理系の学生を対象に、集合と位相の基礎的な内容をまとめた入門書である。はじめの3章で集合を、残りの6章で位相を扱う。 「集合」では、最初に集合と写像の概念およびその演算について述べ、続いてカントールの対角線論法やベルンシュタインの定理などを考察し、また選択公理と整列可能定理が互いに同等であることを証明する。「位相」では、ユークリッド空間への位相の導入、距離空間への位相...
現代暗号の誕生と発展
<big><strong>現代暗号の世界を平易に解説!</big></strong> 本書は、40年余り前に誕生してから現在に至るまで大きく発展し続けている現代暗号の世界を(前提知識を必要としないで)できるだけ平易に解説する。本文では、極力数式等は用いずに解説を行う一方、いくつかの重要な技術については、より詳細な説明を付録で行っている。現代暗号に関心はあるが、その敷居の高さゆえに躊躇していた読者には最良の一冊である。 1章 現代暗号の誕生:公開鍵暗号の発見と暗号標準化 2章 現在のネットワークで使われている暗号 3章 現代暗号の理論 4章 ビットコインの誕生:電子マネー革命 5章 ポスト...
格子暗号解読のための数学的基礎
<big><strong>次世代暗号理論の最有力!</big></strong> 本書では、ポスト量子暗号の最右翼と目される格子暗号の数学とその実装方法について解説する。 現代の情報社会を支えるRSA暗号や楕円曲線暗号は、ノイマン型コンピュータの計算困難性を利用している。しかしこれらは、量子コンピュータにより簡単に解読されることが分かっており、ポスト量子暗号の実現が叫ばれている。 格子暗号は「格子問題」と呼ばれる、量子コンピュータでも解き方が分かっていない問題を基礎とする。本書はその数学的性質のほか、格子問題を解くための「格子基底簡約アルゴリズム」について紹介していく。 序章 この...