Twitter に入って 1 ヶ月が経ちました。現在研修やらでサンフランシスコに来ています。小さいながらも自分が書いたコードが Twitter 上で動いているのを見るのはとても不思議な感じ。 Twitter の Username は @higepon なのでぜひフォローしてね。
![Twitter に入社しました - higepon blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/430421c19792df56203f8e04b23a72eb897d102a/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fh%2Fhigepon%2F20120206%2F20120206052741.jpg)
2012/1/15 をもちましてサイボウズ・ラボ株式会社を退職することになりました。 お世話になったみなさん本当にありがとうございました。 各分野でのトップレベルのエンジニアに囲まれた 4 年間は本当に刺激的でした。ラボでは良い上司(畑さん)に恵まれラボのミッションに沿う形で、比較的自由に研究・開発に取り組むことができました。外に出ているだけでも Mosh / Mio / outputz など。どのプロジェクトでも自分が実現したいこと、自分の能力と真摯に向き合う必要のあったかけがえのないプロジェクトでした。この 4 年間に学んださまざまなことは、今の自分を形成する「成分」の中でも大きな割合を占めていることを感じています。サイボウズ・ラボおよびサイボウズのみなさま本当にありがとうございました。 1 月末から新しい職場でソフトウェアエンジニアとして新たな一歩を踏み出します。みなさま今後ともよろ
最近短い英語の文章を書く事が多いのだが、スペルミスが多い。メールなら Gmail がスペルミスを教えてくれる。 ただ issue tracking でやりとりするときなどは ChangeLog メモに文章を書いてコピペするのでスペルチェッカを通してなかった。 kosaki さんの日記のコメント欄で flyspell-mode の存在を知り試してみたのだがとても良かったので紹介。 M-x flyspell-mode でスペルチェッカが有効になる スペルミスと思われるところは自動で入力中に強調表示される ctrl + . で自動訂正も可能 .emacs ChangeLog メモ編集時に flyspell-mode を有効にする例。 (add-hook 'change-log-mode-hook '(lambda() (flyspell-mode) (local-set-key [(contro
Java並行処理プログラミングを読み終えた。ここ 1 年に読んだ技術書の中でダントツのベスト。(2位はWorking Effectively With Legacy Code) 「Java の本だから関係ない」と思った人にこそ読んで欲しい。僕もここ数年 Java のコードなど一切書いていないが、この本を読んで得たものは非常に大きかった。 この本では マルチスレッドプログラミングにおける問題と背景、その対処方法 Java が提供している API の設計と実装 を解説している。分かりやすさとレベルの高さを兼ね備えたとても良い本。翻訳も最高。 僕はこの本を読んで、Java の並行処理プログラミングは、想像を遙かに超えて進化している事に驚きを隠せなかった。何回も twitter で Java すげーと叫んだ。 これを読んでしまうと、最近僕が熱心な Scheme も含めて、自分の身の回りにあるプログ
本日 Outputz というサービスを公開しました。 Outputz は「自分がインターネットにどれくらいアウトプットしているか?」を自動的に記録し、その結果をグラフで見ることのできるサービスです。 使い方 Outputz に行き、Firefox アドオンをインストールしてください。やることはこれだけです。あとは自動的に Outputz があなたのインターネットへのアウトプット量を記録してくれます。 アドオンをインストール後、ステータスバーに以下のようなアイコンが表示されます。クリックすると今までのアウトプットの集計を見られます。 どのサイトに多くアウトプットしているか?、どの時間帯が多いか?、アウトプットの量を文学作品で例えるとどれくらいか?など多彩な集計情報が提供されます。 背景 私たちの生活において、インターネット利用の比重は高くなってきています。Google や Yahoo で検索
結論から先に。SICPの次は Code Complete を読め。 Code Complete第2版〈下〉読了。 途中でマインドマップを知り、勉強ノートを描き直した。 上巻と同様に、これを読まずして何を勉強するのかといった濃い内容。 上巻と下巻ではやはり上巻の方がためになる気はする。 勉強方法 週3日決まった時間に読む。 経済の勉強と交互にやるってのがやっぱりあっている 気になったところを ChangeLog にメモし印刷して復習 大事なところはマインドマップにする 完了までのぺース 読んでノートを作るのに12時間。 復習は2時間くらい。これはもう一人勉強会だな。 上巻 6/24 P1-85 6/26 P89-150 6/28 P151-224 6/30 P225-316 7/2 P317-450 7/5 P451-564 下巻 7/7 P1-68 7/9 P69-P150 7/12 P1
良い天気だしキャンパスが気持ちよい。 miyagawa さんの英語が流暢。 Larry Wall ktkr お茶目だな。 Continuous Testing Test::Continuous ソースが変更されたら自動テスト ポップアップで知らせる これいいね。 Log::Dispatch らしい Log::Dispath::MacGrowl すべてのテストを実行するのは重いよね .pm -> .t の依存関係 すべての依存関係を検知するのはむり(yamlとか) Perl as a Second Language by 弾さん なぜ外国語を学ぶべきか? 何かやるには1つ以上の方法がある 言語毎にどんなことにより注意を払っているか?の違いがある 英語・日本語・中国語における「いとこ」の例 Perl と他の言語が似ている例 print "Hello, World!"; # python, ru
小学一年生 2008年 04月号の付録がやばい。(楽天Booksだとまだ買えるようです) 「どこでもゆびピアノ ドレミくん」が付いてくるんだ。これは欲しいがさすがに買えないと思って帰宅した。 すると妻が「今日本買ったんだけど。」と言うので見てみたら が、パソコンデスクの上に!!!!。感動した。 一方で冷静な自分もいて「本屋にたくさん在庫あった?」と聞いたらまだいっぱいあったとのこと。本当の読者である新小学一年生に届かなかったらまずいから。 今も昔も開けるときはどきどきする。 しっかり包装されているな。 来たー。これは。水色のバンドが短そうなんですが大丈夫ですか。 指にはめてみた。大人の指でもちゃんと入るが、2つほど問題が。 1つは指先と本体を結ぶ線が短いこと。もうひとつは手首に留めるためのバンドの長さが足りない。 各指先はド〜ソの後が割り当てられていて、指を下に押し付けると電子音が鳴ります
ダシにして申し訳ないが、典型的なLisperからみたかつてのid:higeponや、現在のid:amachangの「知力」は高いとはとても言えない。例えば遅延評価のことは、SICPを読めばちゃんと書いてある。そしてこれはまともなComputer Scienceがある大学なら、一番最初に使う教科書の一つなのだ。「まとも」に教育を受けた人なら、「遅延評価童貞が許されるのは、小学生までだよねー」とか言うかもしれない。 しかし、彼らの知的生産力は10倍どころでなく高い。その過程を逐次晒しているからだ。その過程で「知力」豊かな人々の助言も得られるし、彼らの「失敗」を通して彼ら自身だけではなく、彼らのblogの読者もそこから学ぶことができる。もし読者の知的生産力の向上も彼らの知的生産力の方にカウントしたら、知的生産力の差は十倍どころか数千倍、いや数万倍のオーダーだろう。これを繰り返しているうちに、今度
shiro さんが開発されている Scheme 処理系 Gauche 0.8.12 の最適化処理を勉強のためにまとめました。 よく Gauche のコードは宝の山だと聞きますが、その一端を分かってもらえるとうれしいです。 基本的にGaucheのコードのコメントをまとめただけです。 Scheme のソースコードと簡単な英語が読める人はこのまとめを読むより src/compile.scm を直接読んだ方が正確に理解できると思います。 前提1 コンパイルと実行の流れ Gauche はスタックマシン型の仮想マシンでコードを実行します。 そのため Scheme のコードはスタックマシンで実行可能なコードにコンパイルされます。 つまり Scheme のコード →(コンパイル) マシンコード →(実行) 結果 という流れでコードが実行されることになります。 今回取り上げる、最適化は上の流れの「コンパイル
Merging in Subversion is a complete disaster. The Subversion people kind of acknowledge this, and they have a plan, and their plan sucks too. It's incredible how stupid these people are. They've been looking at wrong problems all the time. Branching is not the issue. Merging is. この部分は確かにその通り。 Subversionは、マージのサポートがなさすぎてひどい。 追記 どこからどこまでがマージされたのか?というメタ情報がSubversionにはないのですよね。 なので、「以前どのブランチをどこの revisio
金曜日に退職し、すぐに働き始める訳ではないので、年金・保険証・住民税の手続きをやってきました。 忘れたり先延ばしにすると色々と面倒なのですぐにやってしまうのが良いです。 年金 会社に所属している間は厚生年金に加入していて「厚生年金保険」という項目で給与から年金の積立(?)が行われていました。 退職したので自分で払わなければいけません。 用意するもの以下の通り。 年金手帳(自分と妻の両方) 退職証明書(勤め先が発行してくれたもの) これを持って区役所の年金コーナーへ。 係の人に事情を説明すると 夫婦揃ってこれからは国民年金に加入 手続き時点では厚生年金が加入中の扱いだったので退職証明書のコピーをとって手続きしてもらう 後日、年金の納付書が送付されるので支払いをすれば OK。 再就職した場合は 夫婦の年金手帳を次の職場に提出し手続きをしてもらう 夫は厚生年金に加入 妻は3号被保険者に変更 保険
本日*1をもちましてはてなを退職することになりました。 お世話になったみなさん本当にありがとうございました。 僕は、はてなRSSや Rimo などまとまった大きなサービスから、ダイアリーのメール投稿機能など小さな機能まで、はてなのいろいろな部分に関わらせていただきました。 その過程で 実際にサービスを使ってくれるユーザーのみなさん はてなアイデアを通じてアイデア投稿や不具合報告をしてくれるみなさん 告知日記のブックマークコメントで喜んでくれるみなさん 日記で感想や要望を書いてくれるみなさん など、本当に多くのユーザーの方といろいろな形でコミュニケーションをとらせていただきました。 そのみなさんとのやりとりが、より良いサービスを作りたいというモチベーションになったり、日々の僕自身の楽しみやはげみになったりと、たくさんの力をいただきました。(本当はユーザー id を挙げてお礼が言いたかったので
最近一部で盛り上がっている「末尾再帰」について自分の理解を確認するのも兼ねて書いてみます。 (そもそも自分がふったのがきっかけっぽいので)。 上級者の方は間違い等に厳しくつっこんでもらえると助かります:-) 背景 自分が末尾再帰を知ったのは多分Schemeの勉強を始めた頃だったと思います。 例えばSICPという本では20ページあたりにこっそりと出てきます。 そのころの理解はかなり浅いもので「ふーん。」程度でした。 さて後日Schemeの処理系を実装することになりR5RSというSchemeの仕様書を読んだところ Scheme の実装は真正に末尾再帰的(properly tail-recursive) であることが要求されている。これは,たとえ繰返し計算が 構文的に再帰的手続きで記述されているときでも,定数空間 でその繰返し計算を実行することを可能にする とあり末尾再帰のことを詳しく知る必要性
オープンソースマガジン2007年1月号に向けて書いた記事の元の原稿です。 前回のアルファギーク舘野君から、バトンを渡されたひげぽんです。 Mona OSというオープンソースOSを開発しています。 僕はハッカーと呼ばれるには実力不足ですが、知り合いのスゴ腕ハッカーに少しでも追いつこうと日々実践していることをいくつか紹介します。 ハッカーに学ぶ オンラインでもオフラインでも構いません、自分よりも優れているハッカーを探してお手本とすることから始めましょう。 彼(または彼女)が何を勉強し、発言し、考えているかを観察することで多くのことを学べるはずです。 周りにハッカーがいなければ、勉強会・カンファレンスに参加したり、ブログを利用してコミュニケーションをとるのもひとつの方法です。 「ハッカーに交わればハッカーになる」とまではうまくいきませんが、周りは自分より優秀な人ばかりであるという環境を作り上げる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く