JavaScript で FizzBuzz

なんか流行っているみたいだったし、思いついたから。何番煎じかは不明。 #!/usr/bin/env node var a = ['FizzBuzz', null, null, 'Fizz', null, 'Buzz', 'Fizz', null, null, 'Fizz', 'Buzz', null, 'Fizz', null, null]; for(var i = 1; i <= 100; i++) co…

enchant.jsのクソな部分

enchant.js、いいライブラリなんだけど「これってどうなの?」って思うところもあって、それを箇条書きにしていく。 リポジトリ ブランチに master と develop と develop-env と v0.5.0 がある たぶん新機能は develop で開発するんだろうけど、 master に…

Homebrew で何かインストールするとき "Permission denied" と言われたときの対処法

未来の自分の為に書き残しておく。 今日Macで brew upgrade したら、coreutils のインストール中に "Permission denied" と出て終わってしまった。 それなら、と sudo brew upgrade したら、今度は "Cowardly refusing" と言われて実行すらされない。 調べた…

wise9に記事を投稿して、それが掲載されました

wise9 › ダンジョンマップを生成するアルゴリズムの解説[投稿記事] ざっくりと自分が何をやったのか、書き残しておきます。 まず、原稿をGoogle Docsで書きました。 図を描いて挿入する機能があるので便利です。 書いたら、HTML(と画像をまとめたZIP)として…

JavaScriptで関数を非同期呼び出しする

よくあるパターン。 setTimeout(function(){ // 非同期でしたい処理 }, 0); これ結構パフォーマンス悪いみたい。 node.jsの場合 process.nextTick(function(){ // 非同期でしたい処理 }); 最新のIEの場合 setImmediate というAPIが使えるらしいからそれを使…

SConsでJavascriptを組み立てる

JavaScriptでも一定以上の規模のプログラムは、 機能ごとにファイルを分けたほうがいいと思います。 jQueryでもそうですし。 そんなわけで「分割したファイルをひとつにする方法」を簡単にメモしておきます。 Python が好きなので make じゃなくて SCons を…

話題のソートアルゴリズム「sleep sort」をJavascriptで実装したよ

「sleep sort」については以下のリンクを見てもらうとして 4chan BBS - Genius sorting algorithm: Sleep sort常識を覆すソートアルゴリズム!その名も"sleep sort"! - Islands in the byte streamはてなブログBig Sky :: Sleep sort in Go まず本題のコー…

Javascriptのオブジェクト指向

「Javascriptのオブジェクト指向は気持ち悪い!」 みたいな意見を聞くことがあるけれど、 そういうのはたいてい慣れの問題だと思っています。 「オレオレオブジェクト指向」を作って使っちゃうのも、 自分ひとりだけならいいけど多人数が見るコードでやるの…

IE9RCを試してみた

IE9がRCになったようなので開発者ツールとかを軽く試してみた。 Javascript >> Object.defineProperty function defineProperty() { [native code] } ウォッチ対象に追加 >> Object.defineProperties function defineProperties() { [native code] } ウォッ…

Gitのコマンドにエイリアスを設定した

Git

gitのコマンドってやたらと長い物が多い。 (checkoutとかbranchとかcherry-pickとか) 長いと打ち間違えも多くなるし、どうにかならないかと思って調べたら、 エイリアスを設定できることがわかった。 もしかして知らなかったのは自分だけ? git config --glo…

Javascriptでいい感じにプロトタイプを継承する

Javascriptでプロトタイプを継承するには function newClass(){ superClass.apply(this, arguments); } newClass.prototype = new superClass(); // superClassを継承 var newObject = new newClass(); console.log(newObject instanceof superClass); // tr…

擬似要素でアニメーションが効かない

:beforeや:afterなどの擬似要素に -webkit-transitionとか-webkit-animationが効かない。 仕様だと効くはずなのでそのうち出来るようになるんだろうけど少し困った。 あとMacBook Air 11インチ欲しい!

Python + goo.gl でURLを短縮する

この記事が元ネタ。なぜか全然動かないコードだったので勝手に修正。 動作確認はWindows Vista + Python 2.5。 simplejsonがないとImportErrorって言われて怒られると思います。 googl.py #!/usr/bin/env python def shorten(url): from urllib2 import urlo…