健全な市場

今日お昼話してて気づいたこと。
QRコードで自分の連絡先を渡すためだけのiPhoneアプリが売れたりしているらしい。
それは、iPhoneアプリをつくってフリーで公開して誰かに使ってもらうまで、の一連の流れに対して、
ぽちっとワンクリックでiPhoneアプリを購入する、という方が簡単だから。
アプリを購入することの簡単さ、と、
developerは参加するけどフリーのアプリが大量に出回るほどにはdeveloperが増えない、というアプリの作りにくさ。
お金になる、程度の一定の大きさの市場をつくって、この2点の絶妙なバランスを実現したAppleの勝利だなぁ。
でもなんか納得いかない。
健全なバランスの市場であってほしい。
Windowsアプリみたく、開発のための情報は豊富で、
そこそこ簡単につくれるからフリーのソフトがいっぱいあって、
がんばれば作ってみようかな、とも思えたりして、
それに対して機能が充実してたりする素敵なソフトは有料でもあって、
その3つの選択肢から使う側が選べるのが健全な市場だと思う。
そういう健全さを増すために自分の技術を使えるといいのかなぁ。
健全な市場だと、つくる人も増える、と思う。
不健全な市場を探そう。

adobemax2009でwonderflの話

adobemax2009でwonderflの話をちょっとすることになりました。
真ん中辺りのミニステージというところで、
1/29 15:25-15:40 辺りでしゃべってますのでもしよろしければ。
何話しましょうかね

Template-Plugin-AddTimeというのをつくった

codereposに置きました
Template::Plugin::AddTime - TT filter plugin to add file modified time
# 正直あまり自信はないのですが
jsとかcssとか、あまり変化しないのでブラウザにしっかりキャッシュしてほしいけど、
ファイルを更新した時には再読み込みしてほしいって時に、
expiresヘッダをつけないと、ブラウザの実装によってリクエストが来たり来なかったりして
cssを更新したのに読み込まないクライアントは表示が崩れたりします。
なのでexpiresヘッダをつけてしっかりブラウザにキャッシュして欲しいって時に、
ファイルの更新時刻をくっつけたりバージョン番号をくっつけたりすることがあります。
これはファイルの更新時刻をくっつけるためのTT Filterプラグインです。
こんなふうに使います。

# or with a base path
[% USE AddTime(’tmpl/static’) -%]
[% ‘/js/prototype\.js’ | addtime -%]
# adds modified time of tmpl/static/js/prototype\.js
/js/prototype\.js\?1231163490

こうしておいて、lighttpdの設定で
expire.url = (
“/js/” => “access 1 years”,
)

とかってすれば
Expires: Fri, 01 Jan 2010 00:42:29 GMT
Cache-Control: max-age=31104000

こんなヘッダがくっついてくる。
svnでソース管理してる時には […]