• 一个计算机高手的成长


    转自天涯    

    加油!


    这些日子我一直在写一个实时操作系统内核,已有小成了,等写完我会全部公开,希望能够为国内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公司兼职,虽然钱不多,但是在学生期间有1000多的收入我已经非常满足了,我终于用自己赚的钱把计算机换了。大四下开始找工作,这时我的工作经验已经比较多(当然现在想想非常幼稚),开始听父母的想去那个研究所,实习过那个部门也希望我能去,但是不知道为什么最后不了了之,这种单位就是比较官僚 ,我一气之下就到了我兼职的一个公司做MIS的TeamLeader。在大三到毕业一年的时间,做过了各种MIS,从煤气、烟厂、公安、铁路、饮食到高校,什么有钱做什么,工作也很辛苦,经常加班和熬通宵,从跟客户谈需求到设计、编码、测试、交付都要上。那时觉得很有成就感,觉得自己还不错,现在想想真是很肤浅。
    刚走上工作岗位的学生很容易被误导,各种开发工具让人眼花缭乱,同时也觉得很受公司器重,但这样工作永远是一个低层次的开发者。不要跟我说什么系统分析有多么多么重要,多么多么难。你以为自己跟用户谈需求做设计就是系统分析和设计了吗,国内又有 几个公司能够做的很到位很规范?我是ISO9000内审员,也在Rational公司受过多次培训,拿了4个证书,还有一个公司让我去做CMM。这些我听过很多,但是很多事情到国内就变了性质,一个公司不是通过了ISO9000或者CMM就能规范了,我现在在一家有几十年历史的外企工作,里面的管理不是一般国内企业能及的。作为一个毕业不久以前没有步入过社会的学生,几乎不可能在很短的时间掌握系统分析和设计,面向对象、UML只是一个工具,关键 是人本身的思想,不是说你熟悉了C++、Rose就能够做出好的设计,相反如果你具备了很高 的素质,你可以用C写出比别人用C++更加模块化的程序。
    话说远一些,国内软件开发行业有一个怪圈,很多人觉得VC > Delphi > VB,真是很搞笑。这几个软件我都做过开发,说白了他们都是工具,应该根据应用的需要选择采用哪个,而不是觉得哪个上层次。如果你因为用某个开发工具很有面子而选择的话,只能说明你很浅薄。如果说层次,那么这些工具都不上层次,因为它们用来用去都是一些系统的API,微软的朋友不会因为你记住他们多少个API或者多少个类就会觉得你很了不起,你永远只是他们的客户,他们看重的是你口袋里的银子。我也做过系统内核,我也封装过很多API,同样我也不会看重那些使用这些API做二次开发的客户,除非他能够作出自己独到的设计。
    至于有人认为C++ > C那更是让人笑掉大牙,不妨你去打听一下,现在有几个操作系统 内核是用C++写的,又有几个实时系统用的是C++,当然我也不是说C++不好,但是目前的内核和实时系统中C++还无法与C匹敌,至于说C++适合做应用系统的开发那是另外一回事。所 以我的观点是不在于你用什么工具和语言,而在于你干什么工作。你的设计体现了你的技术层次。
    这样干了一年我觉得非常苦闷,做的大多数都是熟练工种的活,个人技术上没有太多的提高也看不到方向。所以决定离开这个城市去上海,寻求更好的发展,并且打算放弃我以前的MIS转到通信行业写到这里不能不提到我女朋友,我们是在来上海前半年认识的,她大四在我公司实习,公司派她给我写文档,我们的感情发展的很快。她告诉我很多事情,她家原本是改革开放的第一批暴发户,她母亲爱打牌,输掉了几百万,还欠了很多债,她有男朋友,但是她对他没有感情,只因为他给了她母亲两万多块钱,后来还强迫她写了四万块的借条,她男朋友背叛过她并且不止一次打她,现在逼她结婚不然就要她还钱。这人居然还是一个高校的老师!她母亲把父亲给她的学费花了,因为拖欠学费她没有办法拿到毕业证。她母亲现在有病需要钱,我拿出了自己的一点积蓄并且跟朋友们接了一些,替她交了学费并给她母亲看病(后来才知道看病的钱又不知所终,就连她母亲是不是有病我都不知道,但她也是没有办法)。这个时候我家知道了一些事情,坚决反对我和她在一起,她原来的男朋友也极力破坏。无奈之下我们决定早一定离开这个伤心的城市,并且瞒着我们家。由于时间仓促,我只准备了4000块钱,她仅有的几百块钱也被她母亲要去了,我买了三张票,一张是中午的,两张是晚上的,中午我的家人把我送上船,他们一离开我就下了船,我和她乘坐晚上的船离开了这个我和她生活了很多年的城市,带走的只是一身债务。没有来过上海的我们两个性倔强,都不愿意去麻烦同学和朋友。来到上海是傍晚6点半,我们都不知道该去哪里,我们找了一个20块钱的旅馆,这个房间连窗户都没有,7月份的天气酷热难耐,房间里非常闷热。第二天我们开始租房子,因为身上的钱不多,我们基本都是步行,花了一个星期时间,不知道在浦东转了多少圈后找到了一个400块的房子,但是我们都不了解上海是付三压一,还要付半个月的中介费,买了一些锅碗瓢盆后,我们身上只有800块钱了,工作都还没有着落,这800块钱要支持到我们拿到第一个月工资,为了省钱我们自己做饭,每天买菜只花两块钱,她非常喜欢吃(也可能她在大学经常挨饿的愿意),看到她现在这样省吃俭用我真的很不忍心。她以前的男朋友也没有放过她,经常打电话来骚扰,并且来上海看她,还说了不少恐吓她的话,她过于善良,说他以前毕竟帮助过她,叫我不要与他一般见识。以后的每天在家就是苦等面试通知,原本我想迅速找一家MIS公司解决眼前的困难,但是她坚持让我不要放弃自己的理想,终于功夫不负有心人,我找到了一家通信公司,4000块的工资虽然赶不上MIS公司给我开出的价位,但也够在上海生存。她也找到了工作,第一天上班她哭了,这是她来上海第一次流泪,我心里很难受也很感动。
    由于是全新的行业,我把自己降到了零点,我学的VC、Delphi、数据库派不上用场,摆在我面前的是嵌入式、协议、信令一些我从未接触过的知识。我知道我没有退路,于是拼命的学习,我把自己当做一个应届毕业生一样,一分努力一分收获,半年过去我终于熟悉了工作,并且得到了公司的表彰,薪水也加了一级。后面的日子里我们省吃俭用,把欠朋友的1万多块钱还了,日子终于上了正轨。这时女朋友告诉我她想考研究生,我也很支持 ,于是她辞职在家备考。

    加载=============

    术业有专攻,有些人向硬件方面发展了,有些人向软件方面发展了,全凭你的兴趣。
    一流高手编程是有必要学的,学硬件必学汇编,不学汇编的话或是说不能灵活运用汇编,最多就是一个装电脑的(DIYer),像我以同学搞硬件的,自己开发了一款在手机上运行的五笔字型输入法,还申请了专利,强啊。
    学软件的话C语言必会,C语言号称计算机领域中的英语,必须掌握其算法之类的精华。软件方面种类很多,看你的兴趣,像应用软件类、数据库类等等。
    有钱的话上北大青鸟APTECH,可学习C、VB、VC、网页制作、数据库等每学期大约在6000左右(2年前的价格),一共三个学期(零基础的话四个学期),第三个学期价格还要再高一点。如果顺利通过每个学期的考试,将得到ACCP证书(很有名的国际认证)和国家劳动部OSTA证书。具体情况你上网查查你当地的北大青鸟培训中心。
    如果没钱的话可以考一些相对便宜点的认证考试,比较广泛的是NCRE国家计算机等级考试,应该有耳闻吧,不过业内对此证书认知程序极低,而且NCRE考试与实际严重脱轨学不到什么知识,功力色彩太重,主要是教育部门承认。100元左右考一次
    国家软件水平考试,证书全东亚承认,业内对此证书认知程度较高,由信息产业部发证。不过考试比较难,没有点真本事过这个比较困难,可以在有一点编程基础的情况下考考软考中的“程序员”玩玩,我说的一定基础是过国考二级像玩一样,基本上编程方面就刚有基础了。

    加载=============

    首先要做的是电脑的入门。用电脑娱乐当然是最好的方法了,比如可以玩游戏,看影碟或上网,这些基本的使用只要别人在旁边指点一下就行了,不需要专门借一本电脑书看着做。我们可以从中了解到Windows的一些基本操作,增加对电脑的感性认识。总之,电脑入门关键在于多实践。
    我要说的是学电脑,如果你用电脑只是用来娱乐休闲,那就偏离了我的初衷。对于初学者,最好学的当然是文字排版了,不但要会打字,还要会排版,那么就可以做一些文字出版工作了,比如做杂志。要学的软件嘛,有微软的word2000,XP,金山的wps office,但前者用的较多。
    如果你嫌上述工作太简单的话,图形编辑正适合你。此工作入门简单,但可以做得很深入,很专业。许多平面设计公司和广告公司就是靠这个吃饭的。可以学的软件也比较多,老牌的有Adobe的photoshop 6.0,illustrator 9.0,coral的coraldraw 10。还有macromedia的fireworks 4,freehand 10以及比较流行的flash 5。后三种软件都是软件新秀,和网页制作结合得不错,也比较“傻瓜”,功能却不弱,比较适合初学者。特别值得一提的是flash,现在网上的flash正热火朝天,用它可以做动画短片、网站甚至游戏。不过不花费许多精力的是做不出来的哦。
    对网络世界是不是很感兴趣?你也可以自学作网页!不过这需要有以上几点的基础,即文字排版和美术编辑,然后再学点网络知识,就可以编织你的“梦幻网页”了,可用的软件首推macromedia的dreamweaver 4。如果你习惯word就可以用frontpage,不过它比前者逊色不少,习惯photoshop的可以选go live。
    如果你认为以上这些都是小菜一碟,那你要学的就是电脑的高级应用了,比如编程,做动态网页,3ds max、autocad等高级应用或学网络管理。当然你的精力是有限的,能精通以上高级应用中的一种就不错了。
    最后再谈谈学电脑需要的一些条件。自己有一台电脑当然是最好了,如果没有,也可以到机房上网。我校实验楼里有四个机房,其中网一、网二、网五的电脑较好,上面也有许多必要的软件,比较适合学电脑,当让如果你有联通或电信的账号,就可以通过设置代理服务器后上网,那里的收费标准是一课时一元钱,上网流量费另计。图书馆也有一个机房,机上没有什么软件,那儿是专门上网的,上机费是一小时一元,流量费另计。方便的上网处还有外面的网吧,速度也不错。再说上网账号吧,我校有电信和联通的两种,价格都是50元300M,30元100M。可以在社区(3号楼)或图书馆购买。
    就介绍这些吧,要学好电脑首先需要自己的努力,比如在图书馆借些电脑书啦,多上机实践,希望大家都能学到一手实用的电脑技术。
    学电脑的“四忌”与“四要”
    学习电脑有“四忌”,一忌好高骛远,要打好基础。对于初学者首先应该掌握Windows的基本操作。学电脑的目的在于应用,因此,学会和掌握一种文字处理软件是必要的。二忌纸上谈兵,要勤于实践。计算机有很强的操作性。因此对初学者来讲一定要利用好各种时间进行上机训练,将理论转化为实际操作,这样才能真正地消化吸收。不少人认为自己缺乏英语基础,学电脑很困难。其实现在操作系统和很多软件都是汉化版,不懂外语一样能上计算机。三忌浅尝辄止,要精益求精。学习电脑知识除:了选择好自己适用的教材,还要阅读一些有关的杂志和报纸,拓宽自己的知识面。四忌见异思迁,要持之以恒。
    学以致用最重要
    谭浩强教授的《计算机普及教育中的一个误区》写得太好了,我也认为学习的目标不同,在学习内容和方法上就应该有所区别,学以致用最为重要。我是个主任医师,年纪一大把才开始学计算机,目的也仅仅应用。我就是从计算机原理和BASIC语言开始学习的。一开始兴趣蛮大,可是越学越费劲,学也没有学好,电脑的基本操作还是没有学会。我学电脑实在是事倍功半。一些老作家都学会了电脑,用电脑写了好几本书了,我还在理论的牛角尖里怎么也钻不出来。白费了不少力气。我开始怀疑自己是不是学计算机的料了。后来,我才明白,学电脑主要在于个人的需要和兴趣,不能照搬学校的那一套。恰恰是学校必修的某些脱离实际和落后的课程学生们最不喜欢,不少人考完就丢。第16期“读者信箱”里安徽读者胡越说:他所在的学校里,所用的还多是DOS平台下的WPS和UCDOS。实际上现在大家用的都是Windows,工作中大都使用Windows平台下的Office和WPS,我们的教育和实际应用的脱节之大可见一斑。“尽信书不如无书”,学习电脑还是应当自己的爱好和需要学起,学以致用。
    弄清用电脑的目的和目标
    计算机入门不难。我们希望把计算机当成工具,而不是自己当程序员。我们只想用计算机提高设计速度和准确性,提高工作效率,减轻手工劳动的负担,这才是我们使用计算机想要达到的目的和追求的目标。
    找准自己的位置
    学习时首先要找准自己的位置。要把计算机看成一种工具、一种技能,而不要被书本上那些难懂的知识以及抽象的理论概念吓倒。其次要把自己感兴趣的地方当成着眼点、突破口。其三,贵在动手这一点非常重要。最后,选择适合自己的辅助教材,坚决摒弃那些现在用不着的内容。
    又一位电脑教育者的反思
    我是多年从事计算机教学的大学教师,既教过计算机专业班,又教过非计算机专业班,我的感触与谭教授完全一样。在教学中深深体会到,对非计算机专业的学生那些抽象的知识,你解释得越多,学生越有一种不着边际的感觉,认为计算机越学越难。后来将这些问题不说或者很简单地介绍一下,学生倒觉得计算机不难学,学习劲头能一直保持很高,对计算机的掌握程度大为提高。可见,即使不去学计算机的基本结构和基本工作原理,大家也能学会用计算机。就像开车的人不一定需要研究汽车的历史,也不用去研究发动机的燃烧原理一样。
    学电脑,不用求甚解
    学电脑难吗?不难!我的秘诀是:好电脑,不求甚解。三年前,儿子抱电脑进门。自己好读书,就搜罗电脑书来囫囵吞枣,这类书把26个英文字母颠来倒去,记不胜记,挑灯夜读近月余如坠云雾中,只好叹息:“用电脑者宁有种乎?”后来从用电脑写文章开始入手,在Word里就知道“删除”按那个“红叉”,“预览”就揿那个“放大镜”。仅仅知道这些,亦不求甚解,竟也能得心应手。后来,慢慢摸索出来的招数渐多,在办公室几乎成了电脑高手,自己想来也好笑。真的,用电脑不难,只要你“活学活用、学用结合、急用先学”,在“用”字上狠下功夫,保你一学就会.

    加载=============

    真正的计算机高手就是那些能在不同阶段创新的人。
    也许计算机高手都会编程,但在编程之前他们是靠什么勇气走过来呢?靠的是发现,靠的是创新,靠的是毅力!
    也许你是一个倔强的人,无论有什么问题都想自己找到答案,无论什么方法都想知道原因,无论什么程序都想把它挖透。这样你就是1/3的高手了。
    也许你有几个电脑朋友,是那种“士别三日当刮目相看”的那种,去问问他,他能给你指引专业,推荐几本好书。这样你就是2/3的高手了。
    也许你真正爱电脑、爱网络,不把它当成工具,而是有自己的文化认识。这样你就是真正的高手了。
    好了,从1/3的高手做起,别再问问题了,至少在2/3高手之前。用帮助,看搜索,看书,敢想敢做。期待你的表现。

    加载=======收工======

  • 相关阅读:
    java按照指定格式输出系统时间使用SimpleDateFormat方法
    java按照指定格式输出系统时间
    java打印系统时间
    java字符串截取指定下标位置的字符串
    java根据输入的字符串和字节数来截取,输出对应字节数的字符串
    java字符串根据正则表达式让单词首字母大写
    java根据#号截取字符串,使用Pattern的方法
    java数组冒泡排序
    Prometheus+Grafana监控平台搭建
    JMeter-setUp线程组实现用户先登录(跨线程中beanshell设置全局变量)
  • 原文地址:https://www.cnblogs.com/echorep/p/5076442.html
Copyright © 2020-2023  润新知