hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

ISUCONの練習をした.即興パフォーマンスというチームで出ます.

本番でPerlなさそうなので何でやろうか,と話していて,言語のパラダイムが近いPythonでやってみた.

言語仕様は近くても,運用方法とかはけっこうちがって,最後までエラーメッセージ見れないままやっていたり,デプロイできたつもりがnginx reloadしてるだけでPythonのコードはデプロイできていないまま進んだりしていて難しかった.とはいえ前回の練習よりはすんなり進んだ.

貰い物の自転車,山などを爆走するためにギアが軽くなってたのだけど,家と会社を往復することにしか使わないので,そんなに軽くなくてもよい.自転車屋のおっさんと話して,ちょっと重くしてもらった.前のギアは大きくすると速くなるけど後ろのギアは小さくすると速くなるらしい.おもしろい.ついでにチェーンも古いので変えて,ペダルも割れてめちゃくちゃになってたので新しくした.きびきび走れるようになって満足.とはいえ,変速はないので,そこらへんの中学生とかが乗ってる自転車のほうが速い.

手元でDockerで動くようになっていてもエディタから補完とかするためにはネイティブでも動いたほうがよい問題

手元でDockerで動かすと,ImageMagickとかの入れるのが手間なモジュールのセットアップとかしなくて済むのが楽なところだけど,エディタからlintを通すときとか,perl -cして結果を見たりしているので,結局ネイティブで動いてるほうが楽だったりする.
linter-perlにはCartonを検出するオプションがあるけど,それと同様に,Dockerで動かすオプションが必要になってきて,なかなか面倒そう.
開発環境もDocker内で立ち上げて,X11のポートを経由してウィンドウを出してはどうか,とか話していたけど現実的ではなさそう.

一人で仕事してると不安になる現象

ソフトウェアを作っていて,一人でずっとやってると不安になったり,他人がずっと一人でやってると心配になったりする.

  • ふつうのチーム開発では,仕様や方針は皆で合意が取れていて,実装したところは「きのう話していたこの部分を作ってきました,レビューしてください」みたいな話をする
  • 一方で,チームでやっていても,一人で仕事していたら,「実は私はこういうことをやっていて,その上で,この部分を作りました,仕様を理解した上でレビューしてください」みたいな話になる
  • このとき,「実はこういうことをやっていて」という部分を一人でやっていると,見逃していたり,誤解していて,前提から間違っていて,まったくもってだめ,という可能性が上がっていく
  • 一人で作り続けると,一人につき1回10%間違えるとしたら,2回一人で作ると,0.9*0.9=0.81くらいの精度に下がっている
  • 設計段階で二人で見ていれば,間違う可能性は1-0.1*0.1=0.99,2回作っても,0.99*0.99=0.98くらいの精度を出せる
    • あくまでイメージの話

みたいなイメージがあって,一人でずっとやってると不安になったり,他人がずっと一人でやってると心配になったりする.
そういうところを見つけたら,なんとかして助けに行って解決しないといけない,ということをいま思った.逆に,自分が一人でやってたら,困ってなくても誰かに手伝ってもらったり助けてもらったりしたほうがよさそう.