タグ

ブックマーク / naoya-2.hatenadiary.org (21)

  • naoyaのはてなダイアリー - 大規模サービスを展開する企業が陥るジレンマ

    このところ大きなサービスを持ってる大きな企業が運用するウェブサイトについて考えることが多かったので、ちょっと書き殴ってみるとします。 一見すると大企業ってのは人もたくさんいるし資金もたくさんあるし、小さな企業と競争になっても、簡単にそれを踏みつぶしてしまえるような印象を受けます。いやいや、そんなに簡単じゃないんだよっていうのがイノベーションのジレンマであり、大企業病のジレンマであり。で、ウェブの企業にもう一つ当てはまるジレンマがあるなあと最近思います。 はてなダイアリーのキーワードページに、Yahoo! ニュースのトピックページからリンクされることがあります。そのニュースが Yahoo! Japan のトップページに載ってたりするものだと、キーワードページへの瞬間最大トラフィックが恐ろしいことになります。最近は対策を練ったので問題ないのですが、一時期は Yahoo! トップに載ってるニュー

    naoyaのはてなダイアリー - 大規模サービスを展開する企業が陥るジレンマ
    ussy
    ussy 2005/11/20
  • 絨毯爆撃系ブラウザ - naoyaのはてなダイアリー

    このところはてなブックマークへの過度なアクセスがよく見られます。User-Agent などを見ていても特殊な bot などのものではなく、その多くが Internet Explorer や Firefox などの一般のブラウザのそれを名乗っています。 中には、目立たないようにそういった User-Agent を敢えて名乗っているリクエストもありそうですが、どうもそれらの挙動を見てるに、巡回系のソフトウェアや先読み系のブラウザのような振る舞いが多そうです。ページ内に表示されたリンクを節操なくすべて辿るということで、僕は勝手に絨毯爆撃系ブラウザなんて呼んでますが。 del.icio.us開いたら片っ端から先読みし始めるし、既読のページにもかかわらず先読みするし節操が無い。読みもしないページを片っ端からダウンロードすることが有効活用と言えるのか? この Fasterfox はその代表例で、時折す

    絨毯爆撃系ブラウザ - naoyaのはてなダイアリー
    ussy
    ussy 2005/11/09
  • OSX 環境構築中 - naoyaのはてなダイアリー

    ということで PowerBook の OSX (10.4.2) にぼちぼち開発環境とかを整備していってます。と、その前に id:aql に教えてもらった SafariStand をインストール。これは Safari のいろんな機能を拡張してくれるもの。 _blank なウィンドウを新規タブで開いてくれる アドレスバーに "b naoya" とか入れると http://b.hatena.ne.jp/naoya/ に飛ばせたり 文字を入力すると検索窓をダイレクトに開けたり (検索窓の使い方にまだなれてないけど) といったことができるようになりました。便利便利。Windows で UnDonut に慣れた体を矯正するにはまだまだ時間がかかりそう。 開発環境の方はというと、Install CD についていた XCode とかいうやつを入れて、gcc とか make を使えるようにするところからスタ

    ussy
    ussy 2005/11/07
  • Amazon の強さの秘密について考える - naoyaのはてなダイアリー

    昨日 Amazon がなぜ強いかという話にちょっと触れたところ結構ブックマークされたようで、その反応がいろいろあって面白かった。言葉足らずだった部分も含めて、僕が Amazon がなぜ強いかについて考えるロジックをここにまとめてみたいと思います。 まず、実感を持ってもらうために以下のリンク(すべてサーチの検索結果です。) を実際にみてみて、Amazon.com なり Amazon.co.jp なりがどの辺りの位置につけているかを確認してみてください。 Google で「ワンダと巨像」 Google で「Agile Web Development with RailsYahoo! Japanで「アドベントチルドレン」 Yahoo! Japanで「いま、会いにゆきます」 おそらく、楽天やほかのどのショッピングサイトよりも先に Amazon のリンクを目にすることかと思います。ここで羅列した

    Amazon の強さの秘密について考える - naoyaのはてなダイアリー
    ussy
    ussy 2005/11/07
  • Googleの組織マネジメントを前例に。 - naoyaのはてなダイアリー

    「日Googleを目指す」と回答したのは近藤氏。今では世界企業となったGoogleだが、はてなの目指すGoogleとは何だろう。 id:jkondo が出てるこの記事。「日Google」 なんていうキャッチーなフレーズばかりが先行してますが、来僕ら言いたかったのはそういうことじゃなくて。 組織のマネジメントという点でみたときに、Google というのは非常に優秀な企業で、いまや 3,000 人もの社員を抱えている大企業にもかかわらず、大企業病のジレンマには陥っていないと言われます。僕らが着目している点はその点です。 はてなはよく小さな企業だからいまのやり方ができるんだろう、とか、大企業病からは逃れられないという風に言われます。そのカウンターとして実際に同業者で 3,000 人になっても現場プログラマが満足しながら働ける企業というのが世の中に前例としてある、だったら僕らにできないは

    Googleの組織マネジメントを前例に。 - naoyaのはてなダイアリー
    ussy
    ussy 2005/10/27
  • naoyaのはてなダイアリー - ルールが一人歩きする (トラックバック欄)

    おそらく多くの人が、一人歩きしたルールのおかげで歯がゆい思いをした、という経験があることかと思います。 以前に id:jkondo が CNET で、ある図書館のエアコンの温度設定を具体例にした組織論を書いてました。この図書館には僕も一緒にいたのですが、まさにルールが一人歩きした具体例だなと思います。 図書館の話というのは、 今年の夏、猛暑の日、館内が蒸し暑い 館内のエアコンがあまりきいていないようだ 周囲の人はみな、汗だくになりながらを読んでいる そもそも暑いのは、クールビズで28度設定に、というルールからっぽい 冷房をもう少しきかせてくれとお願いしても、いろいろ理由を聞かされて叶わない といった出来事です。 家でエアコンを28度に設定した場合だと、まあいつもよりは冷えてないけど、を読むだけで汗を吹いたりはしないわけで、明らかにこの図書館のエアコンはききが悪かった様子でした。ですが、

    naoyaのはてなダイアリー - ルールが一人歩きする (トラックバック欄)
    ussy
    ussy 2005/10/16
  • naoyaのはてなダイアリー - テクノロジーを隠蔽して誰もが使えるようにするのがインタフェースの役目だ

    今年度のウェブ・デザインの間違いトップ10は、基に忠実なウェブ・デザインに立ち返る必要性を明らかにするものとなった。メーリングリストやウェブサイト、カンファレンスに至るまで、インターネット業界では、新しく、魅力的な“Web2.0”機能に関する話題が尽きない。しかし、ユーザはテクノロジーなど気にしておらず、新しい機能など望んでもいない。 この文書、おおむね同意なんだけどどうしてもこのフレーズだけには納得がいかない。そこでブックマークに「この断定が好きじゃない」ということを書いたのだけど、これだけだとコメントの意思が正しく意図が伝わらないかもしれないのでここに記しておく。 見出しにあるとおり、"テクノロジーを隠蔽して誰もが使えるようにするのがインタフェースの役目"と常々思っている。Google の検索窓ひとつの、究極にシンプルな UI の奥にはご存知の検索テクノロジーが隠れている。iPod

    naoyaのはてなダイアリー - テクノロジーを隠蔽して誰もが使えるようにするのがインタフェースの役目だ
    ussy
    ussy 2005/10/13
  • XMLHttpRequest でファイルのアップロードができないか? - naoyaのはてなダイアリー

    ブックマーク経由でみかけたCodeWeb: 画像をアップロードする前にサムネイルを表示させる。 では、JavaScript を使ってファイルをアップロードする前にプレビューする方法が紹介されてました。input type="file" な input 要素の onchange ハンドラでごにょるというもの。 一方で、プレビューではなく、ファイルを追加した直後に特にボタンなどを押さず且つ画面遷移なしでファイルをアップロードできないものかと、ちょっと試行錯誤してみています。例によって XMLHttpRequest で Ajax るわけですが、残念ながらいまのところうまくいってません。 これまでに書いたコードは以下です。prototype.js を使ってます。 <input type="file" name="image" onchange=" if (this.value) { new Aja

    XMLHttpRequest でファイルのアップロードができないか? - naoyaのはてなダイアリー
    ussy
    ussy 2005/10/05
  • Reverse Proxy と mod_perl の MaxClients - naoyaのはてなダイアリー

    NDOメソッドっぽく質問されてたので答えてみる。 あと聞きたいのは(←ずうずうしい…)、アプリケーションサーバとかリバースプロキシサーバとかのapacheなどのMaxClientsをどのくらいにしているのかですね。カリカリにチューニングしているのか、ハイパフォーマンスMySQLでJeremyさんがYahoo! comのことを書いてた様に1台当り MaxClients 30 ぐらいしか立ち上げてないのか。 リバースプロキシはメモリの許すギリギリのラインまで MaxClients を上げて設定してます。スタティックな一定のコンテンツを返すあるいは Rewrite するのが仕事のほとんどなので、CPU パワーや I/O もほとんどかからず、最近のスペックのマシンであればリバースプロキシの性能はメモリ量に完全に依存してる感じです。 ので、MaxClients の数がなるべく稼げるように子プロセスの

    Reverse Proxy と mod_perl の MaxClients - naoyaのはてなダイアリー
    ussy
    ussy 2005/10/02
  • これはなんだか見慣れないウェブサイトです - naoyaのはてなダイアリー

    ん、これはなんだか見慣れないウェブサイトですね。どこかなこれは。 http://www.hatena.ne.jp/ あれ... http://www.hatena.ne.jp/ .. ... .... (特攻の拓ライク) はてなのトップページがリニュ..ぶほ(吐血)

    ussy
    ussy 2005/09/28
  • 最新WebサービスAPIエクスプローラ - naoyaのはてなダイアリー

    まもなく技術評論社から AmazonはてなGoogleYahoo!Webサービスを解説したムックが発売されます。 最新WebサービスAPIエクスプロ-ラ ~AmazonはてなGoogleYahoo! 4大Webサービス完全攻略 作者: Software Design 編集部出版社/メーカー: 技術評論社発売日: 2005/09/23メディア: 大型購入: 11人 クリック: 511回この商品を含むブログ (111件) を見る Amazon の次にはてなを取り上げてもらっていてなんだか恐縮、というか他とぜんぜん規模違うのにいいのかって感じなのですが。この中のはてなの記事は、僕と id:higepon が書きました。API の仕様だけでなく Perl スクリプトによる Hack 例とか、どういうポリシーで API を作ってるかっていうところ、あと細かいコラムなんかも書いてみま

    最新WebサービスAPIエクスプローラ - naoyaのはてなダイアリー
    ussy
    ussy 2005/09/20
  • Dampening, Buffering, OpenSearch, Ajax な Hack - naoyaのはてなダイアリー

    ちょっと前に Six Apart の Anil Dash の blog で Web Development Trends for 2006 なんて話題があって、来年のウェブ開発トレンドはこれだ! なんてことを彼の独断でリストアップしてました。氏曰く AtomPP, XHTML, JSON, E4X, Ruby ... などなど。 このリストがほんとにトレンドになるかですが、RubyRails の勢いがますます加速しているし、AtomPP は今年末に仕様が確定する他 RESTful なアプリケーション設計が注目を集めています。あと JSON が熱いのはいわずもがな...ということで結構いいところを突いてる気がします。 この中で聞きなれないれない言葉として Dampening と Buffering というのが出てきます。どちらも Rails を開発した DHH がいる 37signal

    ussy
    ussy 2005/09/15
  • Google Blog Search Launched - naoyaのはてなダイアリー

    いやあ、びっくりしましたね。Google Blog Search が何の予告もなく突如ローンチ。Google Maps のときもそうだったけど、Google の新サービスリリースにはいつも驚かされます。 さて、何をどういう風にインデクシングしているかといった気になる点ですが、About Google Blog Search に結構詳しく書いてあります。 要点としては RSS や Atom などのフィードをベースにしている Weblogs.com あたりに ping を飛ばしててフィードを吐いてる blog を集めている Google のことだからアンカーもたどっているかもしれないけど、それは明記されていない いまのところ 2005年6月以降の記事がインデクシングされている といったことが書かれているところでしょうか。検索のインデックスにフィードそのものに含まれる文章が使われてるのか、記事の

    ussy
    ussy 2005/09/14
  • naoyaのはてなダイアリー - CSS signature

    はてなアイデアで、はてなダイアリーの body に CSS signature なるものをつけてほしいという要望をいただきました。(いただきましたというか、ずいぶん前のものがあがってきた、というか。) 恥ずかしながら CSS signature というのは初めて耳にしたもので、最初は何だかわからなかったのですが、どうやら body の id にサイト固有の文字列を振って、ユーザースタイルシートを使いやすくしようというものらしい。(そうとは知らずにidea:5541を id にローカルな名前をつけるっていうのはあまり前例をみないっていうんで却下してしまった、ごめんなさい。) たとえばこの日記なんかだと <body id="d-hatena-ne-jp_naoya">と振っておくと body#d-hatena-ne-jp_naoya { ... }な CSS をユーザースタイルシートに定義して

    naoyaのはてなダイアリー - CSS signature
    ussy
    ussy 2005/09/06
  • naoyaのはてなダイアリー - Perlプログラマのレベル10 - Perlプログラミング救命病棟より

    プログラマ、と一言で言っても、if文の意味をようやく理解したばかりの駆け出しのプログラマもいれば、汎用的で優れたライブラリを量産できるような凄腕のハッカーもいる、つまりはピンきりです。 Perlプログラマに関してはどうでしょう。一流のPerlプログラマになるためには、見えない階段があるようです。use strict を使い始めたらその階段を一歩上ったと言えるでしょうし、正規表現を理解したときも一段あがることになると思います。リファレンス、クロージャ、オブジェクト指向、CPANモジュール、mod_perl、MVCフレームワーク。それらも階段を構成する材料の数々と言えるでしょう。 さて、Perlプログラミング救命病棟という書籍から、ちょっと長いですがそんなPerlプログラマのレベル10のリストを引用してみます。 レベル1: Perl 関係の書籍や資料を何も読んでいない。Perl がプログラミン

  • naoyaのはてなダイアリー - onsubmit で submit ボタンを disable にしてユーザビリティを良くする

    先の Yahoo! Shopping のアプリケーションで、今度ちょっとやってみようと思ってたことを実装してみた。 http://bloghackers.net/~naoya/ys/app.cgi ボタンを押したときに、そのボタンが disable になります。この方法を使うとボタンが押されて次の処理に入ろうとしているというのが直感的に分かるのと、二重送信防止にもなるということでユーザビリティが改善できます。 仕掛けはすごく簡単で、form の onsubmit ハンドラに、その form に紐づく submit ボタンを disable になるような JavaScript を登録しておくだけ。 function disableSubmit(form) { var elements = form.elements; for (var i = 0; i < elements.length;

    naoyaのはてなダイアリー - onsubmit で submit ボタンを disable にしてユーザビリティを良くする
  • Perl でできてるサービス - naoyaのはてなダイアリー

    長らく謎だと思っていたことが、あっさり判明した。 アマゾンのWebサイトはperl言語でできている。 Mason を使っているというオフィシャルのコメントから AmazonPerl を使ってるんだろう、という話。AmazonフロントエンドPerl が使われている話は意外と知られていないもので、今日のはてなブックマーク人気エントリーにもあがってます。 実際には アマゾンの秘密──世界最大のネット書店はいかに日で成功したか でも、Amazon のシステムの更新にはビルド作業というのが必要で、ビルドには結構時間がかかるなんていう記述も見られるので、全てが Perl ではなさそうというのは引用元記事にもある通りかなと思います。(確か Perl を使っているという記述もあったような気がする。) 僕が知ってるとこだと、以下も Perl で作られている近頃の大規模なサービスの一例かな。

    Perl でできてるサービス - naoyaのはてなダイアリー
  • naoyaのはてなダイアリー - Movable Type で言及リンクのない TrackBack ping を弾くプラグイン

    TrackBack の送信元に、TrackBack先へのリンクが含まれている方が良いかどうかという議論が巷では盛り上がっているようです。はてなダイアリーでは、TrackBack はつまり言及通知であるという解釈から、リンクが必須という仕様になっています。(おかげで、あまりこの手の話が問題になることは少ないようです。) その他のサービス、ツールでは特にそういった仕様を盛り込んではいないこともありますし、どっちが良いかという議論に決着を付けるのは難しそうです。が、リンクなしのトラックバックは嫌だなあという人のための手段を、システム的に提供してやりそれをどう使うかは人に任せる、ということはできるでしょう。 と、いうことで Movable Type でリンクなしトラックバックを受け付けなくするためのプラグイン。mt.cgi で「サイトのURL」に指定した URL が言及元に含まれていなければ弾き

    ussy
    ussy 2005/07/04
  • 続・オブジェクト指向の話 - naoyaのはてなダイアリー

    オブジェクト指向設計の初期段階では、まずユースケースを自然言語で書いて、そこから名詞となるものを抽出して、各名詞がお互いにどういう関係にあるかという分析をしていきます。クラス導出の初期段階です。 最初、この手法を学んだときに「なんで名詞だけ抜き出してほげほげ」なんてことをやるんだろうとかなり疑問というか、手法は正しいのかもしれないけど、なぜそれをしなければいけないかが理解できませんでした。自然言語の中から名詞を抽出する作業と、コーディング作業というのが、頭の中でリンクしていなかったからです。 これも、先日書いた物を選んでからほげる、の法則から考えるようになってから理解できるようになったことのひとつです。 宮川さんは、「最初にメインプログラムの中にオブジェクトと、そのオブジェクトに何をさせるかを書くそう」と書きました。これは結城さん風に言うと、"インタフェースでプログラミングしている"という

    続・オブジェクト指向の話 - naoyaのはてなダイアリー
    ussy
    ussy 2005/05/31
  • 物を選んでから何かをさせる - オブジェクト指向のお話 - naoyaのはてなダイアリー

    ときどき「オブジェクト指向でプログラミングをするというのはどういうことなの?」と聞かれるときがあります。そんなときにうーん、オブジェクト指向ってどう説明したらいいものか...犬がワンって吼えるでしょ...ああ、これじゃわからん、などと頭を悩ませるのですが、ふと 憂なプログラマのためのオブジェクト指向開発講座 (DDJ Selection) から学んだ、WindowsUI の話が分かりやすいと思いました。 Macintosh や WindowsGUI はオブジェクト指向だ、というのが書籍の中にある説明です。(P.300 ぐらいから解説されています。) ファイルの削除、という動作を思い浮かべてみましょう。このとき行う操作は、 まずファイルをマウスで選択する 右クリックして操作一覧を出す 削除する という動作になります。(ドラッグ&ドロップでごみ箱に入れる、というのもありますね。)

    物を選んでから何かをさせる - オブジェクト指向のお話 - naoyaのはてなダイアリー