Category Archives: Programming

EventEmitter on Browser

Node.jsにはEventEmitterというのがあり、こいつがかなり重要になる。 だいたい適当にコードをかいてしまうと var EventEmitter = require(‘events’).EventEmitter; function C(){}; C.prototype = new EventEmitter(); var obj = new C(); obj.addEventListener(“test”, function(){ console.log(“Wooo”) }); みたいな感じで、すべてのオブジェクトにaddEventListenerやらが付与されてかなりいい感じになる。 んでこれをブラウザ上でのJavascriptでも実現したいと思ったので実装した。 コードはgithubにある だいたい上のコードと同じイメージで使えるので、苦労することはない。 本家EventEmitterとの違いは以下 EventEmitter#maxListeners はない イベントリスナはsetTimeout()を挟んで実行される なんかしら思いついたら追加で実装したりするし、バグがあったらなおします。ライセンスは放棄で。

Posted in Programming | Tagged | Leave a comment

Rubyでファイル更新検知

とある目的を達成する為に必要だったので書きました。 なんか挙動が微妙にJavascriptっぽいところがミソですね。

Posted in Programming | Tagged , | Leave a comment

Javascriptの開発手法について社内でプレゼンしました

なんか教えて欲しいよ〜みたいなことを言われてしまったのでやりました。あまり参考にはならないかもしれません。 元ファイルはPDFですが、配布しています。 一応Slideshareに上げましたが、表示が微妙におかしくなっているので、元PDFをご覧になる方をオススメします。 最初のスライドが真っ白なのは仕様です。読み込まれていないとかではありません。 わかった気になるJS開発手法 View more presentations from Sho KUSANO

Posted in Programming | Tagged , | Leave a comment

Javascriptが難しくてわからないので誰か教えてください

僕はプログラミングがまったくわからないので誰か教えて欲しいのですが、 > [] [] > [,] [] > [,,] [] 空配列です。なんというか空配列ですね。 > [].toString() “” > [,].toString() “” > [,,].toString() “,” いやー、カンマがいっぱいでなんだか楽しい気分です。カ、ン、マ、カンマ、カ、ン、マ!(歌は気にするな!というアンクちゃんの声が聞こえますね。ろーじーちゃん嬉しい) それで、僕はよくわからないままTwitterに助けを求めた所、undefinedが入っているみたいだよみたいなことを言われましたが、評価した限り、空配列です。なんだかよくわからなくなってきました。ふしぎの海のナディア! 誰かどういうことかまともに説明してください!

Posted in Programming | Tagged | 2 Comments

Nerineを作り直したい話

僕が昔作ったNerineというHTMLでプレゼンテーションをするためのしろものがあるのだけれど、最近の僕自身はKeyNoteを使ってスライドを作っている。 なんでそんなことになるのかと言われると、ぶっちゃけていうとNerineは不便だ。画像を一枚スライドに加えるだけで大変な労力だし、デザインひとつ調整するにしたってそうだろう。 細かいことをやろうとすればKeyNoteより自由度も高いし、CSSやJSを理解していれば、ある意味KeyNoteをヘタにいじるより楽にできるだろうが、スライドを作る際、もっとも意識すべきなのはスライドの質であって、スライドの見た目やデザインや、ましてやツールの選択ではないはずだ。 それを不満に思ってから、そしてKeyNoteに慣れてしまってからというもの、Nerineを利用していない。よくないことだし、もったいないことだ。そのままWebにアップロードして、閲覧できるNerineのことを僕は好きだし、それは素晴らしいことだと思っている。 だから「スライドをつくる時点から」を含めてNerineを作り直したい。 だるいけど。

Also posted in thinking | Tagged | Leave a comment