タグ

ブックマーク / higepon.hatenablog.com (13)

  • サイボウズ・ラボ株式会社を退職しました - Higepon’s blog - Mona OS and Mosh

    2012/1/15 をもちましてサイボウズ・ラボ株式会社を退職することになりました。 お世話になったみなさん当にありがとうございました。 各分野でのトップレベルのエンジニアに囲まれた 4 年間は当に刺激的でした。ラボでは良い上司(畑さん)に恵まれラボのミッションに沿う形で、比較的自由に研究・開発に取り組むことができました。外に出ているだけでも Mosh / Mio / outputz など。どのプロジェクトでも自分が実現したいこと、自分の能力と真摯に向き合う必要のあったかけがえのないプロジェクトでした。この 4 年間に学んださまざまなことは、今の自分を形成する「成分」の中でも大きな割合を占めていることを感じています。サイボウズ・ラボおよびサイボウズのみなさま当にありがとうございました。 1 月末から新しい職場でソフトウェアエンジニアとして新たな一歩を踏み出します。みなさま今後ともよろ

    サイボウズ・ラボ株式会社を退職しました - Higepon’s blog - Mona OS and Mosh
    hirose31
    hirose31 2012/01/16
    お疲れ様でしたー
  • Key で sort 済みの Key-Value Storage を作り始めた - higepon blog

    タイトルの通り Key で sort 済みの Key-Value Storage を作りはじめました。 良くある DHT だと Key の Hash を取る事で分散させるので順序情報を失ってしまうのですが、それを Skip Graph という仕組みで順序情報を保持したまま分散させることが可能になります。 sort 済みだとうれしいのは KVS に対して Range Query が可能になること。 例えば、empno-999 以上の value リストを 最新10件、KVS に要求するみたいなことが出来るようになります。 従来の KVS では上記のような Range Query は不可能だったので、そこは RDBMS に任せていたと思うんですが。(RDBMS で Range Query 後、Key のリストを KVS に投げるなど) この辺りの RDBMS の負荷と分散しづらさを KVS 側

    Key で sort 済みの Key-Value Storage を作り始めた - higepon blog
    hirose31
    hirose31 2009/06/12
  • 息子が生まれた - higepon blog

    今日、息子が生まれた。この日をずっと待ち望んでいたので当にうれしい。 がんばってくれたよありがとう。僕が何回も風邪を引いているのに、妊娠中一度も病気をしなかったあなたを尊敬します。 これからは出来る限り僕ががんばるよ。 息子へ 君がよく見回せば、世界は楽しいことであふれている。当だよ。じーっと目を凝らしてよく見てみて。 ただし、楽しさにたどり着くためには行く手を遮るものや、思い通りに行かないこと、自分の力が及ばない範囲の困難もあるかもしれない。もし僕に似たのならば不器用すぎてたくさん失敗し、嫌になって投げ出したくなることもあるだろう。 そんなときは、焦らずゆっくりと少しずつ自分のペースでいいから、押したり、引いたり、避けたり、ジャンプしたり、時には潜ったりして、自分の向かいたい楽しい方向に進んでくれると良いな。 生まれる前は、そんなことを君のお母さんと話して名前を決めたんだよ。

    息子が生まれた - higepon blog
    hirose31
    hirose31 2009/06/05
    \(^o^)/
  • Emacs + GDB チートシート - higepon blog

    Emacs + GDB を利用したいならば、何よりも GNU Emacs Manual: Debuggers(英語) を読むことを強くおすすめします。 和訳も存在しますが内容が古く、マウスを利用した操作やグラフィカルな機能についての記述がありませんでした。 マニュアルを読んで理解したあとは実践で覚えていくわけですが、以下にまとめたチートシートを利用すれば時間が節約できるかもしれません。 もしも便利な機能に関して漏れがあれば是非教えてください。 .emacs ;;; GDB 関連 ;;; 有用なバッファを開くモード (setq gdb-many-windows t) ;;; 変数の上にマウスカーソルを置くと値を表示 (add-hook 'gdb-mode-hook '(lambda () (gud-tooltip-mode t))) ;;; I/O バッファを表示 (setq gdb-use

    Emacs + GDB チートシート - higepon blog
    hirose31
    hirose31 2009/05/06
  • Autotools の configure.ac と Makefile.am をさらしてみる - higepon blog

    多くの方に助けていただきながら、Autotools と格闘し何とか動くようになりましたので configure.inconfigure.ac と Makefile.am をさらします。 公開の意図ですが 初級以上の中級以下のサンプルがとても少ない(初級だと物足りず、オープンソースの大きなプロジェクトのものは読めない) 特殊な事情をどう乗り切ったかも合わせて分かる 実際に動いている新しいものである(Autotools はバージョンアップが激しく Web 上の資料が古くなっている場合が多い) 参考になるドキュメント 以下のドキュメントを参考にしました。 資料を読んでいて手元のものと動作が違うようでしたら資料が古いことを疑った方が良いです。 新しめの Autotools (Autoconf&Automake) を使ってみよう Automake の index Autoconf の index h

    Autotools の configure.ac と Makefile.am をさらしてみる - higepon blog
    hirose31
    hirose31 2009/01/28
    configure.am Makefile.am 【細かいですけど、最近はconfigure.inじゃなくてconfigure.acとするんじゃなかったかな。  foo.in は「./configureによってfooを生成する元」ということで統一するってことで。】
  • XS利用でPerl高速化 その2 - ひげぽん OSとか作っちゃうかMona-

    前回は、XSモジュールを使うと処理が高速になる可能性があるという紹介をしました。 ただしXSモジュールの導入にはデメリットもあります。 C言語で実装しているという関係上、 モジュール変更のたびにリコンパイルが必要である メモリリークの危険性がある Perlの管理下にないメモリは自分で解放しなければなりません(詳細は後日) プラットフォーム間での互換性が保てない リコンパイルや修正が必要な場合が多い PerlのXSバージョンに左右される場合がある Perl単体のときと比べてデバッグが難しい などなど、クリアすべき点があります。 というわけで使いどころとしては、 Perlのコードで速度的にボトルネックになっている部分があり そのコードの仕様はほぼfixしている(変更が入る可能性は少ない) というような場合に、XSで処理を書いてみて、ベンチマークをとってみるという形が良いと思います。 なおXSに

    XS利用でPerl高速化 その2 - ひげぽん OSとか作っちゃうかMona-
    hirose31
    hirose31 2007/09/28
  • ひげぽん OSとか作っちゃうかMona- - [Perl] XS利用でPerl高速化

    (追記:2009/03/25) id:tokuhirom さんからコメントを頂きました。このベンチマークは問題があるそうです。 http://d.hatena.ne.jp/higepon/20050615/1118829090#c (追記:終わり) PerlにはC言語で書かれた関数を呼び出すためにXSという仕組みが存在します。 一部CPANモジュールでも使われているためご存知の方も多いと思いますが、今回はこのXSの簡単な利用方法を紹介したいと思います。 なおXSは、はてなでも使用しています。 さてXSモジュールを使うとうれしい事は C言語で書くことにより、処理が高速になる可能性がある 既存のC言語ライブラリ資産をPerlから利用することができる Perlがあまり得意でない、メモリ内などに存在するビット単位での細かなデータ構造を、あれこれできる などが挙げられると思います。 今回は、高速化に

    ひげぽん OSとか作っちゃうかMona- - [Perl] XS利用でPerl高速化
    hirose31
    hirose31 2007/09/28
  • 各種エディタの学習曲線 - higepon blog

    viとemacsが面白すぎる。(曲線が正しそうという意味で) Visual Studio はある一定以上に到達すると止まるのか?Picoってなに? The Random Musings of Maulkin より http://blog.halon.org.uk/2006/08/04#editor-learning-curves

    各種エディタの学習曲線 - higepon blog
  • C++で関数呼出しを視覚化 コールグラフを出力してみよう - higepon blog

    「Graphvizによるファンクション・コールの視覚化」を参考に、今開発中の Scheme インタプリタのコールグラフを出力してみた。 pvtrace のインストール http://www.mtjones.com/developerworks/pvtrace.zip 大きめの trace をしたいのであらかじめいくつかソースを書き換える。 symbols.h #define MAX_FUNCTIONS 2000 // 元は 200 だった stack.c #define MAX_ELEMENTS 50000 // 元は 500 だった インストール $ make $ sudo make install graphviz のインストール $ sudo apt-get install graphviz ターゲットのコンパイル 今回は Scheme のインタプリタがターゲット。 CXXFLAGS

    C++で関数呼出しを視覚化 コールグラフを出力してみよう - higepon blog
    hirose31
    hirose31 2007/07/17
    pvtrace ftrace c++filt
  • Emacs で wdired と moccur-edit を使っていない人は(ry

    Emacs で wdired と moccur-edit を使っていない人は(ry と思ったので紹介します。 wdired wdired ではファイルのリネームが超簡単になります。 mv やエクスプローラで F2 を押してリネームをしている人は wdired を使うべし。 dired で ~/tmp を表示すると以下の様になっているとします。 /home/taro/tmp: 合計 273 drwxr-xr-x 6 taro taro 928 2006-12-26 10:41 . drwxr-xr-x 66 taro taro 3632 2006-12-26 10:25 .. -rw-r--r-- 1 taro taro 2232 2006-11-24 21:36 EndsWithTest.cpp -rw-r--r-- 1 taro taro 670 2006-11-24 21:24 End

    Emacs で wdired と moccur-edit を使っていない人は(ry
  • ひげぽん OSとか作っちゃうかMona- - Google Code Searchに自分のコードをクロールしてもらう方法

    Google Code Searchはとても便利ですが、自分の公開しているあのコードが検索に引っかからない!ということを経験しました。 調べたところGoogle Code Search - Help Google Code Search find your codeのページから tar.gz,zipなどのArchiveファイルのURL CVSリポジトリ Subversionリポジトリ を登録すればクロールしてくれるようです。 Please note that we do not add all submitted code to our index, and we cannot make any predictions or guarantees about when or if it will appear. と書いてあるので全部クロールされるとは限らないですが、やってみる価値はあるので

    ひげぽん OSとか作っちゃうかMona- - Google Code Searchに自分のコードをクロールしてもらう方法
  • Perlモジュールのソースを簡単に開く機能の話の続き - higepon blog

    id:tokuhiromさんによる実装 http://d.hatena.ne.jp/tokuhirom/20060204 とおりすがりさんによる実装 http://d.hatena.ne.jp/higepon/20060202/1138876212#c id:tenyさんによる実装 http://d.hatena.ne.jp/teny/20060204#p1 id:tenyさんによるぼやき でもね、実は衝撃的なことに、 M-x cperl-perldoc-at-point (C-c C-h P) なんてコマンドも実はあったんですよ…… id:tokuhiromさんのよい指摘 家 cperl-mode に取り込んでもらえるように動くとよいかも、とか思いました。 cperl-modeに取り込んでもらうようにするってのはとても良いアイデアですね。 やり方は二つあると思っていて id:tokuh

    Perlモジュールのソースを簡単に開く機能の話の続き - higepon blog
  • defadvice楽しい - higepon blog

    勝手 make で (compile "make")を連続で2回走らせると yes/no を聞かれてうれしくない現象に対して、compile.el に直接手を入れるという方法を先日紹介(d:id:higepon:20060911:1157988263)しました。 この方法はとても汚いやり方だと感じつつも compile.elに適切なhookが用意されてない compile.elに適切なカスタマイズ用変数が用意されていない という理由から諦めていました。 ところがodzさんから defadvice という機能をコード例と共に紹介(id:odz:20060911:1157995745)頂き、目から鱗でした。 defadvice を利用すれば 任意の関数の呼び出し前・後に hookする 任意の関数の中身をまるごと書き換える 上記の hook を簡単に有効化・無効化する などが可能になります。 例

    defadvice楽しい - higepon blog
  • 1