编程与写作——谜语、咒语与上帝
编程与写作,看似截然不同,但其实却有着千丝万缕的联系。
我和编程与写作,经历了相互交织且十分专注投入的时光,大量的实践让人深有感触并体会到其中的一些奇妙关系。
本文,将会描述并揭秘——编程与写作相同的底层逻辑,以及它们如同谜咒般的力量。
主题目录如下:
- 过程
- 结果
- 力量
- 思想
- 乐趣
- 生命
- 环境
- 关系
- 预测
- 情静
- 艺术
- 未来
- 上帝
- 梦境
过程
写作,把想法一字一句写下来的过程,可以让人看清细节,理清逻辑,并搞清楚原本混沌的感受和情绪。而编程,需要有一个清晰的思路,和正确的逻辑,否则终将会被复杂与混乱击败。
所以,写作像是思考的过程,而编程像是验证思考的过程。
不断地写作,能够让你慢慢感觉到对文字控制力渐进的变化,大概就像是文字和你的心绪能够产生一种互动,想法和感受用文字来描述,文字也会反作用于你的想法和感受——如同河床引导河流,河流潜移默化地改变河床一般。
在这个过程中,你的文字表达会越来越简洁有力,抽象程度高,具有可塑性,而不断编程也会让代码变得如此。
结果
重要的是,写作事关清晰,要以一种清晰易懂的方式展现信息,人们才都能够阅读和理解。编程亦是如此,你必须发展出自己的见解,在完成所有功能和需求的同时,构建出最清晰的系统。
那么,优秀的写作与编程,其基础都必须能够写出——“清晰”。
就像阿拉伯人,用一句话来形容,清晰明了的散文:没有清晰的理解,就写不出清晰的文章。换言之,没有清晰的逻辑,就写不出清晰的代码。
力量
文字是信息的承载与传递者,就像代码一样:开始都会表达起来冗余繁杂,信息重复凌乱,但后来,经过封装、设计、架构,表达就会贯穿着优雅与深刻的抽象。
事实上,自从文字被发明以来,有些人把这些文字组合起来,去描述已经发生或没有发生的事件,或是去表达一种感受,这都是一种组合,就像魔方拼对了序列,力量就会被释放出来,这就是文字的力量,而那些可以组合文字的灵感,就像是一种——咒语。
那么,文字是一种符号而已,代码也是(语言是语义规则的演绎,编程语言也是),而伟大的文字与伟大的代码,都不是其符号本身,而是被符号凝固在时间缝隙里的人类思想。
所以,当你的思想,达到驾驭代码与文字的纯熟,就会展现出一种力量——代码的力量与文字的力量——前者是谜语,后者是咒语。
思想
写作,无形中培养了一种洞察力,以及不断去捕捉想法写出来的过程,强化了思考在大脑中所创造形成的神经元连接通路。
这不仅丰富了大脑神经元网络的结构,也增加了信息在其中,随机的关联性和可组合性,而这就是——闪念力与创造力的来源。
同时在生活中,不断积累的知识和经历、观点和价值主张,都会被写作所——重构和强化,甚至升华。那些零碎的片段的体验,随机产生的感觉和念头,都会慢慢点线面连接起来,变成写作的原料,且渗透着一个人独有的个性与思想。
那么,编程——就会把一个人独有的个性与思想,注入充满谜一般的编码。
乐趣
编程与写作,两者的积累,从量变到质变的过程是一致的,并且都能体验到相同的沁入心扉的——快乐、兴奋与乐趣。
文字和代码,都是一种媒介,和你的思想情绪互动纠缠,试图把闪烁的灵感与直觉,变成某种信息的排列组合,固化到现实世界。
当然——只有创造性的编程与写作才有快乐——如果是无脑的复制粘贴代码,或是重复的流水账文字,则必然会是毫无乐趣可言。
开始废寝忘食,代码与文字——源源不断地从身体涌出,汇聚成一道无法控制的急流,不知道这些代码与文字——原出何处,字符汇聚成了指令,词语累积成了段落,指令汇聚成了控制,段落累积成了篇章,仿佛有一种无形的力量,把这些代码与文字——拧在了一起,变成了一种无法被忽视的组合,像是箭头指明了一条道路,指向了宇宙最深邃的黑暗……接着照亮了那黑暗……
生命
代码与文字是有生命的,只要不断地练习积累与探索尝试,就能和它们产生通信,交流沟通起来。它们承载信息的片段组合,就像是基因一样,能够进行自我的复制与进化,能够不断地发展与迭代。
那么,虽然代码与文字是你写的,但它们所凝固的信息是不断积累变动的,有可能你都忘记了那些信息数据,但是它们仍在那里,并且与其它的数据产生不可思议的关联和影响。
事实上,这些数据,并不是属于你的,而是透过你捕捉和筛选出的环境信息,所以这些信息是有生命的。
环境
显然,代码与文字都有上下文,并且至关重要。这是信息一种内在的广泛的关联性,并且会深远地影响着未来,连接着过去。
就像一段程序或一篇文章,写的过程中,代码与文字的上下文会拉扯想法与思绪,很多表达是写的过程才有的——这是典型的信息来自于其它代码与文字关联的涌现——就像是河床引导河流,河流潜移默化地改变河床。
关系
编程与写作,都要探索事物背后的关系,以找出规律和逻辑。其中,编程是在映射这种关系,写作是在刻画这种关系。而一个条理清晰,层次分明的逻辑结构,是优秀的代码与文字共同的必要条件。
编程的时候需要——掌控所有的细节,这个很耗费脑力;写作的时候则需要——连接所有的细节,这个需要一些直觉和天赋。
编程——在给定的数据范围内,操作处理这些信息,并要确保所有细节关系的逻辑正确性;写作——并没有局限数据的范围,数据的操作处理体现在描述表达上很容易正确,但不容易优雅生动,并具有吸引力或感染力。
而对数据内在联系和抽象关系的把握上,编程与写作——两者都有着整体架构设计的要求。
事实上,代码与文字的追求都是结构的优雅,和细节表达的简洁不冗余。当反复修改,写出了令人满意的代码与文字的时候,感觉是一样的,就是——这就是我想要的,并且反复阅读这些代码与文字,内心都能体验到一种美的感受,这是一种——侘寂之美。
但写作有着比编程更多的身心体验,是一个超集。
因为编程是在映射现实,解决现实问题,需求来自于现实,而写作既可以是映射现实的,也可以是幻想的、奇幻的、架空的超现实。
所以,编程其实是写作的子集。
预测
编程的时候,总是需要想着确定的结果,然后填补所有的过程细节。而写作的时候,结果往往自己都不知道,甚至还有可能,最后推翻了最开始的所有设定。
也就是说,写作的过程中——会有很多的随机性,而编程的过程——则始终需要保持确定性。
它们共同的乐趣就是——创造,这种创造不存在的排列组合,会得到大脑的化学奖励,这或许就对应着人类智能进化过程中,所形成的某种内在的驱动力**——模拟预测**。
那么有时候,用写作的**随机性和发散性——去思考代码,用编程的精确性和确定性——**去控制文字,就有可能会有不一样的意想不到的结果。
情静
写作需要一种情绪,脑海中凌乱的字词句,都是被情绪所捕获捕捉,然后串联起来的。文字就像是情绪的产物(或是映射),且总是关联并带动着情绪,而字里行间里的感染力就来源于此。
情绪是波动的、随机的、跳动的,而逻辑是平稳的、确定的、紧密的。
这意味着,当思路清晰逻辑感强烈的时候,是没有灵感写作的——因为此时缺少一种情绪。而内心充满情绪的时候,又很难进行流畅的编程——因为编程需要平静的内心去书写冰冷的逻辑。
可见,编程与写作需要的是两种不同的状态——头脑清醒适合编程,而情绪强烈的时候,正是渲染故事氛围的良好时机。
艺术
优秀的编写者——是工匠、是手艺人,他们能将力量、匠心、独创性、创造性,融入到每一行代码、每一句字词之中。
伟大的编写者——知道何时该把代码与文字,雕琢至完美,知道何时该把复杂系统与宏大叙事,像拼图一样完美地组装到一块。
狂热的编写者——从构建程序与思想中获得满足,就好比任何一个领域的艺术家,在完成原创作品后的欣喜若狂、狂喜出神。
未来
阅读——能保持心灵的纯净和自然 ,无论是阅读代码还是文字都是如此;写作——能保持灵魂的清澈和自由,而编程是写作的子集。
那么,在很遥远的未来,更或是不久的将来,要么编程,要么就要被编程……
上帝
写作就像是在扮演上帝:
首先,逐渐对文字感觉的不断增强,似乎就能捕捉到字里行间里蜿蜒的力量,有一种敏感绢细的流淌,透过文字冲刷时空所产生的动量,能够拉扯思绪情感的涌向,连接时间线上记忆摩擦出的过往。
接着,所有的一切——剧情、关系、事件、概率都在自己的掌控之中,可以任意创造平行宇宙、时间穿越,可以发明规律、定义规则,可以孕育文明、发动战争,可以书写美好、制造恐怖,可以构建谜题、花式解密,可以简单直白,可以复杂神秘,可以拥有想象的一切——然而,最厉害的地方是有时候又控制不了这一切。
那么,编程又何尝不是呢?
在虚拟现实里,无时无刻不在上演着:编程与写作的递归计算。
梦境
有一天,我梦见自己是一个机器,醒来后,我不知道我梦见的自己——是“机器被编程了我”,还是“我被编程了机器”。
有一天,我梦见自己身处故事中,醒来后,我不知道我梦见的自己——是“故事写作的我”,还是“我写作的故事”。
编辑于 2022-02-12 10:20