20052012 life
ボート釣りは二年ぶりくらいじゃなかろうか

お約束のヒイラギ

息子と娘は全部お膳立てしてやって、あたった竿のリールを巻かせるだけの仕事。これはキスが釣れた時のものだと思う。

娘と息子がキスを釣って僕はメゴチ一匹という悲しい釣果。

また行きたい。
20052012 life
ボート釣りは二年ぶりくらいじゃなかろうか

お約束のヒイラギ

息子と娘は全部お膳立てしてやって、あたった竿のリールを巻かせるだけの仕事。これはキスが釣れた時のものだと思う。

娘と息子がキスを釣って僕はメゴチ一匹という悲しい釣果。

また行きたい。
19052012 家庭菜園
ジャガイモの花が咲いてた。収穫まであと3週間くらいか。

スナップエンドウは花も咲き終わったので、今ある実を収穫したら終了かな。

なかなか育たなかったズッキーニも植えた。

スナップエンドウは2kgくらいとれているのでちょっと茹でた。

たしか種が300円くらいだったと思うので豆系の費用対効果は高いと思う。
19052012 life
ATNDはアテンションのデータとしても興味深いわけで、ATteNtion Dataとして使ってみたいなぁと常々かんがえていたわけですが。
静岡javaScript勉強会が丁度よさげなデータだったので、対象者の参加した他のイベントに参加(1)不参加(0)っていう10のビットをフィンガープリントとして bayonを使ってクラスタリングをしてみた。
import json import requests import time event_id = 19418 event_url = "http://api.atnd.org/events/users/?event_id=%d&format=json" % event_id r = requests.get(event_url) ev = json.loads(r.text) for u in ev['events'][0]['users']: nickname = u['nickname'] user_url = "http://api.atnd.org/events/users/?user_id=%d&format=json" % u['user_id'] r = requests.get(user_url) ev = json.loads(r.text) events = [str(e['event_id']) + "\t1" for e in ev['events']] print "%s\t%s" % (nickname, "\t".join(events)) time.sleep(1)
これでTSVのファイルを吐くので、js.tsvとでもしてbayonで実行する。44人いるので6クラスにわけてみた。
$ bayon -n 6 js.tsv 1 まあこ logicraft y.yabe tomof 2 Kaz_110 yukio.47 secondarykey となか ando_ando_ando harumakiyukko keito5656 3 polidog でみ/DEMi k0sukey 4 tano4510 bontakun_R aalt wangzhi planpot オーイシ 5 Hotti kawario you39 ahonuishino jamireon motokix _wa_ toniokatanuki Wataru \ Yokoyama deep keiyuyama haru_iida fmmfm enkue dongame Shinichi Nabeta nckt \ muchico Lasty 6 fujimaruJP w1mvy taka2geek eibiisii iori_ma
5群はその他をまとめた感じですね。1群はフロントエンド寄りの人達で、2群はサーバーまわりを好む人達ですね。3,4群は地理的な制約も受けてるのかなぁと思ってそれぞれの人達の参加したイベント眺めてみたんだけど別れ方がよくわからん。クラスタ数を小さくしてっても3群はなかなかどこにもマージされんしなぁ。ネガティブな特徴(不参加の状況が似ている)が出ているんだろうかねぇ。
19052012 music
上記のエラーが出たときは、
えーなんだよ、まじかよーえーなんでー?
と絶望的な気分になりますが、単にiTunesのXMLが壊れているだけなので、落ち着いて対処しましょう。
iTunesフォルダのiTunes Music Library.xmlっていうファイルをおもむろに削除したらiTunesを起動して適当な曲のレーティングでもいじって一回終了すると新しいiTunes Music Library.xmlが出来てて(できるタイミングがよくわからんかったが、、)それをTraktorで読み直せば元通り。
19052012 life
生き方指南系で有名な勝間和代さんの本だが、本書は純粋に決算書の読み方に閑する本でしかも面白い。 本書を読み終わった時に、丁度自分の会社の決算短信が出てたのでニヤニヤしながら読んでしまった。
100円台で手に入る本なので買いだと思いますよ。
科学論文の実験データもそうだけど、自分で数字をいじれる裁量の余地がある部分はある程度決まっていて、そこに無理のある解釈を入れると他が必ず歪みます。決算報告書なんかの会計も一緒だそうで、どこの数字をどういじるとどこに歪みが生じるかっていうことが丁寧に書かれていて、分析が好きな人にとっては本書を読むことで数字パズルという新たな玩具が手に入ります。
営業なんかから情報を仕入れていれば、自社の内情を知っていると思うので決算報告書が超楽しめるようになります。それだけでも読む価値アリですね。
尚、前提知識として簿記三級くらいは必要かもしれませんが。
最近Flask-WTFをよく使っている。
SQLAlchemyのデータをWTFに適用する時にはコンストラクタにobj引数で渡せばいいらしいんだが、逆にWTFのデータをSQLAlchemyはどうすんのかなぁと思いドキュメントを調べたら
form.populate_obj(user)
こんだけだった。
17052012 javascript
というわけで、読みかけていたPhoneGapの本も読んだ。
HTML5での開発が大半で、最後にPhoneGapの使い方が書いてあるが、PhoneGapの開発の流れを考えたらまぁ、こういう構成になるだろうなぁと。最新版は本のとおりには動かなさそうだったので、本家のチュートリアルをなぞったわけだが。

結局PhoneGapは(オフラインで動く)webアプリケーションなんかを個別のパッケージにして配布したいとかいう要望にこたえるツールなんかなぁと。一方でTitaniumはjavascriptでAndroid/iPhoneアプリ開発って感じですね。
前者のやり方で作るんだったら、jqmでささっとつくってURLアクセス出来ればいいから(配布もめんどくさそうだし)PhoneGapを利用するシーンはあまりないかなと思った。
それからこういうアプリはShell Appってよばれているらしい。
個人的には触ってて楽しいのはTitanium Mobileだな。
16052012 life
予約した。楽しみ
15052012 javascript Ti
風邪で咳と鼻水がひどくて会社を休んだのでTDD(ティッシュ駆動開発)してた。
手を動かすのは5章だけなので丸一日あれば普通に終わる。クライアントサイドのwebアプリケーションを書いたことがあればすんなり理解できる感じなので入門書としては良いと思った。
1章はイントロダクションだとして、3,4章は特に必要性を感じなかったので流した。
2章の環境構築のところは非常にわかりやすかったけど、結局Xcode4.2 for snow leopardがみつからなかったのでLionにあげて最新のXcodeを入れてしまった。それから本書のサンプルコードのダウンロードURLを書いてあるページを見つけられなかったので、自力で検索して探して落とした。
5章のサンプルは
の3本立てで面白かった。が、最後のカメラのサンプルは実機がなくて実際に写真を撮ることができなかったのでちょっと消化不良。コードの説明もuiのphoto.jsかmodelのphoto.jsなのか微妙にわかりづらくてちょっとはまった。
6章はデバッグの心構えみたいなものか、入門書だからだと思うがTDDなんかの紹介はない。
7章はiPhone,Android共にアプリストアの公開の仕方が分かりやすく説明されているので開発者登録するときに役に立ちそう。
結論としては2,5,7章がよかったので入門書としては買ってよかったかな。
その先何がいいかなぁとtweetしてたらこれをススメられたので買って読んでみるつもり。
Appcelerator Titanium Smartphone App Development Cookbook14052012 sake
すっきり系
