Block Rockin’ Codes

back with another one of those block rockin' codes

Node で使える ECMA Script 5 の新機能

追記 11/9/24 Gistのリンクを本家Wikiに貼ってみました。 11/9/24 log 関数を修正しました。 11/7/10 JSON.stringify の第二引数 replacer について、補足しました。 11/7/14 os0x さんの指摘を反映しました。 String.trimRight、trimLeft は ECMA Script 5 …

truthy, falsy の訳について考えてみた。

追記 twitter 経由で、id:mnicovideo さんがこの件を id:dankogai さんに質問されました。@mnicovideo: @dankogai さんならtruthy、falsyをどう訳したり説明したりします?訳に関しては真、偽でも文脈から意味を想像できるからいいのかなと自分は考えたんで…

require('events').EventEmitter.call(this) の意味

[修正] コメントで指摘されたように、回答4の訳が間違っていたので訂正しました。 Node の ML に以下のような質問が投稿されました。What is the meaning of require('events').EventEmitter.call(this)内容としては。 「以下のようなコードがあったんだけど…

Node におけるスケールアーキテクチャ考察(Scale 編)

[追記]途中までは Node での複数プロセス起動、プロセス間通信等について書かれていますが、後半は自分が前回の記事 を書くにあたって自分が考えてたことを少し強引に広げて書いた個人的な妄想が多く含まれ、Node におけると言っときながら、後半は Node 関…

Node におけるスケールアーキテクチャ考察(SSP 編)

*息抜きがてら書いていたら長くなってしまった。。 *当たり前ですが、あくまで個人的な考えです。 *ころころ変わるかもしれません。 Node の基本的な知識についての話は色々なところで出始めて、 じゃあこーいう場合はどうするの? みたいな話が出始めた…

Socket.IO v0.7 のロードマップと新機能

Node と言えば、Socket.IO といっても過言ではないほど、Socket.IO は Node にとって大きい存在です。 先の NodeConf で、この Socket.IO の作者 [twitter@rauchg] より、 Socket.IO v0.7 にむけたロードマップについての発表がありました。 新機能や API の…

JSConf, NodeConf, Joyent に行ってきました。

行き先 JSConf, NodeConf, Joyent に行ってきます。 - Block Rockin’ Codesすっかり報告が遅くなりましたが、無事に行ってまりました。 かなり充実した旅ができたし、本当に行ってよかったと思えました。 JSConf US - May 2-3, 2011: Packing up and heading…

JSConf, NodeConf, Joyent に行ってきます。

GW 中に JSConf & NodeConf (at ポートランド)に参加します。 JSConf NodeConf また、半月ほど前に、それぞれのカンファレンスの前に二つのイベントが追加されました。 ついて行けるのか?とか自重せず、せっかくなので全部参加することにしました。 PreJSCo…

東京Node学園で発表してきました。

遅くなりましたが、 東京Node学園 1時限目 : ATND で「Node におけるテスト手法」について発表してきました。 追記 2011/10/24: SlideShare に上げました。 リンク 自分の発表は HTML5Rock のプレゼンツールを用いて作成しています。 とりあえず直でスライド…

2010 年をふりかえる

今年は結構濃かった気がします。簡単にふりかえって見たいと思います。 Python Appengine をきっかけに Python を触っていたんですが、今年の前半は結構 Python が中心だった気がします。 特に Appengine で Bot を作ったり、その Bot が気がついたら結構大…

#jstudy2 で node.js について発表してきました。

昨日の #jstudy で、主催の @hokaccha さんから LT のお誘いを頂いたので、Node.js の話をさせて頂きました。jstudy #2 : ATND今回は、「Node.js ってなんなのか?」という部分を中心にしました。 アーキテクチャの話を割とざっくりしてから、 Node.js の雰…

node.js で エコーサーバと簡易コンテンツサーバ

追記 ここの内容は Socket.IO のバージョンが v0.7 に上がったことで、古くなりました。 v0.7 については Socket.IO API 解説 - Block Rockin’ Codes を参照してください。 本文 リアルタイムWebハッカソン : ATND に参加しました。みなさん websocket を用…

JavaScriptでのテストや開発についてのアウトプット

最近JavaScriptを個人的に勉強しているんですが、そんなJS初心者ながら色々試すなかで気が付いた開発とかTDDとかについて色々思うところをアウトプットしてみようかと思います。一番多いのは、ClientSideJSで、使ってるのはjQueryとQunitが中心でした。 でも…

XP祭り「Pythonでアジャイル開発サイクル2010ver.」レポート

9月4日 XP祭り2010 ~ アジャイル学園祭~(東京都)(#xpjug) で @shimizukawa さんの 「Pythonでアジャイル開発サイクル2010ver.」というセッションに参加させて頂きました。 その場で、実行委員の@shibukawaさんが、「セッションに来られなかった人のために…

node.jsのSocket IO-nodeでWebSocket

前回は、pywebsocketでのWebSocketを紹介しましたが、HTML5 hack-a-thonでは結局node.jsの実装である Socket IOとSocket IO-nodeを使いました。 こちらも備忘録。 node.js node.jsはいわゆるサーバサイドJavaScriptの一つで、最近にわかに注目を集めてる(?)…

pywebsocketの導入とDraft75フォールバック対応

[追記] id:Ehren さんが最近のWebSocket事情のまとめ記事を公開されました。 ブラウザの対応関係等わかりやすくて有益です! 最近のWebSocket事情についてまとめとく - Keep on moving HTML5-hack-a-thonに参加しました。 自分の参加しグループは「ニコニコ…

localStorageをmockにしてjsonengineのクライアントを開発する

クライアントからAPI(HTTP + URI + JSON)を叩く形のアプリ開発を色々試しています。 その際、サーバ側は選択肢が色々あるんですが、最近はもっぱらjsonengine - Simple and ultra-scalable JSON storage on Google App Engine. No server-side coding requir…

localStorageの挙動と簡単なラッパー

[追記] テストのソースだけを見られる様に、gistに張りました。 gist:542451 localStorageを使ってちょっとやってみたいことが有るので、まずはlocalStorageを色々使って見ようと思ったのですが、思った以上にブラウザごとの挙動に差があって、イベントどこ…

bitbucketにSphinxをホスティング

今回、jsonengine - Simple and ultra-scalable JSON storage on Google App Engine. No server-side coding required. - Google Project Hostingというプロジェクトのマニュアルを、日本語翻訳させて頂いたんですが、作成した翻訳(Sphinxプロジェクト)をど…

QUnitの基本的な使い方

[追記] 2013/9/1 三年前の記事が未だに読まれているようなので、一応書いておきますが、あれから色々変わってもっと良いものも出ています。 QUnit でも別に問題はないですが、今から QUnit を使うよりは http://visionmedia.github.io/mocha/:title=mocha] …

Fossilを使ってみた。

[追記 10/28] コメントで、途中で紹介する翻訳サイトのURLを変更されたとの連絡を頂いたので、修正しました。 Zed ShawがFossilを使う理由 - karasuyamatenguの日記を読んで気になったので、 Fossilを入れてみました。 自分はバージョン管理は主にMercurial…

jQueryのテーマ (Geocities Edition)

/*! * jQuery theme song(geocities edition) * Jonathan Neal * yayQuery OST * MIT/GPL 2010 AD (CE is for losers) */ I tried to get you! //君を捕まえようとしたんだ! Oh, I tried... //したんだけど... but I get it worng //だけど上手く行かなかっ…

CouchDBをmockにしてAPI駆動開発(仮)

Appengineでのアプリはいくつか作っていますが、最近考えていたこれまでとは別のアプローチでアプリを作ってみたいということで、 以下のような技術達を取り入れながら、TODO管理アプリの作成に取りかかりました。 目的はTODOアプリを作るということより、今…

appengine ja hack-a-thon #4 に行ってきました。

今回はお台場の方にある、非常にリア中感溢れる会場での開催でした。 自分は初参加だったんですが、appengineは一切触れず相変わらずペアプロをしていました。 今回は@cou929とペアを組み、主にJSを書いていました。 途中つまずく部分は@t_wadaさんに色々と…

Pythonのデフォルト引数にハマった。

よく考えれば当たり前だったはずなんですが、ハマってしまいました。 何かと言えば、デフォルト引数の評価です。 自戒のメモ。 デフォルト引数値の評価は一回 デフォルト引数は便利なんですが、一回しか評価されないので、 dictやlist等のミュータブル(変更…

appengine-mapreduceを使ってみた。

appengine-mapreduce(python) を使ってみた。噂のappengine-mapreduceを使ってみました。丁度cronで回さないと行けない処理があったので、こちらを参考にさせていただきました。 #appengine MapReduceを使ってみた - スティルハウスの書庫上記には概要やらメ…

Pythonのメソッドと引数(pydocだけで書いてみた)

# -*- coding:utf-8 -*- ''' ================================= Pythonのメソッドと引数 ================================= :Author: Jxck :Created: 2010/06/04 :Tags: python method argment :Ripositly: https://jxck@bitbucket.org/jxck/python-args :…

写経とか開発で便利な色々

つまみぐい勉強法 [追記]まちがった情報を載せていました、「つまみぐい勉強法の」正式な発売は5月7日でした。なんか勘違いしてました、すいません。Shibu's Diary: ぼちぼち『IT業界を楽しく生き抜くための「つまみぐい勉強法」』が本屋に並びはじめます。 …

PythonでTDD

Javaでのペアプロは何度かやってきましたが、今回始めてpythonのペアプロをする機会がありました。 ある勉強会で、pythonのunittestとdoctestの話をしたのをきっかけに、そのままペアプロをしてみることに。 組んだ相手は、ペアプロもTDDも始めてだったので…

Trac と Mercurial の連携と Apache_mod_python の構築

今回は、勉強用にEC2を借りて、Ubuntuインスタンスを起動。 そこにTrac + Mercurial の連携、 Apache2のmod_python上での稼働設定をやるろころまで。 最近色々と導入したので、備忘録。 前回借りたAssemblaもいいんですが、プラグインが自由には入れられない…