norains的《那些年啊,那些事——一个程序员的奋斗史 》摘录(一)

来源:互联网 发布:ubuntu命令行删除文件 编辑:程序博客网 时间:2024/05/17 01:13

1.其实对于刚入门的初学者来说,不应该一上手就去用MFC,或是C#之类的语言。虽然说这些高级的东西能够大大减轻工作压力,加快工作效率,但对于程序员个体来说,又得到了什么,又学到了什么?这些高级玩意,不是给初学者用的,而是为高手准备的。因为对于高手而言,他们已经知道了很多东西,已经没有任何必要从一个框架一门语言中去学到什么,而只需要拿着这个工具去解决问题即可。而反观菜鸟,如果要提升技术,那么背后的那些东西肯定是需要知道的,可偏偏类似于C#的这种高级语言把这些都完美封装了,所以很多一开始就上手C#的程序员,很多年过去了,也做了不少东西,也解决了不少难题,但对于背后的为什么可以这么做,却还是不知其所以然。因此经常可以看到一个用C++做了五六年,然后转到C#做个一两年,在某些新技术方面会比一开始就用C#,并且用了八九年的工程师的领悟性还强。


2.人所要解决的,首要是温饱问题,如果还饿着肚子,谈何来的理想?那么是不是初学者注定就这么昏昏碌碌下去?其实并不尽然。因为在工作之前,其实有一段时间,刚好可以将这基础打好,那就是——大学四年!大学的英文是University,谐音为“由你玩四年”,想必这是中国大学最真实的写照。除了那为数不多的几所名校以外,大部分的大学都是放羊式,不管你平时干什么,不管你是不是真的学到了东西,只要考试及格就给你发毕业证。更为糟糕的是,大学老师水平也是良莠不一,比如第一节课,老师会大言不惭地说:这门课其实我也没学过,这学期我们就来一起学习!然后上课时,就把课本照着念一遍,匆匆了事。类似的事件,其实不在少数。但这些,并不能作为自己懒惰的理由。其实从另一个角度来说,老师的放任不管未必不是件坏事,至少学业上不会有太多的压力,自己能够凭着喜好去学习其它的知识


3.不过这些技术书籍段伏枥能看懂吗?其实段伏枥大部分没有看懂,但他知道,看了还有希望,不看就只剩下绝望。很多初学者开始看技术书籍的态度是不正确的,拿起一本书,翻几下,发现不懂,便放下了,心理想着等以后能看懂了再看。其实这是一个伪命题,如果都懂了,那还看这书干什么?其实陶潜所说的“好读书,不求甚解”,其实是非常有道理的。对于一个初学者来说,当让开始一个从来没接触过的东西,他绝对是一片茫然,无从下手,甚至于借助搜索引擎也不知道用什么关键字;而如果以前有看过相关的书籍资料,虽然自己根本就没记住任何内容,但至少知道在哪里看过,这时候只要按照印象去搜寻,绝对比盲目搜索更为有效率


4.只见老师在黑板上洋洋洒洒地写了几道题,然后面向同学,说到:“请懂的同学上来解答一下这问题!”
    
    段伏枥一听,来劲了,大喊:“董德同学,上!”因为“董德”和“懂的”同音,刹那间,教室沸腾了,“董德,上!”类似的声音,不绝于耳。可怜的董德童鞋,还正在和周公约会,被这么一闹,醒了,茫然不知所措,求助式地望向旁边的段伏枥。
    
    段伏枥感受到了董德的目光,义正言辞地指示了一条明路,说:“老师让你到上面签到。”
    
    “哦……”可怜的董德童鞋,脑袋晕晕地还没回到现实,屁颠屁颠地跑到讲台。题自然是不会做的,董德还以为真要签到,站在一旁看着老师。
    
    就这么互相盯了几秒,老师终于忍不住这位嘴角还留着哈喇子的童鞋了,说:“你还呆着干嘛?做题啊!”
    
    “我不会做啊……”
    
    老师显然有点怒了:“你不会做,你上来干嘛?我让懂的同学上来啊!”
    
    董德一脸无辜地说:“是啊,我就是董德……”
    


5.这是中国高等教育的悲哀。如果是理工科,昏昏碌碌也就罢了,大不了出来后再重新来过,也不至于会有很大的危害;但学医的,如果也是如此,却有点漠视生命了。当然不是说学医出来的都是如此,毕竟还是有很多在校时是非常努力的,医术也毫不逊色的;可问题在于那一小部分混日子的人呢?学校会不会对他们严格要求,甚至说不给予毕业?但估计大部分学校为了怕影响升学率或就业率之类,也会睁一只眼闭一只眼吧。当世人认为这是再正常不过的时候,这个社会就真的病了,并且病得不轻。
     
     学理工科的在学校学得不精,出来后可以加倍努力,即使错了,还可以重新再来;但医生面对的是生命,永远不能犯错,否则将会给很多家庭带来痛苦。段伏枥突然觉得,程序员是一个非常好的职业。程序员想让电脑做什么,电脑就会按自己的意思做什么,无论是一次,还是两次,甚至是无数次,都同样按照自己的意愿进行;试问,还有什么行业,能够有如此的控制力?即使程序出错了,只要还在调试阶段,发现了就可以直接改掉,根本就不存在什么错误成本。如果是医生,如果给患者诊断错了,很可能连补救的机会都没有。从这个角度来说,难道程序员不是一个非常美好的职业吗?


6.老鸟将自己的经验传授给菜鸟,并不代表老鸟会损失什么,相反,可能正因为老鸟直接告诉了菜鸟答案,让菜鸟省略了探求的过程,反而不利于菜鸟的成长。从另一个角度来说,老鸟和菜鸟本来就不在同一层次,想象一下:老鸟在10楼,菜鸟在1楼,两人要同时到达20楼,哪个人的优势更大?除非老鸟止步不前,否则老鸟只要还会继续前进,那么菜鸟就很难赶上老鸟。当然,如果菜鸟非常天才,这种可能性还是存在的;可事实是,世间哪来那么多的天才?这地球上,从人类诞生至此,爱因斯坦也只有一个。如果再从另外一个角度来看,即使老鸟将自己的所得传授给菜鸟,怕有一天菜鸟会超过自己,其实也并不是件坏事。这一担心会让老鸟不敢固步自封,而是不停地学习,以避免被淘汰。


7. 程序员是不幸的,因为只要还想继续呆在这行业,那么就必须一直在学习,永无止尽;程序员又是幸福的,因为这行业永远不会有尽头,永远不会学完的东西,只要不停下前进的步伐,那么就不会担心被取代。


8.其实作为程序员也是如此。作为一个真正的程序员,必须要有追求完美的理念,但却不能执着于完美。这看似矛盾的双方,却是理想和现实的妥协。假如在一家小公司,客户要求产品月底交付,但到了月底,发现附属软件还不够完美,还有点小BUG,不过不影响使用。如果你是决策者,你是决定将产品交给客户,还是延迟?假如延迟的话,很可能会让客户觉得公司技术水平不行,从而不买单,以致于公司前期投入打水漂,影响公司的生存;而如果按期交付,但客户可能会发现软件并不十分完美,但公司却能如期获得收入,能够持续正常运转,进而后续还有机会给客户修正BUG。交付给客户有BUG的软件,表面上看是损人不利己的行为,但却争取了自己生存的机会,也得到了挽救过失的可能。所以很多小公司,其实前几批的产品质量都不咋地,并不是他们不想去完善,也不是没有水平去实现,而是现实所逼,迫使他们不得不首先为公司的生存做考虑。所谓的无奸不商便是如此,但却又透露出几分无奈、


9.并且经过这一年的工作,段伏枥更加明白,在工作中绝对是不会有人像上学时有老师在上面进行谆谆教导的,一切需要依靠的便是自己。既然自己是菜鸟,既然还要靠自己提高水平,那么有一个工资相对较高的工作,为何不去选择呢


10.其实这里黄华中运用了一个领导特有的管理艺术,就是给下属空口承诺。什么东西最廉价?就是这种空口承诺。为什么领导最喜欢这种空口承诺呢?因为它可以不用兑现。即使公司真的发展起来了,到时候下属觉得没有得到相应的利益,像领导质询的时候,领导可以拍拍屁股说道:“啊?这个我没说过啊!”这种承诺一文不值。如果领导真的有心的话,那么这些承诺就应该明文写下来,比如员工可以获得一年利润的百分之多少等等。只不过很多菜鸟,特别是应届生根本不懂这点,总是以为:既然领导说了,只要自己真的付出,那么肯定不会亏待自己!即使别人对此的善意提醒,菜鸟也会觉得,那是以小人之心妒君子之腹,自己所遇到的领导,肯定不是这样的人。而这一切,恰好正中领导的下怀,他们所需要的,就是这样的效果。此时的段伏枥,恰好犯的就是这样的错误,他已经被黄华中所描绘的前景,给深深地套牢了。