そば

合宿初日、いつもの刀屋で昼食にそば。 温泉宿の朝食がおいしくて米を食べすぎていたので普通より少ない中に。

行きのバス

15分くらい走ったところから記憶がない。 ルートが変わっていたらしいです。

ペンション

雪は相変わらず積もっててやっぱり寒い。 今回は滑らず持参した本を消化しつつなんかするつもり。

VPNでSSHが繋がらない…仕事がちょっと残ってたのでテザリングでしこしこ作業してました。。

ハイパフォーマンスPython

去年のPyConJPで原書が展示されていたやつ。 去年のうちに翻訳本が発売されており、買ってはいたのだけれども読む機会がなく今日にいたる。 Pythonに関する最適化をメモリのアロケーションとかからクラスタリングまで網羅的に紹介する本でした。 あー、わたしが書いてもこんな紹介するなと思ったかんじでした。 これは…対象読者がすくない系の大変な本だ。

紹介の方法が具体的なコードがあるところが多数で、使い方の導入になっているのがよかったです。

説明だけになっているところは…あまり時間がとれなかったんだろうな…。

温泉宿

明日からの開発合宿に先立ち別所温泉に行ってきた。 ちょっといいお値段のプランで申し込んだせいもあり、日頃うけることのないもてなしをされ挙動不信な反応をしてしまったのはいたしかたない。

この地域は以前、薬用人参の栽培が盛んだったらしい。 夕食のスープでだしてもらったけれども、ちょっとポタージュっぽくておいしかった。

ほか、食べ物の話だけれども、クルミとチーズ、マスカルポーネチーズと干し柿の組み合わせは新鮮だった。

泉質は単純硫黄泉で若干の匂いくらい。皮膚に刺激があるほどではないのでゆっくり入浴できた。

地域的に山間で静かなところだったのでノイズが少なく自分を見つめる時間をとれて満足した。

あんかけやきそば

別所線の出発駅である上田駅周辺にはあんかけやきそばが昔からある料理らしく今回気になったので食べてきた。 あんかけはやまのほうのそれ、野菜がたんと入っていて、あん自体はちょっと甘め。 そして麺は錦糸卵のように細いものを焼き固めているかんじのものでした。

好みよりかいくぶんか甘かったのだけれども、酢をまわしかけたらイケるかんじの味になり、 全部いただけました。 あと一緒にたのんだ小わんたんは普通の量くらいあった。こちらは醤油の塩気が効いてていいコントラストになってました。

別所線

鉄道むすめでした。

しなの鉄道

りんご売ってた。なぜ。

redisクラスタ

redisは3.0からクラスタ機能がついていてマルチマスタ構成をとれるようになっている。 もちろんレプリケーションも搭載されているし、マルチマスタなので負荷分散の効果を見込める。

…なのだけれどもネットワークを分ける機能が足りていないような気がしないでもない。 レプリケーション、仕様みたかんじだと通常のポート+10000番を使ってるっぽい。 だけどそれだとNIFは同じものになって帯域食ってしまわないかな。

iptablesレベルでポート指定で宛先書き換えとかで対応するのかもね現状は。

対してKafkaはAdvertiseの仕組みでクライアントに通知するアドレスとクラスタ内で使うアドレスを分けることができる。

https://github.com/antirez/redis/issues/2527

という観点で調べてみたらでてきましたよ。3.2から使えるようになりそう。:

I don't think there is a simple way to make this backward compatible at binary level.
I tried but it adds a lot of complexity, so basically this feature will not back ported to 3.0, will be 3.2 only,
and when upgrading a cluster there will be to restart all the nodes with 3.2, since 3.0 <-> 3.2 chat will be impossible.

なるほどね。

時差ボケは続くよ

今日も20時くらいには就寝して2時くらいに起きる。 えーと市場勤務でしたっけ私。

スタミナ丼のミニの存在意義

あの味が恋しくなることがあるのだけれども、あのデフォルトで多い量を食べると一食分になってしまうので、 ってときにとりあえず軽食として味わって満足するのに適した設計になっていると思いました。

小食…なんですかそれ日本語ですかね?

眠い日

時差ボケがあいかわらずで昼食のあと家族を駅まで送り出してスーパーへの買い出し終えたら眠くなってそのまま夜に。 何やってたんだろう今日は。

Selenium WebDriverとAppium

まだ調査中なのだけれども。

まずSelenium2.0がWebDriverという仕組みをもっていて、テストをおこないたいコード、クライアントはそのAPIでリクエストを投げるとドライバがうまいことブラウザを操作してくれる。 これは WebDriver Wire Protocol を使ってやりとりされる。

よってC/Sモデルに従っているのでサーバを置き換えることができる。 モバイルに特化している Appium というものがある。

Appiumはシミュレータや実機でのテストにも対応していると謳っているのだけれども、実機へのセットアップがやっぱり難しい。 Sauce Labs が使っておりXaaSで提供している。

帰国

一週間の出張を終え帰国した。 行きは日付変更線の向こうへ行って日が増えた気がしたけれどもやっぱり戻ってきたら変わらなかった。

コードシェアのときはその運営会社ではなく実際の機材の会社でチェックインしないといけないらしい。 またオンラインではその機材の会社でしかできなく、また運営会社と機材の会社では管理番号が違うので、 機材の会社の番号を調べてやることになるらしい。 オンラインチェックインできなくてよい席を確保できなかったので次は気をつける。

帰りの飛行機でANAの機体だったので久しぶりに席に置いてあるサービスメニューをみたら、ANAオリジナルのドリンクがあって、 たまにはメニューをみてみるのもいいものだと思った。なお甘過ぎた。

いつも飛行機に乗るときにはあえて和食をはずしていたのだけれども、そんなこと気にせずそのとき好きなものを頼めばよいのだなと思った。 あとアイスは食べたくないときがあるのでオプションにしてもうちょっと安くならんのかな。 やっぱり日本の会社のサービスはいいのだけれども、そこまで必要じゃないんだよな正直…機体さえメンテされて席の間隔に余裕があれば。

時間は遅延しつつも、都内ではトラブルなく、最寄り駅からは雪残ってるのにタクシーがつかまらなく徒歩で帰ってきたけれども、 帰路はまあまあな感じで帰ってこれたのでよしとする。

帰途にて食べた馬賊の担々麺はちょっと値上げしてたけどおいしかった。

孤独という話

以前から同意はしているのだけれども日本にいると空気読めや慣れに影響されて忘れてしまうのでメモしておく。

コミュニケーションは齟齬があることを基本として最終的には自分で決定するしかない。

疑問が残るようだったら、手段として、違和感を感じた語句の意味しているものの説明を求めたり、 自分が感じたことを説明して、相手が意図した内容だったかを確認する必要がある。 それでも失敗したら責任を引き受けるしかない。 もしかしたら相手はそもそも間違った知識を信じて、誠意もって対応しているだけなのかもしれないのだから。

今回の帰国のスタートとしてホテルからバスに乗ったのだけれども、バスの運転手は英語を喋る中国人のおっちゃんだった。 SFOは国内線や国際線のターミナルが別なので国際線のターミナルへ行かなければならないのだけれども、 どうにも国際線のターミナルはどこだと質問をしていた乗客にその国内線のターミナルで降りて乗りかえろと言っているようだった。 その乗客は降りていってしまったのだけれども、やっぱり国際線に乗りたければ別の場所で降りるのが正解だった。 (私はそこで降りるのが正解なのか分からなかったので道路の道案内を信じ車内に残ったが、人にアドバイスしてするほどは確かには知らなかったので黙っていた ここでI think ...といって自分の意見を述べるのがアメリカ、それかもっと広く、英語圏の文化なのだろうな)

国際化の重要性とプロトコルアップグレードの類似性

SFOのANAカウンターにて、受付の人と最初は英語でやりとりをしていたが、パスポートを出したら向こうも日本人だったらしく日本語でやりとりするようになった。

これって最近のだとHTTP/1.1でのやりとりのなかでクライアントがHTTP/2.0へのアップグレードを要求してそこから通信が高効率でできるのと似ているなと思った。

で、これってプロトコルアップデートというだけでなくて、単にサイトの国際化がされているってだけでも同じような効果があるんじゃないかと。 つまりサイトが国際化しているとそれのネイティブな利用者との時間あたりのコミュニケートできる情報量が増えるといえるのではないか。

7年来の友だちに会った

サンドウィッチの写真をFacebookに投稿したら最近ほとんど音信不通だった友だちから連絡があった。 2ヶ月ほど前にパリからサンフランシスコに引越したそうだ。

話はとんとん進み今日サンフランシスコに行って会ってきた。

(本題からは離れるが、この会いたいということをチームのメンバーにいったら週末の宿をSFOの近くにとってくれた。感謝している)

あいかわらず身長は高く、そして7年の月日は彼をギークからファッションを纏うナイスガイなギークに発展させていた。 奥さまの貢献は偉大だ。

いまは反対岸のオークランドに住んでいて、ビザが5年あって、ビザを手に入れるのにメチャクチャ書類書いてインタビューしてという苦労話を聞かせてくれた。 こちらではまだ比較的低所得だけれどもリッチになる可能性がパリよりあるらしく望み高く活動しているようで、ぜひ頑張ってほしい。

本屋を紹介してくれて、妻への土産をいっしょに選んでくれた。

時間は偉大だ。本当にいい男になっていた。

口を開くと相変らずな調子だけれども技術にも明るく楽しい時間を過ごせた。

環境は行動に作用するか

現時点では作用するを支持する。

複数の要因がからむので一概にはという話はもちろん同意するが、すくなくとも高級ホテルのロビーで書いたこの日記の文体がフォーマルなのが証左だろう。

追試が必要だ。

肉の日

朝食のAll American Subから始まり、昼食の中休みを挟み、夕食のシュラスコを決めた。

サンドウィッチ

写真では伝わりにくいかもしれないけれども右の水のボトルは1Lです。

../../../_images/IMG_1518.jpg

ランチはイタリアンっぽい何か

アメリカンイタリアンデリバリーのようなもの。 スパゲッティとかラビオリとかのパスタとりあえず全部トマト味。 あとはサラダというなんとも、うん、中休みにはちょうどよかった。

アーティチョーク

そうだよ。肉の記憶の向こう側へ忘れてしまうところだったよ。 シュラスコ屋さんのビュッフェで念願のアーティチョークを食べました!!

味は他のものに例えるのが難しいかんじ。アーティチョークとしかいえない。 ユリ根とも違うしな…。

今しらべてみたらチョロギも英米ではアーティチョークと呼ぶらしい。なんだって!!

仕事の話題がまったくでてこないなと思った

単にNDA的に公開するかもしれないところに書いておけないっていうのはあるのだけれども そもそも汎用なものが少ないので記録しておく必要性を感じないというのもおおいにある。

あ、Gohanはいい製品だと思いますよ。

ユースケースを食わせて製品を鍛えるという表現はエンジニア独自なのかなと思った。

仮想マシンを動かすだけじゃもう足りないフェーズなのかもね

後発の仮想マシンをネイティブのハイパーバイザで動かす製品がMacでもではじめてきたけれども あまり食指が動かないので何でかなと考えた結果、仮想ネットワークを思っている通りに組めない製品はもうそれだけでは魅力あるものではなくなってしまったのではと。 もちろん自身の興味の向きがってのもある気はするのだけれども。

仮想マシンを動かしたいというモチベーションは、その仮想マシンの上で何かしらのアプリケーションを動かしたり開発したりしたいというがあっての話なので、 またそういうものは単体で動く以上のことをするのが珍しくなくなってきている、 つまりネットワークを使って外部とコミュニケーションをとらないケースが逆に珍しいのでってのが大きい。

ネットワークがコントロールできていないと、例えばクラスタを構築するミドルウェアの実証実験はまずもって正しく評価できない。あとはクラウドの制約であるブロードキャスト/マルチキャストパケットの破棄をシミュレートしたりという環境が構築できない。帯域を制限させてネットワーク遅延な環境とかも構築できないとアプリケーションの信頼性が…とまあ意外に色々あった。

OpenStackの言葉で何を思っているかを表現すると、 Novaでインスタンスを動かすだけでは足りなくなって、 Neutronでネットワークを使いたくなって、 それをポチポチコマンドで叩いていくのもダルいよね、最低限Heatは使えるようにしたいよね。 というかんじである。

あと別レイヤーの話で家庭でもアプリケーション動かすのに環境を整えるの面倒だよねというモチベーションがありPaaSの気運が高まってきている。 CloudFoundryがよさげなので調べてみようと思っている。

もちろん個人ユースのゲームとか事務作業に使うものとかは除く。

よく働いた日

モーテルに帰ったら22時。 近くのレストランでディナーを食べておやすみなさい。

メニューにOctopus Grillがあったので頼んでみた。 オーブンでグリルして酢が効いたソースをかけたらマリネしたかで結構いけた。

一緒に頼んだルートビアはグラスに氷がたんと入ってて水っぽくなってて微妙だった。 シカゴピザ屋で飲んたIBCルートビアは美味しかったな。

ランチはメキシカン

トルティーヤチップとサルサソースくらいしか思いだせない。 まあ他にもソースぽいものだった気がするので、小豆を煮たようなペーストもあったかな。 あとは…タコスはなかった。

グローバルスタンダードのクオリティと日本語話者の強み

まあ一例ということはふまえつつ。

かのシリコンバレーにある企業のサポートでもJVMにルート証明書をインストールする方法をしらなかったり、 英語が喋れるというだけで現場投入されンガンンだったり、 Backpainといいだしたらフェードアウトするシグナルだったり、 という話を聞いた夢をみた。夢ですよ。

あと日本人のとくにエンジニアは何か調査したら情報を日本語でまとめて共有する傾向が他より強いらしく、 日本語を読めない非日本語圏から情報を検索してくれと依頼されることがあったんだとか。 という話を聞いた夢もみた。

寿司

もともと食べものの出現頻度が大きい日記だけれども。 今日のディナーは食事会で日本料理屋さんでした。 寿司や刺身、天ぷら、ドラゴンロール、茶漬とバリエーション豊かなレモネードがよくあう和食でした。 グリーンティーもサービスで提供されてました。

ランチはサンドイッチ

フランスパンベースで野菜と肉が具なかんじ。やっぱり美味しい。

ランチを書き出すようにしてから、 初日のランチを埋めたくなって 何食べたかなって思いだそうとして、 何食べたかどうしても思いだせなくてもやもやしていたのだけれども、 そもそも空港で正午過ぎており予定がおしていたのでランチを食べていなかったことを思いだした。

疲れや空腹でヘロヘロだったな。

アーキテクチャはどこも似てるものなのだな

MVC的なパターンの話になるのだけれども、PUSH/PULL、コントローラ/ノード、データフローおよびそれらのバリエーション以上のものはないんだなと思った。

あなたとJAVA

久しぶりにJavaを使う機会をえた。 基本的人権があるモダンなJava8。 Java特有の冗長な表現の部分は相変わらずだけれども、それどもメソッド参照をストリームへ渡せたり以前よりかはまともに書ける言語に進化していて驚いた。 マルチプラットフォームなJVM, JMX, JIT, 静的コンパイル, 豊富な実装やライブラリを考慮すると意外に開発環境としてポイント高い気がしてきた。

…ただこれJavaに限らずにJavaエコシステムの話な気がしてきたのでJVM言語を選択すればいい気がしてきたぞ。

身体がバキバキ

一日中座ってばかりで移動も車で連れてっていってくれるので本当に身体がバキバキになっている。 そこまで運動が好きなわけじゃないのだけれども、身体を動かしたい欲求がでてくる。

ラーメン

仕事のあとにラーメンと寿司の店に行きました。 ガーリックトンコツラーメンとラムのグリルおいしかったです。 やっぱりグリルは欧米のほうが味が素直でいい。

ランチはピザ

普通のピザでした。味はよかった。

トランポリン

ウォルマートにトランポリン売ってた。 300ドルくらいで直径5m、転落防止用のネットも付いている。 家に広い庭が欲しくなる。そもそもどうやって持って帰るというのかという話もある。

という話を妻にしてたらAmazon JPでもトランポリン売っているのな。

標準正規分布表

あの表の読み方と意味がわかった。 表の縦横の数を足したものがZの値で、それによって分布のどこまでをカバーするかを知ることができる。 Zは0から正の範囲での割合なので、全体の半分である0.5に近付く。

よって、0〜500の範囲の正規分布なランダム値をとりたければ、 0を中央値にした標準正規分布な疑似乱数生成器の実装がおおいので、 (ランダム値 + Z) / 2Z * 500 でとれる。