yag's blog

Twitter以上Zenn以下なことを書く場所

2022年何もできなかったと考える自分のスタンスの変化

2022年のまとめを書こうかと何度も考えたものの、振り返るほどのことができなかったなということで避けていた。具体的な事象は振り返るに値しないのでおいておいて、改めて2022年の自分は何が大きな変化だったのかと年末年始考えていると、結局のところ学問に対する根本的な興味と好奇心の喪失が大きいんじゃないかと思うに至った。

やらなければという思いだけが独り歩きする

最近より顕著になってきたのは、自分の興味が実学を重視するという傾向。仕事ですぐ使えたり、なにかPoCでもモノを作れたりと、作って動かせるような情報をよく取り込むようになってきた。一方で、本を読んで知的好奇心をくすぐられるような体験からは離れてしまった。それと同じように基礎的な分野で学問の土台を作ったりするようなものに対して、重要だとわかっていながらも取り組めてない。

勉強する上で一番大事なのはそれが本人が心から重要であると認識することである(となにかの本の第1章で読んだ)。まずそれができなくなってきた。というよりも、優先順位が変わってきたと言って良い。例えば何かの文化人類学的に面白い本があったとして、本屋で見かけて面白そうと思うことは今まで通りある。ただ実際にそれを買ったとして、それを読むよりも機械学習プログラミング言語の実用的な本を読んだほうがいいのではないかという思いからか、積ん読になったり読み始めた途端に集中力が持たなくなってしまう。興味を失っているわけではないと表面的には思っているが、深い部分で腹落ちしていなくて、それが行動に表れている。

そうした知識の裾野を広げてかつ土台を作ることが重要であることは百も承知ではあるが、それができない。やらなければいけないという思いとは裏腹に、すぐに役に立つ手頃な情報に飛びついてしまう悪い癖が顕著になってきた。

認知のズレ

ここ数ヶ月でそういう状態になったということを客観視できるようになった一方、手頃な実学重視なのは昔からそうであって何を今更という感じではあるので、今度はなぜその傾向が強くなってきたのかを考えるようになった。

そこを突き詰めると、結局のところは仕事のパフォーマンスに対する自分の理想と現実のズレが大きいのではないかという結論に至った。プールの水の中で歩いているような、自分はもっと早く歩けるはずなのに実際は水の抵抗を受けてゆっくりしか歩けていないような、そんな気分だ。そのズレが大きいからこそ、そこを埋めることが第一目標となり、その他の活動に対する優先度が低くなってしまっている。

というのも、ちょうど去年の中頃から仕事でチーム異動があり機械学習から離れることになった。最近はデータエンジニア/アナリティクスエンジニア的な仕事を多くするようになって、今までとはちょっと違った分野をやり始めたことが大きく影響しているように思える。

そのズレがなくなって仕事のパフォーマンス100点で今の自分最高!なんて日が来るとは思えないが、その認識を大きく変えないといけないタイミングに来たのかもしれない。過大評価している自分のパフォーマンスを正して、現実を受け入れる必要があるようだ。これがいわゆるミッドライフクライシスなのかもしれない。

ここを解決すれば、心の余裕ができて他の分野の興味や好奇心が復活するかも。

まとめ

今年は仕事も勉強も頑張りたい!!!

生活をちょっと便利にするクローラーを書く

以前紹介したGrafana環境を自宅に整えたことで、色々と時系列データを取得するコードを書きたくなった。そこで携帯電話のデータ使用量と残量を定期的に取得して可視化することに。当然ながらAPI等は無いので、Seleniumでブラウザを操作して値を取得している。

以前は自然言語処理のデータ集めとしてクローラーを作ることが多かったが、最近はめっきり書いていなかった。久しぶりにこうしたコードを書くと、やはり楽しい。

無心で手を動かす

この週末は、とあるシェルスクリプトPythonに移植するコードを書いた。処理としてはWebAPIを叩いて値を取り出してといった簡単なもので、コマンドの意味などは手元で試したり調べる必要があったが、ほぼ何も考えずにコードを移植することができた。

自分の場合は、まずはnaiveにベタ書きで一通りの処理を書いたあとに、classやmethodにまとめたりdataclassとして処理をまとめていく。最初にベタ書きで動く状態にしているから、あとはその動く状態を維持しながらリファクタリングができる。それにclassやmethodなどにまとめていないから、デバッガを使わなくとも変数を確認できるのも良い。

こうした無心で手を動かす作業は、具体的な進捗が見えやすい一方で逆になにかに躓いたりyak shavingになることも無い。ちょっと軽めのストレスがちょうど良い。たまにはこういうことをして気分転換しないと、普段の「あれを勉強しなきゃ」「これがコードで書けるようにならないと」という重圧がしんどくなってしまう。

家の玄関ドアを直した

家の玄関ドアが数ヶ月も前から調子が悪く、人間が力をかけないと完全に閉まらなかったり、ドアの開け締めで金属の擦れる音がしていた。気付いてはいたがずっと先延ばしにしていたものの昨日一念発起して調査したところ、ちゃんと閉まらないのはネジが緩んでいただけで、あとはシリコンオイルを挿したら音もなくなった。この間わずか3分。もっと早く取り組んでいればと思うばかりである。静かにきちんと閉まるドアは、当たり前だが使っていて気持ちが良い。

なんで3分で解決する問題を数ヶ月も放置し続けていたのか。理由としては

  • 調べるまでやることが分かっていない、見積もりが立てられない
  • 使う分には困らず、ちょっとした不快感や面倒さを一瞬味わうだけ

の2つだろう。取り組むまでは3分で済むのか30分かかるのか、それとも自分では直せないのかの見積もりが立てられていない。自分で直せないとなると業者を手配したりという別の重いタスクが生じることになるので、その心理的ハードルの高さも影響していたと思われる。また、困り度合いとしてもそれほど優先度が高くなく、1日に数回の頻度でそれも一瞬感じるだけなので、その場で対応しなければもう頭の中から抜け落ちて他のことをやり始めてしまう。

さて、これは仕事ではchoreと呼んでいる作業だ。チケットに起票するほどでもない作業や、ちょっとしたリファクタリング、環境整備などがこれに当たる。チームでは持ち回りで当番を決めて対応することで、放置しないようにしている。ボールの譲り合いや見なかったことにするのが一番良くない状態なので、こうして明示的に担当する人や期間を決めるのは良いと思う。

自分の日常でも意図的にchoreなことをする時間を設けないと、こうして延々と先延ばしにするんだろうなということを、家の玄関ドアを直しながら考えた。

ネットワーク、何も分からない

家の環境整備の一貫で、家の無線LANルータをWi-Fi 6対応の高機能のものに買い替えた。2019年11月に1.6万で購入した2台の無線LANルータは、2022年11月に6,000円程度でメルカリで売れたので、3年で1万円、サブスクリプションぽく言い換えると月300円程度で使えた計算になる。基本的に製品の発売から時間が経つほど中古価格は低下していくものなので、もう少し早く売っておけばもう少し高く売れたかもしれない。こうした壊れない限り価値があまり下がらないガジェットは、高機能な新製品が発売されたら躊躇なく買い替えたほうが、低機能のものをずるずる使い続けるより総合的にお得かもしれない。まあ新機能を使えないことによる損失の計算方法次第だが。

ところでWi-Fi 6対応になったからには、端末からのネットワークスピードが上がってほしいという期待がある。が、期待していたものとは少し異なる結果となった。

まず自宅のネットワーク構成としては、寝室に大本のルータがあってそこに無線LANルータを1台を繋げ、そしてリビングにブリッジ用の無線LANルータが1台あり、そのルータから有線でスイッチングハブを経由してNASNE自作PC群につながっている。ネットワーク速度の測定は、ブリッジした無線LANルータに繋がっているRaspberry Piから、10分に1回speedtestを走らせて記録している。切り替え前後の計測結果は以下のようになった。上のグラフの緑がDownload、黄色がUpload、下のグラフがネットワークのlatencyである。切り替えたタイミングは、真ん中あたりの上グラフがガクッと落ちたところ。

これをみると、下りは少しスピードが上がって安定したが、上りは変化がない。事前想定ではどちらも全体的に上がってくれることを期待したが、何故か片方だけが上がるという結果となった。不思議だ。

グラフからは何か別の要因でupper boundに当たっている雰囲気もあるが、スイッチングハブやLANケーブルによる律速は思い当たらない。そもそも1 Gbpsなら125 Mbps付近で頭打ちになるはずなので、おそらく違う気がする。ネットワークというのはどこか1箇所が狭いとそこがボトルネックになるので難しい。考えられるのは以下の箇所だが、結局分からない。

まあLatencyは安定したようなのでWi-Fi 6自体の効果はあったのだろうけれども、なにか釈然としない結果となってしまった。

ネットワーク、何もわからない。