タグ

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

  • naoyaのはてなダイアリー - カンファレンスの資料 - はてなと私と開発環境

    UP しときました。時間が15分だったので、ちょっとあっさりめの内容ではありますが。 http://bloghackers.net/~naoya/pdf/060909devcon.pdf 個人的にはここ最近のカンファレンスの中では一番面白かったかなと思いました。いろいろ役に立つ話とか、自分もやってみようみたいな話がいろいろ聞けたのが大きかったのかも。 2回目はどうだろう、だいたい話す内容が被りそうなので難しいかもね(笑) あ、そうだ。昨日の感想とかいろいろ読みたいので blog に書いた人は Shibuya.js のページなりこのエントリなりにトラックバックしていただけると大変嬉しいです。読んだやつは http://b.hatena.ne.jp/naoya/decon/ あたりに。

    naoyaのはてなダイアリー - カンファレンスの資料 - はてなと私と開発環境
  • naoyaのはてなダイアリー - MyISAM vs InnoDB

    あくまで憶測で仮説でしかないんですが。 MySQL のストレージエンジンのうち代表的な二つ、MyISAM と InnoDB はよく MyISAM: Read は速いけどテーブルロックのため並行性が低い。運用が簡単。 InnoDB: MyISAM より Read は遅いけど並行性が高い 。行レベルロックなので。あとトランザクションや外部キー制約。運用が MyISAM よりちょっとめんどくさい。 という区別がされます。ここから転じて、 MyISAM は参照系クエリが大部分を占める場合に適用すると良い。例えば blog アプリケーションとか。 InnoDB は更新系クエリが多い場合に適用すると良い。 と言わたりします。実践ハイパフォーマンスMySQL でも第2章 ストレージエンジン(テーブル型) P.30 に アプリケーションでトランザクションを使用する必要がなく、主に SELECT または I

    naoyaのはてなダイアリー - MyISAM vs InnoDB
  • Apache 2.2.0 + mod_proxy_balancer - naoyaのはてなダイアリー

    Apache 2.2.0 がついにリリースされまして、かねてから期待されていた mod_proxy_balancer が安定版で使えるようになりました。mod_proxy_balancer はその名のとおり Apache でロードバランスするための proxy モジュールです。詳しい解説は yappo さんがしてくれてるのでそちらを。 実は mod_proxy_balancer 使ってみるかーと思って Apache 2.2.0 をインストールしようとしたらいきなり躓きました。APR 1.2.0 が入ってないから駄目だよ! と configure に叱られまして、でも APR 1.2.0 って Apache 2.2.0 インストールしないと入らなくね? みたいな矛盾が発生しました。なので、まず最初に srclib にある APR をコンパイル & インストールして、その後 Apache2 の

    Apache 2.2.0 + mod_proxy_balancer - naoyaのはてなダイアリー
  • きよへろのPerlコードをリファクタしようのコーナー No.2

    2回目やってるっぽいので、今回も私家版を書いてみる。 というわけで id:naoya からの今回の課題。 「スクリプトを実行することで、現在の日付を返すスクリプト」 やっぱり最初は localtime を素で使っちゃうよね。Perl の入門書にはおそらくほとんど localtime での例になってると思われます。しかし、僕なら Time::Piece を使う。 #!/usr/local/bin/perl use strict; use warnings; use Time::Piece; my $lt = localtime; printf "%s %s\n", $lt->ymd('/'), $lt->hms;なぜって、localtime の関数型インタフェースがださすぎるから。Matt Sergeant タンのTime::Piece を使えば組み込みの localtime が OO イン

    きよへろのPerlコードをリファクタしようのコーナー No.2
  • きよへろの Perl コードをリファクタしようのコーナー - naoyaのはてなダイアリー

    キーに姓、バリューに名を格納したハッシュに yasuhiro と引数を渡すことで onishi と返すスクリプト(今月始めに作成) id:kiyohero が Perl を勉強しはじめたというのでリファクタしようのコーナーです。続くかどうかは分かりません。 #!/usr/local/bin/perl use strict; use warnings; my %staff = ( kondo => 'junya', ito => 'naoya', onishi => 'yasuhiro', danjou => 'nobuo', minowa => 'higepon', ); my $user = shift or die "usage: $0 <name>"; print $staff{$user}, "\n" if $staff{$user}; 変数が入らない文字列はシングルクォートで。

    きよへろの Perl コードをリファクタしようのコーナー - naoyaのはてなダイアリー
  • 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のはてなダイアリー
  • 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
    milkjelly
    milkjelly 2005/09/07
  • 技術系の雑誌、書籍を書くこと - naoyaのはてなダイアリー

    今日は技術評論社の方が取材に来てくれました。人生において、自分の話をひたすら1時間なり2時間なり聞いてもらえるということは、実はそんなになくって、こういう取材のときぐらい。よく考えてみるととても非日常的なことです。自分の話を聞いてもらえる、というのは楽しいものです。 余談で、雑誌や書籍に記事を書くことについても話をしました。 僕は大学の頃、計算機を専門にしていない学部に所属していたこともあって、計算機関連の知識はほぼ独学で、雑誌や書籍、それからインターネットからその多くを学びました。執筆者の方の名前を見るたび、ここにその人の名前が載っているということは、技術者にとって相当なステータスであり喜びなんだろうなあと、憧れていたものです。結城浩さんとか、宮川さんなんかはその憧れの代表格でした。 それは今でも変わりません。僕にとって雑誌や書籍に自分の名前が載るということは、ある種最高の栄誉なんだと思

    技術系の雑誌、書籍を書くこと - naoyaのはてなダイアリー
    milkjelly
    milkjelly 2005/08/16
    私にももし話がきたら書きたいなと思うけど…そういう話が来るほどできる訳ではないのが残念。
  • XML::Simple におけるパーサーの実行速度比較 - naoyaのはてなダイアリー

    XML::Simple は、どんな XML でも Perl のデータ構造に自動変換してくれるかなり便利なモジュールなのですが、中でツリーを解析したりいろいろやってるせいもあって、速度的にはあまり誉められたものではありません。以前に Perl で XML の処理はどれが速いかベンチ で比較したときには、随分遅いなという印象でした。 ただ、XML::Simple はその中で利用するパーサーを色々切り替えられるようになっています。じゃあそれを切り替えたら少しは速くなるんだろうかと気になってベンチを取ってみました。 XML::Simple は $XML::Simple::PREFERRED_PARSER に任意の SAX パーサーを指定するとそれを使ってパースするようになっています。 XML::LibXML::SAX XML::SAX::Expat XML::SAX::ExpatXS XML::P

    XML::Simple におけるパーサーの実行速度比較 - naoyaのはてなダイアリー
  • new Classs or Class->new どっち - naoyaのはてなダイアリー

    昨日はJava的と書いたのだが、よく考えてみるとJavaでこういう書き方をするのはコンストラクタだけだなぁ。何となく思ったので書いておく。 Class instance = new Class(); instance.do();こう考えてみると、コンストラクタでnew Class、メソッド呼び出しで矢印というのも、あながち変でもないか。(id:naoyaさんによると、Class->new型の人も結構いるらしい。ふむふむ。) Perl のコンストラクタ呼び出しは my $instance = Foo::Bar->new;でも my $instance = new Foo::Bar;でもいいんだけど、どっちが好みかという話。よくある議論のひとつですね。なぜ Perl がこの両者の呼び出し方をサポートしているかは TIMTOWTDI、というよりも単に Perl のオブジェクト指向シンタックスの実

    new Classs or Class->new どっち - naoyaのはてなダイアリー
  • naoyaのはてなダイアリー - Movable Type で言及リンクのない TrackBack ping を弾くプラグイン

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

    milkjelly
    milkjelly 2005/07/04
    mtのトラバをはてな化
  • Trackback Auto-Discovery と __mode=rss で含む blog - naoyaのはてなダイアリー

    はてなブックマークのエントリーページには、そのエントリーを含む日記として、当該 URL に言及しているはてなダイアリーへのリンクが表示されてます。たとえば村上春樹先生降臨の記事の場合こんな感じ。 この含む日記を、トラックバックの仕組みを利用して、はてなダイアリー以外の blog まで波及させることができると情報の価値が上がるのかなと思いやり方を考えてみました。 Trackback Auto-Discovery で当該 URL のトラックバックURLを探す Trackback URL があったら ?__mode=rss でトラックバック一覧を取得する 取得した一覧のリストから、当該エントリーへの言及リストがあるもののみ、マージして含む日記に表示 なんだか、ありがちな仕様になってしまいました。Trackbackスパムまで拾ってしまわないように、3 も入れてみました。時々 RSS を再取得して同

    Trackback Auto-Discovery と __mode=rss で含む blog - naoyaのはてなダイアリー
    milkjelly
    milkjelly 2005/06/29
  • はてなブックマークで検索フォームを右上に持ってくる

    昨日よりはてなブックマークのデザインを変更できるようになりました。それで、b:id:finalvent を見ていて、おっと思ったので僕もフォームを右上に出るようにしてみました。(b:id:naoya) やり方は結構簡単です。 div.body { position: relative; width: auto; _width: 100%; top: 0; left: 0; } form.hatena-usersearch{ position: absolute; top: 0; right: 0; }といった具合。div.body を relative 指定で基準に沿えて、検索フォームを absolute で位置指定します。はてなダイアリーの hatena.css にあるように、div.body には width をつけてやらないとちょっとずれてしまうみたいなので、それも付け足しておきまし

    はてなブックマークで検索フォームを右上に持ってくる
    milkjelly
    milkjelly 2005/06/10
    あとで試そう。
  • 僕やはてながPerlを選ぶ理由 - naoyaのはてなダイアリー

    ご存知の通り、はてなのシステムはほぼすべてPerlで書かれています。そもそも僕がはてなに入った一つの理由に、僕が一番得意とする言語であるPerlを使ってシステムを構築していたという点があったりします。 世の中にはたくさんのプログラミング言語があります。PerlJavaRubyPHPPython、C、C++、lisp、Smalltalk、Cobol...数え上げたらキリがありません。そして、プログラマはかならずと言っていいほど、どれかひとつ以上の言語を愛しています。好き、ではなく愛しているのです。 自分が愛しているものを批判されると感情的になりやすいのは人の常、プログラミング言語の差異に関する議論は炎上しがちで、よく宗教戦争だなんて言われたりもします。その中で、言語なんてどれも一緒だなんていう乱暴なまとめがされることもよくあったりします。 しかし、何年かプログラマというものを経験して

    僕やはてながPerlを選ぶ理由 - naoyaのはてなダイアリー
  • はてなRSSの技術的ポイント - naoyaのはてなダイアリー

    はてなRSS、ブックマークの検索機能、ダイアリーのバージョンアップと立て続けに大きいのを進めてきまして、ようやくひと段落着きました。 ちょっとまだはてなRSSの巡回君が最適化しきれておらず、毎日動きを見ながらチューンしているところです。はてなRSSに限らず、巡回ロボットプログラムは世間の荒波にもまれて少しずつ(ad hocに)育てていくものなので、がんばって改良してまいります。 さて、たまには技術の話でもしてみます。はてなRSS技術的ポイント。とは言ってもそんなに目立つようなところはないのですが、とりあえずは「もっと読む」ボタンのところで Ajax を使ってるなんてところでしょうか。 RSS 1.0 で content:encoded があるフィードや Atom でフルコンテンツを公開しているものからは、その文を抽出して「もっと読む」で読めるようにしてあります。(excite Blog

    はてなRSSの技術的ポイント - naoyaのはてなダイアリー
    milkjelly
    milkjelly 2005/05/11
    Ajax使ってたのか!さりげなくて気が付かなかった。
  • すっきりしたプログラムを書きたかったら先人のコードを真似する - naoyaのはてなダイアリー

    ふとはてなブックマークを見て回っていたら プログラムをすっきり整然と書くコツを教えて下さい。ちなみに現在、PHPでプログラムを作成しています。 という質問を発見しました。もう質問が終わっちゃってるので回答できないのですが、僕なりの見解は、人のコードを読むとか真似するのが一番の近道じゃないかなと思います。 個別の要素を見ると、フラグを使いまくらないとか適切な処理の単位でメソッドを切り分けるとか、いろいろあるんでしょうけど、そういうのって頭で考えるより人の真似をして感覚で覚えていったほうが早い場合もあるというのが、僕の感想。(プログラマでありながら右脳人間なのでそう感じるのかも。) インターネットがあれば綺麗なコードはいくらでも見つかりますし、そのコーディングスタイルを真似て書いてみるのも一興かなと。問題は、そのコードが綺麗かどうかはどうしたらわかるのかという点ですが、こればっかりは一概には言

    すっきりしたプログラムを書きたかったら先人のコードを真似する - naoyaのはてなダイアリー
    milkjelly
    milkjelly 2005/02/14
  • 1