编程更容易形成频次多、周期短的成就感,而成就感又是治疗自卑,提升自信的良药。
守护石的「大数据技术知识星球」
<hr/>以我自己的世界观来看,每一位牛逼的编程者,总会藏着一个不自信的过去,否则很难去解释,对于编程乐此不彼的持续热情。
人类能分泌的情绪激素,一种是多巴胺用于激发快乐,还有另一种就是内啡肽,抚慰心态,增强信心,然而唯有成就感那一刻,能同时激发出这两种激素。
为什么编程就特别容易形成成就感呢?那就是因为编程不同于其他工作:理论先行,设计为重,实践最末,往往很多人都停留在了理论和设计阶段就止步了!
但是编程很有意思,它一定是提出假设,简约设计,重在实践和体验反馈,然后才是重构设计,最终才能系统地理解,清晰整个系统的机理。
那么这个过程就很有意思了,就好像打游戏一样,我们总是先从活动和体验当中获得快感,然后不断被对手KO,然后不断发现自身问题(很难得),重塑自身能力,然后再去KO对手,获得满足感。
但又有着比游戏更有价值的事情,那就是系统性地去解剖了一项看似混沌不清的事物,在不断地打怪升级(编程能力提升)当中,成为了一个领域的专家。
举个例子吧:我03年入行第一个项目就是做一个增删改查的模块,那时候我连数据库的一对多关联设计都不懂,领导给我了一个复杂的框架组合,并要求我在上面去开发表单编辑、确认、提交的交互式模块,在现在开来的确比较简单,但那时候也是比较复杂的事情。
首先在领导的指点下,我弄懂并创建出了数据库中供应商管理的父子表的设计关系,成就感+1,接着我照猫画虎的搞清楚了jdbc如何curd的各种SQL,+1,再接着我用eclipse插件会部署ejb2,实现了stateless bean,+1,顺便搞清楚了事务意义,+1,再接着我通过struts实现了action跳转,+1,明白了struts和servlet的关系,+1,我们不用jsp而是xslt,明白了XML和HTML的结合机制,又+1....
最终我在客户现场,一个煤矿的办公楼的小办公室,看到了一群用户正从一打本子上的找到供应商,录入进我们系统中我开发的模块表单中,并提出了一些建议,都是如何省时省力的操作建议,顺便对查询和排序功能大加赞赏,这就是最终一次成就感的大反馈。
我们可以看到,编程就是不断去实践,不断反馈体验,不断调整设计,不断深化理解的过程,也许这种反馈来自电脑,也许来自人,成就感不大,但总是不断出现,累加在一起,就是持续地满足。
因此一旦你进了编程的道,就一定会喜欢上它! |