koeだめ 過去アーカイブ[〜2013-12-14]

最新情報は https://www.pixiv.net/fanbox/creator/3780274 にて

とんでもないコードを納品するコード開発側は責任果たせてるのか?

「でもできない人はとんでもないコードを書くから、それに対しては縛りを入れる必要がある。」と、またデータの人は言います。
ダメなコードは、レビューして指摘してあげればいいジャンと私は答えます。

そもそも、とんでもないコードをのうのうと納品してしまうコード開発側も問題があると思いました。
納品成果物たるソースコードをきっちりと作るのはコード開発側の責務である訳で、受注側にとやかく言われる前に、責任果たさないといけません。

とはいえ、過去を思い返すと、なかなかコード開発側の内部として、そんなとんでもなくないコードを作れないなぁと残念ながら思います。

例えば、リーダーや先輩から教えてもらう書き方や、社内で使われ続けている実際のコードが、何もかも長ったらしい悪い意味でのレガシーな作り方準拠*1になっていて、自然とそんなやり方に染まってしまいます。

要するに、何が正しくで何が変かの基準が妙ちきりんな人々が連綿と生産されてしまいます。

そのあたり、ひがさんの提案は、正しい基準を持っているところとペアを組めた場合、とても効果的と思います。

だったら、パトナーさん通しでペアを組ませて、レビューをさせるというのはどうでしょう。と私は提案しました。できる人と経験が足りない人を組ませることで、経験が足りない人のスキルも向上するし、ダメなコードも少なくなります。

でも個人的には、発注元から言われる前に、自分たちコード開発側から変わっていくべきだと考えています。
今まで動けばいいや、金もらえたらいいやレベルでやってきた人も、とんでもないコードを抑制する動きがあることを理解して、まずは世間的に良いコードとはどんなのかを理解して、とんでもないコードを納品してしまわないような工夫を個人レベルでいいからしてみませんか。

*1:COBOL85チックなオブジェクト指向言語とか。1関数数千行・グローバル変数使いまくりな吐き気のするソース、見たこと無いですか?