Referrence: http://whats-online.info/guides-and-info/36/Traits-of-Experienced-Programmer-that-every-beginner-should-know/

Not everybody has the capability to be a good programmer. Most lack the desire, others do not have a high level of practical aptitude and others lack the personality required to make a good programmer. To help you understand just what these ‘personality’ traits are, I will break down some of the traits that an experienced programmer has. Being in the field for 8 years now, believe me I know the ups, downs, tricks and ‘’oh no’s’’ in this field. I will take you through 8 crucial traits of a programmer, which can be emulated by the beginners who wanna make it big in this field.

  1. Consistency

No programmer wants to be the wonder hit-and-disappear kind of a programmer. A good programmer is reliable. He knows what it is that he wants, and is willing to keep on programming when need be. Not necessarily a 9-5 person, but one who accomplishes tasks and projects without leaving them hanging.

  1. Problem solver

As a programmer, I would liken programming to solving a complicated mathematics equations. They are complicated and most seem hard to crack. It is easy to just let go of them and look for a simpler equation to tackle. A programmer is that person who doesn’t give up on a task simply because it seems complicated. They look for solutions to every task. Giving up is a phrase that is never heard of in the world of programming.

  1. Planning skills

To plan is to see ahead. Instead of hopping into a new project, a good programmer will first study as much as he/ she can concerning the anticipated end product. As soon as that analysis is completed, the programmer ought to first strategize the project structure before inputting the first line of code. Planning goes hand in hand with consistency. So a consistent programmer is also a good planner.

  1. Excellent communication skills

I do not speak the perfect English, but am I good programmer? The answer is yes. Across the years, I have noticed that most of my peers are not fluent English speaker but they do pass for programmers with excellent communication skills. In programming, good communication skills is the ability to express an idea precisely and efficiently. Good programmers are able to pass their points across well. Programmers who experience a tough time conveying their points across or comprehending what others are telling them, may not be successful in the long run.

  1. Passion for Programming

This is the most important trait of all times. Passion is everything. Without the willingness to work, it will soon or later go down the drain. Some employed programmers only do the 9 to 5 job, for the salary part of it. These caliber of programmers do not program for long because they only do it for the cash, not for the work. When off from work, nothing close to what they do ever crosses their minds. You do not have to wake up, and go to bed breathing codes. Programmers who lack the passion are never enthused to acquire the best method of doing things and instead, they only engage in a routine, which is not be the best technique of doing things.

  1. Detail Oriented

This is what separates a patient programmer from an impatient one. Programming involves dealing with codes whose simple mistake could cost you a whole project. A programmer who pays close consideration to detail will be suggestively more industrious than the one who doesn't. This trait involves evaluation of self –consciousness, which is very crucial for a serious consistent programmer.

  1. Ability to cope with changing trends

Technology is constantly changing and the expertise and capabilities a programmer has currently will probably be out-of-date in the coming years. It is, therefore, key for a programmer to be able and willing to educate him/ herself and follow the up-to-date trends. This way, they find it easy to take part in any ongoing education chances that are presented.

  1. A good reader

A good programmer reads extensively. Not all the work is about coding. A substantial percentage of a programmer's work day is spent in reading. It could be codes typed by other people, Web sites with examples, papers, or projects. Programmers who do not read extensively, or worse, do not comprehend what they are reading, are mostly incompetent at best, and hazardous at worst.

All in all, a good programmer

• Recognizes that programming is a resourceful art and is nothing interesting

• Takes boundless pride in his job and gets abundant contentment from it

• Attempts to decrease the difficulty of both the problem at hand and the result

• He/she utilizes his time but is never too occupied to help others hit the books

• He/she appreciates positive criticism and offers productive criticism for other programmers as well.

• Has failed countless times but is always willing to learn from the failures.

• Makes his/her decisions without necessarily relying on other people. Sometimes someone needs to make decisions from his/ her heart without the influence of others.

• is continually learning and gets an excitement from those embarrassing moments. Nothing is too serious. Laugh at yourself at times.

Programming is not for the faint-hearted. Do not try programming at your desperation when everything else could not work out. If you possess the above traits that a good programmer should have, then brace yourself for a life changing experience. Above all, hard work is everything.

8 Traits of an Experienced Programmer that every beginner programmer should know的更多相关文章

  1. Articles Every Programmer Must Read

    http://javarevisited.blogspot.sg/2014/05/10-articles-every-programmer-must-read.html Being a Java pr ...

  2. pic/at89c2051 programmer

    http://dangerousprototypes.com/forum/viewtopic.php?t=170 It looks like the PICKIT2 uses a small boos ...

  3. ELNEC Programmer

    BeeHive204 Very fast universal 4x 48-pindrive concurrent multiprogramming system with ISP capability ...

  4. Open Source Universal 48 pin programmer design

    http://www.edaboard.com/thread227388.html Hi, i have designed a 48 pin universal programmer but need ...

  5. Introducing Apache Spark Datasets(中英双语)

    文章标题 Introducing Apache Spark Datasets 作者介绍 Michael Armbrust, Wenchen Fan, Reynold Xin and Matei Zah ...

  6. JavaScript原型

    prototype与_proto_ 对象的 prototype 属性的方法.属性为对象所属的那一"类"所共有.对象原型链通过 proto 属性向上寻找. 为 proto 指定 nu ...

  7. C#对象序列化与反序列化zz

      C#对象序列化与反序列化(转载自:http://www.cnblogs.com/LiZhiW/p/3622365.html) 1. 对象序列化的介绍........................ ...

  8. java设计模式之原型模式

    原型模式概念 该模式的思想就是将一个对象作为原型,对其进行复制.克隆,产生一个和原对象类似的新对象.java中复制通过clone()实现的.clone中涉及深.浅复制.深.浅复制的概念如下: ⑴浅复制 ...

  9. 【09-03】java泛型学习笔记

    静态方法的泛型 /** * @description 静态方法的泛型无法使用类定义的泛型,因为类在实例化时才确定具体的泛型类,因此静态方法要使用泛型需要使用泛型方法的方式 */ public clas ...

随机推荐

  1. 小人大作战v0.02原型(单机)发布

    运行环境,pc,windows 链接:https://pan.baidu.com/s/1X5XR0flRAVuinnydNyRNng 提取码:cp9q 复制这段内容后打开百度网盘手机App,操作更方便 ...

  2. bootstrap ui样例

    http://demo.codedefault.com/demo/ui/theadmin/samples/invoicer/settings.html

  3. 模板语言、url

    伪造一个数据库全局变量 (字典无序) USER_LIST 列表变字典(元祖和列表直接循环就好,字典涉及到k_v) UESR_DICT 遍历方法 1. 2. 3. 4. 5. 6.键入链接 通过a标签包 ...

  4. python yield实现协程(生产者-消费者)

    def customer(): r="" while True: n=yield r#,接收生产者的消息,并向消费者发送r print("customer receive ...

  5. 基于Linux(中标麒麟)上QT的环境搭建

    最近由于公司需要,需要在中标麒麟上进行QT的二次开发,但是网上的资料很少,就算是有也基本都是其他的版本的Linux上的搭建.中标麒麟本身的资料也很好,而且还只能试用60天. 下面就介绍下我对此环境的搭 ...

  6. Biorhythms(信息学奥赛一本通 1639)

    题目描述: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维敏 ...

  7. 【HDU6216】 A Cubic number and A Cubic Number 和 广工的加强版

    题目传送门_杭电版 题目传送门_广工版 广工版的是杭电版的加强版. 题意:判断一个质数是否是两个整数的立方差 ---- 数学题 题解: 根据立方差公式:\(a^3 - b^3 = (a - b)(a^ ...

  8. RedHat linux服务器安装elasticsearch且设置公网访问

    0. 首先需要安装jdk,因为elasticsearch是Java写的,默认需要Java环境,且安装elasticsearch 7.x需要使用jdk 1.8或更高版本 1. 执行以下命令,创建elas ...

  9. 【Activiti学习之七】BPMN子流程、顺序流、流程关口

    环境 JDK 1.8 MySQL 5.6 Tomcat 7 Eclipse-Luna activiti 6.0 一.子流程 1.嵌入子流程2.调用子流程3.事件子流程4.事务子流程 二.顺序流1.条件 ...

  10. .net core 使用本地包

    环境:.net core 2.2 类库:.Net  Standard 2.0 旧版本:   发布你自己的Nuget包 如果不想把包发布到nuget上面供别人引用,然后你有没有服务器,我们只能使用本地包 ...