タグ

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

  • 第2回 AnyEventでイベント駆動プログラミング (1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。第2回は、Japan Perl Association代表理事の牧大輔さんで、テーマはAnyEventです。 はじめに 昨今のPerl界で最も熱い話題がイベント駆動プログラミングです。イベント駆動プログラミングはいわゆる「リアルタイムWeb」などと呼ばれる、大量のデータや接続をさばきつつも更新通知の速さが重要となるアプリケーションでは必須技術で、今後のエンジニアにとって最も重要な知識の一つと言えるでしょう。 イベント駆動プログラミング自体はPerlでも以前からさまざまな用途に使われてきましたが、それがまた見直されているのは、従来のイベント駆動プログラミング用ツールキットの使いやすさをはるかに凌駕するAnyEventというモジュールが成熟期を迎えたためです。 イベント駆動プログラミングとは AnyEventの解説に入る前に、簡単

    第2回 AnyEventでイベント駆動プログラミング (1) | gihyo.jp
    sucrose
    sucrose 2010/08/04
  • 第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp

    「締め切りを守ること」の大切さ 今までたくさんの日米のエンジニア仕事をしてきた。その中には私よりも明らかに「賢いエンジニア」もいたし、ものすごい生産性でプログラムを作ってくれる「馬力(ばりき)のあるエンジニア」もいた。しかし、そんな中でも、私がものを作るうえで最も大切だと考えている「あること」をキチンとこなせる人は100人に1人もいなかった。その「あること」とは、「⁠常に締め切りを守れるように仕事をすること」である。 チームで仕事をする場合、どうしてもお互いが担当するタスク(=作業)の間に依存関係が生じる。そんなときに、どれか一つのタスクの完了の遅れが、ほかのタスクの完了に波及し、それがタスク間の競合を引き起こして全体のスケジュールがさらに遅れる、という事態はソフトウェア開発の現場ではよく見られる。そんな状況をできるだけ回避するには、プロジェクトに関わる人全員が、自分に割り当てられたタス

    第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp
    sucrose
    sucrose 2010/07/20
  • 第1回 WebSocket登場までの歴史 | gihyo.jp

    はじめに 初めまして。NTTアドバンステクノロジの金城と申します。幸運にも記事を執筆させていただけることになりました。WebSocketという新しいウェブの規格についての連載を、全4回の予定でお届けします。 用語統一について WebSocketは「WebSocket」「⁠WebSockets⁠」⁠、単語を切り離した「Web Socket」等、表記に揺れがあります。2009年12月22日のワーキングドラフトのタイトルは「The Web Sockets API」となっていますが、2010年4月26日のエディターズドラフトでは「The WebSocket API」となっています。この連載では、最新の仕様書に則り、用語を「WebSocket」で統一します。 HTML5とWebSocketの関係 WebSocketは、もともとHTML5の一機能として仕様の策定が進められていました。しかし、Web S

    第1回 WebSocket登場までの歴史 | gihyo.jp
    sucrose
    sucrose 2010/07/17
  • 第32回 Encode:日本語だけ扱えればよいのではなく | gihyo.jp

    一般的には推奨されないencodingプラグマ 前回取り上げたencodingプラグマは、簡単なjperl用のスクリプトを移植したい場合には便利ですが、perlunifaqというPerl付属のマニュアルにははっきり「Don't use it.」と書いてあるくらい、一般的には使えないプラグマと認識されています。 前回も見たように、encodingプラグマが対応しているのは、ソースコードに埋め込まれている文字列やそれに類する正規表現、そして標準入力からのデータを指定された文字コードからPerlの内部表現に変換し、標準出力へ出力する際には内部表現を指定された文字コードに変換することだけです。ほかのファイル入出力部分や、コマンドラインから受け取った引数、標準エラー出力などの変換は行わないので、ちょっと凝ったことをしようと思うと、結局「外から入ってきたものはデコード、外に出すものはエンコード」という

    第32回 Encode:日本語だけ扱えればよいのではなく | gihyo.jp
    sucrose
    sucrose 2010/06/01
  • コンピュータ・ビジョンの業界動向 | gihyo.jp

    あけましておめでとうございます。以前このgihyo.jpで「OpenCVで学ぶ画像認識」というタイトルで連載をさせていただいた皆川です。 今回、技術評論社様から「コンピュータ・ビジョンの今」についての執筆依頼をいただきました。私が普段ウォッチしている業界や技術分野には偏りがあるため、俯瞰的な形での解説は難しいかもしれませんが、私の独断と偏見で最近の動向についてまとめてみたいと思います。 ここでは、主に以下の3点について述べさせていただければと思います。 ビジネスでの動向 アカデミックでの動向 コミュニティでの動向 「コンピュータ・ビジョンってなに?」という方は、「⁠OpenCVで学ぶ画像認識」の第1回をお読みください。 ビジネスでの動向 拡張現実感(AR) 昨年、IT業界で間違いなく一つの流行語となったのは“⁠拡張現実感(AR: Augmented Reality)⁠”でしょう。ARは現実

    コンピュータ・ビジョンの業界動向 | gihyo.jp
    sucrose
    sucrose 2010/01/03
  • 第20回 Email::Sender:メールを送信する | gihyo.jp

    メール送信のあれこれ たとえばウェブアプリケーションでなにかの注文を受け取ったとき、あるいはシステム管理ツールでなにか異常を発見したとき、ユーザや管理者にメールを送れるようにしたい、というのはよくある要件です。昔はヒアドキュメントやテンプレートエンジンなどを使って送信したいメールを用意したあと、sendmailへのパイプを開いてメールを流し込んでいたものですが、いまはメールの作成から送信まで、すべてモジュールを使って実現できるようになっています。 とはいえ、需要が大きいだけにメール関係のモジュールは山のようにあります。ディストリビューション(パッケージ)の数だけで500を数えますし、メール関係の名前がついたモジュールは現在CPANにアップロードされている7万以上ものモジュールのほぼ1割を占めるほどです。これではどれを使えばよいのかわからないという声があがるのも当然でしょう。 そこで今回はP

    第20回 Email::Sender:メールを送信する | gihyo.jp
    sucrose
    sucrose 2009/11/27
  • 検索エンジンはいかにして動くのか? 記事一覧 | gihyo.jp

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

    検索エンジンはいかにして動くのか? 記事一覧 | gihyo.jp
    sucrose
    sucrose 2009/11/10
  • Web標準とその周辺技術の学び方 記事一覧 | gihyo.jp

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

    Web標準とその周辺技術の学び方 記事一覧 | gihyo.jp
    sucrose
    sucrose 2009/07/24
  • 第4回 UTF-8の冗長なエンコード | gihyo.jp

    今回は、文字コードに関連するセキュリティの話題では古参ともいえるUTF-8の冗長なエンコードというテーマについて紹介します。 UTF-8とは UTF-8は、各文字を1~4バイトの可変長で表現するUnicodeの符号化方式のひとつです。 U+0000からU+007Fの範囲の文字を0x00から0x7Fの1バイトで表現しているため、US-ASCIIと互換性がある、バイト列の途中からでも文字の先頭バイトを簡単に検出できる、多バイト文字の途中に0x00や0x5C(\⁠)⁠、0x2F(/)などが現れない、などの特徴があります。 UTF-8での文字のビットパターンは表1のようになります。 表1 UTF-8でのビットパターン

    第4回 UTF-8の冗長なエンコード | gihyo.jp
  • 第1回 UTF-7によるクロスサイトスクリプティング攻撃[前編] | gihyo.jp

    みなさん、はじめまして。はせがわようすけと申します。 最近、文字コードと関連したセキュリティの話題を目にすることが増えてきました。文字コードを利用した攻撃は技術的に未開拓ということもあり、参考となる情報がなかなか見当たりません。この連載では、文字コードを利用した攻撃やそれに対する対策について正しい知識を解説していきます。 文字コードとセキュリティが関連するもっとも大きな点は、やはり文字列の比較でしょう。「⁠危険な文字列の検出」「⁠安全な文字列であることの確認」といった文字列の比較は、セキュリティを考えるうえで避けて通れない処理だと思います。 文字列の比較においては、単純にバイト列を比較するだけでは不十分で、文字列がメモリ上でどのようなバイト列として格納されているのか(このルールを符号化方式あるいは文字エンコーディングと言います)に注意しなければならないこともあるでしょう。攻撃者は巧みに文字

    第1回 UTF-7によるクロスサイトスクリプティング攻撃[前編] | gihyo.jp
    sucrose
    sucrose 2009/03/20
  • 第1回 「モダンPerl」ってなんだろう? | gihyo.jp

    「モダンPerl」という言葉の流行 先日、国内有数のPerlハッカーである牧大輔氏が『モダンPerl入門』という書籍を刊行しました。 日Perlユーザーのハブサイトを目指しているperl-users.jpでも「モダンなPerl入門」と題して「古来から親しまれているPerl入門とはひと味違う、今風のPerl入門テキスト」を作ろうという動きがあります。 海の向こうでは、Perl 6の言語仕様の策定にたずさわっているクロマティック(chromatic)氏が「Modern Perl Books」というウェブサイトを開設して、「⁠モダンPerl」についての考察を始めました。氏はその名もModern::Perlというモジュール[1]を公開して「モダンPerl」の啓蒙に努めています。 個人の主義主張に過ぎないのでしょうか? でも、この「モダンPerl」とはいったい何なのでしょうか。 字面から「今風の

    第1回 「モダンPerl」ってなんだろう? | gihyo.jp
    sucrose
    sucrose 2009/02/23
  • 良いコ―ドへの道―普通のプログラマのためのステップアップガイド:第2回 名前付け重要。または,良いコードは良い名前から生まれるんです。―その1 良い名前の条件|gihyo.jp …

    良いコ-ドへの道―普通のプログラマのためのステップアップガイド 第2回名前付け重要。または、良いコードは良い名前から生まれるんです。―その1 良い名前の条件 Coding is freedom(犬井ヒロシ風) プログラミングは自由です[1]⁠。たとえば「コネクションに接続できないときの例外クラス」が必要になったら、「⁠FatalConnectException」「⁠CannotConnectException」「⁠ExternalConnetException」といったふうに、いかようにも作成することができます。設計やアーキテクチャの決定なども組み合わせは無限にあり、どれを選択するかに絶対的な決まりはありません。今回は自由だからこそ難しい「名前付け」についてのお話です。 良い名前をつけよう プログラミングを行っていると、変数名、メソッド名、クラス名など「名前」を考える場面が多々あります。良

    良いコ―ドへの道―普通のプログラマのためのステップアップガイド:第2回 名前付け重要。または,良いコードは良い名前から生まれるんです。―その1 良い名前の条件|gihyo.jp …
    sucrose
    sucrose 2008/11/15
  • 連載:良いコ―ドへの道―普通のプログラマのためのステップアップガイド|gihyo.jp … 技術評論社

    最終回 配列/コレクションを利用した抽象化―その5 Step4:配列/コレクション化して抽象化する 縣俊貴 2009-05-18

    連載:良いコ―ドへの道―普通のプログラマのためのステップアップガイド|gihyo.jp … 技術評論社
    sucrose
    sucrose 2008/11/15
  • エンジニアの未来サミット:イベント動画 | gihyo.jp

    9月13日に開催された「エンジニアの未来サミット」当日の模様を、動画で公開します。 動画はニコニコ動画を使用して配信しています。ニコニコ動画のアカウントをお持ちでない方も、このページ上で動画を再生できます(動画上へのコメントの書き込みはできません⁠)⁠。 当日イベントをご覧いただけなかった皆さんは、ぜひこの機会にご覧ください。また、すでに多くの皆様からご意見・ご感想を寄せていただいておりますが、ビデオをご覧になった皆様の声もお聞かせいただければ幸いです。いただいたご意見・ご感想は、今後のイベント運営の参考とさせていただきます。 最後に、イベントの会場をご提供いただいたパソナテック様、動画撮影でお世話になったcojiさん(※1⁠)⁠、そして、会場に足を運んでいただいた皆様や、Ustream.TV中継をご覧になってコメントをいただいた皆様に、改めてお礼申し上げます。 オープニング ニコニコ動

    エンジニアの未来サミット:イベント動画 | gihyo.jp
    sucrose
    sucrose 2008/09/30
  • 独学で極める “Webデザイン”の技と心:第10回 CSS Spritesでサイトを高速化|gihyo.jp … 技術評論社

    今日は、CSSを使ってサイトを高速化するテクニック「CSS Sprites(CSSスプライト⁠)⁠」についてのお話をさせていただきます。 サイトの高速化というと、プログラムの最適化を行ったり、サーバのチューニングを行ったりというイメージがあるかと思います。実はCSSを上手に使うことによっても、サイトの高速化を行うことができます。しかも、かなりの効果が期待できるのです。 CSS Spritesとは? 通常、ウェブページを制作する場合、デザインファイル(psdやpngなどの画像)をスライスし、HTMLのimg要素として埋め込んだり、CSSの背景画像として指定していることと思います。 それらの画像を一つにまとめ、1度の読み込みでのリクエスト数を減らすテクニックのことを「CSS Sprites」と呼びます。 このテクニックは、以前からマウスオーバーメニューを実現する際にも使われていたものでもありま

    独学で極める “Webデザイン”の技と心:第10回 CSS Spritesでサイトを高速化|gihyo.jp … 技術評論社
    sucrose
    sucrose 2008/05/27
  • 特集:Firefox 3とFirebugで始めるJavaScript開発|gihyo.jp … 技術評論社

    第3回Command Line APIとその活用、各タブからのデバッグ方法 堀邦明 2008-05-21

    特集:Firefox 3とFirebugで始めるJavaScript開発|gihyo.jp … 技術評論社
    sucrose
    sucrose 2008/05/08