Objective-CでOAuthその3

OAuthConsumerの標準のデリゲート/セレクタを使う形の使い方は、実際に使ってみると可読性の低いコードになってしまったり、セレクタの名前を間違えてしまったりなどミスが発生しがちなので、OAuthConsumerをブロックに対応させるクラスを作りました。
例によって、使うときは無保証/自己責任で注意して使ってください。 “Objective-CでOAuthその3” の続きを読む

Objective-CでOAuthその1

Twitter等の最近の外部サービスではクライアントアプリからの認証にOAuthを使うことが多くなってきました。Objective-CではOAuthConsumerというライブラリを使うことでOAuthによる認証を実現することができますが、ドキュメント類が少なかったり若干癖のあるライブラリなので、ここに使い方を書いておこうと思います。
なお、ここで説明している方法は僕が勝手に解釈/試行錯誤した結果たどり着いた方法であり、OAuthConsumerが公式に説明している情報に基づいたものではありません。なにか問題があっても責任はいっさいとれないので、自己責任のもと注意して使ってください。
“Objective-CでOAuthその1” の続きを読む

Mac上にnode.jsの開発環境を作る

node.jsのインストール

node.jsの最新の開発用環境をMac上に用意します。

brew install node.js

node.jsはbrewでサクっとインストールすることができました。インストール後のメッセージで/usr/local/lib/node_modulesをNODE_PATHに入れろ、とのことなので~/.profile上に記述しておきます。

export NODE_PATH=/usr/local/lib/node_modules

これだけの手順なので間違える余地もあまりないですが、インストールに成功すると、nodeコマンドが使えるようになります。

node -v

npmのインストール

node.js単体で使っても面白くないので、便利なライブラリ群を使うためnpmもインストールします。(所謂gemみたいなnode.js用のパッケージ管理システムです)
npmに関しては現在はbrew上ではインストールできなくなっているため、別途下記のコマンドでインストールします。

curl http://npmjs.org/install.sh | sh

ちなみに、諸々の事情でメインの開発環境はSnow Leopardのままにしているため、上記のインストールもSnow Leopardマシンでのみ試しています。
なお、ウェブ上で見つかるnpmの説明に関しては1.0より前のバージョンのものと1.0以降のものが混在しているため、注意が必要です。(npmで-gオプションをつけずにインストールした後にコマンドラインからコマンドを叩くような手順があったら、それは1.0より前のバージョンの説明です)

foreverを使ったnode.jsのサービス運用

node.jsでUDPサーバーを作ったので、いざこれを適当なサーバー上で運用させてみようと思ったところ、どういった形で運用すればよいのかわからない…。開発時にはnodeコマンドを使ってサーバーを立ち上げていましたが、本番サーバーでもそれでよいのか?調べていたところ、foreverというnode.js用のデーモンマネージャーがあり、これを使うのが楽そうだったので使ってみました。 “foreverを使ったnode.jsのサービス運用” の続きを読む

AsyncUdpSocketの使い方

仕事やプライベートでもUDP関連のプログラムを書くときにAsyncUdpSocketを使っています。自分でソケット関連のコードを書かなくてよいので圧倒的にラクなのですが、このライブラリはドキュメント類があまり充実しておらず、いつも使うときに調べ直すのが面倒なので、ここに備忘録的にまとめておきます。 “AsyncUdpSocketの使い方” の続きを読む

SCMとデバッグ

多くのデバッグに関する本や記事には、デバッガ等のツールを活用した効率的なデバッグ方法について触れられています。デバッグする上でデバッガは絶対に必要なのですが、今の時代SCMほどデバッグのコストとストレスを軽減できるシステムはないはずなのに、あまりそれについて触れられている記事がなかったり、問題が起きた時にSCMを活用できていない方をたまに見ます。
ごく当たり前な話なのですが、特にSCMを使い始めたばかりの学生の方とかに知ってもらいたいので、記事にしました。 “SCMとデバッグ” の続きを読む