2年ぶりにボストンに行ってきた

MITポスドク時代のボスの60歳記念ワークショップがあったので,帰国後2年ぶりにボストンに行ってきました.

ロングフェロー橋からのチャールズ川

さすがに2年しか経っていないので,当たり前ですがボストンはほとんど何も変わってませんでした.チャールズ川の向こうに新しいビルが1本建ったくらい.なので,急に2年前に戻ったような,とても不思議な気分でした.

今回は,普段の海外出張とは違って,昔住んでいたところに出張となったわけですが,快適さがまるで違いましたね.どこの駅に泊まれば便利かも完璧に分かるし,ワークショップ会場も昔いた建物なのでトイレの位置まで把握しているし,とにかく心理的オーバーヘッドがない.

よく仕事をしていたCafe Nero近くに滞在

元々,研究トピックの近いボスのところでポスドクをしていたこともあって,今回のワークショップ参加者にも研究の知り合いがたくさんいて,久しぶりに会えたのも非常によかったです.やはり輪に入れる海外研究集会の楽しさは段違いですわ・・・.

さらに,ワークショップ本体の翌日にあった"informal talk session"で最近の研究を発表する機会があり,そこでもたくさん質問・コメントをもらえてうれしかったです.他にも,参加者から「君の名前見覚えあるよ,いつかのSODA論文の著者でしょう?」と言ってもらったり.私もこの業界長くなり多少はプレゼンスがでてきたということでしょうか?

一時期,機械学習の国際会議によく行っていたのですが,あっちは参加者が多すぎで全然交流できないし顔も覚えてもらえないので,今は好きではないです.その点,組合せ最適化の会議は比較的小規模なものが多く,(頑張れば)ちゃんと交流ができて知り合いも増えていくのがいいところ!特に,自分の昔の発表や論文を覚えてくれていた人に会うと,やる気がでてきます.

最近色々ときな臭いアメリカですが,やっぱりボストンはいい街だなと改めて感じました.

googleマップのタイムラインデータが勝手に消えた

13年余りgoogleマップのタイムラインに移動記録をつけていたが、1週間ほど前に突然、今年3/1より前のデータが丸ごと消えた。

昨年タイムラインデータがサーバーではなくデバイスのみに保存されるようになり、その際にクラウドバックアップをON・自動削除をOFFにしたにも関わらず、デバイスクラウドの両方が消えてしまった。しかも3/1というキリのいい日付を境に消えていることから、Googleのソフトウェアバグで消えた線が濃厚である。同様の報告も各地から上がっている。

support.google.com support.google.com

今年3月ごろにも、一部ユーザーでタイムラインデータが消える事件が起きており後にGoogleはデータを誤消去してしまったことを認めた。そのときに自分は手動でデータをJSONでエクスポートしていたので、完全に全てが失われたという訳ではなかったが…。

それよりも、Googleが短期間に二度も、しかも同じサービスでデータ誤消去事案を起こした事実の方が重大た。Googleにあるデータ、本当に大丈夫か???

クラウドが普及して久しいが、計算資源はともかく、データをクラウドにのみ保管するのはやはり色々とリスク大。私はデータがクラウドにしか残らないサービスに依存することは避けるようにしている。例えば:

  • クラウドストレージはローカルにファイルの残るDropboxを使う(OnedriveやGoogle driveは❌️)
  • NotionやDropbox paperではなく、手元にmarkdownファイルの残るObsidianを使う
  • Overleafはローカルで執筆しgitで同期する。さらにOverleafをDropboxと連携させ、ファイルが二重に残るようにしておく
  • 音楽ストリーミングサービスは使わず、楽曲はaac/mp3ファイルを毎回購入、プレイリストはM3Uファイルで管理する(これは我ながらかなりの老人会ムーブだと思うが)

その中で、Googleはある程度信頼していたので例外的に使っていたが、今回の件でやはり信頼できない!と思うようになった。タイムラインもそうだが、googleが重視しなくなったサービスは劣化が急速に進む。(inboxのように)突然廃止はまだいい方で、最悪の場合は今回のようにユーザーデータを消し飛ばす事故を引き起して「消えました」の一言である。この調子で行くと次はGoogleフォトでデータが消えるのだろうか?

しかし所内メールも最近Google workplaceになってしまったし、完全な脱googleはかなり難しいのが現象。このevil独占企業、本当にどうにかならないものか…

TikZを使って文書内の好きな位置に注釈をつける

TeX & LaTeX Advent Calendar 202420日目の記事です.19日目はdoraTeXさんでした。 21日目は_MadChemiker_さんです。

今回は「TikZを使って文書内の好きな位置に注釈をつける」というテーマで小ネタです.

こんなふうに,本文内の指定された位置に合わせて,横に注釈を付けられるようにします.また,本文を書き足したり,幅を変えたりして位置がズレても,注釈が追従してくれるようにします.

キッカケは,古賀さんのポスト*1です.ちょうど自分も同じようなことができないかな~と思っていたので,今回はTikZ*2で実装してみようと思います. ちなみに,余白の注(傍注)ならば\marginparを使えばできますが,より柔軟にどこでも注釈を置けるようにするのが目標です.


ここでは説明のため,左に本文用,右に注用のminipageを配置します.

\begin{minipage}[t]{.68\linewidth}
% 本文を書くminipage
% 本文を書くぞう本文を書くぞう本文を書くぞう本文を書くぞう本文を書くぞう
\end{minipage}
\hfill
\begin{minipage}[t]{.25\linewidth}
% 注を置くminipage
\end{minipage}


TikZでは,\coordinateを使って座標に名前をつけることができます.また,remember picture\tikzのオプションにつけることで,座標を定義した\tikzコマンドの外でも座標を参照できるようになります.

というわけで,注をつけたい本文位置の座標に名前(A)を付けます.

ただし,$a, b$は互いに素\tikz[remember picture]{\coordinate (A);}であるとする.

次に,右側minipageの冒頭に,注の左端の基準位置を表す座標(B)を置きます.

\begin{minipage}[t]{.25\linewidth}
% 注を置くminipage
\tikz[remember picture]{\coordinate (B);}
\end{minipage}

このようにすることで,後で本文を書き足したり,minipageの横幅を変えても,その位置を常に(A)(B)として参照できるようになります.

あとは,「X座標がBと同じで,Y座標がAと同じ点の座標」に,注の内容を含んだTikZのnodeoverlayで配置すればOKです.「X座標がBと同じで,Y座標がAと同じ点の座標」はTikZでは(A -| B)で取得できます.

また,注のノードは左上端(north west)を基準点にすると,意図した位置に配置できます.これを踏まえて,細かい調整をすると,以下のコードになります.

% 注用のTikZスタイル
\tikzset{sidenote/.style={anchor=north west, inner sep=0pt, text width=.25\linewidth, font=\footnotesize, yshift=.8em}}
\tikzset{pointer/.style={red, left, inner sep=3pt, yshift=.3em}}
% 注のTikZ nodes
\tikz[remember picture, overlay]{\node[sidenote] at (A1 -| B) {$\frac{a}{b}$が既約分数ということ}; \node[pointer] at (A1 -| B) {$\blacktriangleleft$};}

今回のサンプルコードは以下で見れます:
www.overleaf.com

*1:

*2:TikZ以外でも実装できそうな気がするが,どうせ遅かれ早かれTikZを読み込むのでヨシ!