タグ

ブックマーク / gihyo.jp (110)

  • 第15回 書籍をEPUBフォーマットの電子書籍にするプロセスを公開!(1) | gihyo.jp

    先月(6月11日⁠)⁠、自著『Webデザイン標準テキスト』(⁠技術評論社)が発売されました。これからWebデザインを学ぶ初心者を対象とした解説書です。この度、プロモーションの一環として、書の一部がEPUBフォーマットの電子書籍として配布されることになりました。 今回と次回の2回に渡り、この書籍を電子化するプロセスを公開したいと思います。今回(第15回)はプランニングについて、次回(第16回)はオーサリングについて紹介します。 マッシュアップ可能な電子書籍の可能性 『Webデザイン標準テキスト』は、掲載されている図版に対してクリエイティブコモンズのライセンスを適用しており、非営利であれば図版を自由に複製・改変することができます。 図版データ(Adobe Illustrator形式)は、専用サイトからまとめてダウンロードできますので、たとえば、学校の先生が授業でこの書籍を教科書として使った場

    第15回 書籍をEPUBフォーマットの電子書籍にするプロセスを公開!(1) | gihyo.jp
  • 第2回 組込みLinuxが起動するまで | gihyo.jp

    Linux起動の概要 Linux起動前 Linuxでは基的にシステムの初期設定をするので、Linux以前の状態ではほとんどの初期設定処理は不要です。 Linux以前ではLinuxをロードする対象であるSDRAM領域を初期化する処理は必要となります。一般的な組込みLinuxボードでは大容量フラッシュROM上にLinuxカーネルが書き込まれていることが多いので、RAM領域が使えるようにさえすれば、あとはROM上からRAM上へデータコピーをするだけでLinuxが起動できます。 SH7706LSRボードでは大容量フラッシュROMではなくSDカード上にLinuxカーネルがファイルとして書き込まれていますので、Linux起動以前にSDカードアクセスやファイルシステムの操作ができていないといけません。SH7706LSRボードではSDカードアクセスやファイルシステムの操作が可能なMESというシステムが書

    第2回 組込みLinuxが起動するまで | gihyo.jp
  • 第1回 機械学習 ことはじめ | gihyo.jp

    次のサービスや製品はどれも身近にありますが、これらに共通していることはなんでしょう。 Amazonの「この商品を買った人はこんな商品も買っています」 はてなブックマークの「関連エントリー」 Google 翻訳 Google 日本語入力 メールクライアントのスパムフィルタ デジタルカメラの自動顔認識 ニンテンドーDSの手書き文字認識 買い物履歴、ユーザが書いたコメントやタグ、Webに無数にあるページ、メール、画像や動画と対象はそれぞれ異なっていますが、どれも「データから有益な情報を取り出す」ということを行っています。 これらは「機械学習」という技術を使って実現されているのです。 機械学習の応用範囲 機械学習は冒頭で挙げた以外にも、様々な分野で使われています。 例えば、ノイズ除去や特徴の抽出を目的とした利用パターンがあります。音声認識や画像認識、文字認識(OCR)などはその代表格です。それらも

    第1回 機械学習 ことはじめ | gihyo.jp
  • Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp

    2010年4月6日、Twitterは独自に開発した分散フレームワーク「Gizzard」をGitHubにオープンソースとして公開しました。Gizzardは「シャーディング」と呼ばれる、1台に格納するとパフォーマンスに影響を及ぼす大容量なデータベースを複数台に分割することで解決を図る手法をサポートするフレームワークです(図1⁠)⁠。TwitterのバックエンドにScalaが使われていることが以前話題となりましたが、このGizzardもScalaで書かれています。 図1 Gizzardのシステム構成モデル 出典:http://github.com/twitter/gizzard Gizzardはミドルウェアとして動作し、RailsPHPなどで動くWebフロントエンドからのリクエストを受け取り、My-SQLやRedisのようなインメモリDB、Luceneなど各種データストアへ渡します。Twitt

    Twitter、分散フレームワーク「Gizzard」を公開 | gihyo.jp
  • 第5回 APIの全体像とデータの投入 | gihyo.jp

    前回でCassandraへのアクセスするコードの基をおさえました。今回解説するのは以下の2点です。 CassandraのAPIの全体像 Cassandraにデータを投入するコードの詳細 3つの分類からAPIの全体像をおさえる 第1回でもご紹介しましたが、CassandraのクライアントAPIはThriftによって自動生成されます。APIは非常にシンプルなものが幾つかあるだけで、覚えるのもさほど難しくはありません。連載ではその中からよく使うものに特化してご紹介していきます。 以下にCassandraのAPIを、データ挿入系・データ検索系・認証/管理系の3つに分類してまとめてみました。まずはこれらにひと通り目を通してみてください。 データ挿入/更新/削除のAPI データ挿入、更新、削除のAPIは以下の表のとおりです。現実的によく使う中心的なAPIはbatch_mutate、removeの2

    第5回 APIの全体像とデータの投入 | gihyo.jp
  • 第4回 JavaでCassandraにアクセスする | gihyo.jp

    キースペース、カラムファミリの設定は以上です。 他にも、レプリケーション数やレプリケーションをどのように行うかなどの指定がありますが、今回は割愛します。 コミットログとデータディレクトリを設定する 次はコミットログとデータディレクトリの設定を行います。 Cassandraは、書き込み時には操作をすべてコミットログに追加で書き込んでいき、その実体(Memtableといいます)はメモリ上にカラムファミリごとに展開していく仕組みになっています。Memtableはサイズの閾値等をもっており、その閾値に達するとディスクに書き出します。この操作のことを「フラッシュ」といい、ディスクに書き出す構造のことを「SSTable」といいます。SSTableは一度書き出されるとその内容は不変で、実際の物理データとしては以下の3つがセットで書き出されます。 インデックス ブルームフィルタ データファイル インデック

    第4回 JavaでCassandraにアクセスする | gihyo.jp
  • 第3回 Cassandraのデータモデルを理解する | gihyo.jp

    前回までの説明でCassandraのインストールと動かすところまでいきました。今回はCassandraのデータモデルを理解して、実際にデータにアクセスしてみましょう。 データはすべて4次元または5次元の連想配列 Cassandraのデータは非常にシンプルなデータモデルを持っています。データはすべて4次元または5次元の連想配列のようになっています。 4次元の場合は以下の形で値にアクセスします。 [キースペース][カラムファミリ][キー][カラム] そして5次元の場合は以下の形でデータを特定します。 [キースペース][カラムファミリ][キー][スーパーカラム][カラム] Cassandraのデータモデルは以下の4つの概念で成り立っています。 カラム: データの最小単位。実際のキーと値、そしてタイムスタンプを持つ。 スーパーカラム: カラムの集合を扱う単位。 カラムファミリ: カラムまたはスーパ

    第3回 Cassandraのデータモデルを理解する | gihyo.jp
  • 第2回 Cassandraのインストールから起動まで | gihyo.jp

    前回はCassandraとは何かを簡単に説明しました。第2回では、Cassandraを実際にインストールして開発環境で動かしてみましょう。 Cassandraをインストールしよう 環境を確認する まずは環境の確認をしましょう。筆者の環境は以下のようになっています。 Windows 7 Professional Sun JDK 1.6.0_18 64bit Eclipse 3.5.1 この連載ではおもにWindowsでの環境を想定しています。ただ、CassandraはJavaベースなので、MacLinuxなど別OSでも同様に動くはずです。 Cassandraをダウンロードする 連載では現時点での最新版Cassandraha 0.6.1を使います。以下のサイトからダウンロードできます。 The Apache Cassandra Project URL:http://cassandra.ap

    第2回 Cassandraのインストールから起動まで | gihyo.jp
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
  • 第8回 実践DOMスクリプティング#1:HTMLとテキストの操作 | gihyo.jp

    こんにちは、太田です。前々回、前回でDOMの基礎を簡単に解説しました。今回からは、DOMを使った実用的なスクリプトを解説していきます。特に今回はHTMLの操作、テキストの操作にフォーカスを当てていくつかのサンプルコードを解説していきます。 HTML操作の基 JavaScriptによってHTMLを書き出したり、一部を書き換えたり、削除したりといった方法は実は様々な方法が用意されています。目的に合わせて適切な方法を選ばないと非効率だったり、最悪クロスサイトスクリプティングなどの問題を抱えてしまう危険もあります。 document.writeと同期読み込み JavaScriptHTMLを書き出すというと、最初に学ぶのはこのdocument.writeかもしれません。いわゆるprint文のようにシンプルなAPIなので、入門書の最初のサンプルなどで扱われることも多いようです。しかし、docume

    第8回 実践DOMスクリプティング#1:HTMLとテキストの操作 | gihyo.jp
  • WEB+DB PRESS Vol.57

    2010年6月24日紙版発売 2014年12月23日電子版発売 B5判/200ページ 定価1,628円(体1,480円+税10%) ISBN 978-4-7741-4272-2 ただいま弊社在庫はございません。 Amazon 楽天ブックス ヨドバシ.com Fujisan(定期購読のみ) 電子版 Gihyo Digital Publishing honto 書のサポートページサンプルファイルのダウンロードや正誤表など 特集1 タッチパネル,GPS,カメラをフル活用! [Xperia,Desire対応]Android格開発 Androidを搭載したスマートフォン向けのアプリ開発が注目を集めていますが,タッチパネル・GPS・カメラなどを活用するのは,Webアプリケーション開発者の方には敷居が高く感じられるかもしれません。特集では,それらのデバイスを駆使したアプリの開発方法を,サンプルを

    WEB+DB PRESS Vol.57
  • 第1回 頓智・CEO 井口尊仁 | gihyo.jp

    【写真提供:頓智・】 「哲人CEO」―エキゾチックな風貌でモバイルインターネットの未来像を語る頓智・(⁠トンチドット)の井口尊仁CEOに、そんな印象を受けました。しかし、その原点には意外に泥臭い話が…。 Macを没収されたCOBOLプログラマ時代 中島:セカイカメラは、2009 Crunchies Awards[1]に選出されるなど、海外からも高く評価されているユニークなプロダクトだと思いますが、日で突然変異的にこういうものが飛び出してきたことに驚きました。そこでまず、井口さんの個人史というか、これまでどんな分野で活躍されていたのかについて、お聞きしたいのですが。 井口:最初はCOBOL で金融系オンラインシステムの開発をしていました。 中島:そうなんですか、それは意外ですね。 井口:私はコードを書くことが大好きですぐに書いてしまうんですが、そこは1月計算であまり早めに終わると困る世界で

    第1回 頓智・CEO 井口尊仁 | gihyo.jp
  • Software Design読者の集い … 技術評論社

    概要 インターネットの勃興からコンピューティングの進化を見続けたSoftware Designは,今年で創刊20周年を迎えることとなりました。これまで応援くださった読者のみなさまと,誌初のイベントを企画しました。 プログラム 18:00 開場 18:30~19:10 小飼弾 & SD連載歴20年Bart Eisenbergスペシャル対談 コンピュータとインターネットの歴史から iPadな「今」と「未来」を考える! 誌連載「小飼弾の コードなエッセイ」著者,小飼弾さんと,創刊以来,20年に渡ってSoftware Designに執筆し続けているBart Eisenbergさんに,UNIXやインターネットの歴史を振り返りながら,iPadAndroidといったAppleGoogleのテクノロジが世の中を賑わせている「今」を語っていただきます。 当日は,下記からいくつかのテーマをピックアップ

  • 第35回 iPad対抗のAndroidタブレット達 | gihyo.jp

    今回は、iPad登場により白熱してきたタブレット市場にフォーカスを当て、Androidタブレットの動向を紹介します。 始まったタブレット市場 iPadが5月10日に予約を開始しました。 熱心なユーザは、3G版のiPadを予約するためにソフトバンクショップに並ぶほどで、IT関連以外のメディアでも多く取り上げられ話題になりました。また、4月30日時点で、端末出荷台数が100万台に達しており、タブレッド型端末の中では桁違いの数を誇ります。 筆者は、古くからあったタブレットを、Appleが今の時代に合わせて再定義した物がiPadだと考えていますが、この状況は、ややもすれば、タブレット=iPadとなりそうな勢いです。 Androidもタブレッド型端末がリリースされていますが、iPadほど話題にならず、市場に受け入れられたとも言えません。ただ、利用スタイルをiPadが定着させつつあり、ならば、もう一度

    第35回 iPad対抗のAndroidタブレット達 | gihyo.jp
  • 第1回 一生の仕事を選ぶということ | gihyo.jp

    「一度しかない人生、思いっきり楽しもうぜ」 酒の席になるとやたらと人生哲学みたいなものを語り出して部下や後輩を困らせるという人がたまにいるが、私もあの手の「説教」を聞くのは得意ではない。しかたがないので、「⁠はあ、そうですか」とか「勉強になります」とか言いながらも、心の中では「早く終わらないかな」とか、その日に解決できなかったバグを「明日の朝にはどう攻略しようか」と作戦を練ったりしている私だ。 じゃあ自分なりの「人生哲学」みたいなものをまったく持っていないかというと、そうではない。ただ、そんな話はネチネチと時間をかけて語るものでもなければ、ましてや酒の席でするのに適した話ではないと思っているだけのことだ(私が、下戸だというのはさておいて⁠)⁠。 では具体的には何かと言えば、「⁠自分が当にやりたいことを見つけろ」という、とても単純な話だ。言い方を変えて「わがままに生きろ」でも「自分に正直に

    第1回 一生の仕事を選ぶということ | gihyo.jp
  • Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp

    Google Chrome 5のリリースが刻一刻と迫ってきました。その注目の新機能と開発者向けの変更点に加え、Chrome 6を見据えた今後のスケジュールなどを詳細にお届けしたいと思います。 まず、Chrome 5の最大ニュースはなんといってもMac版、Linux版がそれぞれ正式にリリースされる予定という点です。これまで、Mac版とLinux版はベータ版と開発版が提供されていましたが、ついに安定版がリリースされる予定です。特にMac版はMac OS Xに馴染むようにかなりの改良が加えられているので、注目のリリースとなりそうです。 さて、これまでのリリースを簡単に振り返ってみます。シンプルで高速なブラウザとしてChromeがリリースされてから、Chrome 2では基機能の充実と高速化、Chrome 3ではテーマのサポート、Chrome 4では拡張機能のサポートとブックマーク同期、Chrom

    Google Chrome 5の新機能とChrome 6の計画 | gihyo.jp
  • 第4回 Androidの肝,アクティビティ|gihyo.jp … 技術評論社

    前回のおさらい 前回は、サンプルプログラム「SkeletonApp」をビルドして、エミュレーターと実機で動作確認を行い、エミュレータと実機では操作感が違うことをご説明しました。 今回は、Androidの肝でもあるアクティビティを取り上げます。 アクティビティとは? アクティビティは、Androidの画面に相当し、ユーザが操作する画面と操作に対する処理を行います。画面を持つ物はアプリは、必ずアクティビティを持ちます。 これを「Windowsで例えると○×です」と言えれば、話しが早いのですが、Windowsには似たオブジェクトが存在しません。たとえば、同じ画面に相当するウィンドウと比較すると、以下の違いがあります。 状況に応じて分岐する遷移状態を持つ インスタンスの保存・復帰する仕組みを持つ Android OSのタイミングで、強制終了・再起動される 少々難解な存在ですが、Androidのアプ

    第4回 Androidの肝,アクティビティ|gihyo.jp … 技術評論社
  • Webコミック「21日でC++を習得する方法」 | gihyo.jp

    「Abstruse Goose」という海外のWebコミックです。IT系の海外コミックとして「ディルバート」が有名ですが、このコミックもプログラミング系のネタが多いです。 今回取り上げたのは「How to Teach Yourself Programming」と題したもので、プログラミング習得にかかる時間をテーマにしています(図1⁠)⁠。まず、長い時間をかけて仕事を通じてプログラミングを学びます。そして物理学や生物学についても学び、その知識で若返りの薬とタイムマシンを作ってプログラミング学習開始から21日後に戻り、過去の自分と入れ替わります。最後に「私が知る限り、これがC++を21日で学習する最も簡単な方法だ」と皮肉を含んだコメントが書かれています。 ちなみに21日という日数は、洋書にてポピュラーである入門者向けシリーズ『Teach Yourself ◯◯ in 21 Days』というタ

    Webコミック「21日でC++を習得する方法」 | gihyo.jp
  • Software Design 2010年5月号

    2010年4月17日紙版発売 B5判/216ページ 定価1,341円(体1,219円+税10%) ただいま弊社在庫はございません。 Amazon 楽天ブックス ヨドバシ.com Fujisan(定期購読のみ) 書のサポートページサンプルファイルのダウンロードや正誤表など 第1特集 TwitteriPhone/クラウド時代を生き抜くための システム基盤の[新]常識 スマートフォン,分散化,検索技術,仮想化,大規模化 TwitteriPhone電子書籍などをはじめ,コンピュータ,ITによって世の中や社会のしくみが大きく変わる中,その付加価値の鍵はソフトウェアプログラムが握っているといっても過言ではありません。特集では,こうした流れの中で,新人エンジニアの方々がどんな知識・考え方を身に付けておく必要があるのか,マルチコア,分散化,検索技術,仮想化,大規模システム運用,スマートフォンな

    Software Design 2010年5月号
  • 第4回 前提条件の記述 | gihyo.jp

    これまで説明してきたDスクリプトでは、モジュール名や関数名といった単位で採取対象を特定していました。 今回は、もっと複雑な採取対象の絞り込みを可能とする、前提条件の記述方法について説明したいと思います。 特定関数の呼び出し契機での絞り込み 連載でこれまで例示してきたDスクリプトは、特定の関数から引数や戻り値を採取する一部の例外を除いては、基的に全ての関数フローを採取するものでした。 しかし、必ずしも全ての関数フローの採取が必要なケースばかりではありません。むしろ全ての関数フローを採取した場合、以下のようなデメリットが生じます。 採取結果の中から調査対象を特定するのが難しくなる 採取結果の記録に必要なディスク領域が増加する このようなデメリットを無くすためには、採取範囲の絞り込みが必要です。 たとえば、リスト1のプログラム(show_nesting)を想定してみましょう。 リスト1 関数

    第4回 前提条件の記述 | gihyo.jp