タグ

ブックマーク / www.oreilly.co.jp (24)

  • 計算できるもの、計算できないもの

    計算機による計算とは何か、計算できるものとできないものの境界はどこにあるのか―それを明らかにする計算理論は、計算機科学においてもっとも基的、かつ重要なものです。書では、概念の説明や、結果の証明にPythonプログラムを利用する実践的なアプローチにより、計算可能問題と計算不能問題、扱いやすい問題と扱いにくい問題があること、文章では簡単に表現できても計算機には解けない重要な問題が数多くあること、効率よく解ける問題と解けない問題があることなどを、計算理論の礎を築いたアラン・チューリングとリチャード・カープの論文の抜粋とともに解明します。チューリングマシン、有限オートマトン、万能計算、非決定性、チューリング還元、計算量クラス、NP完全性などのトピックをカバーしています。 謝辞 まえがき:教科書として使う方へ 全体像 1章 はじめに:計算できるもの, できないものとは 1.1 扱いやすい問題 1

    計算できるもの、計算できないもの
    ruicc
    ruicc 2023/06/26
  • ソフトウェアアーキテクチャ・ハードパーツ

    ソフトウェアアーキテクチャに絶対的な正解は存在しません。むしろ、さまざまな妥協点の中から選択を強いる難題、すなわち「ハードパーツ」が多く存在します。そのため、ソフトウェアアーキテクトには常にトレードオフを見極め、状況に合った選択をすることが求められます。書は、読者が自身のアーキテクチャ上の難題に対して効果的なトレードオフ分析を行い、より良い決定ができるようにするための書籍です。 書では、サービスの粒度やデータの所有権、コードの再利用やワークフローの調整、可用性や信頼性の実現といった現代のソフトウェアアーキテクチャの難題と、それに対するさまざまなアプローチやパターンを紹介します。そして意思決定を難しくするトレードオフについて、モノリスを分解しマイクロサービスアーキテクチャに再構築する例を通して詳しく説明します。 『ソフトウェアアーキテクチャの基礎』の著者らによる現代的なトレードオフ分析と

    ソフトウェアアーキテクチャ・ハードパーツ
    ruicc
    ruicc 2022/10/09
  • Real World HTTP

    TOPICS Web 発行年月日 2017年06月 PRINT LENGTH 360 ISBN 978-4-87311-804-8 FORMAT PDF EPUB 書はHTTPに関する技術的な内容を一冊にまとめることを目的とした書籍です。HTTP/1.0、HTTP/1.1、HTTP/2と、HTTPが進化する道筋をたどりながら、ブラウザが内部で行っていること、サーバーとのやりとりの内容などについて、プロトコルの実例や実際の使用例などを交えながら紹介しています。 GoJavaScriptによるコード例によって、単純なHTTPアクセス、フォームの送信、キャッシュやクッキーのコントロール、Keep-Alive、SSL/TLS、プロトコルアップグレード、サーバープッシュ、Server-Sent Events、WebSocketなどの動作を理解します。 これからウェブに関係する開発をする人や、これ

    Real World HTTP
    ruicc
    ruicc 2017/06/01
  • ゼロから作るDeep Learning

    ディープラーニングの格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。 関連ファイル サンプルコード 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正

    ゼロから作るDeep Learning
    ruicc
    ruicc 2017/01/06
  • コード・シンプリシティ

    Bugzillaプロジェクトの主任設計者の実体験に基づいた、ソフトウェアの簡潔性を保つさまざまな知見をまとめた書籍。「なぜ簡潔性が大事なのか」「変更の価値を計るための方程式」「コードの簡潔性と複雑性」といったトピックについて、事実、法則、ルール、定義などを示しながら解説します。直接的なコードの書き方だけでなく、ソフトウェアプロダクト全体にわたるコードの健全性を保つためのヒントとなるでしょう。なお書はEbookのみの販売となります。 まえがき 1章 はじめに なぜ簡潔性が大事なのか ソフトウェアデザイン 2章 なぜソフトウェアを作るのか 実際のアプリケーション 3章 未来 ソフトウェアデザインの方程式 デザインの品質 見えない結末 4章 変更 プログラム変更の実例からわかること 3つの間違い インクリメンタルな開発とデザイン 5章 不具合とデザイン 故障でなければ…… 何度も同じことを繰り

    コード・シンプリシティ
    ruicc
    ruicc 2015/12/11
    簡潔さとは
  • Javaパフォーマンス

    書ではJVMのチューニングとJavaプラットフォームでの問題解決の双方からJavaパフォーマンスの「アート」と「サイエンス」を明らかにします。Javaアプリケーションのテスト手法やベンチマーク測定、パフォーマンス分析に必須のモニタリングツールを学んだうえで、さまざまな性能改善について議論します。JITコンパイル、ガベージコレクションというチューニングが大きな役割を果たす2つの仕組みについて最初に考察します。続いて、Javaプラットフォームのさまざまな側面で高いパフォーマンスを発揮するためのベストプラクティスを紹介します。具体的には、Javaのヒープメモリ、ネイティブメモリ、スレッド、Java EEのAPI、JPAとJDBC、そしてJava SEのAPIでのヒントを取り上げます。Java 8対応。 目次 監訳者まえがき まえがき 1章 イントロダクション 1.1 概要 1.2 プラットフォ

    Javaパフォーマンス
    ruicc
    ruicc 2015/03/26
  • 入門 React

    Facebookが開発したJavaScriptライブラリ「React」の解説書。書では、サンプルアプリケーションを用いてReact.jsのすべての側面を解説します。「第I部 基礎」でReactコンポーネントの作成と合成を学び、Reactの基的な使い方を理解します。「第II部 応用」ではワンランク上のコンポーネント作成について学びます。「第III部 ツール」ではReactと共に使用して堅牢なアプリケーションを実装するためのツールについて学びます。最後の「第IV部 実践」では大規模なアプリケーション開発に必要な知識やWeb以外のユースケースについて解説します。読者はコンポーネントベースの最新のフロントエンド開発についての体系的な知識と技術を身につけることができます。日語翻訳版の書ではReactの開発環境の構築手順とAPIリファレンスを巻末付録として収録。 目次 まえがき 第I部 基礎

    入門 React
  • コンピュータシステムの理論と実装

    コンピュータを理解するための最善の方法はゼロからコンピュータを作ることです。コンピュータの構成要素は、ハードウェア、ソフトウェア、コンパイラ、OSに大別できます。書では、これらコンピュータの構成要素をひとつずつ組み立てます。具体的には、NANDという電子素子からスタートし、論理ゲート、加算器、CPUを設計します。そして、オペレーティングシステム、コンパイラ、バーチャルマシンなどを実装しコンピュータを完成させて、最後にその上でアプリケーション(テトリスなど)を動作させます。実行環境はJavaMacWindowsLinuxで動作)。 ● 書のサポートサイト ● 書で使用するツール「Nand2tetris Software Suite」 ● 「Nand2tetris Software Suite」のチュートリアル 目次 賞賛の声 訳者まえがき:NANDからテトリスへ まえがき イント

    コンピュータシステムの理論と実装
    ruicc
    ruicc 2015/03/11
  • Web API: The Good Parts

    Web APIの設計、開発、運用についての解説書。APIは設計次第で使いづらいものになってしまうだけでなく公開後の保守運用も難しくなってしまいます。そのためAPIを美しく設計することがとても重要です。書では「設計の美しいAPIは、使いやすい、変更しやすい、頑強である、恥ずかしくない」という考えのもと、APIをどのように設計し運用すればより効果的なのか、ありがちな罠や落とし穴を避けるにはどういう点に気をつけなければいけないのかを明らかにします。ターゲットは、URIにアクセスするとXMLやJSONなどのデータが返ってくるシンプルなタイプ――XML over HTTP方式やJSON over HTTP方式――のAPIです。読者は、Web API設計の考え方と手法を知ることができます。 はじめに 1章 Web APIとは何か 1.1 Web APIの重要性 1.1.1 APIでの利用を前提とした

    Web API: The Good Parts
    ruicc
    ruicc 2014/12/29
  • アンダースタンディング コンピュテーション

    書は計算理論をRubyでわかりやすく紹介する書籍です。コンピュータサイエンスの主要なテーマである「計算とは何か」という問いに対して、難しい数学の知識を利用をせず、Rubyを使って実際にプログラムを作りながら解説します。さらに、なぜこれらのアイデアが大切なのか、そしてそのアイデアは我々の日常的なプログラミングにどう関係していくのかを解き明かしていきます。日語版ではまつもとゆきひろさんによる「日語版まえがき」を収録。プログラミングの根底にある理論を学ぶことで、より広く深くプログラミングを考えたいプログラマ必携の一冊です。 監訳者によるサポートページ 目次 日語版まえがき はじめに 1章 Rubyひとめぐり 1.1 対話型 Rubyシェル 1.2 値 1.2.1 基データ 1.2.2 データ構造 1.2.3 Proc 1.3 制御フロー 1.4 オブジェクトとメソッド 1.5 クラスと

    アンダースタンディング コンピュテーション
    ruicc
    ruicc 2014/09/03
  • Haskellによる並列・並行プログラミング

    並列・並行プログラミングはプログラマの重要な関心事であり、常に注目を集めている話題です。これまで、関数型言語は並列・並行プログラミングに有利であると言われてきましたが、それを説明する書籍はありませんでした。書では、純粋関数型言語Haskellが提供する並列・並行プログラミングの機能を俯瞰し、実践的な問題を解いていきます。その根底にある考え方は、関数プログラミングの核心であるモジュラリティです。また書では、実際の問題を解決するときに陥りがちな落とし穴や、高い性能を出すためのtipsなどをまとめています。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ページの奥付でお手持ちの書籍の刷版、刷り年月日をご確認

    Haskellによる並列・並行プログラミング
    ruicc
    ruicc 2014/08/05
    8/21発売。めでたい。
  • エンジニアのためのフィードバック制御入門

    「フィードバック制御」の歴史は古く、18世紀に起こった産業革命に起源を持ちます。書は産業界では常識であってもソフトウェア業界では知られていなかったこの概念を、ソフトウェアエンジニアたちに広く紹介し、品質や生産性を上げることを目的に執筆された画期的かつ野心的な一冊です。著者は著名なPythonプログラマであり、ソフトウェアエンジニアの視点に立ち、理論よりも実用に重きを置いており、特に事例の多さは圧巻です。シミュレーションのコードがすべてPythonで書かれており、実際に試して、現場のプロジェクトに応用して生かすことができる実践的な内容です。 日の読者のみなさんへ 監訳者まえがき まえがき 第I部 基礎 1章 フィードバック制御への誘い 1.1 実例 1.2 最良解を見つける 1.3 制御器を構成する 1.4 偏差を累積する 1.5 まとめ 1.6 シミュレーション用のコード 2章 フィー

    エンジニアのためのフィードバック制御入門
  • ハイパフォーマンス ブラウザネットワーキング

    現代のアプリケーションエンジニアは、UIやデータ処理、開発言語、プラットフォームの仕様や癖だけでなく、サーバやネットワークについても、上から下まで、表から裏まで広く知ることを求められます。書は「ブラウザ」に関連し、インターネットで使用されるさまざまなネットワーク技術をまとめたものです。HTTP/2.0やWebRTCなどの最新技術、WebSocketやXMLHttpRequestなどのブラウザAPI、そしてそれらの土台となるTCPやUDPやトランスポート層についてまでを幅広くカバーします。書はカバーする技術範囲の広さを「パフォーマンス」という軸に沿って説明します。また改善前後の性能・速さを可能な限り具体化し、それぞれの場面においてのパフォーマンス改善幅を示します。ネットワークのデータリンク層からアプリケーション層、そして過去から近い将来までをまとめた書は、インターネットにかかわるすべて

    ハイパフォーマンス ブラウザネットワーキング
    ruicc
    ruicc 2014/05/01
    あれ電子書籍あるじゃないですか
  • 実践ハイパフォーマンスMySQL 第3版

    新しい情報を盛り込み、信頼性や正確さといった目標を重視するという前版からの方針に加えて、第3版では、MySQLの動作の仕組みに関する事実だけでなく、MySQLがそのように動作する原理を伝えたいと考えて執筆されている。そうした原理の実質的な効果を示す、より具体的なストーリーやケーススタディを盛り込んで、それらをベースとして、「MySQLの内部のアーキテクチャや処理がそうなっているとしたら、実際の使用状況で実質的にどのような効果が得られるのか」、「そうした効果はなぜ重要なのか」、「結果として、MySQLは特定のニーズにどのように適しているか、あるいは適していないか」という質問に答えている。MySQL管理者やアプリケーション開発者が求める必須の知識や手法を掘り下げて、問題や課題に対して実践的な考え方と解決の手法を示す。読者のMySQLについての理解と技術を一段高いレベルに引き上げる。改訂第3版。

    実践ハイパフォーマンスMySQL 第3版
    ruicc
    ruicc 2013/11/15
    第3版。
  • ビッグデータの倫理

    ビッグデータへの注目が過熱する一方、そこに含まれる個人情報の取り扱いについて、さまざまな議論や問題が巻き起こっています。書はビッグデータを取り扱う業務に携わる読者に向けて、ビッグデータを扱う際の倫理について考え、議論を行う枠組みについて、「アイデンティティ」「プライバシー」「オーナーシップ」「信用」という4つの軸とともに紹介します。「倫理」という、個別性が高く、明快な答えの見つけづらい問題について、読者自身や組織の中で実りのある議論をする一助となるでしょう。なお書はEbookのみの販売となります。 まえがき 1章 ビッグデータのビッグインパクト なぜビッグデータなのか? ビッグデータは何を強制するのか? ビッグデータは倫理的に中立である 何をすべきかを尋ねてはいけない 重要な概念と用語 2章 価値と行動 価値を明確に表現する 価値を行動に変える 倫理的判断ポイント 3章 現在の業務 研

    ビッグデータの倫理
    ruicc
    ruicc 2013/02/25
  • メンテナブルJavaScript

    目次 はじめに 第I部 スタイルガイドライン 1章 基フォーマット 1.1 インデントのレベル 1.2 文の終端 1.3 1行の長さ 1.4 改行 1.5 空行 1.6 命名 1.6.1 変数と関数 1.6.2 定数 1.6.3 コンストラクタ 1.7 リテラル値 1.7.1 文字列 1.7.2 数値 1.7.3 null 1.7.4 undefined 1.7.5 オブジェクトリテラル 1.7.6 配列リテラル 2章 コメント 2.1 1行コメント 2.2 複数行コメント 2.3 コメントを使う 2.3.1 難解なコードにコメントを付ける 2.3.2 エラーになりそうな箇所にコメントする 2.3.3 ブラウザ特有のハック 2.4 ドキュメントコメント 3章 文と式 3.1 波括弧を揃える 3.2 ブロック文での空白 3.3 switch文 3.3.1 インデント 3.3.2 caseか

    メンテナブルJavaScript
    ruicc
    ruicc 2013/02/20
  • 入門 機械学習

    目次 訳者まえがき はじめに 1章  Rを利用する 1.1 機械学習のためのR 1.1.1 Rのダウンロードとインストール 1.1.2 IDEとテキストエディタ 1.1.3 Rパッケージの読み込みとインストール 1.1.4 機械学習のためのRの基礎知識 1.1.5 Rに関する情報 2章 データの調査 2.1 探索と確証 2.2 データとは何か? 2.3 データ内の列の型を推論する 2.4 意味推論 2.5 数値による要約 2.6 平均値、中央値、最頻値 2.7 分位数 2.8 標準偏差と分散 2.9 探索的データの可視化 2.10 複数の列の関係の可視化 3章 分類:スパムフィルタ 3.1 白か黒か?二値分類 3.2 やさしい条件付き確率入門 3.3 初めてのベイズスパム分類器を書く 3.3.1 分類器を定義し、非スパム(難)でテストする 3.3.2 分類器をすべての種類の電子メールに対し

    入門 機械学習
  • アート・オブ・Rプログラミング

    Rは統計分野では標準ツールして使われている人気の高いオープンソースソフトウェアです。統計分野のみならず、金融、数学、物理、化学、天文、バイオ、薬学等の幅広い分野での利用をサポートする豊富なパッケージ群が用意されており、多くのユーザからの支持を集めています。書はRの強力かつ柔軟なプログラミング能力に焦点を当て、Rスクリプトを書く上でのテクニック、コツ、注意点をわかりやすく解説します。また、他言語との連携、並列R、デバッグ、コードの高速化など他のR書籍にはなかった情報も提供します。プログラミング言語としてRを活用し、その威力を最大限発揮させる上で必携の一冊です。 謝辞 はじめに 1章 Rを始める 1.1 Rの実行方法 1.1.1 対話モード 1.1.2 バッチモード 1.2 最初のRセッション 1.3 関数の概要 1.3.1 変数のスコープ 1.3.2 デフォルト引数 1.4 重要なRデータ

    アート・オブ・Rプログラミング
    ruicc
    ruicc 2012/09/12
    表紙蝙蝠?
  • HBase

    ビッグデータのランダムアクセス系処理に欠かせないHBaseについて、基礎から応用までを詳細に解説。クライアントAPI(高度な機能・管理機能)、Hadoopとの結合、アーキテクチャといった開発に関わる事項や、クラスタのモニタリング、パフォーマンスチューニング、管理といった運用の方法を、豊富なサンプルとともに解説します。日語版ではAWS Elastic MapReduceについての付録を追加。ビッグデータに関心あるすべてのエンジニアに必携の一冊です。 序文 訳者まえがき はじめに 1章 HBaseの紹介 1.1 ビッグデータの夜明け 1.2 リレーショナルデータベースシステムの問題 1.3 非リレーショナルデータベースシステム、Not-Only SQLあるいはNoSQL? 1.3.1 観点 1.3.2 スケーラビリティ 1.3.3 データベースの(非)正規化 1.4 構成要素 1.4.1 背

    HBase
    ruicc
    ruicc 2012/07/25
    あ、今日発売か
  • O'Reilly Japan - インタフェースデザインの心理学 : ウェブやアプリに新たな視点をもたらす100の指針

    デザインは相手から反応を引き出すための大事な要素です。買ってほしい、読んでほしい、行動を取ってほしいなど、相手の反応を誘い出すためにデザインをします。人間の行動原理を理解していないデザインは相手を混乱させるだけで目的の結果を得ることができません。書ではすべてのデザイナーが知るべき100の指針を実践例とともに紹介します。すべてが科学的な研究から導き出されたものです。これらの指針を理解してデザインすれば、人間の思考や行動、遊び方にマッチした直観的で人を引きつける製品――印刷物、ウェブサイト、アプリケーション、ゲーム――を作れるようになります。 翻訳者によるサポートページ。 サンプルPDF ● 「前付〜#008まで」(53MB) 目次 1章 人はどう見るのか 001 目が受け取る情報と脳が私たちに伝える情報は微妙に違う 002 対象の「あらまし」をつかむのは中心視野より周辺視野の役目 003 

    O'Reilly Japan - インタフェースデザインの心理学 : ウェブやアプリに新たな視点をもたらす100の指針