hitode909の日記

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

昆布茶

タイのおみやげに痩せる昆布茶というのがあって,毎日飲むと毎月4キロ痩せる,みたいな話で,怪しい…と思っていた.

怪しいお茶はなんかで見たことあると思って,ちびまる子ちゃんに出てきた紅茶きのこじゃないの,と思ったら,タイにおける昆布茶は紅茶きのこで,どこかで誤解されて紅茶きのこが昆布茶と呼ばれているらしい.まぎらわしい.

欧米における Kombucha という名称は日本語の「昆布茶」と似ているが、紅茶キノコと昆布茶は全く別のものである。The American Heritage Dictionary は、英語話者がゼラチン状の培地を海草(昆布)と誤解し、「昆布茶」と混同したものと推測している。

紅茶キノコ - Wikipedia

同じことがアレルギー物質で起きると怖い.うどんだと聞いて食べたら蕎麦で,アレルギーめっちゃ出る,みたいな.そもそも海外で言葉がよく分からない時点で食べ物にはリスクありそう.

業務時間にコード書くと捗らない問題

ソフトウェアを作る仕事をしていると,一日中キーボードを叩いてコードを書くのが仕事のように見えるけど,コード書く以外にもいろんな仕事があって,リリースいつやるかとか,困ってる人はいないかとか,運用しているソフトウェアが安定して動いているか気にする,とか,そんなことも気にしながらコードを書くことになる.
そうなると,当然コードを書くことには集中できない.本当に難しい問題は本当に集中しないと解けないので,業務時間中に得られる集中度ではいつまで経っても解けない,という場合もありそう.

良いテスト

良いテストとはどんなものか,という話をしていて,

  • テストを読めば,そのクラスの使い方や仕様がわかる
  • テストは論文や証明のように上から順番に読めて,上のほうに簡単な一般的な場合,下のほうに難しい,稀に使う場合が書かれている
  • 実装のメソッドと一対一ではなく,ユースケースごとにまとまっている

みたいな話をしていた.
機能拡張のさいには,既存のテストを消して,難しい拡張された難しい場合に書き直すのではなくて,既存のシンプルなユースケースも残しつつ,難しい場合を新たに書き足すべき.シンプルな場合を残しておくと,そのクラスを初めて読むときの手助けになる.いきなり難しいケースから始まると,理解が難しくなってしまう.

専門

  • あなたは何の専門家ですか? というときに
  • ソフトウェアを安全に作るのが専門,という人がいるとして
  • ソフトウェアを安全に作るのは人類の願い,皆の仕事では? という反論をできそう
    • 身体を鍛えてる人は筋肉の専門家ではなく,筋肉が多いだけで,人間なら多かれ少なかれ筋肉はある,みたいな
  • 一方で,たとえば,機械学習できます,というのは分かりやすいスペシャルな技能っぽい
  • 安全に作るのが得意,ということは,特別な成果も出しにくいのではないか
    • チーム開発の結果ソフトウェアを安全に作れたとしたら,みんながんばったね,という話で,ソフトウェア安全に作るのが専門の人の成果とは言えない
  • 安全な開発を支える仕組みやツールを作る,とかはできそう
    • たとえば,エンジニア増員したこともあり,スケジュール的にも少し余裕があるので,毎日時間をとってリファクタリングを始めませんか,と提案するとか
    • たとえば,ソフトウェア工学の知見を活かして,皆が使えるリファクタリンググッズを開発する,とか
  • 新しいソフトウェア技術を率先して学んだり広めたりすることもできそう
    • チーム的な今後このような予定があり,ソフトウェア的になこのような性質が求められるので,一緒にこの本を読んで勉強しませんか,とか
  • なんでもだいたいできるからといってなんでも屋ではない,という意識が必要なのか,そうでもないのか
    • そこは,チーム状況に応じて,チームの状況が良くなることを自分の得意なやり方でできればよい,という印象
      • 苦手なところで無理して貢献する必要はあまりない気がしている,得意なことに時間を使うか苦手なところに時間を使うかという話