2022-07-25

Pull Requestはプログラミングを嫌いにする

プログラミング能力を向上させるのに必要なのは

難解な解説本だったりドキュメントじゃなく

綺麗なコードスパゲッティコードの解読でもなく

ましてや優れた人から教えて貰うことでもなく

ただただプログラミングを好きになってモノづくりに熱中することだ

小さい子供プログラミングに向いているのはモノづくりが好きだからであって

オブジェクト指向関数型言語設計をしたいからじゃない

これは大人でも当てはまることであって

何かのモノづくりをするという目的の元に手段としてプログラミングが選ばれ

それに熱中することでいつの間にかプログラミング能力は向上していくのだ

新しい仕事としてプログラミングを頑張って覚えるだとか

上司から命令されてプログラミング講座を会社の金で受講するとか

Googleを目指して学生時代プログラミングに打ち込むだとか

そんなのは全然上手く行かないのに定年退職したジジイラズパイ使ってロボ作りとか始めると上手く行くのはそのせいだ

GitHub発明したPull Requestはこの楽しみを徹底的に阻害している

「すげぇやり方思い付いたから本番に実装しようと思う」

というのがPRでは却下される

ちょっとこの辺は微妙だけど他のことやりたいか適当に済ませよう」

というのもPRでは却下される

こうした行為はモノづくりからはほど遠く必要無いものに見えてしま

「早く動いているところを見たい」

という欲求を不満にしてしま

やがて開発者プログラミングのもの従事して嫌いになっていくのだ

以前からプロ現場ではもっと厳しい品質管理がなされていたという人がたまにいる

PRによってアジャイル現場品質管理がもたらされたと主張するのだ

だがソースコード品質とは何なのか結局誰も答えられない

命名規則コメントの書き方などルール化できるもの別にレビューなど必要無くツールで弾くことができる

バグがあるかどうかはテスト担保すべきであってレビューで見るべきではない

PRレビューするのはそうではない「何か」であって

それを勝手品質だと名付けているにすぎない

この手のレビュワーが好んで使う言葉として「技術負債」というものがある

技術負債を残さないためにもPR品質を保つ という主張である

一方で技術進歩は止められるわけが無く10年前に必死クラス設計したJavaシステム

今やJavaのせいで技術負債になっているのだ

このありもしない「技術負債」という幻想のために

またはレビュワーの考える言語化できない「品質」のために今日PRリジェクトされる

そしてコメントで延々とどっち付かずの議論が繰り広げられて

人はプログラミングを嫌いになっていくのだ

  • 規模が大きくなったり、関わる人が多いプロジェクトでは仕方のないこと レビュワーとの相性は知らん プログラミングは一人でやるのが一番楽しいよ

  • 長々と書いて何を言いたいのかよくわからんが、 自分のコードをあーだこーだされるのが嫌なら個人で仕事すればええやん

  • 文句あるならフォークしろよ

  • リジェクトされる理由の共通項を見つけよう IQテストと同じだよ 規則性などないように見える記号の羅列から パターンを見つけるんだ

  • PRが嫌いな気持ちはよくわかる。 ある種哲学の押し付け合いみたいになる。 個別のPRのプロジェクトとは別に時間をとって こういうのが良いコードこういうのが駄目なコードって合意...

  • 意味不明。 他人が作り上げた積み木のお城に勝手に庭とか増やしたらそら蹴っ飛ばされるやろ

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん