閲覧には管理人が設定したパスワードが必要です。※cookieを有効にしてください。 一度cookieに登録すると次回ログインフォームが省略されます。 / _ノ ヽ、_ \ / o゚⌒ ⌒゚o \もう毎日テンプレートをチェックする | (__人__) |作業に疲れたお・・・ \ ` ⌒´ /blog.blog2.fc2.com/
このブログでは初めましての長野雅広(kazeburo)です。mixi開発部・運用グループでアプリケーションの運用を担当しています。 12月12日よりmixiのRSSのCrawlerが改善され、外部ブログの反映が今までと比べ格段にはやくなっているのに気付かれた方も多いかと思います。この改善されたRSS Crawlerの裏側について書きたいと思います 以前のCrawlerについて 以前のCrawlerは cronからbrokerと呼ばれるプログラムを起動 brokerはmember DBから全件、idをincrementしながら取得し、外部ブログが設定されていればcrawlerを起動(fork) crawlerはRSSを取得しDBに格納して終了 このような設計になっていました。 この設計の問題として、member DBを全件走査するという無駄な動作と、一件一件crawlerを起動するためオーバ
Emacs で JavaScript のシンタックスエラーを検出する これ読んですぐ導入したflymake。上記サイトのを少し改造したらperlでもできたのでいまはjsとperlでリアルタイムでシンタックスエラーチェックができている。 僕はすごくtypoがおおいと思うのだけどこれを導入してからtypoではまることがずいぶん減った。もうないとこまるelispのひとつになってる。 ちなみにperl版はこんな感じにしている。 (require 'flymake) ;; flymake for perl (defvar flymake-perl-err-line-patterns '(("\\(.*\\) at \\([^ \n]+\\) line \\([0-9]+\\)[,.\n]" 2 3 nil 1))) (defconst flymake-allowed-perl-file-name-m
Recent entries 宣伝:C/C++のための開発補助ツール、GCCSenseをリリースしました matsuyama 2010-04-15 宣伝:Rubyのための開発補助ツール、RSenseをリリースしました matsuyama 2010-03-21 Emacsは死んだ matsuyama 2010-02-22 WebアプリケーションをiPhoneに対応させるための技術メモ matsuyama 2009-10-13 tokyo-emacs#x02の個人的レポート matsuyama 2009-09-07 Recent comments replica louis vuitton Anonymous User 2010-12-22 Re:テキスト入力中に補完候補を自動的に表示してくれる auto-complete.el をリリースしました Anonymous User 2010-12
よく質問されるけども、いつもうまく答えられない。 今回、ちょっといい説明方法が思いついたのでメモしておく。 僕のサイボウズラボでの仕事は、3年で1個の「イノベーティブななにか」を作ること。そして、そのために3年で10個の「リリースできるサービス/利用できる技術」を作ること。そしてそのために3年で100個の「プロトタイプ」を作ること。そしてそのために3年で1000個の「新しいアイデア」を思いつくこと。 逆に言えば、3年で1000個思いつき、100個作り、10個リリースして、1個のイノベーションを起こすこと。 イノベーションは狙って起こすことができないので、こうやるしかないのだと思う。本当は、1000個の「新しいアイデア」を出すために10000個の「既存のアイデア」を学ぶべきなのだけど、そこはまだまだ追いついていない。 - あ、なんかブックマークがいっぱいついてる…。誤解がないように補足してお
こんな記事をみつけた。 Perlプログラムをコンパクトに記述する方法 - builder by ZDNet Japan 短く書けてPerlってすげーんだよ的な記事でまぁそれはそれでいいんだけどこういう場合はデメリットもちゃんと説明すべきかと。 というのも上記記事にこういうコードがあったのです。 while (<STDIN>) { print $_; } $_を使うことによって「while( $line = ) {}」と書くよりも短く書けて良いっちゃ良いんですが、このコードにはバグが含まれています。 whileでの暗黙の$_はローカル化されないのです。コレ超重要。 つまり、 $_ = 100; while ( <STDIN> ) { print $_; } print $_; こう書くと$_に格納してた100が上書きされてしまうので、whileを抜けたあとに$_を参照しても100という値は消
2007年12月25日17:30 カテゴリLightweight Languages perl - no underscore; # so $_ is forbidden Perl Cookbook (English) Christiansen / Torkington [邦訳: Perlクックブック] そんなあなたのために、underscore.pm whileでファイルハンドルをループする時の暗黙の$_について - Unknown::Programming whileでの暗黙の$_はローカル化されないのです。コレ超重要。 /lang/perl/underscore/ - CodeRepos::Share - Trac @CPAN (Coming Soon!) これの仕組みはPerl Cookbookのp. 543に出てきますが、こちらのバージョンは少し機能強化してあります。croakの
昨日書いた「シェルのリダイレクトを『こわいものなし』というくらい完全に理解しよう」に、随分とブックマークやトラックバックをいただきました。それらのフィードバックを拝見して、僕の説明にいたらない所があったと思いますので、ここで補足します。 コマンド実行単位≒simple command パイプ記号「|」や逐次実行の記号「;」を含んだ長いコマンドラインも、1つのコマンドとその引数、それとリダイレクト指定からなる“成分”に分解できます。こういった成分をなんと呼ぶか僕は知らないので、仮に「コマンド実行単位」とでも呼びましょう。 シェルの構文(grammar)的概念としてsimple commandというものがあります。ここで言ったコマンド実行単位は、ほぼsimple commandだと言っていいでしょう。「ほぼ」と付けたのは次の理由からです; 「コマンド実行単位」は、1つのプロセスを起動することを
サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一本吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には食材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい食材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ
そろそろShibuya.pmについて一言いっとくか 10月1日にShibuya Perl Mongers テクニカルトーク #8でClass::Componentに関してのプレゼンをして来ました。 このプレゼンより更に詳細な記事としてgihyo.jpの記事として公開されています。 gihyo.jpでの記事は、Class::ComponentどころかPerlのattribute周りを日本語で詳細に解説している唯一の記事だと思ってます。それくらい気合い入れて書いていたので(ry で、なんでいまさらこんな事書いてるかというと、先日発売されたWEB+DB PRESS vol.42のたつをさんの記事にて、tech talk#8でのustream配信の件が紹介されていたからです。 今回はotsuneさんと自分でustream配信を担当したので、ちょうど良い機会なので勉強会をMacBookでustrea
Class::Componentから見たNEXT問題 ちまたで大ブームなNEXTキメェwwwwww問題ですが、Class::Componentを半年作って来て感じた事を Class::ComponentにもClass::C3っぽい挙動をするNEXTメソッドを内蔵しています。 違和感ありますよね?NEXT.pmとかClass::C3とかを使ってるんじゃなくて、内蔵ですからね。 何でかって言うとClass::Componentは、利用する側に対して必要最小限の干渉しかしないというポリシーで書いてあるので、Class::C3とかを使ってないのです。 ソース見ればわかりますが、Class::C3を使うとnextという名前空間をこっそりと追加してたりするので、それを避けたかったのです。 Class::Componentのソースを見ればわかる通り、徹底的に不要な物を隠そうとしてる為ごちゃごちゃしたコー
「Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、本来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く