
我喜欢软件开发。 我知道自很久很久以前的某个仲夏下午以来,我就很喜欢软件开发,当时我将Color Genie EG2000用户手册中的页面复制到PC上的GWBASIC中,并经历了我的第一人生改变见解:刚给计算机编程。 那一刻在我身上停留了30多年。
从那时起,软件开发艺术就一直是我生活的基本组成部分,我热爱它的一切(甚至是我讨厌的东西)。 自从在小学开始编写代码以来,我一直没有真正停止过,尽管距离有人请我亲自编写一些代码已经有一段时间了。
在我从事软件开发的第一份真正工作之前,我与其他程序员的接触仅限于我认识的一个或两个其他孩子以及HNR BSS上的几个随机陌生人(是的,没错,是2400澳元的奇迹和兴奋),而我可以从图书馆获取仅限于书籍的知识,以及可以通过粗略的电话连接到BBS的任何内容(直到95年互联网为我而来)。 首先,我花了很多时间用BASIC编写代码,然后通过一些内联汇编自学Turbo Pascal,然后继续学习C —文字游戏,实用程序,图形演示。
我注意到甚至在很小的时候就出现了一个奇特的现象,那就是在编码时,我可能一次在很多小时的编程过程中完全迷失了自己,这真的很不错。 在电子游戏中不会迷路的方式令人深感满足。
经过几年的发展,我发现自己正在构建自己职业生涯中的第一个“企业版”软件:一个由政府支持的地区住房金融公司的贷款发放和服务系统。 一个内置在Visual Basic 6中的出色的客户端/服务器桌面应用程序,集成到一个性感的,全新的“工作流管理系统”中,并通过劳斯莱斯的公共交换网络电话连接回ISDN:ISDN。 在此之前,我主要在Perl中进行Web开发,然后是PHP和Flash(是)。
在那笔贷款发放和服务折磨期间(仅此而已),我遇到了一位高级开发商,我首先从中听到过这样一句话: The Zone 。 他是在我那个地方贴上标签的人,事实证明,许多其他开发人员都很了解。 通过长时间编写代码,人们完全沉浸于其中,完全专注于排除几乎所有其他事情。
“流动”的概念在1975年由Mihaly Csikszentmihalyi认可并命名,并在各个领域得到了广泛提及,但该概念已经存在了数千年,特别是在某些东方宗教中。
Jeanne Nakamura和Csíkszentmihályi确定了以下六个因素,这些因素包括流动体验 :
- 集中精力于当下
- 行动与意识的融合
- 失去反思的自我意识
- 对局势或活动的个人控制或代理感
- 时间体验的扭曲,时间的主观体验被改变
- 该活动的内在奖励,也称为自动体验
这些方面可以彼此独立出现,但只有结合起来才能构成所谓的流程体验。
此外,心理学作家肯德拉·切里(Kendra Cherry)提到了Csíkszentmihályi列出的三个其他组成部分,作为流动体验的一部分:
- “立即反馈”
- 感到自己有成功的潜力
- 感到沉迷于体验,以至于其他需求可以忽略不计
更准确地说,为自己创造机会参加一些活动,使您能够进入这种流动状态(即The Zone) ,是支持幸福,目标,满意度和生活意义的支柱之一。
这是我爱上编程的主要原因之一。 在“区域”中花了很多小时后,您有时会感到难以置信的满足感:智能地构建抽象问题空间的互连模型,从心理上关注并测试逻辑解决方案选项的分支树; 小心翼翼地将解决方案选项简化为最适合的解决方案,最后构造一个解决方案-有时不止一次(您知道,很遗憾,人为犯错)-直到最终意识到,在感觉像是超人的努力之后,您创建了一个有用的东西,看似一无是处。 实际可行的解决方案!
很难向没有感觉到的人解释这种感觉。
专注,顺畅,位于“区域”中 。 在解决和克服挑战上花费大量精力。 随着时间的流逝,精通该活动:体验知识的积累,感觉自己正在进步,知道自己正在提高技能并通过自己。 那就是满意。 那就是为我创造意义的原因。
谈到克服障碍(正如我在上一篇文章中提到的那样),我们面临着障碍和挑战,这是我们如何成长为人类。 从幼儿期到我们一生,经历适度困难的经历会塑造我们,并帮助我们成长并获得关键技能。 它给了我们信心,教会了我们的毅力,并使我们变得更坚强。 对于所有事物,都需要保持平衡:太难了,成本超过了收益; 不够困难,并且您无法最大程度地从中学到东西。
在另一种情况下,我(另一个人)至少(一个人,至少我个人)敏锐地意识到克服挑战的过程,在过多和过少的挑战之间保持关键的平衡,同时强烈鼓励他们保持专注。最喜欢的活动:切碎生病的纳尔。
好吧,好的,我会承认我在斜坡上所做的事情可能是生病的碎屑减少了,更准确地说,是在随意控制斜坡,随意地,狭窄地避免令人尴尬的面部植物的情况下,随意地修护斜坡。 经常成功。 但是重点是! 单板滑雪是一项很好的活动示例,它可以按照您需要的任何合理步伐进行 -并受到环境和后果的强烈鼓励-专注于您所做的事情。
您必须-尤其是在开始时-通过起身并继续反复克服跌倒,有时会痛苦地克服。 您需要通过使自己的思维去做本来不希望做的事情来克服恐惧,例如倾斜下坡腿,以便使木板边缘可以咬到雪中以进行任何控制。 您的大脑真的不想这样做。 倾倒在大脑中立即被归类为“可怕的痛苦和某些死亡的深渊”的事情对很多人来说并不自然。 您还必须使自己经常从越来越陡峭的山顶开始,有时,偶然地,越来越陡峭的山顶,只有找到那里的一个选择,现在您才能找到自己的位置:向下。
专注,克服和逐步掌握的这种宏伟混合也许与通过软件开发过程产生的心理结果略有不同,但在大多数方面出乎意料地相似,尤其是它们创造的深层次的满足感。
我前段时间花了很多时间来思考生活中创造的意义。 试图弄清楚是什么使一个人高兴。 至少在我看来,这三个支柱似乎可以归结为:专注,克服和精通。 表面上看似软件开发和单板滑雪的例子似乎离奇地联系在一起,但实际上,当您深入研究时,几乎所有事物都可以或确实归结为这三个支柱。 从跑步(活动中的焦点,克服痛苦和距离,通过训练克服发展和改善的感觉)到人际关系或数学,缝纫,骑马,绘画。
我认为生活没有内在的意义。 决定意义的途径就是创造意义。