昨天和部门的小兄弟询问,看了A系统的感受。两个刚毕业的孩子一愣,不就是干活吗,怎么还会有感受。刚好前两天对“码农和程序员”的知乎问题感兴趣,回答了一下,于是乎就和这几个刚毕业的大学生聊了聊。看一个系统,有没有感觉,一定是有的,只是我们的理工学生都忘了自己的感觉是什么。
在部门的培训中,让大家说一下对某个事项的评价,10个人里,充其量有一两个能说 我是高兴的,喜欢的,或者很SB的。其他的都是在分析。不是说分析不好,一分析对于这个结果达成的渴望就被放弃了。那么做与不做,都是领导给派的活,和自己的关系就不知道了。这不就是码农吗。曾经,我开始自己写代码的时候,觉得 程序员太棒了,可以用简单的方法,用电脑把人能够想到还不一定能做到的事情都做出来,那个时候,在状态栏里弄出一个活动的图标就是一种幸福。看到做的优秀的系统,不一定很花哨,但是用起来很贴心,比如有限元里用的快速成熟法,成熟一个单元节点就出一个,有点人参果的感觉。头一次用mindjet这个产品,用起来是一种享受。
现在越发觉得,这个世界就是事物和心性的融合。事物只是一个结果,心性无非 愿意 和 不愿意,以及在这两者中的纠结、拧巴。换成一个专业名词:贪嗔痴。做一个好程序员,需要贪,贪图那些美好的,柔顺的感觉。需要嗔,要痛恨bug,痛恨随手定义的变量,最近评审一段8年前的C代码,只能用崩溃来形容。需要痴,是 投入后的 痴迷,而非 不知道该不该干的拧巴和纠结。心外无物,一个好程序员,就是那个用心去绘制和驱动世界的人,创造一个完美的极乐世界,这才是完美程序员的梦想。free hit counters
以下文章推荐我们的码农和程序员们自己去照照镜子:

成为优秀程序员的方法就是抛开编程?

作者:Jeff Atwood

我在2006年写过一篇题为“Programmersas Human Beings”(程序员,亦人类)的博客,文中我提到过自己当时正在读《编程大师访谈录》这本书出版于1986年,它收集了众多计算机行业先驱的采访实录这本书里面所有的采访都是值得一看的,尤其是比尔·盖茨访谈中的一个回答,可以说是一语中的:

《编程大师访谈录》是对19位计算机行业先驱的采访实录,采访对象包括查尔斯·西蒙尼比尔·盖茨安迪·赫兹菲尔德、雷·奥奇、杰夫·拉斯金等。访谈涉及他们软件创造过程的灵感技术、编程习惯、动机、反思,以及对未来软件的畅想等问答中集结了这些计算机先驱的精辟言论,处处闪烁着智慧的火花。——译者注

问:若要做好编程工作,必须积累很多年的经验才行吗?

比尔·盖茨答道:“不是这样的我觉得在最开始的3~4年之后,你是不是一名优秀的程序员就已经定型了。更多年的历练,只会让你更多地了解到大项目管理和人员管理3~4年的时间足以看清你的未来。在微软,没有一个人是在一开始几年毫无建树、而在后来出人意料地成为多面手的。通过和一个人聊他所写的程序,我可以马上看出他是不是一名优秀的程序员

我们已经知道,会编程的人和不会编程的人中间隔着一条鸿沟。

但是,在软件开发领域同样有类似的一句话,而这句话通常不为人所知:优秀的开发者和平庸的开发者之间存在着一条鸿沟通过4年的专注编程,一位平庸的程序员会略有心得,但他始终无法蜕变成为一名优秀的程序员——优秀程序员所具备的素质似乎是与生俱来的

我同意比尔·盖茨的说法。依我的经验,你要么是一名优秀的程序员,要么不是,这两者之间没有灰色地带。无论你多么埋头苦干,这点是无法改变的但如果你能接受这一点,又会产生一个悖论:如果经验不能够使你成为更加优秀的程序员,还有什么可以呢?难道我们的技术水平永远不会提高吗?天资不够是不是就根本无望成为优秀的程序员了?

要回答这个问题,你必须要看到编程的痴迷本性优秀的程序员擅长编程,非常地擅长,甚至你会称赞他们无与伦比如果和我有点相像的话,他们应该会在电脑面前度过生命中所有可用的时间;随着时间的流逝,他们理所当然变得越来越优秀有能力的程序员已经靠自身所掌握的编程技巧跻身于优秀程序员的行列了,但是如果你已经拥有了97%的编程才能,是什么使得你获得最后的这几个百分点,并且最终脱颖而出呢?

随着年龄的增长,我开始愈加相信:成为更加优秀的程序员的方法是抛开编程你需要休整一下,放下编译器,好好评估一下自己正在做的事情。编写代码固然重要,但这只是整个过程中的一小部分

DesignObserver.com上有这么一段话,提到了一点不错的建议:

Design Observer是一个致力于讨论各种设计话题的网站,包括:平面设计社会创新、都市生活、流行文化和批判等——译者注

这么多年下来,我开始意识到,我最好的作品总是源于那些能够引起我兴趣的事情,更或者是那些我原本就感兴趣(甚至饱含激情)的东西——这种兴趣贯穿于设计工作的整个过程我相信,我至今对平面设计仍然充满着激情而平面设计的关键在于,它总是包含了一些与它本身并不太相关的东西,比如公司法、职业足球、艺术、政治Rober Wilson等。如果我不能对这些事情产生兴趣,我就很难把设计师这份工作做好。在我看来,下面的结论是必然的:你的兴趣爱好越广泛,你就越能胜任你的工作。

Robert Wilson(罗伯·威尔森),1941年10月4日出生于美国德克萨斯州的瓦克市,是一位国际知名的美国戏剧导演和舞台设计师最知名的戏剧作品为《沙滩上的爱因斯坦》,此剧被誉为后现代主义的代表作品。——译者注

对编程有激情是一件很美妙的事情,但是它很容易让你迷失在你已经证明自己够格的一项技能中,并且越陷越深为了真正地成为一名更好的程序员,你必须培养自己对于编程周边所有事情的热情

后来在2005年的一次访谈中,比尔·盖茨继续阐述了他在1986年的观点:

工作的本质并不是闭门造车(埋头写代码),我相信这一点很容易理解最最匮乏的人才是那些既对工程技术有超强的领悟能力,又可以与核心开发人员建立良好的关系,并且可以充当与客户市场等之间桥梁的人像这种工程管理人才,即使在微软也是很缺的,所以我们不得不经常鼓励一些人去尝试。

我很希望看到有更多人投身于这些职位他们除了掌握基本的工程技能之外,也把人员管理和群体动力看作是一项对自己的历练。要是这样,那就太好了!

我们可以对这些人承诺,在他们从事这个职位的开头两年里,他们做的绝大多数事情都不是写代码,因为有很多方向可供选择比如身处Office部门,你将参与创建这款神奇的产品,你会看到人们是怎么使用它的,两年时间很快就会过去,你要开发一个新的版本,并且深层次地改变生产力你还可以做一些大胆的尝试,准确地满足客户的需求

单单靠编程,你只能补足或者增强自己已有的编程技能,永远也无法成为一名优秀的程序员你需要尝试去了解你的客户你所身处的行业及其相关的业务!

还是那句话:“你的兴趣爱好越广泛,你就越能胜任你的工作

分类: 未分类

0 条评论

发表回复

Avatar placeholder

您的邮箱地址不会被公开。 必填项已用 * 标注