タグ

ブックマーク / xtech.nikkei.com (88)

  • オープンソースのブログ・ツール「WordPress」って知ってますか?

    ブログのツールと言えばSix Apartの「Movable Type」が定番だが,海外では少し事情が変わってきているようである。今,米国のAutomatticという小さな会社が手がける「WordPress」が注目を浴びている。「Google Trends」で見てみると,Movable Typeはここ何年もほぼ横ばいで推移し,緩やかに下降しているのが分かる。これに対しWordPressの勢いはすごい。日以外のすべての国でMovable Typeを上回っている。北米はもちろん,とりわけシンガポールやマレーシアといったアジア圏,ノルウェーなどの北欧で高い関心を集めているようだ(写真1)。 写真1●Google TrendsではWordPressが優勢 検索語の傾向を調べられるGoogle Trendsで比較してみた。Movable Typeは赤い線,WordPressは青い線で示している。上の

    オープンソースのブログ・ツール「WordPress」って知ってますか?
  • 対策遅らせるHTMLエンコーディングの「神話」

    クロスサイト・スクリプティングという言葉は元々,WebアプリケーションのHTMLエンコード漏れなどを利用することによって第三者にJavaScriptを実行させる手法を指す。広義では,HTMLのエンコードによる画面改変などを含むこともある。 前回述べたように,クロスサイト・スクリプティングのぜい弱性はWebアプリケーションに見付かるぜい弱性の半分以上を占める。数年前から指摘されているにもかかわらず,一向になくならない。その理由として,クロスサイト・スクリプティング対策あるいはHTMLエンコード注1)に対する「神話」があり,正しい対策の普及を遅らせているように思う。その「神話」の数々について説明しよう。 注1)実体参照(entity reference)というのが正式だが,あまり普及していない用語なので,HTMLエンコードという用語を用いる 「すべからくHTMLエンコードすべし」が鉄則 HTM

    対策遅らせるHTMLエンコーディングの「神話」
  • はびこる「インジェクション系」のぜい弱性:ITpro

    Webアプリケーションのぜい弱性を示す用語として,クロスサイト・スクリプティング,SQLインジェクションといった言葉の認知度はかなり高まった。ブログ・サイトなどでも活発に議論されている。しかし,Webサイトの実態はどうだろうか。 筆者の所属する京セラコミュニケーションシステムでは昨年(2006年),ぜい弱性診断を実施したWebサイトの統計情報「2007年版 Webアプリケーションぜい弱性傾向」を発表した。これによると,パソコン向けWebサイトの48%に致命的なぜい弱性が見つかった。このうちワースト1位はクロスサイト・スクリプティングで56%,2位はSQLインジェクションで11%と,どちらもインジェクション(注入)系のぜい弱性。これらのぜい弱性を持った危険なサイトは依然として存在するのが実情である。 これらWebアプリケーションのぜい弱性があまりなくならない理由はいくつかあるが,以前は「ぜい

    はびこる「インジェクション系」のぜい弱性:ITpro
  • 第3回:Ajaxの価値を再考する

    前回の記事では,Web2.0の代表的なキーワードである「永久にベータ版」をシステム構築の観点からとらえ,それが「普通の企業」にもたらす意味を解説した。今回はもう一つの代表的なキーワードである「Ajax」について,その意味や意義をひもといていく。何もAjaxが貢献するのは,コンシューマ向けのWebサイトだけではない。(ITpro) Ajaxをご存知の方は多いとは思うが,念のためおさらいしておきたい。Ajaxは「Asynchronous JavaScript and XML」の略で,「Google Mapsの実装手段として有名になった技術だ。言葉の持つ意味どおりにこの技術を説明すると,「通信メッセージにXMLを使い,JavaScriptを使ってサーバーと非同期に通信をするための技術」ということになる。 このAjaxという言葉が初めて使われたのは,Jesse James Garrett氏の「Aj

    第3回:Ajaxの価値を再考する
    bunhiko
    bunhiko 2007/04/04
  • 第19回 検索の結果ページについてもう少し考えてみよう

    前回は,検索結果ページの「ページャ」について,いろいろなサイトの事例を見ながら考察してみました。前回の最後に述べたように,今回も引き続き,検索結果ページについてもう少し考えてみようと思います。 前回に続いて結果ページを話題として取り上げたのは,前回の記事を書くに当たっていろいろ調べている中で,検索結果ページの使いやすさについての論文を見つけたからです。 それは「Paging vs. Scrolling: Looking for the Best Way to Present Search Results」という2002年の論文です。この論文では,検索結果の表示数を1ページ10件,50件,100件と変化させて,どの場合が一番速く情報を見つけられるか,ということを調べた実験結果を報告しています。 考えてみれば,一般的な検索エンジンの検索結果って,ほとんどの場合,標準の結果表示数は10件です。な

    第19回 検索の結果ページについてもう少し考えてみよう
  • 第6回 上手なアルゴリズムの見つけ方

    図1に示すHTML形式のテキスト・データ(以下,HTMLデータ)があります。このHTMLデータをブラウザに表示させたときに「表示される文字列」と「その文字列に対して有効なタグ名」を対応付けるアルゴリズムを考えてください。結果は配列に格納して,画面に表示させるものとします(図2)。 見わたせば,世の中はアルゴリズムだらけです。私のようなプログラマは,日常生活でも「締め切り順に仕事をソートしてごらん」「仕事のスタックがたまっているからてんてこまい」など,いま置かれている状態をアルゴリズムやデータ構造になぞらえて会話することがよくあります。前回紹介した再帰処理と言えば,落語の演目の一つ,「頭山」です。自分の頭に生えた桜の木を引っこ抜いて,その跡にできた池に自分自身が身を投げる,という不思議な話ですが,これこそ再帰処理をよく言い表していると思います。 このように世の中には,ハッシュだってスタックだ

    第6回 上手なアルゴリズムの見つけ方
  • 第1回 悪意のJavaScriptで情報が漏えい:ITpro

    Web 2.0という言葉で総称される新たなインターネット時代。Webサイトやエンドユーザーに仕掛けられる攻撃もまた,2.0と呼ぶべき進化を遂げようとしている。攻撃者はWeb 2.0の中核技術であるJavaScriptを悪用してブラウザを狙う。従来の脅威対策は全く通用しない。今この瞬間にも,エンドユーザーは個人情報を盗まれる危険にさらされている。 ブログ/SNSなどユーザー発信型のサイト,Ajax,RSS──。華やかさがクローズアップされるWeb 2.0。ところがその裏側では,エンドユーザーに情報盗難などの危険が広がっている(図1)。インターネット・バンキングやEC(電子商取引)サイトのユーザーIDやパスワード,クレジットカード番号はもちろん,企業内のシステムにアクセスするためのパスワードや,パソコンに読み込んだ機密文書データなど,対象はあらゆる情報だ。 2006年12月末,米国のセキュリテ

    第1回 悪意のJavaScriptで情報が漏えい:ITpro
  • 第17回 Web APIにおける使いやすさを考える

    これまで連載では,実際に利用者がアクセスするWebページに直結する,使い勝手について考えてきたわけですが,今回はちょっと視点を変えて,Web APIの使い勝手について考えてみたいと思います。 まずは前提となる定義から。Web APIは,WebサービスAPIとか,Webサービスとか,時には単にAPIと呼ばれたりしています。簡単に定義すればHTTPを利用してデータをやり取りすることで,外部サイトに対してデータを配布したり,複雑な計算や処理などのサービスを提供するものです。もう少し平たく言うと,プログラム内に通常記述する関数(やメソッド)を外部に切り出して,ネットワークを介して呼び出せるようにしたものです。 APIというと,なにもWeb上のサービスに限ったものではなくて,あるライブラリやプログラムの内部の関数やデータに,外部からアクセスできるインタフェース全般を指します。例えば,Windows

    第17回 Web APIにおける使いやすさを考える
    bunhiko
    bunhiko 2007/03/07
  • 【NET&COM2007】「Googleの弱点を克服した検索エンジンを実装」---Web 2.0時代に向けたLinux活用技術

    Googleの弱点を克服したアルゴリズムによる検索エンジンを世界で初めて実装した」(Preferred Infrastructure 岡野原大輔氏)---リナックス ビジネス イニシアチブ(LBI)は2月8日,Net&Com2007で「Web 2.0時代に向けたLinux活用技術」と題したセミナーを開催,Linuxを活用した新サービスなどに関する発表が行われた。 Weblio:マッシュアップによる遅延はキャッシュで防ぐ ウェブリオ 取締役最高技術責任者 佐々木亨氏は「Weblio辞書検索の秘密-中古Linux機で月間600万PV-」と題した講演を行った。 Weblioは,様々な辞書や百科事典,200以上の辞書を一度に検索できるサイトである。月間600万PVのアクセスがあるが,それに対し軽快な動作を安価に提供するために様々な工夫を凝らしているという。 まずWeblioのサイトはLinux

    【NET&COM2007】「Googleの弱点を克服した検索エンジンを実装」---Web 2.0時代に向けたLinux活用技術
  • 第12回 Ajaxを利用したサイトで違和感を覚えることがある

    「Ajax」という言葉は,2005年2月に情報アーキテクトであるJesse James Garrett氏が「Ajax: A New Approach to Web Applications」という記事の中で初めて使ったと言われています。それから2年近くが経って,すっかりこの言葉やそれが表すテクニックも一般的になった気がします。 今や,単にページの一部の書き換えや,ちょっとしたデータの送信にAjaxのテクニックを利用しているページは珍しくありません。サーバーとのデータのやり取りの多くに,JavaScriptを利用した非同期通信を行って,メールやカレンダー,ワープロなどのオフィス・ツールなど,まるでスタンドアロン・アプリケーションのような見た目を実現しているサイトも少なくありません。 筆者が,JavaScriptを使ってページの遷移をほとんど行わないインタフェースを初めて「意識的に」体験したの

    第12回 Ajaxを利用したサイトで違和感を覚えることがある
  • 第1回 ナンプレを解いてみよう

    ナンプレ(ナンバープレイス,数独)というパズルゲームがあります。図1を見てください。全体では9×9のマス目があり,その中が3×3のマスに分かれています。縦横の列に1~9までの数字がそれぞれ一つずつ入ります。また,3×3のマスにも1~9までの数字が一つずつ入ります。このルールで空白のマスを数字で埋めるアルゴリズムを考えてください。 NHK教育テレビの「ピタゴラスイッチ」という番組をご存知でしょうか。「ある物は,ある考え方で構成されている。その考え方はほかにも使われているから,そうした基となる考え方を知ろう」という趣旨に基づいて,考え方や物の成り立ちを児童向けに教える,とても面白い番組です。児童向けなのに周りのプログラマたちはだいたい見ています(笑)。 この番組の制作には,「だんご3兄弟」の作詞者として著名な佐藤雅彦氏が参加しています。佐藤氏の著書「毎月新聞」(毎日新聞社)には,要約すると以

    第1回 ナンプレを解いてみよう
  • 第11回 読み込み時間が短いページを作るには ~ パレートの法則

    皆さん,こんにちは。連載は年に入って今回で2回目ですが,実際には年が明けてから書いている原稿は今回が初めてです。いまさらという感じですが,改めまして,明けましておめでとうございます。 さて,今回はページの応答時間について考えてみることにします。ページの応答時間とは,利用者がリンクをクリックしたり,URLをブラウザのアドレス欄に入力してから,実際にページのコンテンツがすべて表示されるまでにどれくらいかかるか,ということです。 8秒ルールをご存じですか まずは昔話からはじめます。皆さんは「8秒ルール」という,かつてよく使われていた言葉をご存じでしょうか。これは1999年にZona Research社というアメリカの調査会社がまとめた報告書の中に,「ECサイトのページの応答に8秒以上かかると,訪問者の1/3は利用するのをやめてしまう」と書かれていたことに基づいたもので,これ以上利用者を待たせ

    第11回 読み込み時間が短いページを作るには ~ パレートの法則
    bunhiko
    bunhiko 2007/01/17
  • 第6回 ソーシャルブックマーク件数で人気評価

    あけましておめでとうございます。 連載も好評のうちに,無事,新年を迎えることができました。 ありがとうございます。 昨年,2006年は企業からの Web サービス API の公開も相次ぎ, Ajax 技術の普及でリッチ・インタフェースを備えたマッシュアップ・サイトも大変増えてきました。 そうした先端的な Web サイトのメリットはまだまだ一部の限られたユーザーが享受しているに過ぎないでしょうが, 今年は一般のより多くの人も利用しやすいように拡がる年になるのではないかと期待しています。 連載では今年も,実践的なマッシュアップのテクニックや, 使いやすい Web サービス API をご紹介していくことで【とりあえず実際に触ってみる】こと, そして手軽にマッシュアップや Web サービス API 利用アプリの開発に取り組める, そんなサポートができればと思います。 よろしくお願いいたします。

    第6回 ソーシャルブックマーク件数で人気評価
  • 第10回 文字のサイズとブラウザの違い 〜「はてなダイアリー」で起こった問題点:ITpro

    今回は,先日筆者の勤務するはてなのサービスの一つである「はてなダイアリー」で起こった,使いやすさに関する問題を取り上げてみたいと思います。使いやすさの向上のためにデザインを変更したところ問題が発生し,それをプログラミング言語であるところのJavaScriptを使って解決した,というお話です。 その問題とは,「文字の大きさ」に関するものです。 ブラウザには,文字のサイズを変更する機能が用意されています(図1)。例えばInternet Explorer(IE)なら「表示」メニューの「文字サイズ」から「最大」「大」「中」「小」「最小」の五つの段階を選ぶことができます。Firefoxも「表示」メニューの「文字サイズ」から選ぶことができますが,「大きく」「小さく」というメニューになっており,より自由に表示サイズを変更することができます。 図1:ブラウザでは文字サイズを変更できる ちなみにOperaは

    第10回 文字のサイズとブラウザの違い 〜「はてなダイアリー」で起こった問題点:ITpro
  • ブックマークに入れておきたいお役立ちサービス/Webページ一覧:ITpro

    出典:日経NETWORK 2006年11月号 35ページより 記事は執筆時の情報に基づいており、現在では異なる場合があります。

    ブックマークに入れておきたいお役立ちサービス/Webページ一覧:ITpro
  • 前編:Flashムービー作成フリーソフト「Suzuka」で簡単アニメーションを作ってみよう:ITpro

    この記事では,Flashムービーを作成することのできるフリーソフト,「Suzuka」をご紹介します。SuzukaはUzo氏がご自身のサイトで公開しているフリーソフトです。携帯向けFlashムービーから,最新のFlash8で作成できる画像のエフェクト機能を備えたムービー*1まで,タイムライン・ベースの開発環境で作成できます。 Suzukaでできることは,次の通りです。 Flashムービーの作成 ActionScriptを使ったプログラミング サウンドの再生 FLVファイルの再生 図1,図2のようなムービーも,Suzukaを使用すれば無料で作成できますよ。 図1:Suzukaで作成したFlashアニメーション(クリックするとムービーを表示します。音が出ます) 図2:Suzukaで作成したActionScriptを利用したムービー(クリックするとムービーを表示します) Flashムービーを作成す

    前編:Flashムービー作成フリーソフト「Suzuka」で簡単アニメーションを作ってみよう:ITpro
  • 第9回 どうすればユーザー登録してもらえるか:ITpro

    この連載では,エンジニアの視点から使いやすさを考えています。今回はユーザー登録画面などに代表される,フォームを使った入力画面について考えてみたいと思います。 なぜこのテーマを選んだかというと,フォームを介して利用者からデータを受け取って処理をして返すという一連の処理が,ウェブサイトのバックエンドの処理やデータ形式などによって変化しやすく,プログラマやエンジニアの作業がもっとも使いやすさと関係しやすい分野ではないかなあ,と思っているからです。こうした部分はエンジニアが使いやすさに寄与しやすい部分であり,もっと言えば,使いやすさを向上させるに当たって,エンジニアにしかできない事柄がたくさんある部分だってことになると思います。 今回は「ユーザー登録ページ」を例に,フォームにおける使い勝手を考えていきたいと思っています。その理由としてまずは,筆者が勤務する株式会社はてなにもユーザー登録画面があり,

    第9回 どうすればユーザー登録してもらえるか:ITpro
  • Pythonプログラミングを楽にするEclipseプラグイン

    一般に,PerlPythonなどの軽量言語(Lightweight Language)でプログラムを作るときは,テキスト・エディタでコードを記述することが多いでしょう。専用の開発ツールなどを使わなくても,さっと書いてさっと実行できることが軽量言語の魅力の一つです。とはいえ,ある程度規模の大きい格的なプログラムを作りたいときは,コード入力支援やデバッガなどの機能を備えた統合開発環境(IDE)を使うほうが便利です。軽量言語プログラミングを支援するIDEはいくつかありますが,その中からPython用IDE「PyDev」を紹介します。 PyDevは,Eclipse上でPythonプログラミングを可能にするプラグインです。言語としてはPythonのほかにJython(Java仮想マシンで動くPython処理系)にも対応します。インストールは簡単です。Eclipseが備えるソフトウエアの更新機能を

    Pythonプログラミングを楽にするEclipseプラグイン
  • 第8回 デザイナーとともにより良いサイトを目指そう 〜「はてな」のやり方:ITpro

    連載第5回(「デザインのセンス,持ってますか?」)においてちょっと触れましたが,ウェブサイトを構築する際に,デザイナーとエンジニア(プログラマ)がかかわり,共同で作業を行うケースというのは少なくないと思います。これはもちろん,デザイナーとエンジニアがどちらもそれぞれ別のスキルを持っているからなのですが,それぞれのスキルや立場が異なるために,お互いにうまく意思疎通ができないケースも多いんじゃないかと思っています。 例えば,デザイナーの作成したウェブページのデザインが,システムを作る側からすると扱いづらい構成になっていたり,逆にエンジニアがシステムの修正や機能追加を行った際に行った表示上の変更が,デザイナーからすると許せないものだったり。そうでなくてもデザイナーの意図を読みきれていなかったり,といった感じで,お互いの作業が,相手の作業を阻害してしまったり,手戻りを発生させてしまうといった経験を

    第8回 デザイナーとともにより良いサイトを目指そう 〜「はてな」のやり方:ITpro
  • Part2 JavaScript流オブジェクト指向プログラミング

    JavaScriptは,きちんとしたオブジェクト指向言語であって,オブジェクトを利用した高度な開発が可能です。JavaC++,.NET系のオブジェクト指向言語がオブジェクトの定義にクラスという概念を用いる「クラス・ベース」の考え方を採用しているのに対し,JavaScriptではひな型となるオブジェクトを元に独自の機能を付加するという「プロトタイプ・ベース」の考え方を採用している点が特徴です。 まず最初に,皆さんの誤解を解いておきましょう。それはJavaScriptは,きちんとしたオブジェクト指向言語だということです。オブジェクト指向言語と言えば,JavaC++などが有名ですし,C#やVisual Basic 2005といった米Microsoftが開発した.NET系の言語もあります。しかしこれらの言語に比べてJavaScriptは,一段低い「Webブラウザで利用する簡易言語」といったイメ

    Part2 JavaScript流オブジェクト指向プログラミング