TL;DR
自転車置き場の議論は不毛なのでやめましょう!のお気持ちで Twitter に投稿したら逆に不毛な議論を生んでしまい、日本の生産性を微減させる結果となってしまいました。
ぼくはやめろって言ってるんです!!!!!…というお気持ちが相手に届くことはないので数日はこの通知で死ぬほどダルいお気持ちになるでしょう。
ソースコードのコメント不要、必要論。
— luccafort (@luccafort) 2022年8月3日
いつも思うがコンテキストがズレてる気がするんだよなぁ。
「コメントが不要なくらい、シンプルでリーダブルなコードを書くように意識しましょう」と「ちゃんとコメントを書いてコードに現れない意図を伝えましょう」は両立するのにいつまでも不要な争いしてる。
結論
t-wadaせんせいがもう結論述べてるのでこれに沿ったメッセージを残しましょう。
Q.E.D.
コードには How
— Takuto Wada (@t_wada) September 5, 2017
テストコードには What
コミットログには Why
コードコメントには Why not
を書こうという話をした
雑記
個人的に結論はもうt-wada御大が書いてくれてるのでそれ見ましょう…でいいと思ってるんですが一点だけ学びがあったので久しぶりに雑にブログに残しておこうと思います。
それが以下の投稿です。
必要な分だけを記載できる文章力を持ってる人なんて社会人の上位数%しかいないのだから、みんな擬似コードレベルでコメント書いてほしい。https://t.co/6JW8jPKsLl https://t.co/5uzHbs24Wp
— mob_aki (@mob_aki) August 3, 2022
みんな擬似コードレベルでコメント書いてほしい。
と以下のURLを紹介されていて気になったので見てみたところ、「あ。これ意識せずにやってるわ。擬似コードというのか」と気づきがありました。
ぼく自身もなにかコードを書くときは頭の中でざっくり出来上がっている処理をコメントでまず書き出してから実装をしています。
日本語で説明できないことをコードで表現することはできない…というのもあるのですが書いてるうちに条件分岐や参照先、参照元が意識されることで問題に気づけるというメリットもあります。
このあたりの詳しい解説は引用されていたブログに書かれているのでそちらにおまかせしようと思います。
普段何気なく実践している手法にちゃんとした名前がついている、それを知ることが出来たのは良い体験でした。
(ただここで書かれているレベルのコメントは実装時は役に立つが、半年後の調査にはなにも寄与しないコメントなので個人的には不要だと考えます。)
というわけで、結論は不毛な議論はやめて生産性を高める仕事をしましょう!という流れからも学びが得られたという教訓でした。
コメント書く書かないはお好きにどうぞ!
ただコンテキストがズレてずっと空中戦してるのははっきりと無駄なのでやめていこうな!