免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 6474 | 回复: 24
打印 上一主题 下一主题

强烈推荐:一个计算机高手的成长(转载) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-05-26 10:36 |只看该作者 |倒序浏览
刚看了一边,使自己很有想法,写的不错
和大家分享一下  原文如下

    这些日子我一直在写一个实时操作系统内核,已有小成了,等写完我会全部公开,希望能   

    够为国内IT的发展尽自己一份微薄的力量。最近看到很多学生朋友和我当年一样没有方向   

    ,所以把我的经历写出来与大家共勉,希望能给刚入行的朋友们一点点帮助。   

    一转眼我在IT行业学习工作已经七年多了,这期间我做过网页,写过MIS、数据库,应   

    用程序,做过通信软件、硬件驱动、协议栈,到现在做操作系统内核和IC相关开发,这中   

    间走了很多弯路,也吃了不少苦。   

    我上的是一个三流的高校,就连同一个城市的人多数都不知道。因为学校不好也就没   

    有指望能靠学校名气找一个好工作。所有的希望都寄托在自己的努力上了,大一开学前的   

    假期我就开始了学习,记得我买的第一本书是《计算机基础DOS3.0》,大家别吓着了,其   

    实当时已经普及了DOS6.22了,只是我在书店里看到了DOS4.0,5.0,6.0的书,以为像英语   

    那样是第四、五、六册,记得当时到处找DOS1.0,现在想想也幸好我没有找到:)开学前   

    我学完了PASCAL,那时既没有计算机也没有人可以请教,我连程序是什么的概念都没有,   

    只好死记硬背代码,然后拿纸写,我一直到大三才有了一台486,在这之前用纸写了多少程   

    序我也记不清楚了,只知道最长的一个我拿A4大小的草稿纸写了30多页,我的C语言、C++   

    、VC都是在这样的条件下入门的。所以说条件是可以克服的,希望我的经历多少给条件艰   

    苦的同学们一点信心。第一次上机是在我姐夫的机房,我的心情激动的无与伦比,但是一   

    上机我立刻傻了眼,他们用的是英文版的Win3.1,我的那点DOS知识都见了鬼,上机提心吊   

    胆的一阵瞎摸,一不小心把Word弄成了全屏,怎么都还不了原,当时真是心急如焚,我以   

    为机器被我弄坏了。第一个C语言程序,就是那个经典的HelloWorld,我调了几个星期,上   

    机机会非常少,也没有书告诉我开发环境(TC2.0)需要设置,而且   

    开始我都不知道有编译器,我甚至自作聪明把写好的程序扩展名从.c改成.exe,结果可想   

    而知。大一学完了C、X86的汇编、数据结构、C++。由于精力都花在自学上了,大一下四门   

    课挂了彩,三类学校就是这点好,挂上一二十门也照样毕业。不过扯远点说,我那么刻苦   

    都及不了格,可见我们国家的计算机教育有多死板。   

    大二准备学VC和BC,当时难以取舍,后来选了VC,不为别的,只为书店里两本书,VC   

    那本便宜6块钱。我的努力在班上无人能及,学的日夜不分,大三有了计算机后更是如此,   

    很多次父亲半夜教训我说我不要命了,我一直觉得自己基础差,记忆又不行,条件也不好   

    ,所以觉得只有多花点时间才能赶上别人。居然后来有许多朋友说我有学计算机的天赋,   

    让我哭笑不得。我用的是486,16M内存,1G硬盘,当时同学们的配置都是P166MMX,我安装   

    一个Windows NT4.0需要一个通宵,编译一个BC5.0向导生成的程序需要近两个小时,我的   

    显示器是个二手的,辐射非常大,开机屏幕冒火花,看起来很酷的:),有一次程序写的   

    太久,觉得怎么白色的编辑器背景变成了紫色,以为显示器坏了,后来才发现眼睛不行了   

    ,不过说来也奇怪,到今天我的视力还能保持1.5,真是个奇迹。但是就是那台破机器陪伴   

    了我两年,让我学会了VC、Delphi、SQLServer等。后来那台机器给我阿姨打字用,据她说   

    一天她正打的开心,一股青烟夹着火苗从显示器钻出来,之后它才寿终正寝。   

    大三假期找了个机会在一个计算机研究所实习,与其说实习不如说是做义工,工作了两个   

    月一分钱没有拿。但是这两个月对我的发展帮助很大,让我早一步了解了社会,刚去的时   

    候我当然是一窍不通,在那里我熟悉了网络,学会了Delphi和Oracle。由于工作很认真,   

    得到了比较好的评价,在一位长者的引荐下,我开始和他们一起做项目,这使我在大三大   

    四就有了自己的收入,大四又找了两家MIS公司兼职,虽然钱不多,但是在学生期间有100   

    0多的收入我已经非常满足了,我终于用自己赚的钱把计算机换了。大四下开始找工作,这   

    时我的工作经验已经比较多(当然现在想想非常幼稚),开始听父母的想去那个研究所,   

    实习过那个部门也希望我能去,但是不知道为什么最后不了了之,这种单位就是比较官僚   

    ,我一气之下就到了我兼职的一个公司做MIS的TeamLeader。在大三到毕业一年的时间,做   

    过了各种MIS,从煤气、烟厂、公安、铁路、饮食到高校,什么有钱做什么,工作也很辛苦   

    ,经常加班和熬通宵,从跟客户谈需求到设计、编码、测试、交付都要上。那时觉得很有   

    成就感,觉得自己还不错,现在想想真是很肤浅。   

    刚走上工作岗位的学生很容易被误导,各种开发工具让人眼花缭乱,同时也觉得很受   

    公司器重,但这样工作永远是一个低层次的开发者。不要跟我说什么系统分析有多么多么   

    重要,多么多么难。你以为自己跟用户谈需求做设计就是系统分析和设计了吗,国内又有   

    几个公司能够做的很到位很规范?我是ISO9000内审员,也在Rational公司受过多次培训,   

    拿了4个证书,还有一个公司让我去做CMM。这些我听过很多,但是很多事情到国内就变了   

    性质,一个公司不是通过了ISO9000或者CMM就能规范了,我现在在一家有几十年历史的外   

    企工作,里面的管理不是一般国内企业能及的。作为一个毕业不久以前没有步入过社会的   

    学生,几乎不可能在很短的时间掌握系统分析和设计,面向对象、UML只是一个工具,关键   

    是人本身的思想,不是说你熟悉了C++、Rose就能够做出好的设计,相反如果你具备了很高   

    的素质,你可以用C写出比别人用C++更加模块化的程序。   

    话说远一些,国内软件开发行业有一个怪圈,很多人觉得VC > Delphi > VB,真是很   

    搞笑。这几个软件我都做过开发,说白了他们都是工具,应该根据应用的需要选择采用哪   

    个,而不是觉得哪个上层次。如果你因为用某个开发工具很有面子而选择的话,只能说明   

    你很浅薄。如果说层次,那么这些工具都不上层次,因为它们用来用去都是一些系统的AP   

    I,微软的朋友不会因为你记住他们多少个API或者多少个类就会觉得你很了不起,你永远   

    只是他们的客户,他们看重的是你口袋里的银子。我也做过系统内核,我也封装过很多AP   

    I,同样我也不会看重那些使用这些API做二次开发的客户,除非他能够作出自己独到的设   

    计。   

    至于有人认为C++ > C那更是让人笑掉大牙,不妨你去打听一下,现在有几个操作系统   

    内核是用C++写的,又有几个实时系统用的是C++,当然我也不是说C++不好,但是目前的内   

    核和实时系统中C++还无法与C匹敌,至于说C++适合做应用系统的开发那是另外一回事。所   

    以我的观点是不在于你用什么工具和语言,而在于你干什么工作。你的设计体现了你的技   

    术层次。   

    这样干了一年我觉得非常苦闷,做的大多数都是熟练工种的活,个人技术上没有太多   

    的提高也看不到方向。所以决定离开这个城市去上海,寻求更好的发展,并且打算放弃我   

    以前的MIS转到通信行业。   

    

论坛徽章:
0
2 [报告]
发表于 2007-05-26 10:38 |只看该作者
    我现在已经在这家新公司上了一个多月的班,开始非常艰难,现在慢慢适应了。第一   

    个月结束时,Team Leader找我谈话,说我是新进员工中最优秀的一个,我心里很欣慰,这   

    也算对我努力的一个肯定吧。在这里还要感谢我的女朋友,她给了我很大的支持和鼓舞,   

    每次在我动摇的时候她都在鼓励我,让我坚持自己的理想,刚来上海是她让我不要勉强去   

    做MIS,这次也是她让我顶住了月薪过万的诱惑,没有她我可能不会有今天的成绩。   

    现在的公司有自己的操作系统,自己的CPU、DSP和其它芯片,在这里我能学到世界上   

    最先进的技术,我们的设计开发不再完全依赖别人的硬件和系统,这让我很开心。我打算   

    等工作步入正轨后,全力学习新的知识,实现我的理想。   

    在后面的两年里我给自己定下了几个目标:   

    一.努力做好本职工作,在工作上得到公司和同事们的认同;   

    二.努力学习IC硬件设计知识,多向同事请教,并利用一切机会多实践;   

    三.实现我的实时*作系统的主要部分,完成TCP/IP协议栈模块,并免费发布源代码;   

    四.和我女朋友结婚并买一套小房子,这是最重要的,因为我明白事业是可以重来的,但是   

    珍贵的感情很难失而复得。   

       

    在这里提一下我现在开发的操作系统,它是一个实时嵌入式系统,目前支持以下特性:   

       

    a.支持时间片轮转调度和基于优先级调度,最多64个优先级;   

    b.抢占式实时内核;   

    c.为了便于移植,主体用标准C实现;   

    d.汇编代码非常少,不到100行;   

    e.支持任务管理,各任务有独立的堆栈;   

    f.进程同步和通信目前完成了Semaphore,Message Queue正在调试;   

    g.实现了定时系统调用;   

    h.可以在windows上仿真调试   

    我还打算下一步实现优先级反转保护,Event Flag,Data Pipe,内存管理(以前实现过)   

    、驱动接口等。   

    在这之后我还会努力完善它,比如加入文件系统,协议栈、调试接口等。希望朋友们提出   

    自己的意见和建议,在此不胜感激!   

    后记:   

    就像有的朋友说的,我的经历或许会给一些朋友产生误导,在这里我必须说明一下。   

    我来上海以前学习过于拼命,常常晚上只睡3个多小时,我身高1米71,那时只有108斤(我   

    现在130多),家人也说我这样拼命活不过60岁,但是当时的我太固执,我对他们说只要能   

    实现理想活50岁我就够了。那时的拼命使我的身体受到了影响,有一次早上突然腰肌剧痛   

    难忍,痛的我倒在床上站不起来。虽然我现在已经比较注意,但有时候还会隐隐作痛。后   

    来在女朋友说服了我,来上海以后我不再如此。我经常引用父亲的一句话“身体是革命的   

    本钱”。   

    而且我也发现拼命不是办法,我可以熬一两个通宵,最多的一次我连续工作了三天三夜,   

    但是我半个月都没有恢复过来,这样是不是得不偿失?学习工作应该是一个长期的过程,   

    像马拉松而不是百米冲刺。我现在非常注意调整学习和工作的强度,我要保证每天尽量有   

    相对充沛的精力,一些年轻的朋友觉得自己也应该拼命努力,这让我多少有些担心,如果   

    我的故事能让你在学习工作上多一点兴趣,我会感到很开心,但如果误导了某些朋友,让   

    你做一些不值得的付出,我会感到很内疚。   

    技术没有贵贱只分,我以前换行业是因为自己的兴趣所致,而不是对哪个行业有什么   

    偏见。我希望我的经历不要给朋友一个错误的导向,觉得我始终向更高的技术发展。其实   

    各行各业做到顶尖都是很困难的。话又说回来虽然技术没有贵贱,但是门槛是有高低的,   

    无论如何,做IC的门槛要比做网页的高,这一点无可否认。国家各种人才都是需要的,但   

    是作为个人奋发向上的想法还是应该有的,努力在自己喜欢的行业上做的更好,而不应该   

    停留在比较肤浅的层次上。   

    我是一个自己觉得比较有自知之明的人,或许我最大的优点就是知道自己有很多缺点   

    :)。我的故事中很多的曲折和错误都是由我的缺点造成的,希望大家用审慎的眼光看待   

    我的经历,不要被我的“花言巧语”所迷惑。我学习有些随心所欲,这给我带来了无尽的   

    麻烦,也大大阻碍的我的发展。记得我小时候成绩比较出色,但是后来学习严重偏科,导   

    致我中学成绩一再滑坡,也没有考上什么好的学校,小时候的一个朋友,当时的成绩和我   

    相仿,但是没有我这个缺点,她上了清华,后来在去了美国深造,在一个著名导师手下研   

    究理论科学,这未尝不是一条更好的出路。另外我的学习方法也是在不断改善中的,过去   

    的学习过于讲究数量和时间,那样学习既苦而已效率不高,现在我非常注意学习的效率和   

    技巧,这样才是学习的捷径(当然不是指投机取巧),比如说学一相对陌生的技术,如果   

    有条件,不妨问一问有经验的人,不需要问很多,往往他不经意的几句话会给你非常大的   

    帮助,甚至超过你看一个星期的书。带着这样的思想再去学习你会节省很多时间,这样何   

    乐不为呢?这些年中我学了不少的东西,由于开始非常盲目,所以学的东西杂乱无章,现   

    在回想起来让我啼笑皆非,我把大量的时间浪费在一些没有必要深入了解的知识上,毕竟一   

    个人的精力是有限度的。很多朋友很我一样都背过五笔字形,的确它是个不错的输入法,但是对一个研发人员它绝对不值得你去背,你的时间应该花在有价值的地方。我这样的事情还做过很多,我背过CCED、WPS的命令和快捷键,在dBase基本退出   

    历史舞台后我还花了很多时间去学习它的使用。所以我的学习在前期缺乏规划,没有明确   

    的短期目的、中期目标,只有一个虚无飘渺的长期的理想。这就像做设计一样,好的设计   

    是从需求抽象到代码有很多过程,而不能得到了需求就立刻开始开始编码。   

    当然这么些年的学习和工作多多少少有些收获,下面我说说我的一些学习的心得,这   

    些方法未必正确,我也在不断探索和改进中。我的学习和工作有相对明确的目标,我不会   

    一时心动而去学习某一技术,在下决定之前我会考虑很多,包括长期的发展,个人路线的   

    规划,需要付出的代价、可能遇到的困难及解决的办法等等,在决定后还会制定更加明确   

    的计划,包括短期、中期和长期的,身边可以利用到的资源(包括好的书籍、资料、软硬   

    件环境,也包括有经验的朋友或者师长),以及每一个阶段是怎么过渡到高一阶段的计划   

    ,往往在一个学习阶段一旦上路后会走的相对顺利,但是跨阶段通常比较麻烦,比如从学   

    习基础知识转到实践。另外我买书也有自己的方法,现在世面上高质量的书远不如低质量   

    书多,对于一个陌生的技术,往往在第一次买书会选择错误,即使买到一本好书但是它的   

    方向也未必适合你,所以我通常会先在网上查找一些该技术的介绍,有了一点点概念后再   

    去买一本比较薄、相对便宜并且内容相对泛泛而谈的书,这是国内作者最善于写的书:)   

    ,再把它浏览一遍后我就会基本明白这门技术的要点,后面买书和制定计划就会明确的多   

    。否则一开始就想找本好书往往比较困难,而且买回来后努力学习,有时候学了一半才现   

    是本低质量的书或者是相对过时技术,让人非常懊恼。另外让有经验?   

    人帮你介绍,通常也是一个不错的选择。   

    有些朋友想学通信、嵌入式开发,但总觉得自己没有软硬件环境,我就按我的了解给   

       

    大家介绍一下怎么建立这样的环境,当然我了解的只是我学习和工作的方向。通信我做的   

    是数据网方面的工作,包括TCP/IP、二三层交换、对接入网、H.323和软交换也有一点认识   

    。这些软硬件环境都是可以在PC上构建的。你甚至可以在一个没有网卡的PC上建立一个包   

    含多个路由器、接入服务器、VoIP网关、网守、主机等的仿真网络环境,而且与实际的网   

    络相当接近,当然这需要你有清晰的网络概念和一定的网络知识,我一直在努力开发一套   

    软件将这个过程简化,目前试验已经做完,我可能会将它融入我的*作系统外围扩展软件   

    中。这样的方法我无法用简单的语句讲的很清楚,我可以说一下大概的思想,就是在PC上   

    实现仿真网卡,(知道Windows怎么在没有网卡的机器实现虚拟网卡技术的朋友都应该会明   

    白),然后每一个仿真网卡对应一个虚拟设备,如路由器或者主机。你也可以借助第三方   

    工具完成部分工作,如VmWare等。我现在就是利用一个仿真网卡做自己的开发的。   

    至于嵌入式开发环境更加容易实现,PC就是一个非常大的硬件平台,现有的嵌入式操   

    作系统通常都支持X86,你可以在上面做开发,通过软盘Boot或者使用虚拟机装载,我用V   

    xWorks做了试验,在一台PC上跑Windows和VxWorks两个系统。另外Windows上的兼容DOS的   

    16位仿真X86环境也为很多*作系统提供了绝佳的试验环境,我的操作系统在Windows上就   

    是这样实现的。Linux在嵌入式中应用也比较广泛,它在网上有大量的资料,而且也相对比   

    较容易实践。同时很多完善的嵌入式开发环境支持软件仿真,如Tornado、WinCE等。

论坛徽章:
0
3 [报告]
发表于 2007-05-26 22:51 |只看该作者
好老的贴了,我在3年前就是看到这个贴子才把嵌入式设计人员视为天人的。从此不断努力走上了现在的路。再见此贴,感慨。我已经快到了贴主那个年纪了,可是技术却没法跟他比。自己鄙视一个。

论坛徽章:
0
4 [报告]
发表于 2007-05-26 23:03 |只看该作者
toooooooooooooooooooooooold
牛人方方面面都有,把自己想做的事做的满意的就是牛人……

论坛徽章:
0
5 [报告]
发表于 2007-05-27 01:24 |只看该作者
牛人年年有,今年特别多

论坛徽章:
0
6 [报告]
发表于 2007-05-27 02:42 |只看该作者
从头看到尾

不是"佩服"两字所能形容

论坛徽章:
0
7 [报告]
发表于 2007-05-27 09:16 |只看该作者
只能说学习新东西更让人有成就感吧
各种技术的回报率都差不多的。。。

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
8 [报告]
发表于 2007-05-27 14:54 |只看该作者
很酷的显示器

论坛徽章:
0
9 [报告]
发表于 2007-05-27 22:39 |只看该作者
原帖由 xinglp 于 2007-5-27 14:54 发表
很酷的显示器

我上一个公司分给我的显示器比这个强不了多少,我为此眼睛加了100多度

论坛徽章:
0
10 [报告]
发表于 2007-05-28 08:54 |只看该作者
以前看过了!一句话:天道酬勤
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP