なたでぽぽ

Clean Coder

Clean Coder プロフェッショナルプログラマへの道を読みました。

著者はロバート・C・マーチンさん。詳しくは知りませんが、優秀なプログラマーなのだと思います。

本書の主題は、プロのプログラマーはどうあるべきかということ、また、そうあるためにはどうしたら良いのかということです。

章立ては割と雑然としていますが、勉強になる話がたくさんある有意義な一冊でした。

本書を通してTDD(テスト駆動開発:Test driven development)の話が出てくるのですが、日曜プログラマに毛の生えたレベルの自分にとっては非常に衝撃的でした。

著者の主張としては、TDDやペアプログラミングなどのいわゆるアジャイル開発を行うことはもはや必須であり、これを導入しないという選択肢はないそうです。

私としては、チームで開発すること自体がほとんどないため、ペアを組みたくても組めないわけですが、TDDについてはぜひ次のプロジェクトで実践してみようと思いました。

それから、生産的な時間を確保することを非常に重視しています。

本書の中で何回も強調していますし、「時間管理」という独立した章もあり、ポモドーロテクニックなどが紹介されています。

ポモドーロテクニックとは、25分という時間を決めて、その間は他のことを一切やらずプログラミングのみに集中するというやり方です。実践するのはなかなか難しそうですが、一理ある方法だと思いました。

ところで、海外の方はおおむねそうですが、仕事をするのは一日8時間、週に40時間、週末は家族との時間や趣味の時間を絶対に確保する、という考え方が随所に見られました。

プログラムが期日までに出来そうにない場合、はっきりとノーと言うのがプロである、という主張なのですが、私なんかは徹夜したり休日出勤したりすればいいんじゃないかと思ってしまいます。多分、日本人は働き過ぎで、私にも知らないうちにその感覚が染み込んでいるのだと思います。みなさんも、働き過ぎには十分注意しましょう。

それから、本書を読んで印象的だったのは、著者が非常に勉強熱心だということ。プログラミングを中心として非常に多くの知識、技術を持っていることが伝わって来ました。

著者いわく、プロのプログラマーならば、新しい言語や技術を習得するのは当たり前だし、自分の時間を使ってその練習をしないといけない、とのことです。

言われてみれば当たり前の話ですが、実際のところなかなかそうもいきません。忙しさにかまけて新技術の習得を怠っている人は多いと思いますし、私もそんなに勉強できていません。別に私はプロのプログラマーではないのですが、日曜プログラマーとして、もう少し勉強の時間を増やしてみようかなと思いました。

ということで、プロのプログラマーはもちろん、そうで無い人にもオススメできる一冊です。著者の前作Clean Code アジャイルソフトウェア達人の技と併せて一読されることをお勧めします。