プログラム

html5カンファレンスに参加してきました

html5カンファレンスに参加してきました。娘の幼稚園の運動会の練習があったことを失念しており、午前中(8時45分)から息子の面倒を見たり、病欠の子の代わりに園児に混じってリレーに参加したりとした後、午後からの参戦でした。 会場につくと LTのなのにス…

fancyboxを使っていてiframe呼び出しでかつPOSTでデータを引き渡したい場合

jQueryプラグインのfancyboxはglobalの名前空間汚染とかもなく、swfとかiframeとかajaxとかtemplateとかが使えるので重宝しています。ただ、iframeでは当然GETの呼び出ししか出来ず、データをPOSTで渡して表示させたいときには使うことができません。時間が…

jQuery 1.7がリリースされました

リリースノートはこちら。注目しているAPIは以下です。 Event API(.on/.off ) これまでbind/unbindだったものがon/offを使えます また、セレクターが引数に取られた場合は、.delegate()と同じ挙動を取ります。 $('a').bind('click', myHandler); $('a').on('…

東京Node学園祭2011のスタッフをしてきました

まず、最初に、スタッフといってもミーティングにはほとんど参加できず、 役割も当日しかできなかったため、スタッフと言うかむしろタマゴとかマメみたいな 感じでしたけど、暖かく迎えてくださった(僕よりもはるかに多くの仕事をしていた) みなさんありがと…

Node感について

id:Jxck さんとKnockoutのネタについて話していて「Node感」という言葉を使われました。 コンテキスト的には「あのネタも面白いんですが、クライアントJSが頑張ったことが目立ってしまって、なんというかNode感が薄いんですよね(うる覚えです」という感じ。…

NodeのVersionゴトの簡単なベンチマーク

出来ることが増えたり、保守性が上がっていたり、途中にミドルウェアが入ったり、イベント処理のバグが潰れたりしているだけではなく、v8のversion自体が上がっているので一概には言えませんが、ちょっと気になったのでまとめておきます。ChangeLogを見なが…

を訳して理解する

というわけで訳してみました。 Master Detail Transactions in MongoDB RDBにおいて、トランザクションはデータのアトミックな更新を可能にしています。関係スキーマは高度に正規化されているために、ほとんどの論理的なトランザクションスパンは複数のテー…

Node.jsでshellコマンドを叩く

先日「dotjs面白いところ - ぽりぴぃすらいと」なんてのを書いてpullしたんですが rubyもWEBrickもOS Xにはデフォなんだからそっちで thx みたいな返事が返ってきて萎えな僕です。dotjsなんだからserverもinstallerもjsでかけよ!ってのは宗教的な問題でした…

Node v0.5.0ででたforkを試してみる

require('child_process').forkはWorkerと同じAPIを使っているぽいです。 fork APIの定義 var worker = require('child_process').fork(modulePath, arguments, options); argumentsh: 配列で、生成された子プロセス側ではprocess.argvで受け取ることができ…

mongo-hadoopを読んでいます

mongodb/mongo · GitHub ありていにいえば、文字通り、hadoop mapreduceでmongodbを使うためのプロジェクトです。mapreduceのmainで public static void main( String[] args ) throws Exception{ final Configuration conf = new Configuration(); MongoCon…

dotjs面白いところ

dotjs — hack the webというプロダクトが割と面白いです。利用制限が下記のように厳しいものの何かをインストーするというのではなく、~/.js/にドメイン名+.jsというファイルを置くだけでいいあたりが気楽でいいです。 利用制限 OS X Ruby 1.8 rake (gem ins…

Mongoosejsを翻訳したよ

ツイートで流したのでいまさらですが Mongoose ODM v3.1.1-pre を翻訳しました。Mongoose - デベロッパーズガイド 日本語訳イメージ的には「硬質の紙に書き込んだ感じ」だったんですが、はてブのコメントで死にたくなりました。 「狂気」ってなんだよ、「狂…

7分半で作るNode.js+MongoDBアプリ

先日のJJUG SpringのLTをしてきた「7分半で作るNode.js+MongoDBアプリ」の動画を撮り直しました。本番ではmongoose.Schemaのところをmongoose.modelとしてしまい、まさかのライブデバッグを初めるハメになり、結果として13分となってしまいました。リベンジ…

複数Webアプリを1つのホストで立ち上げる方法

expressを使うとわりかし簡単にWebアプリを作れます。 で、いくつもつくって立ち上げ続けたいのですが、ポートをいちいち分けてアクセスするのもイケてないです。 そんな時に使うのがnode-http-proxyを使います。node-http-proxy自体は結構色々出来るんです…

便利機能満載のライブラリUnderscore.js

便利機能満載のライブラリUnderscore.js - にのせき日記が「力尽きた」と仰っているので勝手に続きを書く Object Functions tap _.tap(object, interceptor)chainを使うときに、途中にobjectを割り込ませ、chainの途中結果を知ることが第一義の目的。 _([1,2…

各言語でのMonth取得の値について

後輩が JavaScriptのDateのgetMonth()は0?11を返すのかよ。なんていう罠・・・普通に考えておかしいだろ・・・2011-04-11 23:55:20 via web とかいってるので調べてみた ruby require 'date' day = Date.today print day.month #=> 4 (1~12) perl my @day = …

mongodb-restにもう少しはやくなって欲しかったのでcacheを作ったお

sleepy.mongooseのpythonのバージョンとかでちょっとイラッとしたので、mongodb-restを使っています。 ただ、なんとなくもっさりしていて、なんだろうとコードを読んでみました。 そもそもexpressを使っているのでオーバーヘッドはあるのかなぁ リクエストご…

第2回 MongoDB JP 勉強会 in Tokyoに参加してきました

おまけに久しぶりに発表までしてきました。資料→ざっくり内容を書いておくと mongodbは固定フォーマットではないデータをとりあえず投入して構造化できるので、解析初期に非常に便利 mongoimportは標準入力でいけるので、hadoop/hiveのstreamingと相性いい m…

alternativesメモ

すぐ忘れるのでメモ $ alternatives LINK NAME PATH PRIORITY実行ファイルいっこいっこ登録するのはだるいので $ for i in PROGRAMPATH/bin/*; do alternatives --install /usr/local/bin/`basename $i` `basename $i` $i 30; done消すときは $ alternatives…

mongodb scriptingで別ファイルを読み込む方法

load(FILEPATH); とするだけです。文なので返り値はないです。node.jsみたいにファイルスコープでもないので、普通に呼び出されるファイル内にグローバルで宣言すると呼び出し元のファイルで使えます。 大規模なことはしないと思うけど、怖いお! そう考える…

mongodbのmapReduceのscopeで変数は渡せるけれど、関数を渡せない問題の回避策

下記のようにmongodbのmapReduceのmap/reduce関数内でちょっとした関数を呼びたい場合があります。(sampleです) sampleMR.js var getCareer = function(ua){ if(ua.indexOf('DoCoMo') === 0){ return 'DoCoMo'; }else if(ua.indexOf('KDDI') === 0){ return …

に入学しました

5分で分るnode.js @meso 資料:http://tng1.mesolabs.com/ これヨメ→http://d.hatena.ne.jp/badatmath/20101020/1287587240 結構真面目な話からスタート 「Ryan Dahlの目指したもの」 「それをどのように実現したか」 「なぜJavaScriptなのか」 JavaScriptの…

非常に閉ざされたサーバでnode.js環境を構築する方法

どういうことやねん、という感じですが大人の事情でいろいろとそういう環境で何かをする必要もあるのです。 前提条件 wget × DNS × resolv.conf × /nfs ○ /nfsをシェアしているマシンでは上記が可能(yumもnpmもnvmも) 利用したいサーバ:closeHost 外部に出…

極私的なexpressの使い方

expressは使いやすいのですがappにroutingを足していくと長くなってきて読みにくくなったり、基本的な渡すlocalsが一緒だったりとするので、こんなふうに使っています ディレクトリ構成に下記を追加 locals jp.js, en.js (これはアプリに合わせて) controlle…

expressのpartialの使い方

ぐぐってもparitalの使い方があんまりでてこないのでメモメモ 環境 v0.4.2 express@2.0.0 コード app.js app.get('/', function(req, res){ var entries = Entry.find(); //擬似コードです res.render('index', { title: 'blog', entries: entries } }); こ…

mongooseの埋め込みオブジェクトの変更に伴う保存について

node.js + mongo + express で遊んでいます。 @snamuraさんも言っていたとおり、鼻血が出るほどnode.js + mongodbは相性がよく、また、mongooseがよく出来ています。以下mongoose 1.0.13の利用例 var mongoose = require('mongoose'), Schema = mongoose.Sch…

jQuery 1.5のDeferredを翻訳してみた

Deferred Object バージョン1.5で導入された jQuery.Deferred は、コールバックキューに複数のコールバックメソッドを登録し、コールバックキューから登録されたコールバックメソッドを呼び出し、同期的/非同期的な関数のいずれかの success または failure …

node.jsからmixi graph apiを使ってみる

APIを使うところまではid:kyoro353くんあたりがすでに書いているので、おいておきます。 ということですでにaccess_tokenが取得できたところからです。node.jsのhttp.createClient().requestを使って下記のようにmixiにアクセスします var http = require('h…

jquery.vgrid.js

可変グリッドレイアウトのjQueryプラグイン書いたよ | Xlune::Blogを利用しようと思ってみてるところ。 要望として「refreshで動かさないセルが欲しい」とあったので、ちょっと修正 動かさないセル(div)にclassとしてvgfixedをつける jquery.vgrid.0.1.6.js…

hadoopぽいやつ

「サーバが占有されてて作業が出来ません」とか言いたいときに使ってください。これを適当に「jhadoop」とかってファイル名で保存して、実行権限をつけて、実行すると、それっぽいログが出続けてくれます。気が向いたら、なんかException出して死んだりする…