molecular coordinates

/var/log/coord_e.log

【適当】モチベーションを維持しながら開発する方法

注: このブログでは内容の正しさを検証する気がないので真に受けると後悔するかもしれません

エモくなったのでCIが頑張ってる間に書く

今回1週間ぐらいCIが通らなくて病んでしまったので(なんてか弱い心!)、そこからちょっと教訓じみたものを捻り出しました

それは何かというと: (自分からの距離)x(1サイクルにかかる時間)が大きい環境で試行錯誤をしない

※主観しかないので、任意の文の先頭に"coordeの場合は"をつけていただければ幸いです。

自分からの距離 is

コードが走る場所と自分の、心理的な距離

イメージとしては ローカル<コンテナ内<リモート<CIになる

このパラメータは、

  • シェルが使いたいときに使えるか
  • こちらからの操作に対するレスポンスが早いか
  • ファイルシステムにアクセスできるか
  • 物理的な距離
  • など

で評価される気がします。知らんけど。

1サイクルにかかる時間 is

結果が得られて、次の行動を決定するまでにかかる時間。多分。

ビルドするのに時間がかかるプロジェクトならこれが大きくなるし、Dockerイメージのビルドとかもでかい。

これが大きくなる最悪のパターンとしては機械学習がある(と思う)。

(自分からの距離)x(1サイクルにかかる時間)が大きいこと is

CIで機械学習するとか、CIで大きなプロジェクトをビルドするとか

どうやって小さくするのか

まあCIでビルドするな!なんて無理な話なので、近くの環境でうまくいくことを保証してから遠くに持っていけばいいと思う、するとCIで試行錯誤する範囲が小さくなるので...

なので僕の場合はDockerイメージに固めて、ローカルでうまくいったDockerfileをCIに使わせることで心の健康を取り戻しました。やったね。

まとめ

ブログではなるべく敬語ではなく普通に書こうと思っていたんだけど、難しい...やめるか