タグ

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

  • K のこと -- steps to phantasien t(2007-11-03)

    友人の話をしよう. 先達に敬意を表し, 仮に彼を K と呼ぶ. (イニシャルは便宜的なものだ; 向上心云々と罵ったこともないし, 恋人を寝取ってもいない.) ある時期, 私は K と一緒に働いていた. 今は違う会社にいるけれど, 互いに暇なのか, このごろもよく二人で管を巻いている. 1 K は優秀なプログラマだ. いつも敵わないと思う. 一緒に仕事をしていたこともあり, プログラマとしての私は K から強い影響をうけている. たとえば私が自動テストを始めた発端には K がいる. コードレビューもそう. この日記に出てくる話も K の影響は色濃い. 私は K のあとを追いかけるようにプログラマを続けている. K と働いてはじめて, ああ, 物事とはこう改善していくものなのかと知った. 何か問題を感じると K は試行錯誤を始める. 問題は私が諦めていたものもあるし, そもそも気付かないものも

    yuiseki
    yuiseki 2012/12/03
  • Finagle - 都会育ちのメッセージングフレームワーク - Backnumbers: Steps to Phantasien

    Scala でもやるかとぶつやく同僚を見て, たしかに Scala したいかも...などと意思の弱い私は気をそそられ, しかし特に書くものも思いつかずなんとなくウェブをぶらぶらしていた. そういえば HerokuScala をサポートしたニュースを読んだっけと検索すると, たしかにアナウンスがあった. このアナウンスにあるサンプルコードは面白い. Lift でも Play でもなく, Twitter の RPC フレームワークである Finagle が使われている. Finagle でサンプルを書いた理由の一つは画面におさまる簡潔さ, あとは流行り物の目新しさだろうけれど, Heroku の勧める Polyglot Platform の ありかたを示す意味もある気がしなくもない. Polyglot Polyglot という言葉を最初に目にしたのは プロダクティブプログラマ だったと思

    yuiseki
    yuiseki 2011/11/05
  • MongoDB の BSON - Backnumbers: Steps to Phantasien

    ペーパードライバーにはヒマなエリアへ出張中. 各種中毒メディア群も数周して飽きたため, 前から読みたかった MongoDB でも調べよう...としたけれど, 思ったよりコードサイズがあるなあ. ちょっとだけ眺めて気を済まそう... ウェブっ子でない同士諸兄に説明しておくと, MongoDB は JSON のようなオブジェクトに 適当な ID を割り振り, その ID をキーに JSON (のようなもの)を検索できるようにした データベースのこと. ID 以外の JSON のフィールドにもインデクスをつけて 検索できるぶん便利な子だとされている. (教科書情報.) 今日は手始めに MongoDB 内の JSON 表現たる "BSON" を眺めた. MongoDB は, 自身が内部で使っている JSON 相当のデータ表現を BSON (Binary JSON) と呼び, あわよくば広く使っても

    yuiseki
    yuiseki 2011/10/31
  • 最近もらった本: アジャイルサムライ - steps to phantasien(2011-09-13)

    いただきました. ありがとうございます. そして読んでいるうちに, どうも自分はアジャイルへの興味が失せていると気付いた. さいわい "アジャイルサムライ" は良く書かれており 感想はもうウェブ上にたくさんあるようなのでここでは保留し, かわりになぜ自分の関心が失せたのかを説明してみたいと思う. 理由はだいたい二つある気がする. ひとつはしょうもない理由: 私の参加しているプロジェクトはとても大きく, 独自の開発スタイルをもっている. したっぱの自分はそのやり方に口を出す気がなかなかおきない. 時差があり英語も苦手(これはほんと情けなくて泣ける)だからなおさら乗り気でない. 変える気がないものへの関心は薄れる. 二つ目はもう少しマシな理由. 件のプロジェクトはそこそこアジャイル風になっている. おおよそ time-boxed にリリースがあるし, 開発者の自動テストもある. リファクタリン

    yuiseki
    yuiseki 2011/09/15
  • Reading Readability - Backnumbers: Steps to Phantasien

    最近コードを読んでない. リハビリしようと軽めのものを探し, Readability を眺めてみた. Readability はもともと Instapaper にヒントを得て 書かれたブックマークレットで, HTML ページの文だけを抽出して見やすく表示する. Safari Reader の元ともなっており, 最近は 独立したサービス にもなった. Google Code でホストされているオープンソース版は実験ブックマークレット当時のもの. 2000 行くらい. 新しくはないけれど, 軽めのコードという趣旨にはあう. (私が Instapaper for Kindle ファンなのも Readability を読む気になった理由かもしれない. 題と関係ないけど Instapaper はちいさい Kindle のキラーアプリだと思うんだよね.) 文抽出 Readability の肝であ

  • steps to phantasien(2010-02-14) - 最近でもなく読んだ本

    裁断とスキャンが停滞している間にまた部屋の蔵書が幅をきかせ始めた. "最近読んだ" で自分のページを検索したら, 最後は 2008-01-11. 二年分か. そりゃかさばるわ. さっさとメモして処分したい. 順不同. (もうすぐ処分します. めぼしいのがあって物理的に無事なら差し上げますのでご連絡を.) RESFful Web サービス わかった気になっていたけれどわかっていなかった話が多く, 面白かった. 私が REST だと思っていたのは REST-RPC ハイブリッドだったのかとか, connectedness がないと REST としてはいまいちだとか. 特に 8 章のベストプラクティスについては, トランザクションや一括取得のように素人が考えたらうまく設計できなそうな 話題に定型を与えているのがよかった. 実際のデータは階層化されていなかったり unified interfac

    yuiseki
    yuiseki 2010/02/15
  • 近況 - "チームがよくなる" 感じについて - steps to phantasien(2009-12-31)

    2009-12-31 近況 プログラマとしての成長が感じられない一年だった. 目先の仕事に気をとられ, 問題についてよく考える時間をとらなかった. 過労を言い訳に勉強もしなかった. 情けない. 一方で仕事のチームでは成長を感じることができた. せっかくだから, "チームがよくなる" 感じについて書いてみたいとおもう. 最近, 私のいるチームはコードレビューをするようになった. 私はこれまで仕事の中でコードレビューを実施しょうと試行錯誤してきたけれど, チームに定着することは少なかった. コードレビューはそれなりに面倒な作業なので, 特に組織的な外圧がないところではさぼられがちだと思う. けれど今のチームは外圧なしでやっている. およそ一年間のプロジェクトを通じ, このチームがコードレビューをするに至った道程を振り返ると, チームが成長する様子をうまく捉えることができるかもしれない. フェー

    yuiseki
    yuiseki 2010/01/02
  • Core Animation - Safari の隠し味 - steps to phantasien(2009-08-22)

    2009-08-22 近況 WEB+DB PRESS の連載はなんとか打ち切りにならず続行中. 読んでもらえているとのフィードバックもいくつかいただき, ありがたいことでございます. 今回は CSS 周辺を読んでみました. ようやくブラウザらしくなってきたので興味のある方はごらんください. 記事の準備と称してコードを読む週末副業も今のところ続行中. 遠くに行くのがだんだん億劫になってきたので, 近所の安コーヒー屋に通っている. ひきこもり体質の改善はならず. 連載はこのあとレイアウト, レンダリングと続く予定. その準備にレンダリングまわりのコードを読んでいたら, 連載で書くにはややしんどいけれど WebKit らしいコードをみかけた. 今日はその話を書いてみたい. Core Animation - Safari の隠し味 CSSCSS 3D Transforms Module とい

    yuiseki
    yuiseki 2009/08/24
  • 八割の動詞 - Backnumbers: Steps to Phantasien

    PC は忙しい時ほど壊れる. 先週は職場の PC にこの経験則が降りかかった. 頻繁にフリーズしはじめる VisualStudio 2008. VS 単体での修復では問題が直らず困り果て, 結局 OS から入れ直す羽目に. まあディスクが故障しなかっただけ幸いだと思おう... OS の入れ直しは生活習慣を見直し悪習を捨てる機会でもある. 私の Windows 生活で最大の悪習は cygwin だ. ホスト OS への敬意を欠く cygwin には以前から後ろめたさを感じていたが, 惰性でずるずると使い続けていた. 今回のトラブルは良き市民たれという神(シアトル在住)の思し召しかもしれない. 啓示に耳を傾け, しばらく cygwin なしでがんばってみたい. PowerShell cygwin を捨てるということはシェルを乗り換えるということだ. いま Windows 民の間でホットなシェル

    yuiseki
    yuiseki 2009/03/30
  • Bespin - Backnumbers: Steps to Phantasien

    木にある SNS の会社で開催されたデータベースの勉強会に向かった私は道に迷って会場に辿りつけず失意のまま帰宅した. もうサーバサイドなんて知らねーよ! そう(地図を忘れた自分に)憤り, 現実逃避にクライアントサイドのコードでも読むかと Bespin を眺めた. Bespin は Mozilla が開発中のウェブで動くテキストエディタサービス. デモ版 が公開されている. もう少し詳しい話 によると, HTML5 の <canvas> で色々実装しているらしい. そういえばそんな機能があったなーと思いだし, どんなものかと コード をチェックアウトした. ツリーの構成 Bespin のソースは今のところ約 3 万行 ある. サードパーティのライブラリを除くと 2 万行くらい. backend/ frontend/ mocks/ slices/ docs/ research/ templ

    yuiseki
    yuiseki 2009/02/23
  • steps to phantasien(2009-01-30) - Martin Fawler は(多分)やっていないこと

    ThoughtWorks アンソロジー を読んでいたら Ruby を使った DSL の話が載っており, 仕事でうっかり Ruby DSL を作ってしまった私は興味深く読んだ. 特段目新しい話じゃないものの, (DSL と言えば聞こえはいいけれど要は設定ファイルですからね.) オレオレ DSL を作る際には "Martin Fowler もやっている" と言えば 説得力もあるってもんだろう. 説得力はさておき, Martin Fowler は私の DSL が抱える問題に答えてくれなかった. 最近の私は Ruby DSL の文書化に困っている. その DSL/設定ファイル はもともと余興にちまちま作っていたもので, 思ったより出来がよくなったため実プロジェクトで使いはじめたところだった. ちゃんと使ってみると案の定ぼろぼろと問題がでて, 後始末のために残業が続いている. まあドッグフードの自業

    yuiseki
    yuiseki 2009/02/05
  • Fulltext index on SQLite

    もうすぐ SQLite に全文検索がつく. Wiki を見ていて気付いた. (Full-text Search for SQLite) なかなか頑張ってるみたい. 他のデータベースは既に全文検索をサポートしている. 商用のものはもちろん, PostgreSQLMySQL も 対応済. 一方で, Java 製インプロセス RDB の HSQL や Derbyy は対応していない. (Wiki を見ると提案されてはいるようす.) 大物 DB には追いつかないにせよ, 他の軽量 DB よりは一足先を行くかんじ. 数ある DB の要件から全文検索をえらぶあたりがピンポイントでいい. 小さな規模のアプリケーションでも検索が使えたら嬉しいよね. コードは CVS に入っている. このへん. とりあえずチェックアウトして試そうと思いレポジトリを覗いてみると, コードはあるけど Makefile が

    yuiseki
    yuiseki 2009/02/05
  • steps to phantasien(2008-08-14) Netflix Prize 外野席

    "集合知プログラミング" というが出たらしい. 私の積読には元の "Programming Collective Intelligence" があって, 途中まで読んだまま放置していたら日語訳が出てしまった. (オライリーのアンチパターンと命名.) 悔しいのでは処分. そのうち日語版で続きを読もう.... 興味を持っていたのは推薦エンジン(協調フィルタ)だった. 私の中では検索エンジンに匹敵するウェブのハイテクという位置付けなんだけど, 草の根には普及しておらず悲しい. 検索エンジンでの Hyper Estraier や senna に相当する協調フィルタの立ち位置は デッドヒートが予想される...とだいぶ前から思ってるんだけど, いまのところ閑古鳥気味. まったく, 出し抜くだけの実力があればなあ. 先の皇帝ペンギンでは, 一章にさっそく協調フィルタが登場する. 読んでみると

    yuiseki
    yuiseki 2008/12/02
  • steps to phantasien t(2008-08-06): 最近もらった本: サーバ/インフラを支える技術

    いただきました. ありがとうございます. ネットワークの構成から冗長化, サーバのチューニング, デプロイの自動化まで, インフラや運用の話題を集めた. 私は運用やインフラに素人なので, 内容の技術的正当性について特に意見はない. ただ動いてる実システムの解説という点で信憑性は担保してる気がする. ひたすらすげーなあ大変そうなだなあと読んだ. 特に TCP/IP より下, LAN カード (という表記が我ながら素人っぽい. 玄人ぶるには NIC と呼ぼうか...) より向こうは つい所与のものと考えてしまう. たまに仕事で必要になっても同僚に押しつけてるし. 実は色々やってるんだろうなと, なんとなく思っていた中身を垣間みた気分になる. NIC より手前の話もあるけれど, 個人的には ハブ(...というと素人っぽい. スイッチ.) や ルータやロードバランサの出てくる話が, 未知の世界で

    yuiseki
    yuiseki 2008/11/24
  • 深く理解すること - Backnumbers: Steps to Phantasien

    2006-06-28 "富士山を動かすのにかかる時間は?" 答えるのが難しい質問をして, 相手の反応からその smartness を類推する. ハイテク面接のそんな定石は 件の などによって知られている. 元 Google 社員による blog Xooglers を読んでいたら, Google バージョンの難問がひとつ披露されていた. 面白かったので紹介. 記事を書いた Doug Edwards は, 1999 年からおよそ 5 年間 Google のマーケティング部門で働いていたという. 彼が Sergey Brin との面接を回想する記事 "Answer a hard question, get some raw fish" から, ハイライトを引用しよう. "I'm going to give you five minutes," he told me. "When I come

    yuiseki
    yuiseki 2008/09/16
  • steps to phantasien t(2008-07-24) - ウェブ華鑑賞: Procol Buffer 編

    Protocol Buffer の話題は一部で熱く語られた...というより炎上していた. ようやく炎がおさまってきたから, 野次馬として現場にかけつけてみたい. 火事と喧嘩はウェブの華. 火元から見ていこう. 熱心な Google ウォッチャーである MS の Dare Obasanjo が, protobuf 公開に合わせ すかさず "The Revenge of RPC: Google Protocol Buffers and Facebook Thrift" という記事を書いた. 記事の主張自体は穏当なもの. 「最近一部で バイナリエンコードな RPC が流行ってるみたいだけど, 時代は XML と REST で疎結合じゃなかったの?」と修辞的な疑問を示しつつ, "いや基的に Web は XML で REST な時代なんだけど, Web に出ない会社の内部ならバージョンやらツールを

    yuiseki
    yuiseki 2008/07/26
  • Protocol Buffersのソースを読んでみる

    2008-07-12 近況 新刊が多く慌しい. 谷川史子の "草の上星の下", 岩ナオの "町でうわさの天狗の子", あとは Google の "Protocol Buffers". 谷川史子の洗練を綴るには余白が狭過ぎる. かわりに Protocol Buffers の話をすこし. Protocol Buffers (以下 protobuf) は Google 製のオブジェクトシリアライザ. 名前からは RPC を連想しそうだけれど, RPC そのものではない. もっともオブジェクトを直列化して送受信するのが RPC だから, あとは送受信だけあればいい. 実装は含まれないものの, protobuf にも RPC を前提としたインターフェイスがいくつか含まれている. ...といった細かい話は ドキュメント や インタビュー を見ればわかる. 今日はコードを見てみることに. なお, 例の

    yuiseki
    yuiseki 2008/07/16
  • コードを憎んで人を憎まず, あるいは. - steps to phantasien t(2008-04-02)

    社会人になって最初に配属されたチームのコードはひどいもので, 私は同期の新入社員仲間 Y に "ひどいコードなんだ. あの先輩はろくでもない." と愚痴た. すると Y はぽつりとこう答えた. "<コードを憎んで人を憎まず> だよ." Y の言葉は私の座右の銘となった. コードと人格を切り離す. あたりまえの事に思えるけれど, いまより輪をかけて狭量だった私はひどいコードの書き手を見下していた. もちろん自分は棚にあげて. たかがコードで友情や信頼を失うのは愚かなことだ. Y はそう言うのだった. 件の先輩社員は寛大だった. 私は勢いと趣味に任せて彼のコードを書き換えていたが, 彼は文句もいわず, 雑用を押し付けてくることもなく, 他所からのメールやバグを黙々と片付けていた. 私が同じ立場なら, 間違いなく戦いの火蓋を切っていただろう. (実際, 翌年の私は毎日のように後輩と口論していた.

    yuiseki
    yuiseki 2008/04/06
  • 反政府的 API - Backnumbers: Steps to Phantasien

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

    yuiseki
    yuiseki 2007/07/25
  • テストで手を抜く:steps to phantasien t(2006-02-12)

    海辺のカフカ もらいもの. すばらしく面白かった. (実はもう内容をほとんど覚えていないが, それは良い娯楽作品の条件だと思う...) 村上春樹はなんというか, 日語が卓越しているね. こんなにストレスなく読めて, かつ下品でない日語を書ける作家は他に見ない. アマゾン・ドット・コムの光と影 前から気になっていたのを近所の屋で発見し読む. 資主義的に良い会社で働くのが幸せとは限らないのは実感としては 当り前ではあるが, Amazon(JP) の配送センターで働くという極端なケースの体験記. Amazon は素晴しい企業だ. 流通やアルバイトの活用といった計算機的でない部分の出来が良いと 計算機は威力を発揮するのだなあ. Expert One-on-One J2EE Development without EJB Spring Framwork の思想に基いた J2EE のアプリケー

    yuiseki
    yuiseki 2007/07/14