もしもコピペプログラマがアジャイルに挑戦したら
Updated Date: 2024/01/01 14:47
アジャイル開発という言葉が日本国内でもだいぶ板についてきた昨今、
我々SIerな職場にも似非アジャイル(プロトタイプ開発とウォーターフォールを足して3で割った感じ)なプロジェクト推進という流れが一部出来てきた。
幸か不幸か、僕はこのような似非アジャイルを今年体験するのは初めてではなく、
今からもう4年も前、暇すぎて仕事がなかった時に研究という目的のもと暇つぶしでやった携帯対応Webサイトプログラミングで経験したことがある。
今となっては良い思い出だが、それと同じく現在、
コピペプログラマな僕はアジャイル開発の難しさと辛さとその壁の高さをまざまざと見せつけられている。
そんな感じで、今日は「クソコードしか書けないコピペプログラマがアジャイル開発に挑戦した時の炎上」について書いてみる。
崇高なパートナーの思考が抽象的で、思考停止する
コピペプログラマは基本的に設計が出来ない。やりたいことが先に来るからだ。
やりたいことを検索用語化してGoogleに突っ込めば、Stackoverflowなり知恵袋で情報を得ることができる。
そして、コピペしてみて動かしてみて感動する。ああ、コピペ最高、と。
そんなことばかりだから、設計からプログラム・アルゴリズムへと段階的に詳細化、
あるいは具体化されるべき工程を意識することがコピペプログラマには無い。
そのため、設計思想を自分で考え思い描きながらプログラミングする崇高なプログラマの前では、
コピペプログラマは思考停止した猿も同然な存在なのである。
つまりそこには雲泥の差、月とスッポン、駿河の富士と一里塚な違いが存在している。
ゆえに、その優秀なる人物をパートナーとしてタッグを組んだクソプログラマは、 軽薄すぎる自分の思考と行動に羞恥心と絶望を持って思考を止めてしまう事案が発生する。
変化についていけず、コーディングより理解を深める方に時間がかかり過ぎる
コピペプログラマは変化に弱い。やりたいことしか実装しないからだ。
それをピンポイントでやってくれるソースをコピペしてくるわけなので、
それ以上の拡張や、それ以外のことをやるときにどう改修すれば良いかという思案をしないのである。
だから仕様変更やリファクタリングが高尚なるプログラマの一声・気まぐれで行われた場合、
コピペプログラマはその変化に対して絶望・驚愕し、
自分のコードに鑑みて何をどう変更すればよいかをようやく必死になって思考しだす。
もちろん時すでに遅く、結局自分の担当する部分のリファクタリング作業より、
パートナーとしてタッグを組んだ気高きプログラマのコードを読み、
仕様変更・リファクタリングの所為を理解することに大幅な時間をかけることになる。
とはいえこれは高明なプログラマがちょっとだけ気を利かせ、
コピペプログラマに対して説明してくれさえすれば、
糞であっても馬鹿とまでは行かない彼らに対し、一握の希望をもたらしてくれる時もある。
そういう点でもバランスのとれたコミュニケーション・打ち合わせは必要だとわかる。
劣等感と、好きにやってくれという思いでいっぱいになる
ここまでくるともう大抵のコピペプログラマは自分の力量を十分に把握することができ、
それと同時に敬うべき対象のプログラマ様に対して劣等感を抱くことになる。
そしてまた自分では制御できない、あふれんばかりの才能とひらめきを持った
パートナーとしてタッグを組んだプログラマに対し、ものを言うことが億劫になってくる。
さあ、ゴールは目の前だ。
我々アジャイルチームは、ここに最高のプログラマに対し屈服したクソプログラマが足を引っ張るプロジェクトの基板を築く事ができたのである。
あとはいかにしてクソプログラマが生産するコードのリファクタリングと、生産性のやたら低い部分に対するリスケジュールおよび調整を図るかを技量の高いプログラマが考えるだけである。おめでとう!
最後にコピペプログラマの悲痛かつ痛快な心の叫びを以下に記する。
好きにしてください。僕は、時間はかかりますが、あなたのその変化を享受し、あなた色に染まるこのプログラムに対して少々の傷をつけるかもしれぬとわかっていながらも、分担された部分は仕上げます。もちろん、気に食わないところは修正コミットお願いします。あ、もうされてますね。これはどうも……
END