タグ

ブックマーク / bn.dodgson.org (7)

  • あるライブラリのおもいで - Backnumbers: Steps to Phantasien

    そういえば先に紹介したのサンプルコードは 前勤務先が開発していたライブラリを使っている. そんなのがあったなと思いだした. 開発元の会社は私が退職したあと解散してしまい, 製品としてのライブラリもなくなってしまったようだ. 少しはバグとりなどを手伝った身として一抹のさびしさがある. 今は亡きこのライブラリを偲んでみたい. それは C(v1.x)/C++(v2.x) で書かれたノンブロッキングスタイルの通信ライブラリで, libevent に類する イベントシステムと IO を抽象化するレイヤの上に バッファ管理, フレーミング, 多重化, 暗号化, 圧縮, UDP ベースのストリーム実装 と hole punching を実装し, 簡単な RPC もついていた. そのほかにも経路の heartbeat や素朴なリマッピング, 簡易チート対策, 高負荷な暗号化や圧縮だけを別プロセスに切り離

  • 無事です - Backnumbers: Steps to Phantasien

    2011-03-12 近況 無事です. はいいとして, 先週 Shibuya.js で話してきました (スライド). 空気をよまず JS と無関係の話をしてしまいやや申しわけなかったけれども, WebKit の様々な幻想をぶちこわす開発の様子を知ってもらうことには個人的な使命感を感じておりつまりこれはちょっとした十字軍なのです. JS のテストってなんでむずかしいの? 地震さわぎで自宅警備中の人も多いだろうから, お互いの気晴らしをかねてだらだら書きたい. JavaScript のテストについてぐぐったりついったを読んだりしていると, JavaScript でテストを書くのは大変だとか難しくてやってないという話が多くて不思議におもった. 私は JavaScript を使ってウェブアプリを作る仕事をしたことがなく, いまいち難しさがピンとこない. 趣味でさわっている範囲だと普通に書ける. な

  • 反政府的 API - Backnumbers: Steps to Phantasien

    勤務先のコードを見ていたら DeregisterXxx() という名前のメソッドがあった. そんな英語ないだろ ... とぐぐってみると, LKML のアーカイブがヒット. 投稿者の不満は私と同じだ. カーネルのコードに deregister_xxx () という関数がいくつもあるよ, いいの? という主旨. そうだそうだとスレッドを読み進めた私はある驚くべき事実を知る. Rik van Riel の返信: > "deregister" を使うに至った事情は何かあるんですか? 然り. 我々は反米国のテロリスト集団である. 辞書に無い新たな単語を大量に発明して米国経済を破滅に追いやろう. 連中の辞書産業に追従を許さず, 綴りを学ぶ余力を奪い, 英国との語彙戦争の中で溢れる語彙に沈め彼等の息の根を止めるのだ. なんてこった! (若干誇張あり.) deregister にそんな意図があったとは

  • 1975 年のプログラミング - steps to phantasien t(2007-06-17)

    少し前に Varnish という逆プロキシサーバが紹介されていた: 【レポート】高速化プログラミングの参照実装としても活用される「Varnish」 (2) vanishが採用している実装技術 : エンタープライズ : マイコミジャーナル. 気になったので資料を眺めてみる. プロジェクトの Wiki にある記事 Notes from the Architect, あとは 講演のスライド(PDF) などが概略には良さそうだ. 中味は仮想記憶やキャッシュ, SMP を有効活用して高速化しましょうという話. 仮想記憶の活用方法は二つ紹介されている. 一つ目は, "サイズに合わせて realloc() するかわりに最初からでかいサイズを malloc() しろ" というもの. 確保してもアクセスしなければ物理メモリにはコミットされないから, 拡張のたびにコピーの必要な realloc() より この

  • steps to phantasien(2008-11-21)

    The Decline and Fall of Agile を訳してみました. 例のごとく YukiWiki におかせてもらってます. 最近は短いのしか訳す根性がない... Agile 批判はよくあるけれど, これは割と良い指摘をしている気がした. 耳の痛い部分もある. たしかに日次のスプリントと月次の再計画は割と簡単に導入できて, チームも締まったかんじになる. けれどコードがよくなるわけじゃない. 一方で, この二つの trivial なプラクティスを取り込んだところで, 何かが悪化することはどのくらいあるんだろうか. 元記事の文脈を察するに, もともと重量プロセスがあったところに agile を持ちこみ, upfront の設計や計画がなくなって破綻したという話に思える. 数十人, 数百人のチームでソフトウェアを開発するプロジェクトには, おそらく何らかのプロセス, 秩序があるだろう

    tzt
    tzt 2008/11/28
  • Dehydra - Backnumbers: Steps to Phantasien

    Mozilla を大書き換えする Mozilla2 プロジェクトの目標設定はえらく野心的で, 2004 年から話があるのに当分終わりそうにない. 傍目にそりゃ無理だろという目標も多い. XPCOMGC なんていかにも無謀だ. 参照カウントをやめて JavaScript と同じ GC を使おうぜという話. JS と C++ のオブジェクトが混ざっても平気だよ...と言われても困る. 数百万行ある Mozilla 相手にそんな書き換えを敢行するとは, ロケット科学を通りこして魔術的だと言っていい. それが無理だからこそ C++ は呪われた言語で, Microsoft も逃げだしたんじゃなかったの? そんな外野の心配を他所に, Mozilla のプログラマ Benjamin Smedberg は Boehn GC と jemalloc くっつけたいんだけど良いアイデアない? なんて話をしている.

  • steps to phantasien(2008-09-07) v8祭り

    ウェブっ子の間では Google Chrome の JS 処理系である V8 祭りが絶賛開催中らしい. いつもは出遅れる私もたまにはやんやしたいと思っていろいろ読んでみたものの, VM に傷気味な自分に気付いた. けれど, そうは言っても祭りは別腹. 一通り騒いでみます. 販促マンガ や 資料 によれば, V8 は以下のような特徴を備えている. hidden class transition と fast property access generational accurate GC accurate だから incremental GC もできる オブジェクトの rellocation はするけど handle は使わず参照元書き換え 中間表現のインタプリタなしの native code 生成. instruction cache コードをみたところ, incremental GC

    tzt
    tzt 2008/09/10
  • 1