中文

只有电脑程序员才会知道的10个习惯和事情

电脑程序员是一种特殊的物种,他们知道如何从零计算,也知道咖啡的重要性。你已经看到了在Livecoding.tv, 上,一个电脑程序员会有不同的习惯。他们还对电脑有更深层次的了解,他们所知道的事情可能是一般人从来不知道的。

Alexy Radul, MIT,发表了一篇文章,是讲述他自己的编程习惯的。这篇文章很有趣,值得每一个对编程感兴趣的人阅读。对于每个人而言,我们必须从不同的角度来看待这些习惯。

在一般人眼中,电脑是一种可以完成一件工作的设备。这个工作可以是简单地上网浏览,或者处理一些复杂的Excel表格的计算。除了这点以外,如果想试图弄明白0和1的矩阵,一般人会发现他们自己对于这些知识是贫乏的。

这篇文章是针对所有人,让他们了解那些只有电脑程序员才明白的事情以及程序员独有的习惯。他们会从一个不同的角度去看待世界吗?是什么令程序员有这样独特的习惯?让我们一起来寻找答案。

1. 一份好的(或者是长的)playlist(播放列表)是电脑程序员其中一个成功秘诀

当你在浏览livecoding.tv的网站时,你会发现很多程序员都有播放音乐的习惯,一边写代码,一边听着自己喜欢的歌曲。在国外,这是非常普遍的。在Facebook和其他大公司里工作的程序员都会这样做。为什么会这样?因为长时间写代码是一项让人气馁的工作,听音乐可以让你保持能量并集中精神在你的工作上。

如果你想分享你的playlist,欢迎在下面的留言板中写下来。我们会整理一份最终的名单,在我们的社区里公布。

img_5727ba7f31160

2. 对程序员来说,平均的工作时间是从9点到第二天凌晨3点

开发一个产品绝不是一件简单的事情。在写代码的过程中,时间过得很快,而且调试只会令这个过程没完没了。对于很多软件工程师来说,时间不是他们关心的。他们唯一关心的是工作质量和他们的产品给社会带来的整体影响。在Livecoding.tv上,大多数直播者都知道科技对社会的影响力,以及科技可以推动社会进步。

从头开始建设一样东西,这种独特的感受令时间变得微不足道。下面这个思考的过程就最好地描述了一个从来没有结束的过程。

“让我只是修正这个代码,然后我就可以休息了。”

“好吧,这是下一个,然后我就会走了……”

“等等,为什么那里会出现这个的呢?最好还是现在就解决它!”

img_5727baa4b0afb

3. 咖啡是必需的食品

当你不打算停止工作的时候,咖啡是你不可缺少的食品。程序员已经普遍认为咖啡和快餐是他们生活中的必需品。不喝点咖啡,他们工作起来也没劲。咖啡机也成为了工程师的工作工具之一。另一种放松自己的方法是,跑到附近的咖啡厅,在那儿一边喝咖啡,一边写代码。

4. 另一个成功秘诀是耐心

所有的程序员都知道,第一次就写对代码几乎是不可能的,接下来还有第二次、第三次……

对程序员来说,与代码一起工作可以是整个人生的承诺,这不是人生中某一个闪光的地方,而是整个人生的体验。如果没有了耐心,也不会有电脑程序员的存在了。

5. JavaJavaScript之间的区别

当一个程序员和别人说Java和JavaScript的区别时,这不是一件容易的事情。很多人会很随意地以为它们是一样的,并且在多数情况下,程序员只能尽力去解释编写脚本和编写程序的区别,而且他们的努力往往是徒然的。

很多budding程序员也会混淆了这两个名字之间相似的地方。当你开始编程的时候,你是否也有过这样的经历呢?

6. 编码员、程序员和开发者的区别

对人们来说,这三个术语应该是一样的。当你一说到数据库的时候,很多人宁愿结束这个话题。让我们面对现实吧:当一个程序员和一些人说话时,而这些人是不知道编码员、程序员和开发者的区别的,那这个程序员的耐心通常要经得起考验。

你可以看一下这篇文章interesting take,它除了解释这三个术语的区别外,还介绍了黑客和电脑学家。

img_5727bc8bb2880

7. 在写代码的过程中不要打扰他们

如果沟通不可以帮助解决代码的问题,那最好还是让编码员去完成他自己的工作。有些人觉得和编码员讨论可以帮助他们解决那个困住了他们的问题。但如果一个编码员被这些所谓的“心怀善意”的人打扰了,这可能是世界上最坏的事情了。简单来说,只有当程序员提出要求时才去帮助他们,否则,让他们自己去解决问题才是一个好主意。

8. 程序员对于眼前的成功是怀疑的

一个有经验的电脑程序员知道不会有什么可以马上解决问题的方案。解决一个问题可以有很多方法。另外,也会有很多测试案例,会使解决方案乱了套。电脑程序员明白成功是一项需要长时间经营的事业,除此以外,没有其它方法。

关于安全(这是电脑科学一个重要部分),Java的创建者James Gosling曾经说过: “人们认为安全是一个名词,是你买的某样东西。但事实上,它是一个像快乐一样抽象的概念。开放度对于安全的帮助是难以置信的。”创建一个又完美又安全的概念是不可能的,所以它没有一个快速的解决方案。

9. 完美的标点符合是必不可少的

你喜欢写作吗?那么,你可以掌握写作的规则或改变它们,创造出你自己的写作风格。但是在电脑领域,情况会不一样。

如果你发现自己曾经被某些代码困住了,原因是少了一个“分号”,你明白我的意思了吧。语法和语义是要紧密结合在一起的,而且电脑无法明白它们,除非你100%做对了。

除了你的英语老师,电脑可能是惟一一个要求你的标点符号要100%正确的。我们在讨论的不是每个句子的英语语法。编程语言有它们的语法结构,这个你是需要正确掌握的。

但是,现在情况稍稍有些扭转了。程序员可以用他们想要的方式命名他们的项目。这些疯狂的想法可以使用Python来完成。Pyphon是由Guido van Rossum发明的。Python这个名字是他举办了一场喜剧秀后得来的。

10.     和其他程序员呆在一起可以使你变得更优秀

“除了看一个优秀程序员写的代码以外,没有其它事情可以让我意识到自己是一个多么糟糕的程序员。” Scott Hanselman

编程是一种艺术,而且如果你在这种艺术中是合群的,你将有可能在编程上变得更出色。参与程序员的社交活动,向别人学习,或者从中发现某人成为你的导师,这比起你自己一个人学习更有效率。

结束语

了解程序员独特的习惯和他们对电脑的认识,总是一件让人着迷的事情。所以,上面列出的这些习惯,哪些是符合你的习惯的呢?欢迎在下面留言发表你的看法。我们也非常想知道,你有哪些独特的习惯。告诉我们吧!

Avatar
About author

I, Dr. Michael J. Garbade is the co-founder of the Education Ecosystem (aka LiveEdu), ex-Amazon, GE, Rebate Networks, Y-combinator. Python, Django, and DevOps Engineer. Serial Entrepreneur. Experienced in raising venture funding. I speak English and German as mother tongues. I have a Masters in Business Administration and Physics, and a Ph.D. in Venture Capital Financing. Currently, I am the Project Lead on the community project -Nationalcoronalvirus Hotline I write subject matter expert technical and business articles in leading blogs like Opensource.com, Dzone.com, Cybrary, Businessinsider, Entrepreneur.com, TechinAsia, Coindesk, and Cointelegraph. I am a frequent speaker and panelist at tech and blockchain conferences around the globe. I serve as a start-up mentor at Axel Springer Accelerator, NY Edtech Accelerator, Seedstars, and Learnlaunch Accelerator. I love hackathons and often serve as a technical judge on hackathon panels.