A. 程序人在成为牛人的路上,怎么才能少走弯路
由于现在信息时代的快速发展,越来越多的人选择计算机专业或者与计算机相关的工作。就比如说程序员。那么要想作为一个程序员,想要从毕业到成功少走弯路的话,应该怎么做呢?以下就是小编对大家的一些建议。希望对程序员可以有帮助。
还有最重要的一点就是要学会与优秀的人结交和交流。因为优秀的人身上有你值得学习的东西,他们有你想要学习的那些经验,可以告诉你怎样才可以轻易的成功。少走一些弯路。
最后就是要善于归纳和总结。要总结自己的优点和缺点不足。这样才可以提高自己进步得更快。而且还要善于表达,表达出自己的观点,让别人接受你的观点。
做到这些你就可以少走弯路,成为一个成功的程序人。
B. 史上最牛的程序员到底有多牛
听说的~~
很久以前,那还是我用win98的时候有次我系统崩溃了,因为我是电脑白吃,我朋友给我介绍了一个高手来帮我修电脑。
他看了一下电脑,问我有没有98的盘,我说没有。
他想了一下,叫我把固定电话拿给他,我想修电脑要电话干什么,但人家是高手,我也不好说什么,就把电话拔下来给他了。
他把电话线空着的一头接在电脑的一个插孔内,然后进入了dos,然后就开始在电话上不停的按着键,他按键的速度非常快,但是只按0,1两个键,我搞不懂这有什么用,但也不敢问,看了半个多小时,他还是不停的按这两个键,我渐渐的有些困,我问他这东西要搞多久,他说要几个小时,我给他倒了杯茶,就一个人去隔壁睡觉了。
醒来的时候,一看已经过了4个多小时,我起身到隔壁,看见他正在98里面调试,过了一会儿,他说,你试试,我坐上椅子用了一下,真的好了,我当时也不懂电脑,谢过人家就走了。
后来我慢慢对电脑有了了解,终于了解,原来当时那位高手是用机器语言编了一个98系统,我后来问我朋友那位高手的下落,我朋友说前几年去了美国之后,杳无音讯....
C. Java程序员实力如何划分我看有些牛人能单挑一个很大的项目,而有些团队都做得没他好
“我看有些牛人能单挑一个很大的项目,而有些团队都做得没他好”:你说的应该停留在功能的实现上吧。
“一个很大的项目”,对这个所谓的大项目的概念还是很笼统的。不过可以肯定的是,正规项目,都必定采取一种或多种框架,这个框架可能是主流的,可能是自定义的。在面对一个框架项目下,一个人的力量太渺小了。因为你的时间和精力根本就不够去实现这个项目。这样的时间开销太大。
对于程序员来说,个人感觉大致分下面几等:
1:未入门,此类人感觉自己什么都会了,事实上,什么都不懂很肤浅。
2:刚入门,知道自己很多地方不足,甚至根本不懂。
3:熟练,到此为止,仅仅针对于常用对象使用,功能的实现实现,知道常规异常错误的产生原因和解决方法,以及IDE的熟练使用。
4:进阶,开始不满足于对现有代码的满足。开始追求代码的优美,效率,性能,稳定,安全等
5:提炼,以及脱离的现有代码的范围,开始注重代码的重用性,开始彻底的贯彻面向对象的思想,学习GOF中提到的常规的一些设计模式。
补充,到这里为止,如果没有面对至少百级并发的开发项目以及百万级数据查询,那也只能算是60%的程序员,如果处理过,实践过。那算是80%
6:自我提升与实践。到这里,只能算是作为一个80%程序员。还有很多东西要你自己去实践不断自我学习。
D. 程序员的十种级别
第一级:神人,天资过人而又是技术狂热者同时还拥有过人的商业头脑,高瞻远瞩,技术过人,大器也。如丁磊,
求伯君。
第二级:高人,有天赋,技术过人但没有过人的商业头脑,通常此类人不是顶尖黑客就是技术总监之流。
第三级:牛人,技术精湛,熟悉行业知识,敢于创新,有自己的公司和软件产品。
第四级:工头,技术精湛,有领导团队的能力,此类人大公司项目经理居多。
第五级:技术工人,技术精湛,熟悉行业知识但领导能力欠加,此类人大多为系分人员或资深程序员,基本
上桀骜不逊,自视清高,不愿于一般技术人员为伍,在论坛上基本以高手面目出现。
第六级:熟练工人,技术有广度无深度,喜欢钻研但浅尝辄止。此类人大多为老程序员,其中一部分喜欢利用工
具去查找网上有漏洞的服务器,干点坏事以获取成绩感。如果心情好,在论坛上他们会回答菜鸟的大部
分问题。此级别为软件业苦力的重要组成部分。
第七级:工人,某些技术较熟练但缺乏深度和广度,此类人大多为程序员级别,经常在论坛上提问偶尔也回答菜
鸟的问题。为软件产业苦力的主要组成部分。
第八级:菜鸟,入门时间不长,在论坛上会反复提问很初级的问题,有一种唐僧的精神。虽然招人烦但基本很可
爱。只要认真钻研,一两年后就能升级到上一层。
第九级:大忽悠,利用中国教育的弊病,顶着一顶高学历的帽子,在小公司里混个软件部经理,设计不行,代码
不行,只会胡乱支配下属,拍领导马屁,在领导面前胡吹海侃,把自己打扮成技术高手的模样。把勾心
斗角的办公室文化引入技术部门,实在龌龊!
第十级:驴或傻X,会写SELECT语句就说自己精通ORALCE,连寄存器有几种都不知道就说自己懂汇编,建议全部
送到日本当IT产业工人,挣了日本人的钱还严重打击日本的软件业!
E. 中国IT界最牛的十个人
1、最牛的是史玉柱。他是80年代末在深圳做汉卡(输入汉字字库早期硬件)赚到第一桶金,但后来扩张太快搞房地产和保健品破产了欠了几个亿。但卧薪尝胆几年后还清老百姓的债务,重新回到IT行业做网络游戏、保健品、房地产,现在是网络游戏界里的老大之一。有技术、有良心、有能力、有热情!
2、网易的丁三石,搞互联网很多年了,发展稳固,最近几年搞网络游戏发展迅速,又是广东政协委员IT的先进代表,最近又开始关注环保和农业
3、盛大的陈天桥,最早引入韩国《传奇》开拓了国内的网游市场,赚第一桶金
4、李开复。1998年,李开复加盟微软公司,并随后创立了微软中国研究院(现微软亚洲研究院)。2005年7月20日加入Google(谷歌)公司,并担任Google(谷歌)全球副总裁兼中国区总裁一职。2009年9月4日,宣布离职并创办创新工场任董事长兼首席执行官。他现在自己的公司还没出名,但之前最牛的软件公司在亚洲他做老大。是IT年轻人的偶。
5、 杨致远 1990年以优异的成绩进入离家不远的斯坦福大学。该校的电机系是硅谷神州的组成部分,他就选修电机工程,只花了四年,他就获得了学士、硕士学位,并结识戴维•费洛,二人于1994年4月创立Yahoo!,因此杨致远被称为“世纪网络第一人”,开启了人类的网络时代。他是中国台湾人
6、谭浩强。这个没什么人听过吧。但所有在国内大学计算机专业学习的教科书10本有8本是他编写的。共编着出版了130本计算机着作,主编了300多本计算机书籍。获全国高校教学成果奖国家级奖、国家科技进步奖、多项部委级优秀教材奖,北京市政府授予“有突出贡献专家”称号,被国家科委、中国科协表彰为“全国优秀科普工作者”。英国剑桥国际传记中心将他列入“世界名人录 ”,2000年被《计算机世界》报组织的“世纪评选”评为我国“20世纪最有影响的10个IT人物”之一 。
F. 程序员工作到底能干多久程序员的前途如何
千千万万的程序员们一直困惑“程序员的前途如何”、“程序员工作到底能干多久”的问题。目前比较普遍的认识,程序员的职业通道有两条进阶路线。一条 是技术路线,即由程序员、高级程序员、系统分析师,到架构设计师。在这条路线上,立足于从业务模型到计算机软件模型的转换,成为高端的软件技术工作者。另 一条是管理路线,即由程序员,经开发小组负责人、项目经理,再到企业中高层管理者。程序员加强自己管理意识的培养,多站在组织的角度来分析问题和解决问 题,成为优秀的管理者,甚至职业经理人。近年来,产品管理成为企业多产品经营形势下一个越来越受重视的管理课题。特别是知识经济环境下,诸如互联网与软件、创意、传媒等现代新型产业链中, 其几乎可以忽略不计的复制成本,有竞争力的产品与优秀的产品管理成为了制胜的关键。基于产品的商业化运营,在越来越具聚合效应的网络时代,扁平经营、草根 聚合、精准营销、直通车服务等全新的经营环境常常造就了赢者通吃的局面,以产品为中心的企业管理逐渐形成独立的产品管理体系,被众多企业所关注和采用。在软件企业中,随着产品管理的兴起,可以说,走向产品,是程序员在技术与管理之外的第三条职业通道。越来越多的程序员开始转型做产品工作,特别是对 那些具有创业意识的程序员而言,走向产品是一条必经之路。腾讯的马化腾和360的周鸿祎,他们都是由程序员做起,然后开创自已的产品和事业。产品管理的兴起,产生了以产品经理为中心的产品工作职业方向。产品职业方向可以从产品系列的职务与岗位两个维度来观察。职务上,有首席产品官 (CPO)、产品总监、产品经理、产品专员、产品助理,其中尤以产品经理一职最为中心;岗位上,有产品竞争分析与用户需求管理、产品创意与策划、产品原型 设计、产品运营规划、产品实现过程跟踪、产品商品化实施、产品运营、产品经营成果分析与跟踪、产品升级维护管理、产品管理体系与制度建设、产品人员技能培 养等。这些基于产品而设计的岗位以有效满足用户需求为中心,它不同于其它以专业技术和职能效率为中心的因职能分工而产生的岗位。产品管理是近些年随着IT和互联网的快速兴起而被各企业所重视,而现在的各大院校并没有产品管理相关的专业,各类培训机构也少有类似培训课程,从事 产品工作的人员大多是从不同专业、不同岗位转型过来的。相比较而言,程序员有着营销、测试、客服等岗位走向产品的人员所难以比拟的优势。有些公司甚至做出 了规定,欲从事产品工作,必须要有多年的软件开发经验。程序员转型从事产品工作所具有的独特优势主要包括以下几点:第一,程序员能够更好地理解产品的实现方案,所策划的产品更具可行性。做产品策划工作,也许缺的不是点子或创意,而是有效可行的方案。多年的程序员 工作经验,对软件技术和软件实现方案的判断,可以规避那些天马行空的产品想法,工作更有成效。比如在整理用户需求时,程序员的前期有效判断和可行性辨别, 会大大提高产品的策划质量与速度。程序员出身的产品人员可以和研发人员进行无隙的沟通,用更便于研发人员理解的语言和思路来进行产品方案的解读和跟进。第二,程序员的软件开发工作,与其说是代码的编写,不如说是逻辑语句的组织。程序员一般都具备严密的逻辑思维能力,这是进行纷繁而杂乱的需求分析和 产品概念设计必备的优势,更有利于从中分门别类理清脉络关系,转换为产品功能规划,把产品做成精品。例如需要往U盘写文件,产品人员可能只想到正常的操作 逻辑,但程序员可能会想到更多异常情况,如:U盘损坏、传输过程中拔出、断电、传输的文件损坏、U盘写保护、重复文件、焦点位置、空间不足等等。再有,好 的用户体验的产品,在本质上,就是产品功能的逻辑展示,或者说用户操作的逻辑引导。第三,程序员往系统分析的技术方向发展,从本质上来说,同往产品策划方向发展是相通的,都需要对真实世界本质关系有着充分的理解与把握。能够走向系 统分析员的优秀程序员,完全有可能成为一个优秀的产品策划人员。差别在于系统分析员的工作成果是面向程序员、面向计算机,而产品策划是面向用户、面向市 场。每一名程序员也必定是某个软件产品开发工具的使用者,有深厚的软件产品使用体验,具有从用户出发来表述问题的基础。第四,程序员一般都具有快速学习能力,保持对计算机相关行业动态和技术革新的观察与思考,这在一定程度上会培养对行业与技术的洞察力。产品策划和设 计工作,最后能否获得市场的成功,考验的正是这种洞察力。因为产品工作是时时围绕“解决的是什么人的什么问题”来开展,也就是始终围绕“做正确的事”。只 有对行业与技术有洞察力的人,才能够站在用户需求的角度来理解与体验,激发创意,做出好产品来。当然,程序员虽具备上述独特优势,并不等于程序员转做产品工作,就一定能够成功。要策划出好的产品,要成为一名优秀的产品经理,他们也面临着各种挑战:第一,创新和结构化思维的冲突。结构化思维可以说是程序员的典型标志,这种思维模式对于把一件事情做好是很重要的,但它往往也会是创新思维的天敌。创新却是产品工作的灵魂,程序员需要不断打破常规激发灵感才能做好产品工作,就必须克服已经形成的思维定势。第二,团队协作与英雄主义的矛盾。程序员往往习惯于单打独斗的工作方式,崇尚技术牛人,缺少团队协作意识和与人沟通的技能。产品工作则需要大量的沟通协调,甚至组织领导工作,强调的是团队作战。在合作精神方面,想要转向产品工作的程序员的确亟待加强。第三,商业意识和市场运营知识匮乏。特别是在全面产品管理思想下,产品人员需要有很强的市场营销方面的知识和商业化运作的策划与分析能力,仅仅把产 品做出来是不够的,卖得掉才是硬道理。产品策划的环节,面临着营销模式、目标用户、渠道选择、竞争策略等的选择与设计,这也是摆在技术出身的程序员面前的 重要课程。每个企业,都会根据自身所在行业特点和本企业的资源优势,来部署不同形式的产品管理机制。程序员针对自己的性格特点和能力特征,抓住产品管理这一方兴未艾的职业机遇,走向产品,以优秀产品经理的能力模型培养来规划学习道路与职业生涯,是值得重视的一个职业方向。沈阳师范大学火热招生中!
G. 计算机程序员一般干到多少岁就干不动了必须转行
我说下这个问题的发生本质:
究其原因是两方面
其一,是每个人生活境遇导致的。一个不用为生活发愁的程序员(不缺钱)家庭状况安心,那么再加上本身就很有工作能力完全可以一直干下去,反过来说工资不高或者跟自己的生活消费不匹配或是家庭不稳定那么势必影响工作,各种事情纷纷扰扰,程序员又是需要专注专心的,这种情况下试问谁哪有那么多精力心思铺在工作上呢?人到中年成家立室,照顾家庭孩子这是必然。
其二,承接上文,在普遍这种情况下势必需要"人才" 来管理领导那些新来的小年轻的不懂事的程序员,老板对有资历的程序员势必会看中叫他转成管理带领大家干活,这样对他来说岗位提升可能跟着待遇也会提高(意味着生活质量等其他方面跟着提高),再者这个年龄家庭事情很多转管理也算是在某些方面降低了工作与家庭生活的矛盾,无论从自身还是老板角度讲看似都是双赢的局面。
再啰嗦下国外,其实从以上能明白为什么人家很多程序员都花白胡子干到老,这跟他们的制度公司理念和待遇有很大关系,总体不外乎是很少存在我们这种情况,老板员工思维理念和制度、钱等都可以支持他们这样做下去。
好好寻思下是不是这样。
H. [探讨]优秀程序员和一般程序员差别在哪
还记得研发频道此前发表过的一篇《白班程序员 VS. 夜猫子程序员》吗?在这个世界上有两种程序员,我们称之为:Day Programmers(白班程序员)和Night Programmers(夜猫子程序员)。本文我们将探讨优秀程序员和一般程序员有哪些差别,看看您是属于那一种?来自知乎网上的大牛们各抒己见,一起来看下他们是如何区分的。创业者郭凛:如果纯以编码能力来看,可分为五类1. 拷贝型拷贝型选手就是传说中的“代码拷贝员”了,他们对实现功能几乎没有思路,所作的事情就是从网上或是之前其他团队成员写的代码中拷贝出片段,然后放到项目中,如果运行项目出现了期望结果,则表示任务完成。这类人只会改代码,却不会写代码。他们大多对编程毫无兴趣,只是希望以此糊口而已。2. 新手型当产品有功能需求时,由于经验有限,程序员并不完全知道要如何实现这个功能,需要通过学习、寻找资料等方式来解决问题。这种情况下的编码过程,程序员的主要目标是“完成功能”,那么很难有多余的心思去考虑边界条件、性能、可读性、可扩展性、编码规范等问题,因此代码bug可能较多,稳定性不高,常常会发生开发花费1个月,改bug却要改上好几个月的事情。3. 学习型这类程序员对所在领域的语言已经比较了解,对于一般功能可以有较为清晰的实现思路,给出需求时可以通过自己的思路来实现,并且会一定程度上考虑边界条件和性能问题。但仅此而已,他们对可读性和可扩展性考虑很少,也没有项目级别的考虑,主要是希望通过实现代码来练手或是学习。这类程序员最大的表现在于喜欢“创造代码”,即使有现成的实现,他们也希望自己来实现一套,以达到“学习”的目的。他们不喜欢复用别人的代码,看见项目中别人实现了相类似的功能,他们会以“需求不同”的借口来自己重新实现一套。这类人一般来说对技术有着较为浓厚的兴趣,希望能够通过项目来进行学习。从项目的角度来说,这种做法最大的麻烦在于开发周期可能较长(相比直接使用现成的实现),并且会使得项目代码膨胀,影响未来的维护。但这类程序员由于有兴趣,如果好好培养或许会成为明天的牛人。4. 实现型这类程序员一般有较为丰富的经验,由于写得太多,因此不再追求“创造代码”来进行学习,同时对所在领域可能涉及的很多第三方框架或是工具都比较熟悉,当接受到产品需求时,对功能实现方案已经了然于胸,因此他们可以快速的实现需求,并且对边界、性能都有一定程度的考虑。因为能够快速实现需求功能,经常会被团队评价为“牛人”。但他们一般仅仅停留在“完成功能”级别上,对代码的可读性、可扩展性、编码规范等考虑较少,对项目总体把握也较少(例如控制项目膨胀、方便部署等架构级别的东西)。这类程序员最大的表现在于喜欢“开发项目”,却不喜欢“维护项目”。他们产出的代码最大的问题就是维护较为困难,可能过上几个月回头看自己的代码都会晕头转向。因此即使是自己写的代码,仍然不愿意维护,一般会苦了后来人。因为接口设计的缺乏,当需求变更时,发现代码要改的东西太多,然后抱怨需求变化,却很少认为是自己的代码问题。这样的项目如果经过长时间的变更维护,最终会变得难以维护(一般表现在需求变更响应时间越来越长)甚至无法维护,最终要么是半死不活,要么是被推倒重来。5. 架构型这类程序员比实现型更进一步,他们经验丰富,对相关框架和工具等都很熟悉,“完成功能”、“稳定性”、“性能”这些已经不再是他们的追求,更优美的代码、更合理的架构才是目标。这类程序员代码设计大多建立在对需求的详细了解和对需求变更的预测上——可扩展性较好;代码细节也尽量多的考虑边界情况、性能——稳定高效;代码命名和注释都恰到好处——可读性较高;同时在开发过程中他们会不断重构,对代码做减法——保证项目可持续发展等等,但由于考虑问题较多,单从“实现功能”阶段来看,完成速度不一定会比“实现型”要快。只是到了项目中后期优势才会慢慢体现出来。知乎删代码工程师 安江泽:创造型、管家型、学院派、钟表型、折腾型1. 创造型/创新型以创造/创新为乐的程序员。以新的方法解决现有问题,发明方法解决尚未解决的问题。问题本身并不限于技术领域。硅谷很多技术创始人具备这类的品质。虽然他们创业后都不再全职写代码,但他们这种品质贡献了他们事业的第一步。2. 管家型以管系统演化为乐的程序员。有洁癖,有强迫症,容不得系统有一点的瑕疵。如果你招聘了一个程序员/架构师,2-3年后你的互联网产品再也没有在可见/可扩展性上遇到瓶颈,他多半是这种程序员。3. 学院派型通常在CS某一领域拥有博士学位,或者深受他们的影响的人。对该该领域兴趣浓厚,通常参与企业核心竞争力相关的研发工作。当然,也有一部分也具备第一种特质,中途去改变世界去了。4. 经验型在行内具有多年丰富的经验,可承担责任,考虑全面。团队拥有了这种人,通常会少走很多弯路。但面对新的挑战还是要和其他人站在同一起跑线上的。5. 钟表匠型喜欢并擅长把一个系统从里到外研究通透的人。分享出来都是从里到外让人垂涎欲滴的干货。很多后端工程师都是这种类型。6. 折腾型擅长“折腾”,方案没有最好的,只有最难的。兴趣广泛动手能力强,通过折腾留下很多技术积累。想用哪一块的新技术?先问问他把,8成他很久前就已经玩过了。7. 肉盾型哥甲高血条长,加班如同切菜一般,逼急了不睡觉也行。只伸手要过两件东西:原型和咖啡。适合打闪电战。当然,可能事后要打打后勤重构下代码。iApp4Me创始人、iOS开发者郝培强:七大标准 逻辑思维很重要优秀程序员的标准:要懂逻辑,这点其实挺难达到,很多很不错的程序员其实逻辑能力不行,所以我觉得限制了他们更深一层次的发展,或者说限制了他们解决特别复杂问题的能力。要有分析能力。这也是解决复杂问题不可或缺的能力。要会自学,技术发展速度很快,如果没有自学能力会被淘汰的。所以在中国英语要好,不然看不懂最新的技术走向。要有良好的时间管理习惯和意识。要有耐心,肯于付出。要有良好的工作习惯。会看且勤于看文档。产品管理、IT项目管理 何明璐:优秀程序员具有较明显的自恋和偏执特征对编程有浓厚的兴趣,由兴趣能驱动自己的探索和钻研精神,优秀程序员一般喜欢用业余时间探索和自己琢磨点东西,研究点开源框架和源代码,关注新技术,喜欢研究和探索算法,逻辑方面的内容。优秀程序员一般比较懒于做重复的事情,对于重复事情有独有的程序员思维,即通过程序或其它自动化方式解决重复问题,而留更多时间去思考。优秀程序员更多的会从简单功能实现,花哨的界面转移到对安全,性能,可扩展等底层架构的关注。优秀程序员一般有较明显的自恋和偏执特征,有较为希望独自工作的特征,比较难于被非技术背景管理者驾驭,高度强调自我能力价值的被认可,而且很多优秀程序员并不是好教练。优秀程序员一般有较为扎实的算法,数据结构等理论知识的基础。这些让他们在迅速进入新领域的时候快人一筹。总结:不管是优秀程序员还是一般程序员,小编认为只要你喜欢思考,爱学习,对编码有兴趣,那么你就是最好的。当然掌握技术才是硬道理,套用别人的一句话“不想当CEO的程序员,不是好的产品经理”。程序员们,加油吧!
I. 世界最牛程序员是
Bill Joy, 前任Sun的首席科学家,当年在Berkeley时主持开发了最早版本的BSD。他还是vi和csh的作者。当然,Csh Programming Considered Harmful 是另一个话题乐。据说他想看看自己能不能写个操作系统,就在三天里写了个自己的Unix, 也就是BSD的前身。当然是传说了,但足见他的功力。另一个传说是,1980年初的时候,DARPA让BBN在Berkley Unix里加上BBN开发的TCP/IP代码。但当时还是研究生的B伯伯怒了,拒绝把BBN TCP/IP加入BSD,因为他觉得BBN的TCP/IP写得不好。于是B伯伯出手了,端的是一箭封喉,很快就写出了高性能的伯克利版TCP/IP。当时 BBN和DARPA签了巨额合同开发TCP/IP Stack,谁知他们的代码还不如一个研究生的好。于是他们开会。只见当时B伯伯穿个T-shirt出现在会议室(当时穿T-shirt不象现在,还是相
当散漫的哈)。只见BBN问:你怎么写出来的?而B伯伯答:简单,你读协议,然后编程就行了。
最令偶晕倒的是,B伯伯硕士毕业后决定到工业界发展,于是就到了当时只有一间办公室的Sun, 然后他就把Sparc设计出来乐。。。象这种软硬通吃的牛人,想不佩服都不行的说。据Bill Joy的同事说,一般开会的时候B伯伯总是拿一堆杂志漫不经心地读。但往往在关键之处,B伯伯发言,直切要害,提出漂亮的构想,让同事们彻底崩溃。对了,
他还是Java Spec和JINI的主要作者之一。