Kengo's blog

Technical articles about original projects, JVM, Static Analysis and TypeScript.

Entries from 2011-01-01 to 1 year

間違い探しゲームをアップデート

間違い探しゲームのバージョン2を9leapで公開しました。バージョン1には全くといっていいほどゲーム性が無かったので、大幅なテコ入れを図っています。1分で何回間違いを探せるか?というシンプルなルールなのですが、短い時間で楽しみやすい仕上がりになっ…

次回の一時帰国予定

次回の帰国はleapfestにあわせて2月上旬にしようかと思っています。どういうイベントなのかまだよくわかっていないのですが、技術交流の機会にできればいいなと。読者の皆様とお会いすることがありましたらよろしくお願いします。

狭い画面を広く使うためのenchant.ScrollableSceneクラスを作った

年末年始は予想以上に休めそうなので、きちんとしたゲームを1本仕上げたい*1と思いつきました。集中力が続けばシミュレーションあたりを作りたいなーなどと考えていたら、軍事担当任命などのような「ユーザーに複数の選択肢から選ばせる処理」というのがなか…

#gag_fail まとめ(2011年12月)

#gag_fail その1 *「ボク納豆には目がないんですよ」 私「納豆に目があったら怖いだろ!」 *「今のはfailね」 私「はい」 #gag_fail その2 *「昔ハンバーガーにミミズの肉が使われていたという話があってだな」 私「喉が乾きそうですね、『み、水!』って…

なぜポップはカッコよくウソップはそうでもないのか

はてなブログの方にエントリを投稿しました。珍しくプログラミングとは関係ない記事です。 なぜポップはカッコよくウソップはそうでもないのか - eller's blog ちなみにダイの大冒険の他に私がおすすめする完結マンガは以下のとおりです。もし見かけることが…

なぜポップはカッコよくウソップはそうでもないのか

先日オフラインでポップとウソップは似ているのではないかとの問題提起を頂きました。一般人くさい点や一見不まじめな点など確かに一致も多いのですが、ポップはカッコよくウソップはそうでもないと思うんですよね。 もちろんロビン救出シーンなどカッコいい…

eller86のオンライン活動総決算2011

2011年のオンラインでの活動(?)をまとめます。ひとことで言うならば、小粒なものをちょこちょこ作ったね、という感じでしょうか。技術者としての力量(実現可能性)には大きな向上がなかった反面、フットワークがぐっと軽くなった1年でした。やっぱ「とに…

eller86のオンライン活動総決算2011

はてなブログにエントリを書きました。はてなブログにはまだTwitter連携機能がなさそうなので、こちらのブログからリンクを貼っておきます。 eller86のオンライン活動総決算2011 - eller's blog はてなブログはこざっぱりしていて好印象ですが、WYSIWYGはち…

はてなブログに移行します

@hagikuratakeshi氏にinviteしていただきましたので、はてなブログに移行します。よろしくお願いします。 eller's blog

RequireJSによるコードの分割と最適化 for enchant.js

enchant.jsプログラミングでRequireJSを使うとなにが嬉しいの?どうやって使うの?という話。最初はenchant.jsをCommonJS/Modulesに合うように書き変えなきゃダメだと思っていたんですが、そんなことはないんですね。これは便利。 何が嬉しいの? 開発時には…

JVM用KEMURIインタプリタとコンパイラを実装

最近JavaScriptばかり書いていたためか無性にJVMと戯れたくなったので、KEMURIの実行環境を作成しました。 eller86/JKEMURI · GitHub 単なるインタプリタとJavaのclassファイルを生成するコンパイラがあります。インタプリタは以前実装したことがあるのです…

eller86のpatch近況

最近ここにpatch送った記録を残していなかったので、まとめて。issue報告も混ぜてます。 node-esc Issue #1: `require('esc')` throws "Cannot find module" · pvorb/node-esc · GitHub 1つめはHTMLエスケープを行うNodeのモジュールがインストールできない…

メモ・複数のJS/CSSをRequireJSでひとまとめにする

RequireJSをちゃんと調べたらbrowserify以上に自分の目的に近かった。UglifyJSでのコード短縮なんかも処理してくれるし。assets埋め込みなどの処理を挿し込むのはちょっと無理っぽいので、そこは泥臭くやる必要がありそうだ。 REQUIREJS OPTIMIZER REQUIREJS…

メモ・NodeでHTMLファイルにJSファイルを埋め込む

HTML5ゲーム開発環境構築支援ツールを作った件の続き。通信回数削減という名目のもとで、HTMLにJSファイルを静的に埋め込む方法について調査する。試した環境はMac OSX Lion(10.7.2)のNode v0.4.12。 ちなみにこの「埋め込み」がNodeに適した処理かどうか…

Guavaをどっぷり紹介(I/O編)

イヤホンを新調したら雨夢楼と光のストライドがきれいに聴こえて嬉しいeller86です。洗濯機でイヤホンを洗濯してしまったときは絶望の淵に立たされていた気がしますが、あの絶望がこの喜びにつながるとは一体誰が想像したでしょうか。 さて前回のGuava紹介記…

Jenkinsプラグイン実装初心者が参考にしたリンク集

未だにJenkins実践入門を読めていないeller86です。入手は来月半ばになるでしょうか。Jenkinsの基本的な使い方は知っているつもりですが、プラグインの実装方法などちょっと突っ込んだ内容も載っているようなので楽しみです。 さてここ2日間ほどJenkinsプラ…

Coberturaの「次」は、いつ生まれるのか

上海の飲食店でJenkinsではじめるビルド職人入門をざっくり流し読みしたeller86です。最新の技術書がこうして海外で快適に読めるとは素晴らしい時代ですね。著者ならびにGDP関係各位に感謝です。 で、この電子書籍でコードのカバレッジ測定にCoberturaを使っ…

Guavaをざっくり紹介

Guava librariesをご存知でしょうか?Googleが開発・使用しているコアライブラリです。OSSであり簡単に入手できます。 http://code.google.com/p/guava-libraries/ このライブラリは結構多機能で、海外の著名プロダクトでもよく見かけるのですが、日本のネッ…

JavaScriptはいつの間にこんなにでっかくなっちゃったんだろう

はてなブログのニュースに大歓喜しているeller86です。ダイアリーはあちこちガタが来ているように見える(私見)ので、ゼロから書きなおしたというのがとてもプラスに見えています。そのうちバックグラウンドについての技術解説も出るでしょうし、いろいろと…

JavaScriptで複数行文字列を扱うためにヒアドキュメントを使いたくなったら

泣くしかない のですが、代替案としてこのような方法もあります。 CoffeeScriptのウェブサイトを開く メニューバーのTRY COFFEESCRIPTをクリックし、コンソールを開く 左ペインに(ダブルクォーテーション3つ)(改行2個)(ダブルクォーテーション3つ)と入…

JavaScriptのAST変換

ASTとは腐れ縁にある気がするeller86です。専攻とかは全然関係ないんですが、大抵の仕事でその姿を見ているような……。さてJavaScriptのAST変換を使ってenchant.jsのassetsを変換できないか試してみました。以前は正規表現でなんとかしましたが、どうせやるな…

私信:12月に一時帰国します

金銭感覚がだいたい掴めたので小遣い制を再開したeller86です。家計簿アプリは小数点以下が扱えない支出管理から人民元対応を謳うZaimに切り替えました。まだバージョンが若く機能がハンパ*1ですが、これから強化されるのではと期待しています。さてタイトル…

testlingを使うためにあがいた記録

私の環境ではtestlingさんが無言でおなくなりになることがしばしばです。サンプルではうまくいくので回線の問題ではないようですが、それ以外の原因がわかりません。 $ tar -cf- . | curl -sSNT- -u mail@address.com:pass testling.com/?browsers=iexplore/…

nodeで開発を始めるためのメモ

長いものには巻かれておくスタンス。 TDDはExpressoを使う。 option parsingはoptimistが便利そう。参考 拡張子からmime-typeをマッピングするにはmime。 HTTPクライアントはrequest。 seqをよく見かける気がする。

HTML5ゲーム開発環境構築支援ツールを作った件

testlingの登場によりQUnitを捨てる可能性が出てきたeller86です。操作を間違ったときのリアクションがわかりにくい*1のですが、それを大きく上回るメリットを享受できそうです。大半のOSS開発なら無償プランでも充分じゃないかと。唯一の不安は、サイトが潰…

surrogate-pair.jsをnpmモジュール化しました

ASM4.0がリリースされてwktkしているeller86です。しかし今日はJavaScriptの話をします。以前から開発していたライブラリsurrogate-pair.jsをnpmモジュールにしました。まだpublishできていません*1が、以下のブランチから取得していただくこともできます。 …

patch-erの心構え?

args4jにpatchを送りました。まさか著名なライブラリのバグ容疑者を発見するとは思わず。「Argumentアノテーションを使い」「不正な値を渡す」という2因子の現象ですね。 https://github.com/kohsuke/args4j/pull/4 23時頃に意図しない動作に気づき、そのま…

世界中のユーザーに自分のカジュアルゲームを楽しんでもらうためのjust idea

回線の遅さについて考えていたらenchant.jsの機能追加を思いついたのでpull requestを送ろうとしたのですが、現状を鑑みるに優先度が上がらない(他に書くべきコードがある)のでアイデアだけここに残しておきます。ゲーム開発者の参考になれば。 問題提起:…

微博はじめました

……えー…… @eller86 最近ellerさんのツイート頻度が減ったので、リア充ライフを送っているのではないかという噂が立っています。私が立てています。ともかくお元気そうで何よりです。 http://twitter.com/jinjor/statuses/127401923325345792 ご存知の通り中…

料理のアンチパターン

超市(スーパーマーケット)などを歩きまわった結果、なんとか料理ができる環境をつくることができました。料理の方も、初心者にしては悪くない感じではないでしょうか。 できるだけ現地での「普通」に合わせて調理用品を揃えようとしているのですが、まだク…