1024程序员节,写给年轻程序员的建议
发布于 2016-10-24 14:12 2636 次浏览 0 赞 最后一次编辑是 2016-11-07 14:42 来自 随便聊聊  

作者:唐杰 链接:https://zhuanlan.zhihu.com/p/23159199 

来源:知乎 

---------------------------------

 

今天是10月24日,是江湖中的“程序员节”,回想起我的职业发展,十年前我就是以程序员的身份进入互联网行业工作的。无论后来我是做运营还是产品经理的工作,我的性格是极具“工程师文化”特征的,我想这种性格应该是与生俱来的,因为我在写代码之前的工作是业务员,跑了一年的市场工作,业绩还不错。 

很多时候我们写代码都是在模仿别人写的东西,如果公司里代码质量高了,新来的人就能模仿高质量的代码;如果代码一团糟,新来的人就只能模仿差代码,然后代码质量就越来越差。所以无论团队大小我都会对代码规范和冗余问题非常在意,很可惜并不是每一个同事都能理解我这种像洁癖的强迫症。 

今天借着这个1024的节日,我就关于编程、与同事相处、工作效率、个人成长等方面写一些建议给年轻的程序员们。 

1、开始工作后要学会花钱买时间(如买工具),花钱买个人成长(如培训),花钱买软件(对同行的劳动表示尊重)。 

2、学会翻墙,并且要有自己稳定安全的翻墙手段。 

3、学会使用搜索引擎(优先Google,其次Bing)和知识社区,搜索的关键在于精准的分词,找准自己要检索的关键词。 

4、如果你在学习或者工作中遇到了问题,首先要懂得自己先花十几分钟找找答案,然后再问别人。 

5、遇到问题不是羞耻的事,勇于沟通,不要太内向。 

6、问题交流和沟通不要表现的太自傲,另外要尊重别人的时间。 

7、要养成整理代码的习惯,无论是添加注释、清理语法、修复冗余。这种习惯会帮助到很多人,最大的受益者是你自己。 

8、每个团队或多或少都有毛病,跳槽只是换个坑而已,轻易不要放弃。 

9、不要对抗或者反感 code reviews 与 design critiques ,这是完善文档和提高水准最好的形式。 

10、不要敌对的看待同事(如产品经理),假设每个人都有最好的意图,即使他们没有。这会让你活的更轻松。 

11、沟通是比写代码更重要的技能,要谨慎任何人的任何暗示。 

12、当辩论一个问题时,先问自己“我真的很关心这个吗?”,否则你将不可避免地花费时间和精力讨论一些无意义的问题,例如命名是用 FooWidgetProcessor 还是用 FooWidgetHandler 

13、有时候命名是 FooWidgetProcessor 或 FooWidgetHandler 是很重要的,因为代码与命名规范的约定是很重要的。 

14、不要凭自己感觉去推测产品意图,记得跟产品经理要功能逻辑的描述,无论载体是文本还是流程图,一定要保证复杂逻辑有具体的说明,否则你很有可能会白写代码。 

15、合理的工作顺序是这样的:理解思考、对话沟通、邮件确认、需求文档、编写代码。 

16、要会优化 Robustness 

17、不要混淆 reliability 与 uptime 的区别。 

18、要理解“技术债务”是什么意思。 

19、所有的代码都是技术债务,即使是你认为的一次性工作,比如一个CLI。任何权宜之计一旦被提升到生产阶段,那么它就会变成现状。 

20、你要学会评估你的每一项工作,投入时间测量你做的事是正确的。 

21、想要参与开源项目,可以先从你经常使用的项目(如编程框架、小工具等)开始。第一个 pull request 可以从改注释中的错别字开始,先熟悉一下流程。若要真改代码逻辑,最好先跟项目维护者沟通一下,避免做无用功。 

22、考虑一切有助于自己工作的工具,如电脑、鼠标、键盘、语言、IDE、椅子、iTerm字体、桌面背景等。 

 23、免费是最贵的服务,收费是最便宜的服务。 

24、大众对程序员的生活质量有偏见,要理解。提高生活质量的唯一方法就是定期扔东西,但是这句话理解起来很复杂。另外如果有了女朋友,不要扔,因为很有可能就再也没有了。 

今天是1024程序员节,所以就写24条

1 条回复

1024,楼主一生平安

2016-11-08 16:56
添加回复
回到顶部