タグ

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

  • 2016年のAPI動向 | gihyo.jp

    みなさま、あけましておめでとうございます。zigorouです。昨年までソーシャルWebというキーワードでよういちろうさんが執筆されていた新春企画(昨年の記事)の後継として、APIに関する分野での技術動向やビジネス動向などを大胆に予想していくことになりました。今後おつきあいいただくかと思いますが、よろしくお願いいたします。 HTTP/1.1の再整備 2015年の一つの大きなニュースとしてはHTTP/1.1が再定義され、さらにHTTP/2が登場したことでしょう。これらの仕様群はHttpbis Status Pagesで一覧を見ることができます。 HTTP/2については後述することにしてまずはHTTP/1.1を考えてみると、HTTP/1.1の再整備によって、曖昧だった仕様の定義が厳密になり実装間での差分が小さくなっていくことが予想できます。 例えば、RFC7231 Hypertext Trans

    2016年のAPI動向 | gihyo.jp
    t_horie
    t_horie 2016/01/08
  • 第1回 機械学習を実践する前の基礎知識 | gihyo.jp

    みなさん、次のようなことができたらいいと思ったことはありませんか? 「顧客ごとに、適したタイミングと内容で、DMを送信できたら……」 「CGM系サイトへの誹謗中傷なんかのスパム投稿を自動識別できたら……」 「サーバの負荷が高まるタイミングを事前に予測できたら……」 一見するとこれらは実現していることがまったく異なりますが、じつはある共通点があります。それは「データを分析し、その結果を活用している」という点です。 Data is Kingの考えから得られるメリット かつてAmazonに在籍していたRonny Kohaviは「Data is King at Amazon」と言い、データの重要性を説きました。事実、Amazonはユーザの購買履歴から商品のレコメンデーションを行い、ユーザのサイト内の遷移履歴やクリック率からサイト構造の改善を行うなど、データを徹底的に活用していることで知られています

    第1回 機械学習を実践する前の基礎知識 | gihyo.jp
  • 第1回 Meteorをはじめよう | gihyo.jp

    Meteorとは? Meteorは、2012年4月に彗星のように登場した、新たなアプリケーションプラットフォームです。この原稿の執筆時で、バージョンは0.3.6とされており、まだまだプレビュー版の域は超えていません。また、現状ではUNIX環境(MacOS Xを含む)でしかうまく動作しないようです。 しかし、Webアプリケーション開発をとことんまで素早く、楽に行えるようにするためのさまざまな仕組みが盛り込まれていることから、登場直後からかなりの注目を集めています(公式サイトには、「⁠1日か2日でプロトタイプを、2~3週間で製品レベルのアプリを構築できるようにする」とあります⁠)⁠。 MeteorはMITライセンスに基づくオープンソースプロジェクトとして、Github上で公開されています。現在4人の開発者がフルタイムで開発に従事しており、1年以内に1.0をリリースする予定だとされています。 M

    第1回 Meteorをはじめよう | gihyo.jp
    t_horie
    t_horie 2012/05/25
  • 第1回 Node.jsとは | gihyo.jp

    はじめに 連載では、注目を集めるNode.jsを使って、Webアプリケーションを様々なクラウド環境で動かすことを最終目的にしています。Node.jsに触れたことがないJavaPHPなど普段サーバサイドで開発されている方を主な対象として、まずNode.jsの概要から紹介していきます。 Node.jsとは Node.jsとは、ブラウザGoogle Chrome用に開発されたJavaScriptエンジンV8がサーバ上でプログラムを実行できるように、ファイルやネットワークI/Oなど多くの機能を追加したものです。軽量で効率よく多くのリクエストを処理するネットワークアプリケーションの構築ができるプラットフォームになっています。いわゆるサーバサイドJavaScriptの代名詞として注目を集めています。 Node.jsでは“⁠軽量で効率良く⁠”というのを実現するために次の2つのモデルを採用しています。

    第1回 Node.jsとは | gihyo.jp
    t_horie
    t_horie 2012/04/21
  • 新春特別企画

    gihyo.jpでは,毎年新年のはじめに特別企画記事を公開しています。これまでに公開した特別企画記事を御覧いただけます。 2022年,カーボンニュートラルへの動きがソフトウェア/ITシステムの世界にやってくる IT分野におけるカーボンニュートラルの現状 ソフトウェアの電力測定に関する標準化は進んでいる? ソフトウェアの工夫で消費電力を下げることが重要視される時代になる? 開発時と運用時のソフトウェアによるCO2排出量について 開発者自身のサステナビリティは? Green by ITのところで,2022年に向けてこれが注目だ!というのを挙げると? 2022年が始まったいま,正月のうちにこれを見ておけ,これが注目だ!というオススメは? 最後に 2022年1月5日:濱野賢一朗 Progressive Web Appsの振り返りとこれから 日国内でのPWAの動向 PWA開発のスタンダード PWA

    新春特別企画
    t_horie
    t_horie 2011/01/04
  • JavaによるGoogle App Engineクラウドプログラム開発 | gihyo.jp

    Google App EngineでJavaが使用可能に 米Googleは2009年4月7日(米国時間⁠)⁠、PaaS(プラットフォーム・アズ・ア・サービス)型クラウドコンピューティング環境のGoogle App Engine(以下GAE)で、これまでのPythonに加えてJavaに対応(以下GAE for Java)したことを明らかにしました。開発者や利用実績が多いJavaに対応することで、GAEのユーザ数が一気に増えることも考えられます。 図1 Google App EngineサイトでのJava対応アナウンス Java対応GAEの機能の概要 GAEのクラウド環境はJava 6で稼働しますが、プログラム作成はJava 5およびJava 6のどちらでも可能とされています。プログラムはJava Servletでの作成が基ですが、他にJSPやServletから呼び出されるJavaBeans

    JavaによるGoogle App Engineクラウドプログラム開発 | gihyo.jp
  • 第1回 組込みLinuxをはじめよう | gihyo.jp

    Linuxとハードウェア Linuxを象徴する機能 Linuxがハードウェア上で動作をするにはプロセッサの基的な機能が必要になりますが、アプリケーション単体のROM起動ベースのソフトウェアやTronが動作するにも必要となってきますので、何もLinuxに限ったことではありません。 たいていのシステムは、コンピュータシステムとして最低限必須な機能さえあれば動作をしますが、Linuxはそのような機能だけでは動作をしません。Linuxにおいては最低限必須な機能以外にMMU(メモリ・マネージメント・ユニット)が必要となり、MMUがLinuxを象徴する機能となります。 なぜMMUがLinuxを象徴する機能かというと、Linuxの生い立ちにその理由があります。 Linuxが誕生した当時の状況は、インテルの8086ベースの原始的な16ビットプロセッサをベースとしたMS-DOSというサブルーチンの寄せ集め

    第1回 組込みLinuxをはじめよう | gihyo.jp
    t_horie
    t_horie 2010/12/28
  • 米Yahoo!、リアルタイムなMapReduceフレームワーク「S4」公開 | gihyo.jp

    2010年11月4日、米Yahoo! はリアルタイムにMapReduceを処理する「S4」をオープンソースとして公開しました。米Yahoo! ではMapReduceを行うフレームワークとして「Hadoop」を利用および開発していることで有名です。しかし、Hadoopはバッチのようないわゆるオフライン処理に向いており、リアルタイムに処理するような目的には適していません。S4はリアルタイムにMapReduceを処理する目的で開発され、すでに検索広告のパーソナライゼーションなど実際のサービスで利用されているようです。 S4はJavaで書かれており、Hadoopとはコードベースでは関係ありません。コードベースでは大きくCommunication LayerとCore Classesに分かれています。クラスタ管理にはZooKeeper、シリアライゼーションにはAvroまたはKryoを利用しています。

    米Yahoo!、リアルタイムなMapReduceフレームワーク「S4」公開 | gihyo.jp
    t_horie
    t_horie 2010/12/22
  • 第1回 詳説:デベロッパーツールの使い方 | gihyo.jp

    こんにちは、Google Chrome ExtensionsのAPI ExpertとChromium-Extensions-Japan管理人を担当している、太田と申します。いつもはクロスブラウザで連載していますが、今回はGoogle Chromeのデベロッパーツールについて紹介します。 昨今のJavaScriptHTMLCSSブームの背景には、開発環境、特にFirebugに代表されるようなデバッグツールの目覚しい発展が大きく貢献していると思われます。その反面、高機能化するデバッグツールの各種機能を使いこなすことが難しくなってきているという現実もあります。そこで、今回から全4回でGoogle Chromeに搭載されているデベロッパーツールの使い方とそれを利用したデバッグ・チューニングのノウハウをお届けしたいと思います。第1回はデベロッパーツールの機能紹介と基的な使い方を解説します。 な

    第1回 詳説:デベロッパーツールの使い方 | gihyo.jp
  • 第1回 memcachedの起動オプションを把握しよう | gihyo.jp

    1.4系で新しく追加された主な機能しては バイナリプロトコルの導入 マルチスレッドの標準化 統計の強化 などが上げられます。この1.4系の機能の詳細については前坂徹氏の連載「memcached 1.4の到来」が参考となります。ここではバージョン1.2.5と最新の1.4.5の起動オプションを比較しながら、新しく追加された機能や実際の運用で用いられる起動オプションについて説明します。 1.2系と1.4系の起動オプションの違い まず、memcachedの起動オプションの一覧(ヘルプ)を確認しましょう。memcachedのヘルプを出力するには、「⁠-h」オプションを使います。 $ memcached -h memcached 1.x.x -p <num> TCP port number to listen on (default: 11211) -U <num> UDP port number t

    第1回 memcachedの起動オプションを把握しよう | gihyo.jp
  • 特集:Hudsonを使ったアジャイルな開発入門|gihyo.jp … 技術評論社

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    特集:Hudsonを使ったアジャイルな開発入門|gihyo.jp … 技術評論社
  • 第3回 クロスブラウザの傾向と対策 | gihyo.jp

    こんにちは、太田です。第1回は各ブラウザの特徴をまとめ、第2回は環境作りについて解説したので、ようやく今回からクロスブラウザの題に入っていきます。まずはクロスブラウザ対応のパターンを整理し、そのパターンごとの対策をまとめます。 クロスブラウザとはなにか そもそも、クロスブラウザ対応とはどういうことでしょうか?ここで、この連載におけるクロスブラウザの定義を決めておきます。 サポート対象のブラウザで設計通りの表示・動作をして、たとえ未知のブラウザであっても、そのブラウザがWeb標準に沿っているなら最低限の表示・動作をすること サポート対象のブラウザについては第1回で解説した通りですが、メインターゲットはIE(6/7/8⁠)⁠、Firefox(3.6⁠)⁠、Chrome(4.1⁠)⁠、Safari(4.0.5⁠)⁠、Opera(10.51)とします。カッコ内はフルサポートするバージョンで、それ

    第3回 クロスブラウザの傾向と対策 | gihyo.jp
  • 第11回 転置索引の圧縮 | gihyo.jp

    はじめに 第2回で、索引は多くの場合圧縮されていることに言及しました。また第7回では、索引構築時にどの部分で索引を圧縮すればよいかを疑似コードを用いて説明しました。今回は、転置索引の具体的な圧縮方法について説明していきます。 圧縮の目的 中規模から大規模な索引の場合、転置リストは非常に長くなり、検索時にはディスクからの大量のデータの読み取りが行われます。転置索引(を用いた検索エンジン)では、これによる検索処理時間の増加を防ぐために、転置リストを圧縮しディスクからの読み込み時間の短縮を図ります。 この場合、圧縮された転置リストをディスクから読み込みさらに復元処理を行う必要がありますが、通常は次のようになります。 これは、近年のCPUとディスクの速度差が大きいため、主にCPUにおける処理である復元処理が高速に行えることによるものです。よって、圧縮というと容量を節約の意図で使うことが多いと思いま

    第11回 転置索引の圧縮 | gihyo.jp
    t_horie
    t_horie 2010/04/08
  • 第9回 検索エンジンの開発にあたって | gihyo.jp

    はじめに 前回までで、検索エンジンの基となる仕組みの大枠は説明しました。 今回は、復習を兼ねてこれまでの連載全体を見ていき、検索エンジンを作る上で説明が足りなかった部分を補足していこうと思います。連載では実際のコードはあまり載せられませんが、ぜひこの際に簡単な検索エンジンを作ってみることをお勧めします。 全体の構成 第2回で紹介した検索エンジンの構成をもう一度見てみましょう。 図1 検索エンジンの構成 検索エンジンは索引とその索引を構築する部分、そしてその索引を検索する部分の3つに分けられることを説明しました。連載では、索引に関しては第3~6回、構築方法に関しては第7回、そして検索方法に関しては前回の第8回でそれぞれ説明してきました。各項目をとても足早に説明してきましたが、一応全部の要素がカバーされていますので、これまでの知識を使って簡単な検索エンジンを作ることはできてしまいます。

    第9回 検索エンジンの開発にあたって | gihyo.jp
    t_horie
    t_horie 2010/03/03
  • 2010年Google Waveの旅 | gihyo.jp

    新年あけましておめでとうございます。シーサー株式会社のあんどうやすしと申します。記事では2010年Google Waveがどうなるのかということについて、多分に楽観的な予想を書いてみようと思います。 とは言っても、Google Waveは一般公開に向け非常に活発に開発が進められており、一年後どころかひと月後の予想も難しいと言うのが正直なところです。あまり時期的な記述については信用せず、だいたいこういう方向に進むのかな、くらいの軽い感じで読んでいただけると幸いです。 Google Waveとは Google Waveは、2009年5月のGoogle I/Oカンファレンスにおいて大々的に発表された全く新しいリアルタイムコミュニケーションプラットフォームで、その目指すところは「メール・チャット・ Wikiなどを統合し置き換える」という非常に野心的なものです。現在のところGoogle Waveは

    2010年Google Waveの旅 | gihyo.jp
  • 2010年のJavaScript:「これまで」と「これから」 | gihyo.jp

    2010年のJavaScriptと題しまして、JavaScript周辺の「これまで」と「これから」についてまとめてみたいと思います。 2009年までのJavaScript JavaScriptは各ブラウザベンダなどが個別に実装するという特殊性から、ブラウザ(実装)ごとの非互換性の問題に悩まされ続けてきた言語です。まず、そのJavaScript歴史を簡単に振り返ってみます。 ECMA-262 3rd editionとスピードコンテスト JavaScriptNetscape社によってLiveScriptという名前で誕生し、その後ECMAScriptとして標準化が進みました。1999年12月にECMA-262 3rd editionが策定されてから、Internet ExplorerのJScript、MozillaのSpiderMonkey(TraceMonkey⁠)⁠、SafariのJav

    2010年のJavaScript:「これまで」と「これから」 | gihyo.jp
  • JavaでLL風な開発を実現するWebフレームワーク「Play Framework」 | gihyo.jp

    RubyPHPなどLightweight Language(LL、軽量言語)な世界では、フルスタックなWebフレームワークが乱立している状況です。しかしJavaには有名と言えるフルスタックなWebフレームワークはありません。そんな中、まるでRailsのようなスタイルで開発ができるJavaフレームワーク「Play framework」が登場しました。 Play frameworkはPure Javaでコントローラやモデルを記述しますが、コード量は驚くほど少なく済みます。 しかも、Javaファイルを編集してブラウザを更新するだけで反映させることができます。これは内部でEclipse JDTコンパイラを利用していることで実現できています。ソースに記述ミスがあってもブラウザ上にコンパイルエラー部分を行番号付きでカラフルに示してくれるのも親切です。 モデルはHibernateベースのJPA(Jav

    JavaでLL風な開発を実現するWebフレームワーク「Play Framework」 | gihyo.jp
    t_horie
    t_horie 2009/12/29
  • 第6回 Firebug要らずなChromeのWeb Inspector | gihyo.jp

    こんにちは、太田です。今回はChrome拡張の開発時のノウハウとして、開発ツールの解説をお送りします。Google ChromeにはWebKit由来のWeb Inspectorというデバッグツールが搭載されています。以前にも少しだけ紹介しましたが、今回は具体的な使い方まで掘り下げて解説します。なお、今回のWeb Inspectorの解説はChrome拡張だけでなく、JavaScriptを使ったウェブアプリケーションの開発に一般的に役立つノウハウとなっています。 WebKitのWeb Inspector Chrome拡張の開発の必需品であるWeb Inspectorですが、こちらは元々WebKit(Safari)で開発されたもので、Google ChromeChromium)に搭載されているものはさらに機能が追加されています。FirefoxにはFirebugという定番ツールがありますが、そ

    第6回 Firebug要らずなChromeのWeb Inspector | gihyo.jp
  • 第4回 転置索引の詳細 | gihyo.jp

    前回は転置索引の概要を説明しました。今回は転置索引をもう少し詳しく見ていきます。 転置索引=辞書+転置リスト 転置索引は大きく分けて2つの部分から構成されています。文書に出現する単語のリストである「辞書」と、その辞書にある各単語がどの文書に出現するかを表したポスティングリストの集合の「転置リスト」からなります(図1⁠)⁠。ポスティングリストやポスティングに関しては前回簡単に説明しましたが、図を見て再度確認してください[1]⁠。 図1 転置索引の構成 辞書は単語だけでなく、その単語に対応するポスティングリストの位置情報を含んでいます。よって、辞書を探索することで、該当する単語のポスティングリストを取り出すことが可能となります。 一方、ポスティングリストは、どの文書に出現するかを表すのに最低でも文書のID(数値)が必要となります。書籍の場合は、文書はページなのでページ番号が文書IDとなります。

    第4回 転置索引の詳細 | gihyo.jp
  • 検索エンジンはいかにして動くのか?:第3回 転置索引とは何か?|gihyo.jp … 技術評論社

    はじめに 前回までは、検索エンジンの概要を見てきました。今回からは、全文検索の中核となる索引構造について見ていきます。 第1回の復習になりますが、全文検索には主に2種類の方法がありました。検索したいデータに対して前処理をせず、検索時に文書を走査するgrep型と、あらかじめ索引を作っておいて検索時にその索引を利用する索引型です。今回から数回にわたり、索引型において最も普及している転置索引という索引構造について解説していきます。 転置索引とは さて、転置索引とは何なのでしょうか? 身近な所で例にあげると、書籍(専門書など)の巻末にある索引は、における転置索引といえます。巻末には通常、キーワード(単語)とそのキーワードが出てくるページが記載されています。キーワードはアイウエオ順やアルファベット順に並べられているので、探したいキーワードを簡単に見つけることができ、そのキーワードがどのページで言及

    検索エンジンはいかにして動くのか?:第3回 転置索引とは何か?|gihyo.jp … 技術評論社
    t_horie
    t_horie 2009/12/08