编程是个很复杂的玩意,但是成就优秀程序员的很多因素和我们在学校中早期学到的相差无几。本文灵感来源于Robert Fulghum的《All I Really Need to Know I Learned in Kindergarten》。
1.分享
尽可能地使用开源,并且如果有能力的话也可以把自己的成果分享给大家。整个社会的智慧结晶肯定比一些大公司自管自闭门造车要好。
2.公平的心态
不要以为你的选择就是唯一能奏效的,试试其他技术、框架、方法和建议,也许其他的选择比你原先的好也未可知。要用开放的心态去对待任何方法和抉择。
3.不可攻击他人
如第2条所言,不要因为别人恰巧使用的是.Net、Java或PHP这些技术就随意攻击他们(我在这方面有过教训)。有时,这些你看不上眼的技术或许要比你想象的更有用。只要你怀着一种平和的心态,你就可以从他们那里学到很多东西,殊不知,海纳百川,有容乃大。
4.解决自己的烂摊子
自己的代码自己负责。永远不要指望QA能帮你找到所有的bug。经常全面地测试自己的代码。
5.不是自己的东西不要拿
得到许可后方可使用,偷偷用了事后再声称自己无辜是可耻的。
6.如果伤害了别人要说对不起
代码审查是一个相当不错却又很少使用的主意。指导经验比你少的程序员,有助于整个团队的发展。但是切记不能公开批评他人。指导并不意味着贬低别人。在得到指导时,有的人会接受,有的人则不会。要记得有时候,从那些水平不及你的人身上,你也能学到很多东西。绝对不能门缝里看人——把人看扁了。
7.有备而来
在正式开工写代码之前要先做个彻底的了解。做原型、从网上搜索实例、和其他也做这个的人讨论或者先练练手。什么都不知道就着手构建你从未尝试过或使用过的东西简直就是“自作孽不可活”。如果打一开始就有线索有思路,得到的结果可能会更好更有成效。
8.拿得起放得下
不要畏惧替换、重写、重构甚至是直接删掉代码。有时候,如果碰到可留可不留的代码,直接扔掉就是了。不要对你的代码死缠烂打,不肯放手。
9.舒适的工作环境
对,要想程序员能高效编程,一个好的工作环境是不可或缺的。一把舒适的椅子,一个安静的工作场所、一代高配置的电脑以及各种有助于编程的工具都应该配备齐全。经理避免一些琐事去打搅到手下的程序员。而作为一个程序员,也不必忍气吞声、给人做牛做马,如果老板对你不好,换个就是了。
10.保持生活的平衡——学习、思考、绘画、唱歌、跳舞、工作、玩耍,每天都应该活得丰富多彩
我非常欣赏谷歌的工作方式,它会建议你花上20%的时间用来思考任何你认为值得做的事情。此外,谷歌还提供专门的休息室、游戏房和其他一些能用来放松自己的场所。因为编程是一种高强度的脑力活动,有时候你的大脑真的非常需要稍作休息。不要盲目地不管不顾自己的身体,“工作狂”绝对是不可取的生活方式。每周工作80小时,听上去很牛掰,但是你的工作效率肯定要打一个问号,甚至一不小心会犯个不可饶恕的小错误然后前功尽弃。
11.下午打个盹
就算我们把一天24个小时全都用来写代码,成果也不会更多。停下来、回家、然后打个盹。很多问题都是在我回家的路上解决的。有时候,我正在开车,或者是清早一觉醒来,答案就灵机一动出现在我脑子里。
12.不要闭门造车
交流对于我们相当有好处:读读博客、学学新语言和框架、讨论讨论话题、看看同行在做什么。自扫门前雪,绝对成就不了一个优秀的程序员。闭门造车型的程序员终将被时代的潮流所淘汰。
13..保持好奇心。我们就像一粒粒种子,因为有着对外面世界的好奇,才能从土壤中探出头来,亲眼见证这个世界。
每天我们都能看到有新鲜事物出现在编程世界里。带着“Why”去一探究竟。每天都学点新知识,扩宽自己的视野,刷新自己的技能,让自己跟得上时代前进的步伐。要是你觉得编程枯燥又乏味,那么也许你可以考虑换一行。
14.所有事物都会逐步趋向衰退灭亡,谁都无法抵抗。
代码也会慢慢发旧直至死亡。这时候你能做的就是把它们埋葬,然后再重新写过。不要为了省钱而继续维护那些费力不讨好的代码!
15.还记得《雌雄大盗》这本书吗,我们学到的第一件事就是——“看”。
如果你不自己亲自去试试,那么你永远也学不到东西。我在编程中学会的所有东西全都来自于我的亲身实践。每天早上,我会广泛浏览网站,看看我们的编程世界有什么新鲜事情发生。从80年代初我得到第一份工作开始,我就一直保持了这个习惯。(那个时候网络还没普及,我主要是看目录和杂志。)
当你已经有了5年的工作经验,在你眼中编程其实就是小菜一碟了。
- 浏览: 140910 次
- 性别:
- 来自: 深圳
最新评论
-
西蜀石兰:
永远保持一颗好奇心,面对新鲜的事物时,乐意花代价去尝试一番,这 ...
优秀程序员必备的15大技能 -
liuwuhen:
代码还是不错的,头像确实有点
sprig AOP之ProxyFactory -
西蜀石兰:
这头像。。。。完全不用看代码了
sprig AOP之ProxyFactory -
coding1688:
...
你的知识资产 -
tao_gun:
...
你的知识资产
相关推荐
### Java程序员必备技能详解 #### 一、语法基础 对于一名Java程序员而言,掌握扎实的语法基础至关重要。在日常开发过程中,经常会遇到IDE提示的语法错误。这时,开发者需要能够根据错误信息迅速判断出问题所在,并...
【优秀程序员的十个习惯】 1. 持续学习与跟进新技术:作为优秀程序员,保持对新知识的渴望至关重要。不断学习新的编程语言、框架和工具,关注行业动态,参与专业社区讨论,如CSDN、ITPUB、CHINAUNIX、digg.com等,...
### Java程序员必备技能详解 #### 一、语法基础 对于一名Java程序员而言,掌握扎实的语法基础至关重要。这意味着在编写代码时,面对IDE(集成开发环境)中的报错信息能够迅速定位并解决语法错误。例如,当遇到诸如...
### 一个Java程序员必备的10项技能 随着信息技术的快速发展与互联网行业的不断壮大,Java作为一门经典且广泛应用的编程语言,在软件开发领域占据着举足轻重的地位。对于Java程序员来说,掌握一定的核心技能是必不可...
在IT行业中,一份优秀的程序员求职简历是成功敲开心仪公司大门的关键。简历是展示自己技能、经验和成就的窗口,能够帮助雇主快速理解你的专业能力。以下是一些制作出色程序员简历的重要知识点: 1. **个人信息**:...
在大数据领域,Hadoop、Spark等工具的应用也是必备技能。 实践经验同样重要。参与开源项目,或者自己动手做小项目,可以提升解决问题的能力。通过解决实际问题,你可以更好地理解理论知识,并在实践中不断迭代和...
### 高级程序员必备条件 在IT行业中,成为一名高级程序员是许多从业者的职业发展目标。这不仅意味着技术能力的提升,还代表了对整个行业的深刻理解与洞察。根据提供的信息,我们可以整理出以下关键知识点: #### 1...
总之,《程序员的羊皮书——程序员必备》涵盖了程序员在技术、职业和个人发展上的诸多方面,提醒我们,成为一名优秀的程序员不仅仅是编写代码,更重要的是全面发展自己的技能,适应快速变化的IT行业。通过不断学习和...
1. **学无止境**:持续学习是优秀程序员的基石。随着技术的快速发展,必须不断关注新出现的语言、框架和编程实践,通过阅读专业文章、参加在线讨论和社区活动来跟进行业动态。 2. **掌握多种语言**:了解并熟练掌握...
对于Java程序员来说,掌握基本的语法是基础,能够迅速识别并修正语法错误是必备技能。除此之外,理解Java的面向对象特性、熟悉集合框架、异常处理、多线程编程、I/O流、网络编程等核心概念也是至关重要的。同时,...
本资源“优秀程序员之路 C# 开发经验及技巧大汇总”是一个珍贵的集合,旨在帮助C#开发者提升技能,优化代码,以及深入理解语言的核心概念。 首先,成为一名优秀的C#程序员,你需要掌握基本语法和数据类型。C#支持...
要成为一名优秀的Java程序员,需要掌握一系列核心技能。以下是一些必备的知识点: 1. **基础语法**: - 了解并精通Java的基础语法是必要的,包括关键字如`static`, `final`, `transient`等的用法。例如,`static`...
【优秀程序员45个习惯】是一本旨在提升程序员专业素养的书籍,由敏捷开发领域的权威Venkat Subramaniam和Andy Hunt共同撰写。这45个习惯覆盖了态度、学习、开发流程、用户、编程以及团队协作等多个方面,旨在帮助...
Read)列出了多达一百条准则,旨在帮助读者全面掌握成为优秀程序员所需的知识和技能。本文将基于原文的标题、描述和部分内容,深入解析其中的关键知识点,以助于广大编程爱好者更好地提升自我。 ### 个人技能篇 #...
理解并熟练运用设计模式是成为一个优秀C++程序员的关键步骤。 总结来说,这个教程组合将带领学习者深入探索C++的高级特性,包括面向对象编程的精髓、多线程技术的实践以及如何利用设计模式优化代码结构。对于寻求...
《2017年Web程序员技能树成长指南》是一份针对Web开发者的综合学习路径,旨在帮助他们系统地提升在JavaScript开发领域的...通过深入学习和实践,Web程序员能够不断提升自己的技能树,从而在职业生涯中取得更大的成功。
在这个“优秀程序员之路——ASP.NET开发经验及技巧大汇总”中,我们将深入探讨ASP.NET的核心概念、开发实践以及各种实用技巧,帮助你提升编程技能,成为一名出色的开发者。 首先,ASP.NET的基础知识是必不可少的。...
因此,掌握数据库的设计、管理和优化技巧,以及熟悉常见的数据库类型(如关系型数据库、NoSQL数据库等),成为程序员必备的一项技能。 ### 8. 深入了解业务领域知识 随着技术的不断进步,对业务领域的深入了解变得...
以下是根据提供的文件内容,总结出的合格PHP程序员必备的技能知识点: 1. 掌握PHP基础知识: - 字符串处理:熟悉至少60%的字符串处理函数,能够在开发中灵活使用。 - 正则表达式:精通正则表达式函数,至少掌握90...