在编程方法论上有个有趣的现象可以对应写作谈一谈。最早的编程方法,强调写代码前的静态分析,相当于动笔写作前要进行周密的构思,画各种设计图,类之间的关系、模块间的接口都要考虑全面才能开始写代码。后来随着程序越来越庞大,问题域的复杂性远远超过了原有开发经验范畴。这个时候事前想太多,反而制约了开发的进程,要想的事情太多,往往会导致过度设计,程序臃肿不堪,甚至待到真正实现的时候,会出现与当初的设计完全不一样的情况,项目管理遇到前所未有的挑战。后来牛人们提出了极限编程的思想,尤其是针对轻量级开发项目,不再过度强调开始把问题想周全,而是一边开发一边通过相关技术,利用代码的演变(实际上就是写作中的修改)将设计揉入写代码中,达到边开发边设计的目的。而且使用迭代的思想,把大的实现目标,化整为零转换为一个个分目标,通过小步快跑,不断完成分目标向前推进。从而做出健壮的程序来。
这个思路值得我们在写作中借鉴,《三十天写小说》这本书就是这种思想的体现。在初学者完全没有写作基础的情况,他不是要求学员按部就班先学写作技巧,研读小说模仿别人的作品,而是以三十天为一个循环周期,通过完成5万字为目标,通过完成写作同时,锻炼各种技能,有些以赛代练的味道。创作小说是件非常复杂的事情,需要用到的知识和技能牵非常多,初学者很难一下子做到面面俱到。按照传统的做法,需要一个很漫长的学习过程,才能完成一部作品。在这个过程中,由于始终没有自己的作品,很多学员可能耗掉了兴趣,而选择放弃。学习理论与写作脱离,小说的背景、人物、情节、结构各个方面都会让初学者头疼。由于总是达不到心中的期待,追求完美的心态,导致初学者总是徘徊在小说创作门外,苦于学习各种技术,做各种准备,却始终不能写出一部小说来。这样做如同在岸上学游泳。游泳的特点是身体记忆,动作协调,不完全是通过理论就能够学会的,必须亲自到水中实践一下,通过做这件事本身,体会其中所需的知识,技能,再回过头来学习理论,有针对性练习才能够更快的学会。写作恐怕也是这样,它是灵感与技术相融合的东西,不完全是靠钻研理论就能学会的,必须在实践中,通过不断的写来提高技能。给自己设定的期限(三十天)、目标(五万字),都是可测量的,非常有利于去监督与执行。跟自己限定期限,有利于强迫我们集中精力,把所有的力气用于做完成目标上,避免拖延。也强迫我们放弃追求完美的心态,转而务实。很多人写小说前,认为要把整个故事想完整,可是想来想去陷进去,苦苦没有好结果。书中的做法是把故事想个四分之三,或者更少就开始写。在写的过程中,让人物带着情节走,激发作者的创作灵感,在写的过程中完成情节的设计。如果写着写着受制于期限限制,没办法想出更好的情节,那就退而求其次,写个一般的情节也可以,总之先要完成字数的目标再说。以后(比如第二个循环)可以回来修改。再比如搜集小说背景资料的时候,如果找寻时间超过15分钟,就停止搜寻,而是标记下来,待到以后再做。这种所有事都围绕一个目标的做事思路,很容易调动我们的潜能,做出我们意想不到的结果来。有兴趣大家可以翻阅下这本书。