読者です 読者をやめる 読者になる 読者になる

Anonymous Function

tmaesaka の lifelog | カルチャー、ときどきテクノロジー

サンフランシスコに引越しました

Travel

実際には 8 月に引越したのですが、そういえばちゃんと書いていなかったので、近況をまとめました。身辺整理や手続きなどのバタバタで、お別れのご挨拶がほとんどできず、申し訳ありません。

landed-sfo

こうしてみると、10 年近く前にバックパックひとつでニュージーランドから日本に移住したときに比べて、だいぶ荷物が増えました。今回は自転車まで運びました。

家について

サンフランシスコの Potrero HillDogpatch というエリアに候補を絞り、10 件ほどの物件をまわりました。最近は開発ラッシュの影響か、どこもフリーレントを提供していたり、値引き交渉に前向きでした。家探しの過程で最近の不動産業界の話もいろいろと聞けて良い社会勉強になりました。

結果的に Dogpatch で 2 ベッドルームのアパートメントを借りることにしました。実際にはひとことで済むほどスムーズではなく、交渉の内容が Lease (賃貸契約) に反映されていないなど、いくつかの残念な出来事がありました。極めつけに修正された契約書にもミスが含まれていて、何度も修正依頼のやりとりをする羽目になりました。とはいえ、この手のトラブルは想定内だったし、立地的に素敵なお店がまわりにたくさんあり、自分たちの職場にも近い物件が借りれて満足しています。他の住人は服装を見るからに同業者が多いようです。

仕事

東京からサンフランシスコ本社への転籍という形で、引き続きリアルタイム CDN の Fastly で働いています。チーム移動はあったものの、基本的に仕事内容や一緒に働いている人たちは変わらないので、今まで通りの日常を過ごしています。

まだまだ新生活に慣れるまで時間がかかりそうですが、これからサンフランシスコでの仕事や暮らしについても書いていけたらと思います。

ブログの画像を Fastly で配信するようにした

Tech Project

少し前からサムネイルを除く全ての画像を Fastly で cache しつつ配信しています。

felicity-fastly

以前から自社のプロダクトを食べなくてはと考えていました。加えて、最近は Historical Stats の仕事をしているので、手軽で身近な検証データが欲しいと思っていました。以上の理由から、本ブログの画像を Fastly で配信しようと決断しました。

Origin は Google Cloud Storage

画像の大本の保存場所である Origin には Google Cloud Storage (GCS) を選びました。セットアップは Fastly の公式ドキュメントを参考にしました。ひとつ追加で行ったことがあって、それは Fastly の Synthetic response という、CDN 上でカスタムなレスポンスを生成して、任意の条件で Origin からのレスポンスを差し替えるという技術の利用です。理由は GCS の 403 レスポンス (XML) が格好悪いから。

Synthetic response を使った Origin からのエラー処理の設定は簡単で、自分で定義した条件と組み合わせて使います。今回は Origin から 403 が返ってきたら、用意してある synthetic response に差し替えて user agent に返すという設定を行いました。

CSS と JavaScript でモバイルを少し工夫

どうせなら、モバイルウェブ版のヘッダー画像も Fastly から配信したいと考えました。問題は、Hatena Blog はヘッダー画像を URL で指定できないことです。救いとしてカスタムな CSS を書くことができるので、下記の簡単な style をヘッダーに当てました。

.header-image {
    background-image: url("http://url/to/cover-image.jpg");
}

指定の画像がレンダリングされることを確認したので、次は Hatena Blog 上で設定していたヘッダー画像を削除して終わり... ではありませんでした。画像を削除することで、ヘッダーの node が含まれない dom が出力されるようになりました。仕方がないので、適当な画像を設定し、その画像の URL を含む style attribute を該当 node から JavaScript で消しました。

document.getElementsByClassName('header-image')[0].removeAttribute("style");

良いデータが収集できてる

サムネイルは引き続き Hatena Blog の自動生成に任せていますが、それ以外の画像は Fastly から配信するようにしました。結果、リアルタイムや Historical Stats の良い検証データを得ることができ、もともとの目的を果たせました。とても満足です。

The Science Behind Pixar Exhibition を満喫してきた

Travel

Thanksgiving の休日を利用して、ロサンゼルスに旅行してきました。たまたま目に入ったピクサー展のビルボード広告が気になり、これは行かねばと行ってきました。

pixar-exhibit

企画展の趣向はピクサーを支える科学や技術、そして制作プロセスの紹介でした。何十ものインタラクティブな展示を通じて技術や理論を紹介するスタイルはとても楽しく、時間があっという間に過ぎていきました。また、テクノロジーだけでなく、プロジェクトを立ち上げるのに必要不可欠なアーティストの仕事や技術にもグッと来るものがありました。

toy-story-art

この企画展はとても刺激的で、自分が子どもだったら将来はピクサーで働きたいと思ったに違いないと思いました。会場は子どもが多かったですが、大人でも十分楽しめる内容でした。企画展は来年の 4 月までやっているので、LA 方面に行かれる予定のある方は検討してみてはいかがでしょうか。

関連リンク

Nexus 5X が急に文鎮化して困った話

Gadget Tech

メインで使っている Nexus 5X が急にフリーズし、起動しなくなりました。

nexus-5x

具体的には、電源を入れると "Google" のロゴが現れる起動の初期段階で起動に失敗し、勝手に再起動がかかり、同じところでまた落ちて再起動する、というループが症状です。実は放置すると数百回に一回は起動しますが、またすぐにフリーズしてループに戻ってしまいます。仕事にとても影響して迷惑極まりないです。

馴染むと文鎮化

調べてみたところ、どうやら一部の Nexus 5X と Android 7.0 (Nougat) との相性がすごぶる悪いらしく、かなりの人数がすでに bootloop について Android の Issue Tracker で嘆いています。不思議なことに自分は 9/1 に Android 7.0 にアップデートしたので、2 ヶ月遅れで Nexus 5X が文鎮化したことになります。きっかけは何だったんだろうか。

悪あがきで System Cache Partition をワイプしたり、いろんなアプリの Cache をクリアするなどしましたが、効果なしでした。システムを起動できた一瞬の間に 2016-11 のアップデート (NRD91N) が雲から降ってきて、これで直るかも!と期待しましたが、結果的にアップデートを実行することでループが悪化しました。

ベンジャミンが飛んでゆく

Nexus 5X は今まで温かい目で見守ってきましたが、さすがにもう付き合いきれません。保証で本体を交換するという選択肢もありますが、煩わしいので、Google の Project Fi 経由で Pixel XL を注文しました。痛い出費です。

今回の出来事でスマートフォンの重要性を痛感しました。冷静に考えると自分は一切悪くないのですが、その辺の理不尽は信仰心で無視することにします。こういった想定外の出来事は起きるものなので、ワークフローまわりで重要なデバイスやソフトウェアの冗長化を見直していこうと思います。

関連リンク

通勤用の自転車を手放した (A2B Kuo)

Gadget

年初に購入したばかりの A2B Kuo (折りたたみ電動アシスト自転車) を諸事情により手放しました。正しくは無料で購入店に譲りました。

a2b-kuo

この自転車は片道 10km ちょっとの通勤用に購入しました。日本モデルの電動アシストまわりはデチューンされているものの、十分なアシストを与えてくれました。海外モデルはハンドルにアクセルボタンがついていて、それを押すと勝手に進むらしいです。

購入初日にバッテリーまわりの故障が発覚するなど最初は災難でしたが、結果的に求めていた快適な通勤ライフを得ることが出来ました。残念なことがあるとすれば、せっかく折りたたみ式を選んだのに、重い車重のせいで使うことが皆無だったことです。走りについては、ホイールが 20 インチということで、700C に慣れている身からすると遅すぎると感じました。ただ、そのおかげで急がずにゆっくり余裕をもって走るという今まで自分にはなかった自転車の楽しみ方を学べた気がします。

手放すのは悲しかったですが、これも出会いと別れですね。前を向いて生きよう。

Impossible Foods の奇跡の肉を使ったバーガーを食べてきた

Food Startup

植物のみを使って肉を再現するという夢のような目標に取り組んでいる Impossible Foods という会社がシリコンバレーにあります。その肉を使ったバーガーをサンフランシスコの Cockscomb で食べてきました。

impossible-foods-burger

ビーフパティそのもの

衝撃的でした。Impossible Foods のパティは食感も味も牛肉そのもので、言われないと植物性だと気づかないほどの高い完成度でした。しかも美味しい。かぶりつくと熟成肉のような旨味が口の中に溢れ出ました。値段は $19 と高めですが、良い体験ができたので後悔はありません。

肉の正体と栄養

Impossible Foods の肉は小麦、ココナッツオイル、ジャガイモなどをはじめ、植物から抽出した Heme というタンパク質が原料であると公開されています。この Heme というのがミソで、肉の焼ける音、肉汁、そして肉っぽい味の基らしいです。栄養面でも牛肉と同等のレベルまで来ているようで、コレステロール、ホルモン、抗生物質などが含まれていないのも売りのようです。この手の情報は FAQ に載っているので、気になる方は読んでみてください。プロダクト動画も良い感じです。

Impossible Foods のバーガーは値段的に頻繁に食べれる物ではありませんが、美味しかったし、食後の気持ち悪さがなかったので、今回に限らずまた食べたいと思いました。次回は一眼レフを持っていかねば。

Bose AE2 のイヤパッドを自分で交換する

Gadget

イヤパッドの消耗はヘッドフォンの宿命。自分の Bose AE2 も無視できないレベルまで消耗していたので、互換パーツを Amazon で購入して交換しました。

worn-out-bose-ae2

本来は後継機の Bose SoundTrue AE2 などに買い換えるのが筋なのでしょうが、ヘッドフォン本体がまだ元気なので今回は見送りました。

交換作業は簡単で、まずは丁寧にイヤパッドを本体の爪 (計 8 つ) から取り外します。

stripped-bose-ae2

交換キットに新しい黒シートが含まれている場合は消耗具合で交換するかを判断してください。あとは新しいイヤパッドを本体の爪に合わせながら装着して終了です。

revamped-bose-ae2

使い込んでいたボロボロの AE2 が新品同様になって少し感動しました。オリジナルの質感にはもちろん及びませんが、交換前の状態に比べると天と地の差です。この勢いで近々 Bose QC15 のイヤパッドも交換しようと思います。実はこっちが本命かも。

関連リンク