By tec_estromberg

プログラムを作る時、作ったプログラムの動作チェックを素早く行うために、作業はコンピューター上でするものです。しかし、コンピューター科学者のアーロン・スー氏は紙でプログラミングを行う「ペーパープログラミング」を実践しているとのこと。プログラミングを行う上では、効率が悪いと考えられる、紙の上でのプログラミングをなぜ行っているのか、スー氏がブログ上で語っています。

Paper is dead, long live Paper Programming

http://www.sacrideo.us/paper-is-dead-long-live-paper-programming/

スー氏は、習慣としてプログラムをコンピューターではなく、小さなノート上に書いているそうです。なお、書いたプログラムは後でコンピューター上に再度入力し動作させているとのこと。そして、現在はコンパイラのプログラムの書き直しを行っているとのことで、スー氏のノートにはびっしりとプログラムの内容や変数等の情報が書き込まれています。



また、「『ペーパープログラミング』は、実際の動作を頭の中で考え、整理しながらプログラムを紙に書くことができる」とスー氏が語っており、紙に書いたプログラムを実際にコンピューター上で実行し、何か問題があったとしても問題の本質に早くたどりつけるので、コンピューターでプログラムを作るより、効率的な作業ができるとしています。

スー氏は実際にコンピューターでプログラムを作る方が効率的だとする意見が多いことも認めています。これらの疑問への回答として、「最終的に『ペーパープログラミング』で書いたプログラムの方が得られるフィードバックが大きいことから、プログラム自体の品質も上がるはずだ」と語っています。また、スー氏は自身のノートも公開しており、プログラミングの1つの手法として捉えるのではなく、楽しみ方の1つとして「ペーパープログラミング」を認識してもらいたいと考えているようです。