ふもと博に行ってきた

これです。

みくりや蕎麦は山芋をつなぎに使ってて、山芋の香りが決行するんだけど、短すぎなのと切りが不揃いだったのでちょっといまいち。金太郎あたりでたべるのがいいんじゃないかなぁ。山芋をつなぎに使っているとこだったら、きわだ路もいいよね。

1338201503

こっちはJA鳴沢の。せんどそばっていうらしい。大根の千切りのせたり、唐辛子味噌をつけたりとなかなか面白い食べ方だった。

1338201505

チキンハウスの唐揚げをつまみにビール飲んで終了。

1338201508

ハプニングがあってすぐに終了したけどねー。

CoffeeScriptとTitanium mobileの本が届いた

なんかたて続けに5,6冊届いた。

1338198186

ProductName Appcelerator Titanium Smartphone App Development Cookbook
Boydlee Pollentine
Packt Publishing / 3810円 ( 2011-12 )


今日の畑(120526)

ベランダで育苗していたゴーヤが畑デビューする日がやってきた。今年はゴーヤの発芽率が悪かったので、わざわざ198円の苗を3つ調達したのに、購入した翌々日に立て続けに諦めてたボットから4つくらい発芽したので萎えた。

リーフレタスは上手く行ってないので、再度種まきにチャレンジする予定。ついでにコリアンダーとローズマリーも植えてやる。

1338116670

オクラとゴーヤ。オクラはまだ定植できないなぁ。

1338116672

ラディッシュ。これもいまいち根が肥大化してないけど、もうそろそろ収穫できそう。

1338116674

サツマイモは、苗取り用のが安かったので買ってみたんだけど、手間がかかってしょうがない。先週の月曜に切り苗を買って畑に植えてしまったので、時間差で植える苗にする予定。

1338116676

おまけの朝顔。撒くの遅すぎんだろ?とか思うんだけど娘の仕事だからまぁいいや。

1338116678

さて、ここから畑。ニンニクはそろそろ収穫できそうなんだけど、まとまった時間が取れないので、どうしようかなぁと。どこかで遅刻出勤するかな。

1338116680

ゴーヤの植え付けは娘に手伝ってもらった。人参間引くのに夢中になっててあんま手伝ってくれなかったけど。

1338116682

ズッキーニは2株だけ植えといた。あまり期待してない。

1338116684

サツマイモはどうかなぁ。あんま水やりできてないので根付くかどうか不安。

1338116686

人参は良い感じに育っているので期待している。

1338116688

ニンニクの後に何を植えようかなぁと悩んでいるんだけど、空芯菜でもいこうかなぁと。

ApplicativeとMonadの違い

引き続き「すごいHaskellたのしく学ぼう」を読んでいる。

ProductName すごいHaskellたのしく学ぼう!
Miran Lipovača
オーム社 / 2940円 ( 2012-05-23 )


ApplicativeとMonadの違いはbind(>>=)があるかどうかだと思うんだけど

(>>=) = m a -> (a -> m b) -> m b

これは、

モナド値を取って、それに「通常の値を取るがモナド値をとる返す関数」を適用する

わけだ。そしてこれは、Applicativeのススメによると、Applicativeでは条件分岐は実現できず(Monadではできる)ということになるんだと思うわけで、そこら辺の分かりやすい説明が13.4の綱渡りに書かれている。

で、書かれている関数は理解できるんだが、意図しているものがモヤモヤしている。この例の場合の条件分岐はNothingかJust xで型(データコンストラクタ?)が別れるということになるんだろうなぁと思うんだけど、じゃぁMaybe型ってなんなの?

失敗するかもしれないという文脈付きの型って本書では書いてあるけど、モナドから見たら失敗している、失敗してないという2つの状態を表現している型 っていう認識でいいのか?bindはその二つのいずれかに条件分岐できるという。

アプリカティブ値が相互作用できない(モナド値が相互作用できる)てそういうこと?

PreziのズーミングプレゼンテーションのコツはBig Pictureを描くこと

Preziの本なのか、筆者の考える発想論の本なのかよくわからないが、読んだ感じでは後者のニュアンスを強く持った。特に、preziをマインドマップがわりに使う(4章)話は普通にマインドマップ用のツール使えばいいじゃんと思ったのであまり役に立たなかった。

ProductName Preziで始めるズーミングプレゼンテーション
筏井 哲治
日経BP社 / 1575円 ( 2011-03-31 )


実際に役に立ったのは、5章のあたり。Preziのコツはマクロとミクロな視点を上手く組み合わせることで、マクロにみた時にPreziの絵が美しくあるべきという筆者の主張には共感を覚えた。

一方で、抜けてんじゃないの?って思ったのが、本書ではカメラワークが視聴者にどういう効果を与えるかの説明がまるでないところ。

Preziは一枚の巨大なキャンパスで世界を表現し、それを視点移動と回転、ズームイン、ズームアウトといった躍動感のあるカメラワークでプレゼンテーションを行う点にあります。

とか書いてあるのにねぇ。実際に大きな絵を描いても、プレゼンは動きにも制約されるだろうし、動きの与える効果にも絵の描き方が制約されるだろうし、この2つは切り離せないんじゃないかなぁ。

例えば、同じような話題を反転させながら移動させたら気持ち悪いし、対比させる内容が横とか縦にスライドされて表示されるのもまた変だ。

そういうあたりのカメラワークは映画やアニメーションの技法とかを参考にするんだろうなと思っていたので、そういう話題にも触れてることを期待して本書を買ったんだけど、まったく書いてなかった。なので、去年に買った本なんだけどエントリに上げてなかったという。

なんで突然エントリ書こうかなと思ったかというと、

というエントリをみつけたので、おーこれは期待できそう!と思ったから。色々手を入れれば自分好みのプレゼン作れそうですね。動きと配置のデザインパターンとかも溜まっていけば面白いんじゃないかなぁ。

友人の結婚式

もう一ヶ月以上経ってしまっているが、料理も式も素晴らしかった。

中身は白馬錦だったかな。

1336883657

前菜

1336883659

茶碗蒸し

1336883661

紹興酒

1336883663

フカヒレ

1336883666

オマール海老だったと思う

1336883668

肉旨かった

1336883670

1336883672

1336883673

1336883675

1336883677

Upside Down / Jazzanova

JazzanovaのRemix

Jazz-houseも結構好きなのでたまにつまむ。

ProductName Upside Down
Jazzanova
Sonar Kolektiv / 1890円 ( 2012-01-31 )


ファンクターからアプリカティブファンクターへ

この本は10章まではウォーミングアップみたいなもので11章からが本番です。

Applicativeに関してはあどけない話のApplicativeのススメを読んだ時にいまいちよく分からなかったのだけど、11章はFunctorから始めて、自然な流れでApplicativeの説明がしてあって非常に分かりやすい。もし、モナドを理解しているなら頭にこんな図を描きながら読むといいです。

<*>は関数の入っているファンクター値と値の入っているファンクター値を引数に取って、一つ目のファンクターの中身の関数を2つ目のファンクターの中身に適用する

ということなので、pure f <*> xfmap f x と等しく、f <$> xとも書ける。

ProductName すごいHaskellたのしく学ぼう!
Miran Lipovača
オーム社 / 2940円 ( 2012-05-23 )


理解した上でもう一度あどけない話のApplicativeのススメを読むと楽しいですね。

あとでパーサー書いてみようっと

XML-RPCでPYPIにパッケージ一覧の問い合わせをする

PYPIに登録してあるパッケージ全てのリストと、ここ一日の間で変更されたパッケージのリストを取ってくるサンプル。

import xmlrpclib
import time

proxy = xmlrpclib.ServerProxy('http://pypi.python.org/pypi')
proxy.useragent = 'pep381test/0.1'
packages = proxy.list_packages()
print len(set(packages))

lastweek = int(time.time()) - 60 * 60 * 24 * 1

changes = proxy.changelog(lastweek)

# [name, version, last_modified]
print len(changes)

acupは上手くいかなさそうだ

この前の思いつきでpipのキャッシュにインストールしないでダウンロードだけするスクリプトを書けばいいじゃんと思ったので、

pip install --no-install --no-deps packages

でいいんじゃないかなぁと軽く考えてたんだけど、pipのソースコード読んでみたらバージョンをpypiに問い合わせてから対応するバージョンのキャッシュがあるかどうかを調べる流れになっているので単純にキャッシュすればいいってわけじゃなかった。

バージョンを返すHTTPサーバーは必須みたいだなぁ。