(转)一位程序员的忠告

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yhz61010/article/details/83669000
本文章转自以下地址:

大家可能在很多地方看过类似的文章,以前自己也看过,不过并没有转载它们。
现在有时间再来看看时,发现自己能体会到的,更多了。

[url]http://www.mscto.com/Programer/2009060394041.html[/url]
展开阅读全文

位程序员忠告

05-31

诸位,咱当网络工程师也是几年了,不算有出息,环顾四周,也没有看见几个有出息的!回顾工程师生涯,感慨万千,愿意讲几句掏心窝子的话,也算给咱们师弟师妹们提个醒,希望他们比咱们强! rnrn  [1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!  rnrn  [2]可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,因为技术只不过是你今后前途的支柱之一,而且还不是最大的支柱,除非你只愿意到老还是个工程师!       rnrn  [3]不要去做技术高手,只去做综合素质高手!在企业里混,我们时常瞧不起某人,说他“什么都不懂,凭啥拿那么多钱,凭啥升官!”这是普遍的典型的工程师的迂腐之言。8051很牛吗?人家能上去必然有他的本事,而且是你没有的本事。你想想,老板搞经营那么多年,难道见识不如你这个新兵?人家或许善于管理,善于领会老板意图,善于部门协调等等。因此务必培养自己多方面的能力,包括管理,亲和力,察言观色能力,攻关能力等,要成为综合素质的高手,则前途无量,否则只能躲在角落看示波器!技术以外的技能才是更重要的本事!!从古到今,**日本,一律如此! rnrn  [4]多交社会三教九流的朋友!不要只和工程师交往,认为有共同语言,其实更重要的是和其他类人物交往,如果你希望有朝一日当老板或高层管理,那么你整日面对的就是这些人。了解他们的经历,思维习惯,爱好,学习他们处理问题的模式,了解社会各个角落的现象和问题,这是以后发展的巨大的本钱,没有这些以后就会笨手笨脚,跌跌撞撞,遇到重重困难,交不少学费,成功的概率大大降低!  ? rnrn  [5]知识涉猎不一定专,但一定要广!多看看其他方面的书,金融,财会,进出口,税务,法律等等,为以后做一些积累,以后的用处会更大!会少交许多学费!!     rnrn  [6]抓住时机向技术管理或市场销售方面的转变!要想有前途就不能一直搞开发,适当时候要转变为管理或销售,前途会更大,以前搞技术也没有白搞,以后还用得着。搞管理可以培养自己的领导能力,搞销售可以培养自己的市场概念和思维,同时为自己以后发展积累庞大的人脉!应该说这才是前途的真正支柱!!!        rnrn  [7]逐渐克服自己的心里弱点和性格缺陷!多疑,敏感,天真(贬义,并不可爱),犹豫不决,胆怯,多虑,脸皮太薄,心不够黑,教条式思维。。。这些工程师普遍存在的性格弱点必须改变!很难吗?只在床上想一想当然不可能,去帮朋友守一个月地摊,包准有效果,去实践,而不要只想!不克服这些缺点,一切不可能,甚至连项目经理都当不好--尽管你可能技术不错!        rnrn  [8]工作的同时要为以后做准备!建立自己的工作环境!及早为自己配置一个工作环境,装备电脑,示波器(可以买个二手的),仿真器,编程器等,业余可以接点活,一方面接触市场,培养市场感觉,同时也积累资金,更重要的是准备自己的产品,咱搞技术的没有钱,只有技术,技术的代表不是学历和证书,而是产品,拿出象样的产品,就可技术转让或与人合作搞企业!先把东西准备好,等待机会,  否则,有了机会也抓不住!      rn   rn  [9]要学会善于推销自己!不仅要能干,还要能说,能写,善于利用一切机会推销自己,树立自己的品牌形象,很必要!要创造条件让别人了解自己,不然老板怎么知道你能干?外面的投资人怎么相信你?提早把自己推销出去,机会自然会来找你!搞个个人主页是个好注意!!特别是培养自己在行业的名气,有了名气,高薪机会自不在话下,更重要的是有合作的机会...       rnrn  [10]该出手时便出手!永远不可能有100%把握!!!条件差不多就要大胆去干,去闯出自己的事业,不要犹豫,不要彷徨,干了不一定成功,但至少为下一次冲击积累了经验,不干永远没出息,而且要干成必然要经历失败。不经历风雨,怎么见彩虹,没有人能随随便便成功! 论坛

一位老工程师的忠告

06-04

诸位,咱当工程师也是十余年了,不算有出息,环顾四周,也没有看见几个有出息的!回顾工程师生涯,感慨万千,愿意讲几句掏心窝子的话,也算给咱们师弟师妹们提个醒,希望他们比咱们强! rnrn  [1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!  rnrn  [2]可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,因为技术只不过是你今后前途的支柱之一,而且还不是最大的支柱,除非你只愿意到老还是个工程师!       rnrn  [3]不要去做技术高手,只去做综合素质高手!在企业里混,我们时常瞧不起某人,说他“什么都不懂,凭啥拿那么多钱,凭啥升官!”这是普遍的典型的工程师的迂腐之言。8051很牛吗?人家能上去必然有他的本事,而且是你没有的本事。你想想,老板搞经营那么多年,难道见识不如你这个新兵?人家或许善于管理,善于领会老板意图,善于部门协调等等。因此务必培养自己多方面的能力,包括管理,亲和力,察言观色能力,攻关能力等,要成为综合素质的高手,则前途无量,否则只能躲在角落看示波器!技术以外的技能才是更重要的本事!!从古到今,美国日本,一律如此! rnrn  [4]多交社会三教九流的朋友!不要只和工程师交往,认为有共同语言,其实更重要的是和其他类人物交往,如果你希望有朝一日当老板或高层管理,那么你整日面对的就是这些人。了解他们的经历,思维习惯,爱好,学习他们处理问题的模式,了解社会各个角落的现象和问题,这是以后发展的巨大的本钱,没有这些以后就会笨手笨脚,跌跌撞撞,遇到重重困难,交不少学费,成功的概率大大降低!    rnrn  [5]知识涉猎不一定专,但一定要广!多看看其他方面的书,金融,财会,进出口,税务,法律等等,为以后做一些积累,以后的用处会更大!会少交许多学费!!  rnrn  [6]抓住时机向技术管理或市场销售方面的转变!要想有前途就不能一直搞开发,适当时候要转变为管理或销售,前途会更大,以前搞技术也没有白搞,以后还用得着。搞管理可以培养自己的领导能力,搞销售可以培养自己的市场概念和思维,同时为自己以后发展积累庞大的人脉!应该说这才是前途的真正支柱!!!        rnrn  [7]逐渐克服自己的心里弱点和性格缺陷!多疑,敏感,天真(贬义,并不可爱),犹豫不决,胆怯,多虑,脸皮太薄,心不够黑,教条式思维。。。这些工程师普遍存在的性格弱点必须改变!很难吗?只在床上想一想当然不可能,去帮朋友守一个月地摊,包准有效果,去实践,而不要只想!不克服这些缺点,一切不可能,甚至连项目经理都当不好--尽管你可能技术不错!        rnrn  [8]工作的同时要为以后做准备!建立自己的工作环境!及早为自己配置一个工作环境,装备电脑,示波器(可以买个二手的),仿真器,编程器等,业余可以接点活,一方面接触市场,培养市场感觉,同时也积累资金,更重要的是准备自己的产品,咱搞技术的没有钱,只有技术,技术的代表不是学历和证书,而是产品,拿出象样的产品,就可技术转让或与人合作搞企业!先把东西准备好,等待机会,  否则,有了机会也抓不住!        rn  [9]要学会善于推销自己!不仅要能干,还要能说,能写,善于利用一切机会推销自己,树立自己的品牌形象,很必要!要创造条件让别人了解自己,不然老板怎么知道你能干?外面的投资人怎么相信你?提早把自己推销出去,机会自然会来找你!搞个个人主页是个好注意!!特别是培养自己在行业的名气,有了名气,高薪机会自不在话下,更重要的是有合作的机会...       rnrnrn  [10]该出手时便出手!永远不可能有100%把握!!!条件差不多就要大胆去干,去闯出自己的事业,不要犹豫,不要彷徨,干了不一定成功,但至少为下一次冲击积累了经验,不干永远没出息,而且要干成必然要经历失败。不经历风雨,怎么见彩虹,没有人能随随便便成功! rnrn 这个是我的网站 www.soAsp.net ,一天能赚个几美元+几十人民币,已经不是什么问题了!!!! 论坛

悼念一位程序员

07-10

昨天上msn的时候,忽然发现老白的名字改成了,悼念马仔。rnrn认识马仔是在2002年我第一次创业的时候,跑到新会封闭。他在我们新会的公司里面实习。还记得第一次见面的情形,在临街的一个颇雅致的茶餐厅,他和小强一起出现。rnrn再见到他的时候是在广州封闭,他和其他一群华师的学生给我们做编码。那时大家都颠倒了日夜,白天睡觉,晚上开发,凌晨2点多的时候泡泡面,清早6点多的时候我跑去华师的食堂打包十来个肠粉回来给大家开早餐。开发条件太艰苦了,老林每次过来广州都啦我们出去打顿牙祭,但是我们没有更多的钱来改善条件了。rnrn最后一次见到他是什么时候已经记不清了,记得清的是每次发现一个新的bug,我都回跳起来大惊小怪的问,又是哪个家伙写的代码,小强过来审视一番后说,是马仔。其实我没有怪谁的意思,大概他做的比较多,留下的BUG相应的也就比较多吧。rnrn后来公司解散,小强毕业后去了海南,老白去了上海,老林回了老家,我出了国又回了成都,惟独没有马仔的消息,一直到上个月,他离我们远去了。rnrn我把msn的名字也改了,安杨问我是不是悼念李可文。马仔和李可文的年纪差不多,不过没有那么天才了,看来也没有那样的荣幸让csdn记住,他也曾经来过。rnrn安杨问我马仔是不是过劳死。我不知道,只听老白说马仔是在踢球的时候心脏病猝发而去的。安杨今天还在加班,他问我为什么不加班,我说我不想过劳死。过劳死似乎已经是程序员新的时尚了,我不追随潮流。rnrn默哀三分钟,为曾经给我制造了那么多bug的马仔,希望他在另一个世界过的好。也希望csdn的兄弟姐妹们过的好,大家不要加那么多的班。阿门。rnrnrn 论坛

】一位资深程序员感悟--编程老手与高手的误区

05-17

自从计算机问世以来,程序设计就成了令人羡慕的职业,程序员在受人宠爱之后容rn易发展成为毛病特多却常能自我臭美的群体。 rn如今在 Internet 上流传的“真正”的程序员据说是这样的: rn(1) 真正的程序员没有进度表,只有讨好领导的马屁精才有进度表,真正的程序员会让rn领导提心吊胆。 rn(2) 真正的程序员不写使用说明书,用户应当自己去猜想程序的功能。 rn(3) 真正的程序员几乎不写代码的注释,如果注释很难写,它理所当然也很难读。 rn(4) 真正的程序员不画流程图,原始人和文盲才会干这事。 rn(5) 真正的程序员不看参考手册,新手和胆小鬼才会看。 rn(6) 真正的程序员不写文档也不需要文档,只有看不懂程序的笨蛋才用文档。 rn(7) 真正的程序员认为自己比用户更明白用户需要什么。 rn(8) 真正的程序员不接受团队开发的理念,除非他自己是头头。 rn(9) 真正的程序员的程序不会在第一次就正确运行,但是他们愿意守着机器进行若干个rn30 小时的调试改错。 rn(10) 真正的程序员不会在上午 9:00 到下午 5:00 之间工作,如果你看到他在上午 9:00 工rn作,这表明他从昨晚一直干到现在。 rn…… rn具备上述特征越多,越显得水平高,资格老。所以别奇怪,程序员的很多缺点竟然rn可以被当作优点来欣赏。就象在武侠小说中,那些独来独往、不受约束且带点邪气的高rn手最令人崇拜。我曾经也这样信奉,并且希望自己成为那样的“真正”的程序员,结果rn没有得到好下场。 rn rn我从读大学到博士毕业十年来一直勤奋好学,累计编写了数十万行 C++/C 代码。有rn这样的苦劳和疲劳,我应该称得上是编程老手了吧? rn我开发的软件都与科研相关(集成电路 CAD 和 3D 图形学领域) ,动辄数万行程序,rn技术复杂,难度颇高。这些软件频频获奖,有一个软件获得首届中国大学生电脑大赛软rn件展示一等奖。在 1995 年开发的一套图形软件库到 2000 年还有人买。罗列出这些“业rn绩” ,可以说明我算得上是编程高手了吧? rn可惜这种个人感觉不等于事实。 rn rn读博期间我曾用一年时间开发了一个近 10 万行 C++代码的 3D 图形软件产品,我内rn心得意表面谦虚地向一位真正的软件高手请教。他虽然从未涉足过 3D 图形领域,却在rn几十分钟内指出该软件多处重大设计错误。让人感觉那套软件是用纸糊的华丽衣服,扯rn一下掉一块,戳一下破个洞。我目瞪口呆地意识到这套软件毫无实用价值,一年的心血rn白化了,并且害死了自己的软件公司。 rn rn人的顿悟通常发生在最心痛的时刻,在沮丧和心痛之后,我作了深刻反省, “面壁”rn半年,重新温习软件设计的基础知识。补修“内功”之后,又觉得腰板硬了起来。博士rn毕业前半年,我曾到微软中国研究院找工作,接受微软公司一位资深软件工程师的面试。rn他让我写函数 strcpy 的代码。 rnrn太容易了吧? rn错! rn这么一个小不点的函数,他从三个方面考查: rn(1)编程风格; rn(2)出错处理; rn(3)算法复杂度分析(用于提高性能) 。 rn在大学里从来没有人如此严格地考查过我的程序。我化了半个小时,修改了数次,rn他还不尽满意,让我回家好好琢磨。我精神抖擞地进“考场” ,大汗淋漓地出“考场” 。rn这“高手”当得也太窝囊了。我又好好地反省了一次。 rn rn我把反省后的心得体会写成文章放在网上传阅,引起了不少软件开发人员的共鸣。rn我因此有幸和国产大型 IT 企业如华为、上海贝尔、中兴等公司的同志们广泛交流。大家rn认为提高质量与生产率是软件工程要解决的核心问题。高质量程序设计是非常重要的环rn节,毕竟软件是靠编程来实现的。 rn我们心目中的老手们和高手们能否编写出高质量的程序来? rn不见得都能! rn rn就我的经历与阅历来看,国内大学的计算机教育压根就没有灌输高质量程序设计的rn观念,教师们和学生们也很少自觉关心软件的质量。勤奋好学的程序员长期在低质量的rn程序堆中滚爬,吃尽苦头之后才有一些心得体会,长进极慢,我就是一例。 rn现在国内 IT 企业拥有学士、硕士、博士文凭的软件开发人员比比皆是,但他们在接rn受大学教育时就“先天不足” ,岂能一到企业就突然实现质的飞跃。试问有多少软件开发rn人员对正确性、健壮性、可靠性、效率、易用性、可读性(可理解性) 、可扩展性、可复rn用性、兼容性、可移植性等质量属性了如指掌?并且能在实践中运用自如?。 “高质量”rn可不是干活小心点就能实现的! rn 我们有充分的理由疑虑: rn(1)编程老手可能会长期用隐含错误的方式编程(习惯成自然) ,发现毛病后都不愿相rn信那是真的! rn(2)编程高手可以在某一领域写出极有水平的代码,但未必能从全局把握软件质量的方rn方面面。 rn rn 事实证明如此。我到上海贝尔工作一年来,陆续面试或测试过近百名“新” “老”程rn序员的编程技能,质量合格率大约是 10%。很少有人能够写出完全符合质量要求的 ifrn语句,很多程序员对指针、内存管理一知半解,……。 rn领导们不敢相信这是真的。我做过现场试验:有一次部门新进 14 名硕士生,在开欢rn迎会之前对他们进行“C++/C 编程技能”摸底考试。我问大家试题难不难?所有的人都rn回答不难。结果没有一个人及格,有半数人得零分。竞争对手公司的朋友们也做过试验,rn同样一败涂地。 rn rn真的不是我“心狠手辣”或者要求过高,而是很多软件开发人员对自己的要求不够rn高。 rn要知道华为、上海贝尔、中兴等公司的员工素质在国内 IT 企业中是比较前列的,倘rn若他们的编程质量都如此差的话,我们怎么敢期望中小公司拿出高质量的软件呢?连程rn序都编不好,还谈什么振兴民族软件产业,岂不胡扯。 rn rn我打算定义编程老手和编程高手,请您别见笑。 rn定义 1:能长期稳定地编写出高质量程序的程序员称为编程老手。 rn定义 2:能长期稳定地编写出高难度、高质量程序的程序员称为编程高手。 rn根据上述定义,马上得到第一推论:我既不是高手也算不上是老手。 rn rn在写此书前,我阅读了不少程序设计方面的英文著作,越看越羞惭。因为发现自己rn连编程基本技能都未能全面掌握,顶多算是二流水平,还好意思谈什么老手和高手。希rn望和我一样在国内土生土长的程序员朋友们能够做到: rn(1)知错就改; rn(2)经常温故而知新; rn(3)坚持学习,天天向上。 论坛

没有更多推荐了,返回首页