タグ

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

  • 第9回 JavaScriptは控えめに ~クロスブラウザ対策地獄からの脱出~

    ついに連載の最後となりました。今回のテーマはJavaScriptの設計スタイルです。 JavaScriptで様々なアクションを実現しようとすると,ブラウザによって挙動が異なったり,場合によっては動かない場合があります。例えば,標準化されているW3C DOMといえども,ブラウザの種類やバージョンによってその実装の度合が異なるからです。 今日,様々なブラウザがあふれており,またそれらのバージョンも多岐にわたります。すべてのブラウザ,そしてすべてのバージョンで全く同じように動くようにするというのは,もはや現実的ではありません。 そこで,近年,Unobtrusive Scriptingと呼ばれるスクリプティングの考え方が注目されるようになりました。"Unobtrusive"は,"でじゃばらない","控え目な","つつましい"といった意味を持っています。 Unobtrusive Scripting

    第9回 JavaScriptは控えめに ~クロスブラウザ対策地獄からの脱出~
    mind
    mind 2008/02/16
    …近年,Unobtrusive Scriptingの考え方が注目されるようになりました。"Unobtrusive"は,"でじゃばらない","控え目な","つつましい"といった意味 ――3rd partyの挙動に依存する、ad.js / iframeでどんどん重くなってくるpage。。 //
  • Part1 オープンソース/C言語に学ぶ「ソースコードの読み方」:ITpro

    「Code Reading―オープンソースから学ぶソフトウェア開発技法」(毎日コミュニケーションズ発行,写真1)というがあります。私はこのの監訳者ですから,やや自画自賛になってしまいますが,ソースコードの読み方を主題にしたはほかにはあまりありません。技法からツール,データ構造,アーキテクチャ,さらには実際にコードを読んで利用する実例まで紹介している網羅的で良いだと思います。 このの「はじめに」で「達人プログラマー」として知られるDave Thomas氏は以下のように書いています。 他人の作品を読まなかった偉大な作家,他人の筆づかいを研究しなかった偉大な画家,同僚の肩越しに技を盗まなかった腕のよい外科医,副操縦席で実地の経験を積まなかった767機長――果たして,そんな人たちが当にいるのでしょうか? たしかにその通りです。ソフトウエア以外の領域では修行することとはすなわち,他の人の

    Part1 オープンソース/C言語に学ぶ「ソースコードの読み方」:ITpro
  • 総論 複数のプログラミング言語を学ぶ意義 - フリー言語で真のプログラミングを学ぶ:ITpro

    ネットワーク応用通信研究所 特別研究員。島根の田舎に住みながら国際的なオープンソース・ソフトウエアの開発に挑むプログラマ。家族6人で幸せな田舎暮らしを満喫している。バグと原稿の締め切りがなければもっと幸せなのに,と思いつつ,考えてみれば,それらがないならないで,別の困ったことがあるよなあと思う今日このごろ。 皆さんは「サピア・ウォーフ仮説」をご存じでしょうか。これは言語学における古典的な仮説の一つで,「人間の思考は使用する言語とそれに付随する文化に影響を受ける」というものです。もし仮に数字を3までしか持たない言語があったとすると,その言語を使用する文化に生まれ育った人間は3以上の数を認識できない,といったことです。言語学的にはこの仮説は否定されているようですが,日常生活の中では,この仮説が当ではないかと感じる経験がたびたびあります。 例えば,私は年に数回海外に出張して講演をする機会があり

    総論 複数のプログラミング言語を学ぶ意義 - フリー言語で真のプログラミングを学ぶ:ITpro
    mind
    mind 2007/12/16
    最高レベルのリフレクション プログラム自身を操作するメタプログラミング機能の元祖はLispです。この機能をリフレクションと呼びます。Lispは強力なリフレクション機能を備えています。 ―― //サピア・ウォーフ仮説
  • 第16回 すべてのものは関数である

    すべてのものは…である SmalltalkやRubyなど,いわゆる生粋のオブジェクト指向言語では,「すべてのものはオブジェクトである」(everything is an object)と言われることがある。JavaC++などと異なり,整数の「123」や浮動小数の「4.56」といった,基データ型の値もオブジェクトとして扱うことができるからだ(ちなみに,現在のJavaには自動ボックス化という機能があり,基データ型からオブジェクト型への変換が自動で行われる場合も多い。しかし,両者の差異が全くなくなったわけではない。例えば123.toString()のようなメソッド呼び出しはできない)。 では,オブジェクト指向言語のまねをして,関数型言語において「すべてのものは関数である」と言うことはできるだろうか? もちろん,オブジェクト指向と違って,関数型プログラミングはあくまで「数学的な(=副作用のな

    第16回 すべてのものは関数である
  • Part3 JavaScriptに学ぶ「言語の拡張性」:ITpro

    サイボウズ・ラボ株式会社に勤めるWebプログラマ。出身は石川県金沢市。21歳でプログラミングに出会い,IT戦士になることを決意。それからというもの,寝ても覚めてもプログラムを書き続け今に至る。はてなでamachangというidでブログを書いてます。 最近,「とんがった」プログラマの間ではJavaScriptがちょっとしたブームです。あちこちの書店で,JavaScriptの書籍を見かけるようになりました。「はてブのホッテントリ」*1にも,よくJavaScriptの記事が入っています(図1)。 その人気を象徴的に示しているが,Shibuya.js*2という団体が開催しているJavaScript関連のイベント「Technical Talk」です。1回目は2006年4月,2回目は6月に開催されましたが,いずれの回も予約が殺到し,たった1日で席が埋まってしまいました。これには「JavaScript

    Part3 JavaScriptに学ぶ「言語の拡張性」:ITpro
  • DOMから始めるJavaScriptモダン・スクリプティング---目次:ITpro

    近年,Ajaxの台頭をきっかけに,JavaScriptを使ったブラウザのリッチ・クライアント化が進んできました。現在では,ページの表示を変化させるだけであれば,ほとんどのことはJavaScriptのみで対処することが可能です。それを実現するのがDOMなのです。 第1回 DOMから始めるモダン・スクリプティングの世界へようこそ 第2回 ブラウザからHTMLはどう見えているかを理解しよう ~ドキュメントツリー~ 第3回 DOMスクリプティングのことはじめ(1) ~要素(タグ)を狙い撃ち~ 第4回 DOMスクリプティングのことはじめ(2) ~これはどんな要素?~ 第5回 DOMを使ってHTMLを自由自在に書き換える 第6回 イベントハンドラから脱却しよう 第7回 スクリプトを完全に分離しよう ~コンテンツ,プレゼンテーション,ビヘイビア~ 第8回 スクリプトのパッケージ化 ~使い回しできるスクリ

    DOMから始めるJavaScriptモダン・スクリプティング---目次:ITpro
  • routeコマンド

    デフォルト・ゲートウエイを含むすべての静的ルーティング情報を消去する。別のオプションと併せて用いられた場合は,まず-fオプションによるルーティング情報の消去を実効してから,他のオプションの処理を実行する。 指定したルーティング情報を追加,変更,消去する。追加する場合は「add」,変更する場合は「change」,消去する場合は「delete」を指定する。ルーティング情報は通常,あて先ネットワークアドレス,ネットマスク,ゲートウエイの三つの情報を組で指定する。例えば,ネットワーク「192.168.2.0/25」へのデフォルト・ゲートウエイが「192.168.10.3」というルーティング情報を追加する場合は,「route add 192.168.2.0 mask 255.255.255.128 192.168.10.3」と指定する。ネットマスクは,「mask」というキーワードに続いて「XXX.X

    routeコマンド
    mind
    mind 2007/09/29
    if [LANインタフェースID] ――MEのroute.exeを拾ってこなきゃ
  • 第10回 麻雀の役を判定する:ITpro

    図1に示す(1)から(3)までの麻雀(マージャン)の手牌があります。「あがり牌」はすべて山からツモったものとし,リーチはかけていません。またドラやハイテイ*1なども関係ないものとします。これらの役を判定して,親の場合の点数を計算するプログラムを作ってください。 「ややこしや~ややこしや~」というのは野村萬斎ですが,思わずそううなってしまうことがプログラミングをしているとよくあります。今回の麻雀の役判定は,考えれば考えていくほどややこしく,そうしたものの代表と言えるでしょう。排他処理や優先順位が複雑にからんでいて一筋縄ではいきません。 今回はややこしい組み合わせを解決する方法を考えてみます。麻雀になじみのない方も,ちょっとしたパズル気分で試してみてください。 麻雀の役を考える 麻雀を知らない方のためにルールをおおざっぱに説明しておきましょう*2。麻雀の牌には,大きく分けて「萬子(マンズ)」「

    第10回 麻雀の役を判定する:ITpro
  • 英語を超えた日本語ブログの投稿数,その理由は?:ITpro

    ブログ検索サービスを提供する米テクノラティが4月5日に発表した調査結果によると,2006年第4四半期は投稿数で日語ブログが世界最多だった(参考リンク:「The State of the Live Web」,図)。実に世界のブログ投稿数の37%が日語によるもので,事実上の世界標準語である英語や,母語人口で世界最多の中国語を抑えての1位である。世界的にはもちろん,インターネット人口の点から見ても日語がマイナー言語であることを考えると(関連記事),これは快挙と言えるのではないだろうか。 では,なぜ日語ブログの投稿数がこれほどまでに多いのか。仮説をいくつか考えてみた。 (1)日記文学・私小説の伝統 「土佐日記」以来の日記文学や,日文学独自の様式と言われる私小説の伝統が日にはある。日人には日記を書くような感覚でブログを書いている人が諸外国に比べて多いのではないだろうか。日記形式であれば

    英語を超えた日本語ブログの投稿数,その理由は?:ITpro
    mind
    mind 2007/04/18
    37%。――latin文字圏凌駕まであと10ポイント。 //匿名でも肩身が狭くないから、ハードルが低いというのはありそう。
  • 「人類の記憶装置になる」、ヤフーがブックマーク共有サービス開始

    Yahoo!ツールバーの青い星印のアイコンをクリックするだけでブックマークに登録可能。右隣は、表示中のWebページをブックマークに登録しているユーザーの数 ヤフーは2007年4月16日、オンラインブックマークサービス「Yahoo!ブックマーク」をリニューアルした。ユーザー同士でブックマーク情報を共有できる、いわゆる「ソーシャルブックマーク」機能を盛り込んだのが最大の改良点。ブックマークに登録したWebページの全文をキャッシュとして保存し、検索できる機能もある。 リニューアルに当たって目指したのは「インターネット上の人類の記憶装置になる」(ヤフーの検索事業部 企画部メインサーチ企画の前川英之氏)こと。そのために必要な要素として、「Easy(簡単)」、「Joy(楽しい)」、「Powerful(強力)」の3つを重視した。 ユーザーが皆で情報を共有し合うソーシャルブックマーク機能は、このうちの「J

    「人類の記憶装置になる」、ヤフーがブックマーク共有サービス開始
    mind
    mind 2007/04/17
    ――個人ごとに全文キャッシュ、公開可能ってことは… >>無断転載? //DnD操作でブックマークをフォルダー分けできる機能も追加 ――これもいい。
  • 第2回 相手の話の聴き方 - コミュニケーション・スキル講座:聴く力と話す力を磨く!:selfup

    高橋 俊樹 グローバル ナレッジ ネットワーク 人材教育コンサルタント 前回,「話すことと聴くこと」を意識しましょうとお伝えしました。早速,より良いコミュニケーションを取るための第一歩,「聴き方」から見ていきましょう。 良いコミュニケーションと悪いコミュニケーション 皆さんは仕事をしていく上で,日ごろから社内外問わず,良いコミュニケーションを心がけていると思います。良いコミュニケーションは,相手の話を自分の価値観などで判断せずに正しく聴く,相手の言い分をまず受け止めることからスタートします。それから,自分の話したいことを伝え合います。相手と良いコミュニケーションが取れていると感じる時は,相手の言いたいことがよく分かる,理解できていることが多いはずです。 逆に悪いコミュニケーションでは上記のことができていません(図1)。例えば,双方が相手の話を聴かずに話している場面を想像してみてください。お

    第2回 相手の話の聴き方 - コミュニケーション・スキル講座:聴く力と話す力を磨く!:selfup
    mind
    mind 2007/04/03
    意識的に聴いている態度が相手に伝わると,相手はもっと話したくなり,話を聴いてくれるあなたに好意をもち,信頼関係も構築でき ――さらに、ポイントを突いたコメント(言語的リアクト) ;ツッコミ,新しい視点,…
  • 放送と通信の融合(3)融合を阻む放送局の収益モデル

    前回まで,放送の同時再送信に関する平成18年の著作権法の改正を取り上げました。今回は,放送と通信の融合に関する著作権のありかたについて,今後どのような展開があり得るかを考えてみたいと思います。 平成18年の同時再送信に関する法改正の契機となった「著作権分科会(IPマルチキャスト放送及び罰則・取締り関係)報告書」では,IPマルチキャスト放送における同時再送信以外(いわゆる自主放送)の部分の取り扱いについて, (ア) 著作隣接権の付与の可否など論点が広範にわたること,権利が制限されることとなる実演家等の理解を得る必要があることから,十分な準備期間を設けた上で検討する必要があること (イ) WIPOで検討されている放送条約案の検討状況や,今後の通信・放送の融合に係る放送法制の見直しの検討状況,IPマルチキャスト放送の実態を見極める必要があることから,直ちに制度改正を行うことはできず,今後,引き続

    放送と通信の融合(3)融合を阻む放送局の収益モデル
    mind
    mind 2007/03/30
    視聴率カウント…放送局の収益モデルの問題…著作権法をいじっって解決する問題ではありません。 ――新聞雑誌の公称部数みたいな。…universalなinternetの問題は結局少数派の問題ということらしい。cf.外国人参政権
  • どうなっているの?あのソフトの仕組み - 今からでも遅くない!アルゴリズム入門:selfup

    Webの全体像を効率よく取り込み,分類する 「YSTのシステムは大まかに三つの機能に分かれます(図2)。最初は世界中のWebページをYSTのシステムに取り込む『クローリング(crawling)』という機能です」(Yahoo! JAPAN,リスティング事業部 検索企画室の宮崎光世氏,以下同)。 取り込むと簡単に言っても,Webページの数は膨大なうえ,更新の頻度や情報の質などがまちまちです。すべてのページに同じようにアクセスしていると非効率なことこの上ありません。そこで,限られた時間で質の良い検索ができるようにするための工夫をしています。例えば,クローリングを繰り返すうちに頻繁に更新されることがわかったページは短いサイクルでチェックし,ほとんど更新のないページはチェックの頻度を落とす,といったことをしているそうです。 ただ,更新の頻度が単に高いだけではダメです。重要性が高いと考えられるWebサ

    どうなっているの?あのソフトの仕組み - 今からでも遅くない!アルゴリズム入門:selfup
    mind
    mind 2007/03/27
    Dijkstraのアルゴリズム 最短距離が確定しているノードから直接移動できるノードへの距離を求めて,その中で一番短いものを確定済みのグループに入れる,という作業を未確定のノードがなくなるまで繰り返します…
  • ウィキペディアの肩書詐称で実名のデメリットを考えた

    2月下旬,インターネット上のフリー百科事典「ウィキペディア」で,ちょっとした騒ぎが起こった。責任編集者(administrator and contributor)の1人が肩書きを詐称していたという事実が発覚したのである(米国メディア)。報道によると,この人物は大学中退の24歳の青年だったが,自らをPh.Dを持つ宗教学科の教授だと名乗っていた。ウィキペディアでは,この青年を責任編集者から外すとともに,これまで匿名が原則だった執筆者・編集者に対し,専門家であることを主張する場合は肩書きの証明を求めることも検討しているという。 ウィキペディアは,誰でも自由に記事を執筆・編集できることを“売り”にコンテンツを増やし,利用者を拡大してきた。ただし,「誰もが自由に参加できるため,情報の精度・信憑性は必ずしも保証されるものではない。特に政治や宗教,価値観のように意見対立が起きやすいテーマにおいては編集

    ウィキペディアの肩書詐称で実名のデメリットを考えた
    mind
    mind 2007/03/21
    「他人から認められたいという“名誉欲”の強い人々が知識を見せ合うための場」に変貌してしまう ――<open source/アマチュア精神 vs 売名精神 とどっちが合目的的か?
  • ブラウザはどんどん使いづらくなる

    「ブラウザが使いづらくなる」などというと,「何のこっちゃ」と思うかもしれない。ブラウザはバージョンアップを繰り返し,機能は次第に充実している。むしろ,使い勝手は向上しているのではないか。そう考えるのが普通かもしれない。また,GoogleマップやGoogle Docs&Spreadsheetsに代表されるように,いわゆるAjaxを駆使することでブラウザだけで操作性のいいアプリケーションを実現できるようになった。さらにパソコンだけでなく,携帯電話/スマートフォンにもフルブラウザが搭載され,ブラウザの利用シーンは格段に広がっている。 筆者も,この点には全く異論はないし,どこにいてもブラウザさえあれば様々なアプリケーションを利用できる環境は確かに便利だとも思う。ではなぜ使いづらくなると言っているのか。問題は,ブラウザを狙った攻撃が目立ち始め,エンドユーザーが従来以上にブラウザのセキュリティを意識し

    ブラウザはどんどん使いづらくなる
    mind
    mind 2007/03/21
    ――ブラウザを外用,内用と使い分けたりすることが必要になるんだろうか?
  • Googleの覇権を相対化するもの

    年明け,せわしない日々の業務からつかの間解放され,ふとこんなことを考えた。「もしGoogleの覇権を相対化するものがあるとすれば,それは何だろうか」。浅学非才の身で何を大それたことをと自分でも思うが,記者はかつて日経オープンシステムという雑誌の,現在はITpro オープンソース/Linuxテーマサイトの編集者として,IBMとMicrosoftの覇権が相対化されていく過程に立ち会っている。もしかしたら,読者が頭の整理をするお役ぐらいには立てるかもしれない。 オープンシステムがハードを,オープンソースがソフトを相対化した GoogleIT産業において,IBM,Microsoftに続く第三世代の中心であると多くの識者が指摘している。IBMはハードウエア,Microsoftはソフトウエアの時代の覇者である。Googleはサービスの時代の覇者といわれる。かつてはNetscapeがネットワークの時代

    Googleの覇権を相対化するもの
    mind
    mind 2007/01/22
    サービスが人間のリクエストに答えて受動的に提供されるもの,という限界を超える技術「エージェント」 ――リアルタイムにおせっかいな自律型bot。気の利く「何か。」 //参入障壁;特許が無ければ競争は常に。
  • 第9回 良いアイデアがわく人とわかない人はココが違う:ITpro

    Webサイトのテーマと内容,サイトやメニューの構成,宣伝方法にいたるまで,企画のベースには,一貫する「アイデア」がある。この企画のアイデア―――漠然と「企画案」とか「提案内容」と呼ばれることもある―――を見つけることが,企画という仕事の肝だ。 アイデアがわく人と,わかない人には決定的な違いがある 良い企画のアイデアさえ見つかれば,後は技術と知識で膨らませて,ユーザー層,制作目的,訴求効果といった項目に落とし込み,企画書の体裁に仕立てるだけだ。この作成作業自体は,暗記と反復練習次第で,比較的容易に習得できる。 ところが,こと「発想」に関しては,知識の丸暗記はあまり役に立たない。制作会社から「制作技術は学べるが,発想は学べない」という声を聞くことがある。手順をマニュアル化して伝えられるものではないので,後進の育成が難しいのだ。 筆者から見ると,アイデアがわき出る人と,アイデアがわかない人では,

    第9回 良いアイデアがわく人とわかない人はココが違う:ITpro
    mind
    mind 2006/12/23
    ――はてブで他人に理解不能なコメント書くことw
  • あなたは「Analysis paralysis」になっていませんか

    読者の皆さんは「Analysis paralysis」という言葉をご存じだろうか。 記者はITproに所属する前,日経SYSTEMSという月刊誌の編集部に所属していた。その2006年10月号で「ITエンジニアのやってはいけない」という特集を担当した。SEがやってはいけない「アンチパターン」の特集である。 この特集で,いろいろな人に今ソフトウエア開発の現場で起こっている「アンチパターン」を聞いて回ったのだが,そのときに聞いた話で今でも印象に残っている言葉がある。それは「Analysis paralysis」だ。 Analysis paralysisは,日語に直訳すると「分析麻痺」となる。米国では,結構有名な言葉らしく,Googleで検索するとヒット数は112万に上る。 Analysis paralysisは,英語版のWikipediaにも載っている。その概要は以下の通りだ。 Analysi

    あなたは「Analysis paralysis」になっていませんか
    mind
    mind 2006/12/22
  • 顔写真1枚から3D画像を生成する技術を開発,顔写真ネット検索サービスに適用

    スウェーデンのPolar Roseは,1枚の顔写真から顔の3次元(3D)画像を生成する技術を開発した。Polar Rose創設者兼CTOのJan Erik Solem氏が現地時間12月19日,同社のブログへの投稿で明らかにしたもの。Polar Roseは同技術を,顔写真のインターネット検索サービスに適用する。 Solem氏によると,複数の顔写真が同一人物のものか確認しようとしても,写真によって光の当たり方や顔の向きが異なるため難しいという。Polar Roseは3D顔画像の生成ソフトウエアを利用することで,撮影条件の差異を排除し,検索精度を高める。 「(ソフトウエアで生成した)3D画像は推測しただけで,きちんと測って生成したものでないが,顔認識の精度を大幅に高められる」(Solem氏)。 米メディア(InfoWorld)によると,Polar Roseは2004年11月に設立した企業で,当初

    顔写真1枚から3D画像を生成する技術を開発,顔写真ネット検索サービスに適用
    mind
    mind 2006/12/20
    撮影条件の差異を排除… 「(ソフトウエアで生成した)3D画像は推測しただけで,きちんと測って生成したものでないが,顔認識の精度を大幅に高められる」 ――Wanted! Dead or Alive!! ――bot向け?
  • 著作権保護期間について「延長賛成派」の意見を聞いた

    パネルディスカッションに参加している劇作家・演出家の平田オリザ氏(左),漫画家の松零士氏(中央),小説家の三田誠広氏(右) 「著作権保護期間の延長問題を考える国民会議」のシンポジウムが12月11日,東京・青山のウィメンズプラザで開催された。以前の記者の眼でも紹介したことがあるが,同会議は著作権保護期間の延長問題について,広く議論を呼びかけることを目的に発足した団体である。 欧米諸国の多くは,1990年代にかけて著作権を構成する財産権の保護期間を,「作品の公表から著作権者の死後70年間」へと延長している。これを受けて日でも,著作権の保護期間を現行の著作権法が規定する「作品の公表から著作権者の死後50年」から,欧米並みの「死後70年」に延長しようという動きがある。 シンポジウムでは延長賛成派,反対派の双方が参加し,お互いの主張をぶつけ合った。その様子は近々,同会議のホームページにおいて,ス

    著作権保護期間について「延長賛成派」の意見を聞いた
    mind
    mind 2006/12/14
    ――権利が生きてても塩漬けになって誰も買ってくれなきゃ遺族は楽にならない。商業的価値が50年も残るのはごく一部の作品。宣伝/整理とかの手入れを続けている作品だけ権利が存続する仕組みも検討されてよい。