软件蚕食一切。未来属于程序员。所以人人都想当程序员。但是并不是每个人都能当好程序员。在你做出决定前还是先看看自己能不能当好程序员吧。可是什么样的人不适合当程序员呢?不要喝鸡汤,我们看看 Quora 上面是如何回答的。
在全栈开发者 Adam Leffert 看来,最重要的是态度:
我认为编程要想成功最重要的是态度。当然,最低水平的智力还是要的。以我这么久的经验来看,还没见过蠢到不会做的。
但是好坏程序员之间的差别几乎永远是态度。
耐心:对我来说这是最重要的一条。写代码和调试极其令人沮丧。要想做好,你得保持冷静,至少冷静到能够保持清晰的头脑。
精力:处理棘手问题,编写大量代码容易使得身心俱疲。最重要的是要有我朋友 Joshua Wachs 所谓的 “坐能量(tushie power)”。也就是屁股不离座直到工作完成的能力。
逻辑思维:这条看似明显,其实不然。一般的程序员在碰到棘手问题的时候一般是靠猜来解决的。运气好可能猜得中。但运气不好就难搞了。问题是猜并不能有效缩小可能原因的范围。好的程序员会提出猜想然后进行测试,从而排除掉一堆的可能性。比方说,屏蔽一段代码,看看问题是不是还出现。
自负:编程不是你自己的事。这跟你的团队、代码、客户、利益攸关者等等都有关系。(eShare CEO Henry Ward 说自己永远都不会要自负的人。)
曾写过不成功 OS 的 Peter Nierop 则总结出了当不好程序员的 3 个迹象:
讨厌用 Google:
在 github、google 和在线网站上面有大多数现成的解决方案。买本老教授的书学编程的日子已经过去了。现在的代码来得快去得也快。而至关重要的事情是把你的东西尽快推向市场。任何不愿每天至少使用搜索引擎 1 小时的人都应该另寻高就(编者注 1:Google 自己的研究也发现,开发者搜代码越来越频繁注 2:有人可能会说自己不是讨厌用而是用不了。好吧如果是这样的话,我要加最重要的一条:不懂用 google 的想都不要想当程序员了)。注意,这某种程度上可能是因为你什么都想自己来,想成为全世界唯一的那个纯粹的 coder。
朝九晚五的心态:
再强调一遍:及时发布很重要。普通的程序员往往每天工作不到 8 小时,好吧这就是你平庸的原因所在。不平庸的程序员连续 22 小时冲刺以后才能打个盹隔 4 天才洗次澡并在接下来的 2 周时间里每天要用 2 小时写一些报告。不能或者不愿在必要时加班的人最好打住。
极其糟糕的记忆:
编程就是开很多的会,做各种各样的变更,可能脑子里面要装 100 页的代码。未必是每一行都要记得清清楚楚,但起码在管理层又折腾出一个变更或客户突然又冒出一个想法时要知道你的程序是干什么用的,什么地方可能会失败,怎样才能很快修好。如果你的记忆力实在是太糟糕的话,最好还是找份其他的工作。
我在这个行当干了这么久,碰到过各种各样的程序员,不变的一点是一旦有上面的问题这些人基本都干不久。
CaveOfProgramming.com 开发者 JohnPurcell:
由于开发界总是渴望有新鲜血液进来,所以除非你实在是太差(或者你原来基本都不用工作)否则想不成功都很难。我喜欢 Peter Nierop 的回答,不过说到正式的付费工作,我本人总是严格遵守朝九晚五的习惯,所以那个说法应该看工作情况而定。
如果你发现编程很乏味,学习又总是繁琐无趣的话,那你想做好就很难了。因为你要跟已经编程上瘾的人竞争。不过我也见过几个人虽然不喜欢编程,业余时间基本也不编程,虽然称不上出色的程序员,但是的确能够借此谋生。
要记住的是,编程不是什么精英才能干的事情。这个行业永远都缺人。所以除非你一点都不喜欢编程,或者也没有准备好看在钱的份上忍住这种不喜欢,否则都可以来编程。
而享受编程乐趣的 Prince Pranav 提供了 3 个不适合编程的迹象:
因为错误而过早放弃:
永不放弃。哪怕是简单的错误也不要放弃。这会让你的代码和心态大不同。好的程序员,在写一长串代码的时候会把代码分解出来,分段测试。如果你因为前面 1 个小时总是碰到同样的问题就把电脑给关掉了事,可以认为这是迹象 1。最后你总会找到问题的,但一定不要放弃。
只对输出而不是质量感兴趣:
开发出好应用是你的责任。如果你为了赶时间而牺牲应用的质量,你可以成为程序员,但不会是伟大的程序员。
乐趣不是找来的:
你开始写代码前看了看表,13:02,然后你再看的时候变成 13:09 了。有的人再看表的时候已经是 15:37 了。真的,除非你是因为有趣才干这个时间才不会流逝(注:不得不说,这又绕到了做你所爱还是爱你所做这个问题。)
究竟什么样的人当不好程序员,你觉得呢
相关推荐
那么,什么样的人适合成为程序员呢?程序员应具备哪些素质?同时,又有哪些禁忌需要避免呢? 首先,程序员需要耐得住寂寞。编程工作往往需要长时间集中精力,沉浸在代码的世界里,这需要一种静心专注的能力。静不下...
1、有人曾说,做程序员的人,都是疯子,做长了往往入戏太深,成天与代码打交道,话都很少说,所以评论程序员们都是以后连妞都泡不到的人,我听后,我可以这样说,泡妞好比一个方法,他人是学习方法,而程序员呢,是...
专业程序员应该具备什么样的特质呢?他们不仅要有超群的技艺和丰富的经验,更重要的是他们能够为别人解决问题,哪怕面对的是非常棘手的难题。他们在解决问题的过程中,能够展现出极高的专业性和责任感。 在实际的...
要解决这个问题,必须先知道程序员 有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西方在各个技术层级的人数,就可以知道到底有没有差距,差距有多大。 当然,对于如何划分程序员的技术层级,...
10. **面试和招聘**:评估程序员能力不应仅依赖于基础理论和面试,而应包括实际编程和重构任务,以更全面地了解其解决问题的能力和工作习惯。 通过以上特点,我们可以看出,好的程序员不仅技术扎实,还具备良好的...
【标题】:企业需要什么样的程序员,项目经理3年的总结 【正文】: 在当前竞争激烈的IT行业中,企业对程序员的需求不仅仅是技术能力的体现,更看重的是综合能力与职业素养。作为一个有着三年经验的项目经理,我...
要解决这个问题,必须先知道程序员有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西方在各个技术层级的人数,就可以知道到底有没有差距,差距有多大。 当然,对于如何划分程序员的技术层级,...
程序员是这样一群人,他们天天围绕着廉价的机器转,一行一行地写着程序,他们的代码深入到社会和生活的各个角落,影响着社会的方方面面,改善着人们的生活,甚至提高了综合国力。看一看你周围,电视机、电冰箱、...
也见过无数的程序员简历,包括很多优秀的程序员简历,看了可以让人眼前一亮,优美简洁的简历模板,项目经验工作重点突出;也见过更多的写得不好的简历。不好的简历,存在各不相同的问题,比如采用花里胡哨的模板,...
关于什么样的人可以被称为程序员,文章中给出了一个相对宽泛的定义:“凡是从计算机专业或相近专业毕业的、以编写程序为职业的人都可算得上是程序员。”然而,在早期,由于计算机行业的快速发展和技术的不断进步,很...
总之,程序员的职业发展道路非常宽广,可以根据个人的兴趣、能力和职业规划来选择适合自己的发展方向。无论是深入技术领域成为专家,还是转向管理岗位领导团队,亦或是创业开辟新天地,甚至是投身教育传播知识,每一...
《程序员的眼神》电子扫描版,中国上海美女IT人2010年新作。 看完这本书我看到了中国IT的希望------张孝祥 看完《程序员的眼神》我失眠了------孙卫琴 那忧郁的眼神,是空前绝后的-----马士兵
1.明确的职业目标: Java 程序员需要明确自己的职业目标,知道自己想成为什么样的人。 2.职业发展规划: Java 程序员需要制定职业发展规划,规划自己的职业发展方向和步骤。 3.技能提升: Java 程序员需要不断学习和...
程序员个性壁纸的设计风格多样,可能包括但不限于以下主题: 1. 编程语言图标:例如,C++、Java、Python、JavaScript等编程语言的logo,可以激发程序员的创作灵感。 2. 极简主义:简洁的线条和色彩,体现程序员追求...
多见可以让你超越自己所在的环境,取得真正的进步,现在有许多开源社区和软件都是你应该涉足的地方,和什么样的人在一起你自然也会成为什么样的人。 程序员的身价是由什么决定的?如果一个程序员有良好的根基,充满...
【程序员表白代码】是一种独特的方式,它将编程技术与浪漫元素结合,为IT专业人士提供了一种创新的表白手段。在编程世界中,表白不再仅仅是语言的表达,而是可以通过代码实现的创意展示。以下是对这个主题的详细解读...
从给定的文件信息来看,这期《程序员》杂志涵盖了多个IT行业的焦点话题,包括人物专访、行业分析、软件开发技巧、项目管理经验分享以及行业趋势观察。下面将详细解析这些核心知识点: ### 1. Theo DeRaadt:OpenBSD...
面试题12:写出当定义#define _INMAIN 0和不定义时代码打印结果 第9章 继承与多态 9.1 继承 面试题1:指出程序的错误 面试题2:用C++设计一个不能被继承的类 9.2 虚函数和纯虚函数 面试题3:下面说法中正确的是哪个 ...
这种工作节奏并不适合每个人,因此,如果不能承受这种压力,那么可能不适合成为程序员。 编程语言的性别差异误解 社会上有一种错误观点认为女性不适合学习Java或其他编程语言,而更适合做测试工作。这种看法是错误...
首先,关于选择什么样的技术,PHP程序员需要在多个方向上进行权衡。C/C++作为底层编程语言,能够提供更高的性能和更低级别的控制,对于理解计算机工作原理有很大帮助,这对于PHP程序员深入优化代码、提升系统效率...