2016年6月30日木曜日

尿路結石

 6月26日、日曜日の起き抜けの排尿でやっと石がでた。
 先週の月曜(6月20日)から七転八倒していたのである。あまりの痛みに病院へ行ったけれど、当然、処置のしようはなく——CTで結石の大きさは2mmほどとのことだった——、痛みがなくなっては、ぶり返しての繰り返しだった。人生三度目で——認識しているかぎり——、今回が一番、きつかった。最初のときは小指大の石がでたけど、痛みはなかったんだけどなぁ。

2016年6月29日水曜日

ブックホルダ


FlipKlip ミッドナイトブルー(フリップクリップ・ブックホルダ)

 このところ、最相葉月「星新一 一〇〇一話をつくった人」とか、グレアム・アリソン/フィリップ・ゼリコウ「決定の本質 キューバ・ミサイル危機の分析 第2版」とかの厚めの本を読んでいたせいで、指先が痛くなってしまった。書見台を買うかな、とAmazonを見ていたらブックホルダというのを見つけた。

 上下の使い方が逆だけど(日本語の縦書きだと下の方がスペースがあるから)今のところ、なんともいえないところ。まぁ、文庫本にはさすがに不要かなぁ。

2016年6月27日月曜日

最相葉月「星新一 一〇〇一話をつくった人」

 最相葉月「星新一 一〇〇一話をつくった人」

 奥付を見ると、2008年1月25日になっているからちょうどそのころに購入したはずだ。買ってすぐにざっくりと流し読んだ。そのこともあって読んだような気になっていたけれど、いつか、ちゃんと読み直そう読み直そうとは思っていた。
 そうしているうちに文庫になってしまって読む気力が失せてしまった。
 ようやく腰を据えての読了である。

 山田風太郎と佐野洋のエピソードのこと、どこで知ったんだろうと思っていたらここからだった。

2016年6月20日月曜日

GPSロガー for iOS(ZweiteGPS)、およびLispにちょっと感動した話

 EveryTrailの代替で使用していたSportsTrackerが有料会員にならなければ、iPhoneのGPSログを引っ張り出せなくなってしまった。そもそもデータをクラウドへアップできなくなってしまったのである。EveryTrailのサービスが閉鎖されたときに多少、予想はしていたのだけれど——やはり無料アプリだけではやっていけないのか。

 ところがぼくには有料サービスを使ったら敗けみたいな感覚があって——有料アプリはいくつか、使っているけれど——、そんなに高額なわけではないのだけれど、無料アプリは適当なものが見当たらない。一番、良いのはiPhoneから直接、GPSのデータが吸い出せるようなアプリだ。
 それならそのアプリのサービスがなくなっても使いつづけることができる。クラウドに依存すると、そのクラウドがなくなってしまうとにっちもさっちもいかなくなってしまうんだよなぁ。
 そうこうしているうちに、「ZweiteGPS」というアプリを見つけた。
 iPhoneから直接、MacBookAirに吸い出せる。
 ただしデータの形式はjsonだった。
 ——ふむ。
 Emacsでjsonがらみのライブラリってあったっけ、と探してみると、あることが判明した。それで俄然、つかう気になった。要はjsonからGPX形式に変換してやれば、いい。
 ただ、json.elはjsonをlistに変換してくれるが、listからjsonへもどすようなものは用意されていない。これはxmlからlistへ変換してくれる「libxml-parse-xml-region」はあるけれど、逆変換はないことと同じことだった。
 なぜ、ないのだろう……。
 普通、双方向じゃないの、と思っていたのだけれど、変換するためのelispを書こうとしていろいろ、考えていたら突然、目から鱗が落ちた。
 驚いたのはelispでプログラミングしているのに、XML(GPX)ができあがってしまうというか、XMLを書くようにして、elispのloopやifの構造が使えてしまうというか——なるほどなぁ。逆変換の関数なんか、用意する必要がないわけだ。
 そういえば。

竹内氏によると、Lispはすべての言語の原点なのだという。「いまRubyがブームだが、Rubyは要するにカッコのないLisp。XMLもぶ厚いカッコのあるLisp。いろいろなプログラミング技法を見ますが、『Lispにあった』ということが多いです」(竹内氏)

Lispの仏さま 竹内郁雄の目力

 Paul Grahamも似たようなことをいっていたけど、その一端をようやく垣間見れたような気がする。

2016年6月10日金曜日

BUFFALO 11n対応 11g/b 無線LAN子機 親機-子機デュアルモード対応モデル WLI-UC-GNM2

 BUFFALO WLI-UC-GNが壊れてからずっとThinkPad1はダンボール箱にいれてTimeCupsleに有線接続して使っていたのだけれど、やはり表にだすことにした。いくつか理由はあって電源が切れてしまうと、箱を開けなくてはいけないし、ssh経由ではなく、直に操作したいこともある。2
 というわけで、「BUFFALO 11n対応 11g/b 無線LAN子機 親機-子機デュアルモード対応モデル WLI-UC-GNM2」を購入した。もちろん設定は今までどおりで充分。到着した日にUSBに挿入したらちゃんと動いた。良きことかな。

Footnotes:

1

というか、まだThinkPad X60を使っているのか、という話だ。

2

外部ディスクをつけたり、はずしたりしたい、とか。

2016年6月8日水曜日

2016年6月6日(月):本栖湖FUNビーチ:晴れのち曇り

Sail:CORE 5.7(NEIL PRYDE) Board:NG ACP 260 Fin:9.5inch

時刻 帆走時間 帆走距離 最高速 平均時速
13:11-13:37 26分 4.5km 42.77km/h 10.14km/h
13:44-14:20 36分 5.5km 39.04km/h 9.10km/h
14:41-15:02 20分 3.9km 43.09km/h 11.42km/h
15:06-15:30 23分 4.5km 38.93km/h 11.37km/h
17:04-17:14 10分 1.0km 14.94km/h 5.88km/h

total 117分 19.4km 9.9km/h

 経験則によると、筋肉痛がかるく残るていどの中二日がいい。
 毎日だと疲労が溜まるばかりだし、三日目だと、筋肉がゆるみはじめる。
 というわけで前回から中二日で本栖湖へ行くつもりだった。予想天気図ではぎりぎりなんとか、なるというところ。ところが朝、起きてみると、陽射しはなく、薄曇りの天気だった。Yahooの天気予報でも関東甲信越地方は今日、梅雨入りだという。
 本栖湖ははずれかも。
 そう思いつつ、たどりついた本栖湖はいつもの晴れた青い湖面に白波がたっていた。いましがた吹き出した感じだった。ラッキー。前回が薄曇りで寒かったせいもあって喜びもひとしおだ。
 他の車のうしろに車を停めると、その車のオーナーは魂さんのようだった。確信はなかったけれど。セイルをセッティングしていると、その人がおそるおそる話しかけてきた。
「あのぉ……」
 やはり魂さんだった。一年に一度ぐらい本栖湖でしか、顔を合わせないので互いに確信がなかった。ただ個人的には月曜なので魂さんがきているかも、とは思っていた。

 本日はマスト用のアタッチメントも用意してある。
 ただ、ベースは前バージョンのOptrixよりも首の可動角度が悪い。うまく撮れるかわからない。それでもためしてみたが。ただ、いつもとちがう、Optrix純正のアプリをつかっていたこともあって——スイッチがオンにならないこともたびたび1
 撮れた動画を確認して位置と、角度を調節して出艇した。
 フルプレーニングした瞬間、異音がしてマストからiPhoneが消えた。
 ——また、やっちまった!
 あわてて後方を見る。沈んでいくiPhoneの姿は確認できなかった。一瞬で沈んでしまったはずだ。ほんとうにマストからはずれているのなら。リグコードはつけてあるからそんなことはないはずなのだが……。
 どこにもiPhoneの姿はない……あ、あった。セイルの陰にぶら下がっていた。あわててその場で沈してぶらぶらしている状態をなんとか、しようと思ったが、アタッチメント自体がダブルクリップからはずれてしまっていた。結束バンドが切れてしまったのだ。
 あらためて固定することは不可能だった。
 そこでリグコードからiPhoneをはずしてセミドライの内側にいれる。このときに落としたら最後のお別れになる。水面下にセイルをはわしてその上で作業。
 無事に岸までもどることはできたが、はずれる瞬間の動画は撮影されてなかった——。

 また、結束バンドでダブルクリップに取り付けてもいいのだが、結果は同じになることは目に見えていた。結束バンドがダブルクリップの縁に擦れて切れてしまっているのだろうから。やはりヘルメットにつけるしか、ないか。
 そうしているうちに本栖湖が変調してしまった。空に雲がかかり、薄曇りになってしまう。風も冷たくなる。前回よりはましだが、似た状態だった。
 次に出艇したとき(14:41-15:02)、沖合いの方がコンスタントに風がはいっているように見えたので、意を決してラインをのばす。プレートの合わせ目のような風向きがかわるところを抜けて「山の裏側2」にはいる。さすがにドラゴンまでブローはつづいていなかったので、そのあたりで二往復ほど——地図で見ると、どうやら静岡と山梨の県境を往復していたらしい。

 時折、雲のあいまから太陽がのぞいたけれど、基本的に薄曇りのまま。
 風の状態はあまりよくなく、あとは五時から「ボーナスタイム3」に賭けるしかないか、と食事をしたり、アタッチメントをふたたび、ダブルクリップに固定してみたり工夫していた。

 湖面の風はあるような、ないような感じで、魂さんたちはプレーニングして行き来していたけれど、「ボーナスタイム」はもっと風が入るはず——と思っているうちに今日は不発だということが判明した。4あわてて出艇したときには時すでに遅く一往復で終了してしまい、フルプレーニングできなかった。
 ——ああっ。

 いやはや、それにしても魂さんの動画を見ると、ひとり異様な姿だな、おれ……道具的に。

Footnotes:

1

どうやら水につけると、タッチしているとアプリが誤判断してしまい、オフになっているようにも思える。

2

個人的にそう呼んでいる。

3

個人的にそう呼んでいる。

4

気温が下がってきていたのでインナーを着込んでいたこともある。

2016年6月5日日曜日

2016年6月3日(金):本栖湖FUNビーチ:晴れのち曇り、時々小雨

Sail:CORE 5.7(NEIL PRYDE) Board:NG ACP 260 Fin:9.5inch

時刻 帆走時間 帆走距離 最高速 平均時速
12:18-12:27 9分 1.7km 39.34km/h 10.93km/h
12:47-13:22 34分 3.8km 36.73km/h 6.59km/h
14:15-14:20 5分 0.9km 38.15km/h 10.24km/h
14:50-15:11 20分 1.8km 39.45km/h 5.26km/h
15:32-15:51 18分 1.1km 31.87km/h 3.74km/h

total 89分 9.3km 6.2km/h

 ——あれ?
 道志みちから山中湖へでたときだ。
 山の木々と街路樹はわさわさと揺れ、隙間をあけているサイドウィンドウも金切り声をあげている。手前の湖面は黒っぽくなっている程度だったけれど、奥——富士山の裾野側の湖面は白波が立っている。沸騰している、とよく比喩される状態だった。
 どうして山中湖がどん吹く。
 予想天気図では高気圧が日本列島を覆っていたのに。こんな状況はまったく想像してなかった。山中湖がどん吹いているなんて——ここで乗るか? 一瞬、考えた。山中湖が吹くとき、本栖湖は吹くんだっけ?
 本栖湖ではずしたときの帰路で山中湖がどん吹いていた記憶しか、ないのだが——たんにそのときのことが印象に残っているだけのような気がする。以前、一度、どん吹いている山中湖へ出艇したことがある。そのときはものすごく楽しかった記憶がある。広い湖面をがんがん走り回れたのだ。
 ただ、山中湖から出艇するのはオフショアになる。
 あのときはフローターのスラロームボードだったから浜にもどれたわけで。いちおう風向きは南だから本栖湖も吹いてもおかしくないよなぁ。色々と理由をつけて一路、本栖湖へ向かった。もちろんそれらの色々な理由はすべてあの葡萄はすっぱいにすぎなかったけれど。

 本栖湖にでているのは一艇だけだった。
 しかし湖面にはすでに南がはいっていて吹いていた。白波も見える。出艇しているのがひとりだけなのはまだ、来ている人間がすくないからだけのようだった。駐車している車は三、四台しか、いない。風は湿り気をふくんだ風で——いつものサーマルという感じではなかった。
 天気図にあらわれていない低気圧か、前線があるのかもしれない。
 湖上のセイルはインアウトをくりかえしている。
 ふとセイルナンバーがついていることに気づいた。midaさんのナンバーだった。浜から手をふると、向こうもわかったらしく、手をふってくれた。
 そうこうするうちに人も増えてきた。平均年齢はあきらかに高くて、隣の車から下りてきた男性も、その隣の車から下りてきた男性もぼく同様、白いものが多い白髪まじりの頭だった。
 思わず、笑ってしまう。

 問題はOptrixアタッチメントだった。1
 まだ、ヘルメットに取り付けていなかった。こんな時間から吹き上がっていることは想定外だった。あわてて取り付けてところ、向きが逆な2ことに——気づいたのは出艇する寸前だった。
 そのせいというわけではないのだけれど、最初の一本はヘルメットなしで出艇した。ブローは強烈だった。セイルが引きこみ切れない。身体を立てて風を逃しながらセイリングするしかなかった……。死ぬか、と思った。3
 そのあとも強烈なブロー4と、すこんと無風になる強弱に苦しんだ5。風がなくなる寸前、風向きもむちゃくちゃ振れ、急に東向きになったり、西向きになったり。——何の修行だ。
 何度も前に倒れた6。風が強すぎてセイルが引きこめなくて走り出せないこともしばしば——。
 自分のへたさ加減を思い知られた一日だった。
 そのうち、晴れていたのに、白い霧のような雲が頭上にかかり、風も冷たくなる。小雨も降り出す7。しかも沈するとなぜか、牛舎の臭いがした。おれの臭いか? 8
 きつかったのは風の冷たさだった。
 身体の震えと歯鳴りが止まれなかった。サバイバル本によると、これはまずい兆候だという。低体温症になりかけているのだそうで。いつもなら乗っている時間帯だったけれど、最後の一本と思って出艇した。
 すぐに沈した。
 寒い。凍える。水はいつもより暖かいぐらいなのに——風が冷たい。このままだと、人生最後の一本になりかねない。
 あがった。
 セミドライを脱いで着替えて身体があたたまると、湖面ではまだ、吹いて走っている。正直、乗り足らなかったのでまた、出ようか、と思ったけれど、きっとセミドライの保温性のなさにまた、泣きがはいってしまうにちがいなかった。
 着替えているときにmidaさんがやってきた。
「あがるの〜」
「体力の限界です」

 帰りに通過した山中湖はまだ、どん吹いていた。

Footnotes:

1

あとでmidaさんにiPhone用の防水ケースを見せてもらってショックを受ける。充分そうで、しかも値段は3000円だという……。

2

以前のものとはちがい、向きがあった。

3

midaさんに借りたフローターがちょうどハーネスのフックにひっかかってじたばたしていたこともある。

4

最高速がかるく30km/hごえをしているのを見れば、わかる。

5

最高速のわりに帆走距離がない。

6

おかげで打ち身しまくりだった。左脇腹がまだ、痛い。

7

北東の三浦のようだった。

8

midaさんに教えてもらったところ、山向こうの牧場の臭いらしい。

2016年6月3日金曜日

NFSの自動マウント(FreeBSD)

 VitrualBoxでFreeBSDを使っていてMacBookAirのフォルダをmountしたくなることがたびたび、ある。VirtualBoxのSharedfoldersはFreeBSDでは動かないみたいだし、だいたい今はXを立ち上げていない。
 というわけでMacBookAirでnfsdを立ち上げてFreeBSDで「mount -t nfs」とか、やっていた。これがけっこう面倒くさかった。「sudo」を使わなくてはならないし。「/etc/fstab」に設定してもbootのタイミングのせいなのか、うまくmountされなかった。

 FreeBSDはNFSにたいして「amd による自動マウント」できるのだけど、使ってみたけれど、いまいちだった。自動マウントされずに空っぽのフォルダになっていたりしていて。で、あきらめていたのだけれど——「FreeBSD 10.1-RELEASEからFreeBSDにはオートマウントメカニズムが搭載」されたらしい。
 さっそく設定した。

「/boot/loader.conf」に

autofs_load="YES"

を追加。

「/etc/rc.conf」に

autofs_enable="YES"

を追加。

「/etc/fstab」に

XXX:XXX  XXX nfs rw,noauto  0 0

を追加(「noauto」でboot時、mountされない)。

「/etc/auto_master」に

/-  -noauto

を追加。

 うごくうごくw1
 「amd」とちがって指定したフォルダにmountできるのはいい。2

 しかも設定次第でUSBにたいしてもオートマウントできるらしい。
 今までもデスクトップ環境があれば、やってくれていたけれど、素のFreeBSDでできるようになったのはいい。使う機会はないと思うけど3

Footnotes:

1

mountされなかった場合はMacBookAirのnfsdをrestartさせれば、問題なかった。「nfsd restart」(sudoを使う必要あり)

2

ホームフォルダの真下とかにマウントしているから。

3

MacBookAirでマウントできるから。

2016年6月2日木曜日

Macのtopコマンド

 よくtopコマンドを動かしてぼんやりとそれを眺めているのだけれど。1
 ——あれ?
 MacのやつってCPUの消費順にソートしてくれてないんだ。それはつまんない。アクティビティモニタでもいいんだけど。

top -o cpu

で、よかった。

Footnotes:

1

ほとんど痴呆顔をしていると思う。

2016年6月1日水曜日

MacBookAirのsshdに公開鍵をつかって接続する

 以前からMacBookAirにsshでログインするとき、パスワード入力しなければ、いけないのが不満でしかたなかった。たとえば、FreeBSDからscpするようにしても自動で接続できない。パスワードを入力しなければ、いけなかった。公開鍵を設定してもうまくいかない。
 これがFreeBSDからFreeBSDへならできるように設定できたのだが。
 というのも。
 ネットでちょっと調べてみたら、「/etc/ssh/sshd_config」の設定はMacでは有効ならない、という——それをうっかり、1年間も鵜呑みにしてしまっていたのだ。馬鹿である。そんなことはなかった。日本語のサイトではなく、ちゃんと英語のサイトをあたるべきだった。
 ただし「OS X Yoremite」ではsshd_configの場所は「/etc/sshd_config」だった。1
 下記を設定。

PasswordAuthentication no

 これで公開鍵を「~/.ssh/authorized_keys」に入れやれば、基本はOKなのだが、各種ファイルパーミッシュンをきちんと設定しなければ、まずかった(思いっきりはまった)。man sshdをあらためて見たら書いてあったわ……。2

If this file, the ~/.ssh directory, or the user's home directory are writable by other users, then the file could be modified or replaced by unauthorized users.  In this case, sshd will not allow it to be used unless the StrictModes option has been set to ``no''.

 ちなみに「/etc/sshd_config」に

ChallengeResponseAuthentication no

 を設定すれば、公開鍵なしではアクセスできなくなる。「yes」(デフォルト)の場合は公開鍵が設定してなかったらパスワード入力を聞いてくるのだけれど。

Footnotes:

1

ちゃんとファイルは存在した。

2

ログを見れば、すぐにわかったのに——Macだと、「コンソール」をひらけば、システムログを確認することができた。