2012-01-01から1年間の記事一覧

さくらVPS移行メモ

メモリが 512MB から 2GB に。ヤッター。OS は Debian 6 amd64 をさくっと入れておく。 他にもやっておいた方がよさそうなものがあったら教えて下さい。 ssh root@ip とりあえず foo で sudo 出来るように。 # apt-get update # apt-get upgrade # dpkg-reco…

疎結合と MVC と JSON API とオーバーヘッドと非同期とレスポンスタイムに関する適当な考察

最近考えていることを話す機会があったので文章にしてまとめてみる。 疎結合 昨今の複雑化するウェブアプリケーションを効率的に開発するにあたって、疎結合な設計にすることは開発/保守効率を上げるためには必須の条件となることは経験上嫌というほど皆が…

LWP::UserAgent と LWP::Protocol::PSGI でテストを書くと楽できる話

Plack::Test + HTTP::Request::Common 世の中には Plack::Test + HTTP::Request::Common という方法もあるが、この場合ブラウザを模したようなテストを書くと意外にも破綻しやすい。とりわけセッション周りの挙動が必須になると大変な手間になる。 LWP::User…

node.js + jQuery で Web scraping

jsdomとjQueryつかって富豪的にホクホクできるらしい。セレクタさえ丹念に集めれば Readability/Instapaper のようにコンテンツのテキストだけ抽出するようなこともさほど難しくないか。 var jsdom = require("jsdom"), fs = require("fs"); var jquery = fs…

LESS/JavaScript/CSS/HTMLでインデントを2スペースに設定する vimrc

普段の設定 set tabstop=4 set expandtab set shiftwidth=4こんな設定でインデントをスペース4つとして書いると、LESS/JavaScript/CSS/HTML の場合は嫌でもインデントが深くなり、縦分割して作業すると悲惨なことになってしまう問題が起きる。 function を定…

Ustream 放送の開始を通知してくれる Chrome 拡張を書いてた

Ustream の配信は通知系が無いのでいつ始まっているのか把握困難。そこで開始を通知してくれる拡張を作ってた。ここ一年くらい動いてます。 Chrome拡張はちょろちょろ〜っと書けていいですね スクリーンショット ピロっと音が鳴って、こんなnotificationが出…

App::ExtractUsed というものを書いている話

CPAN形式で開発していると避けて通れないのが依存モジュールの炙り出しと Makefile.PL へ requires を書き出す作業。これは意外と面倒なのでもっと怠惰に楽をしたいところ。たとえモジュールが要求するperlのバージョンを決めていたとしても「どれがコアモジ…