小説を書くこととプログラムを書くことは似てるよね?

去年、中篇の恋愛小説(くどいが、内容は殺人事件)を書いて以来、
小説に限らず「中篇」と言えるほどの文章を書いていない。
病気に影響しそうなので、私は敢えて避けているのだが、
なんか仕事でパンフレットの編集(執筆込み)をさせられそうだ。


小説は「起承転結」にこだわる。「結」がうまくオチないと
我ながら不作だと思う。「転」では読者が戸惑うほどの、本編から
逸脱したんじゃないかと思うようなエピソードを持ってこれれば
気持ちがいい。


書くときには「起」「承」がすらすらと進む。ペンが滑るように、
じゃないがキーボードの上で指が踊るようにとは、まさにこのこと。
一日に数十枚進んだりする。


ここまでが、たぶんプログラミングの骨格作りなのではないかと思う。
そこからパターンを洗って枝葉を作っているうち、機能がぶつかる。
小説で言うと、過去に触れた伏線が全く死んでしまっていたり、
登場人物の役割が変わってきてしまったり(さすがに犯人は変わらない)
する。


無事小説を書き終えて、さあ、待ち構えてるのは推敲・校正。
これは地獄の作業だと思っている。他人に校正を出している間は
晴れやかな気分なのだが、戻った赤字を見て、場合によっては
小説の設定を変えなければならないほどのミスを指摘されると、
もぅ、本当に地獄である。
まずは段落内で収拾しようとする。だめだ、できない。
章ごと移動しようかと悩む。だめだ、書き直しに匹敵する。


恐らく、プログラマが苦しむ「デバッグ」だと思う。
まさかと思うような機能が落ちていたり。まっすぐ走ると思って
いたコードが、いつのまにか違うコードとお手手つないで走ってたり。


推敲・校正が終わると、作業終了。と、思うでしょ? っちっがーう!
次に待っているのは「印刷地獄」。紙に出力してみて気付く誤植。
一文字なら良いが、行送り、段送り、ページ送りが平気で起こり得る。
いったい、何枚紙を無駄にすれば良いのだーーー!!
これって。
たぶん、本番機(サーバー類)に実装して初めて分かる障害。
うそ?なんで?
今さら●●(OS)に▲▲(プログラム言語)が実装できないとか、
言うなーーー!!!


この「推敲・校正」地獄や「印刷」地獄は、たぶんプログラミングに
似てる。のではないかと思う。
はてなスター」開発日記と「はてなアイデア(障害などを報告するとこ)*1
を読んで・・・


ちなみに、私は小説を書く時間を3とすると推敲・校正に6、印刷に1
かける。プログラム開発のスケジュールを引くときも、設計と
プログラムとデバッグ、1:1:1。本当ならデバッグを3にしたい
くらい。


・・・( ̄ー ̄ )


往々にして、設計5、プログラム3、デバッグ2(この時点で納期過ぎ)
になるのだが、それは私のせいじゃないぞ。>W


★蛇足
数学は得意ではないが、証明問題は大得意だ。あれは論理だね。
中学時代、証明問題は4行で終えることに燃えていた。
 A=B
 条件 hogeより
 A=C
 ∴ B=C  (q.e.d.)       美しい〜

*1:語弊あり