2012-01-01から1ヶ月間の記事一覧

pinterestにポストするchrome extension

https://github.com/myatsumoto/meijin コンテクストメニューからpinterestに画像を投稿できる。投稿先もコンテクストメニューから選べる。 コメント打つのがダルいので顔文字をランダムで入れるようになっている。 特に新しいことはしていない。

nvmでsudoする

nvmのnodeでport80を普通に使おうとすると node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: listen EACCES at errnoException (net.js:632:11) at Array.0 (net.js:718:28) at EventEmitter._tickCallback (node.…

rubyでWebページのスクリーンショットをとる

まずGtk2, WebKitが要るGtk2 sudo apt-get install libgtk2.0-dev sudo gem install gtk2 WebKit sudo apt-get install libwebkit-dev git clone https://github.com/magec/rbwebkitgtk cd rbwebkitgtk && ruby extconf.rb && make && sudo make install scr…

nodeのアプリをport80で動かす

apache使わずにプロキシサーバをnodeでたてる。 こうするとWebSocketもプロキシ経由で通せるようになる。 npm install http-proxyでhttp-proxyをインストール(nodeのver0.6.6以上必須)app.js var httpProxy = require('http-proxy'); httpProxy.createServer…

JSONをparseする

適当にJSON.parse(hoge)とやると、 たまに変なのが返ったときに undefined:1^^ SyntaxError: Unexpected token ILLEGAL とでるので、やむを得ず使っている変換コード var parse = function(body){ if(typeof body == 'string'){ try { return JSON.parse(bod…

8queen

研究室で再帰で組み合わせを出すコードを死ぬほど考えたが全く出来ず終わる頭の悪さだったので、 パターンを自分で考えずに他人に頼ることにした。 def eight_queen(n = 8, m = 8) run(n, m, []) end def run(kinds, len, a) return unless can_set_queen?(a…

socket.ioのmappingを別ファイルで管理したい

socket.ioは使い勝手が良い。 大規模になるとよくあるサンプルのように1ファイルに全部書きたくないので分ける。socket.manager.js var manager = module.exports = { base : './controller/socket/', set : function(path, info, io, socket){ socket.on(pa…

neo4jのdriverを作った

https://github.com/myatsumoto/neo-tokyo driverと名乗っているが、REST Serverにアクセスしているだけなので大したことはしていない。既にあるnode-neo4j ( https://github.com/thingdom/node-neo4j )とは少し仕様が違う。 var Graph = require('./lib'); …

jsonをkeyに使う

var a = [1, 2, 3]; var b = [4, 5, 6]; var h = { "[1,2,3]" : function(){ console.log("A"); }, "[4,5,6]" : function(){ console.log("B"); } }; h[JSON.stringify(a)](); h[JSON.stringify(b)](); 条件分岐に活用できる

jsでたまに使う

var filter = function(something){ return { by : function(max){ return something.a < max; } }; }; 手軽にメソッドチェーンぽいのをしたい時、たまに使う。 filter({ a : 9999 }).by(10000); のように使う。