土曜日, 7月 12, 2014

gulp-coffeekupを作りました

CoffeeKupというcoffee-scriptのソースコードがそのままテンプレートになるテンプレートライブラリがあります。
どういう意味かは、公式サイトのデモを見ればなんとなく分かるかとおもいます。

coffeekup.org

テンプレート言語としてはなんとなくjadeっぽいので、coffee-scriptを知らない人でも使うのは難しくないはずです。テキストをいちいちクォートしているあたりにcoffee-scriptそのものを使っている感が見て取れるかと思います。

さて、これを静的HTMLの生成に使おうとしたのですが、CLIなコマンドは提供されているもののうまく動作せず、gulp経由でやってみようかと思ったら、今時にしては珍しくgulpプラグインがありませんでした(検索力不足かも)。
想像ですが、サーバサイドでレンダリングするために利用する事がメインで、静的HTML出力はあまり力を入れていないのかな?
ということでgulpプラグインを書いてみました。

https://github.com/kmtr/gulp-coffeekup

手元ではとりあえず、動作を確認しています。

(テンプレート言語がcoffee-scriptそのものである利点って何か実はよく分かっていない)

火曜日, 6月 10, 2014

丁目番地を聞かれたのでiPhoneで道案内

今年は道案内の回数が多い気がする。 今回は家の近所で、丁目番地指定で道を聞かれた。 分かるわけが無いので、すぐにiPhoneを使用。 目的地はもう少し歩いたところだったのでそれを伝える。 年配の二人連れだったけど、無事辿り着けただろうか。

水曜日, 3月 05, 2014

都庁への入り方

都庁、北庁舎外の中央公園側をふらふらしていたら、外国人カップルに英語で話しかけれられる。 都庁の中に入りたいが入り口が見つからないらしい。 あのあたり、ガラス張りで中に入れそうな雰囲気はあるのだけど、入るにはぐるっと回る必要がある。 聞く方はなんとかなるが、話せないのでついてくるようにジェスチャーして誘導。 若干適当な扱いだったかもしれないけど「アリガト」と言われたのでよしとしよう。 「Follow me.」 ぐらいは言えば良かったかな。

火曜日, 2月 25, 2014

2014年初道案内

今年初めての道案内の相手は外国人の方。 ビジネスビルの場所を聞かれたけれど、六本木ヒルズとかヒカリエみたいに商業施設がついているならともかく、ビジネスビルとなると即答出来ず。 今回もiPhoneを使って案内。 ほぼ夜だったけど、何かカンファレンスでもあったのかな?パーティーな服装ではなかった。

木曜日, 10月 17, 2013

小規模企業によるFOSS開発のモデルケースになりうるかもしれない事例

最近は企業によるFOSS活動も活発になっています。
そんな中で、今注目している一連の流れ。


そもそもの発端。20人/月のほとんどはサーバではなくアプリ側に使われているのだろうか。
世界初 メッセンジャーアプリ「Spika」を完全オープンソースで公開、フロントからバックエンドまで提供


問題点の指摘。最大の問題点である問題が指摘されているDBの部分は2013/10/16時点のコミットで完全に消去されているみたい。
レガシーズ公式ブログ PHPerはSpikaのどこを見たのか?


そして有志?によって直す会が開かれるらしい。
spika hackathon Spika-Server のコードを15年ぐらい若返らせます

行数は少なめでやる事は決まっているので、設計上の問題が無ければ割と簡単なはずだけど、モダンになった後のコードで、元の企業の人たちがカスタマイズやコンサルティングができるようになるのかが気になるところ。

一番最初の記事中で、WordPressのような存在になりたいと言っているけど、WordPressもこんな問題を抱えている。せめてPSRの議論と投票には参加して欲しい。
レガシーズ公式ブログ 活動報告 「レガシーコード in WordPress」

日曜日, 8月 04, 2013

夏の日に道を教える

今回は新宿で若い男女の観光客。
以前、外国人の方に聞かれたのと同じホテルの場所を聞かれる。有名なホテルなのかな?
今回は歩道沿いにある地図でご案内。

道を聞かれたのは日本人だけど、最近外国人観光客が多い印象。それもどうみてもお金の無さそうな大学生っぽい人たちとか、割と普通な家族。
円安の効果?

水曜日, 6月 05, 2013

exportsされていないjavascriptやCoffeeScriptのメソッドをテストする。

半分以上、自分向けメモ。 

exportsされていないjavascriptのメソッドをテストするにはどうするか。
理屈としては、以下の記事2つを読めばOK。要はjsを別コンテクストにロードして、その時にプライベートなメソッドを引き上げるわけですね。

Testing Private State and Mocking Dependencies
Nodeでプライベートな(exportsされてない)メソッドのテスト

不思議なのは、どちらの記事でも、node-mocksに触れられていない事(一番目の記事のコメントで触れられているだけ)。
これは一番目の記事のvojtajinaさんが作ったライブラリで、ざっくり言えば、解説されている内容が実装されているテスト用のライブラリ。
これを使えば、いちいち上記解説記事のコードを書かなくて済むわけですね。めでたしめでたし。

と思ったのですが、このライブラリ、JSは読み込めるのだけど、CoffeeScriptを直接読み込むことが出来ません(README.mdのサンプルテストコードはCoffeeScriptで書かれているのに)。
もちろん、JSにコンパイルすればよいのだけど、面倒なわけです。

というわけで、CoffeeScriptをロード出来るようにしてみました。

https://github.com/kmtr/node-mocks/tree/coffeescript

npmでインストールするなら、以下を実行。

npm install https://github.com/kmtr/node-mocks/tarball/coffeescript --save-dev

可能な限りCoffeeScriptから出ずに、開発したい私みたいな人におすすめです。

一応、pull requestを送ってみたけどどうだろうか。
オリジナルと比べてcoffee-scriptへの依存が増えてしまったし。