川大小学期体育课可以在第二个学期改选吗

5528人阅读
今天看了一篇博文,感觉太牛了,就转了:
=============================
&&&&本来想用差不多的篇幅写工作中的经历,写到北大的时候,忙了起来,而且想开始写一个互联网上应用和商业模式的系列,所以,这个系列就不全写了,最后写写我和迅雷。
&&& 02年10月左右,steve离开百度,准备前往深圳和他duke的同学sean一起创业,做p2p。一帮朋友吃了一顿,去JJ蹦迪,然后到我住的地方通 宵打牌。我对p2p领域并不熟悉,在美国的时候因为要看璩美凤的光碟,用过edonkey,感觉不爽。steve去深圳后,和sean谈起我,问我有没有 兴趣,我就决定去深圳和他们谈谈先。
&&& 03年的元旦,我和世春一起前往深圳,steve和sean请我们吃饭,记得饭桌上sean说他们在硅谷的时候一个月写1万2千代码,而且还是加上设计,测试的时间算得,呵呵,我至今不相信写一个有质量的产品能达到这样的performance。
&&& 3月我从北京辞职,来到深圳,刚开始和steve在四海公园北门合租。办公就在我们租的房子内。我很快看了pastry, chord,jxta等p2p的东西,sean原来的设想是在jxta平台的基础上做,我试过jxta上的GISP后,一直就对jxta感到很不安,有一 次在bus上和steve讲了我的担忧。
&&& sean和steve原本计划做p2p email(这是一个不了解市场用户需求的东东),3月中,eric来到深圳,谈到百度mp3检索遇到的一个问题,流量越大,提供mp3内容的服务器就承 受不住,导致mp3搜索的流量上不去,建议我们用p2p来解决这个问题。正好steve用过美国的p2p cdn kontki,我们就决定参考kontki,以p2p cdn为切入点。
&&& sean提出要做pure p2p,steve则认为不管是pure的还是不pure的,满足用户的需求就好,我虽然也觉得pure p2p有点不妥,但是觉得技术上很cool,也同意做pure p2p,随后,我提出了所有peer跑jxta,但是索引不用jxta的,rendevous peer(或者叫super peer)跑pastry,负责索引,中转等等。很快按照这样的方案完成了设计。
&&& 4月,公司的办公室拿到了,很小的一间。金波,晓峰还有迷糊兼职做,后来丰良加入公司,虽然SARS流行,我们也没有受什么影响,4/5/6 3个月,代码完成了,可是遇到很多问题,最严重的是peer之间使用jxta的endpoint service发送数据总是有问题,有时候能成功,有时候不行。我,金波,sean都先后花了很多时间,一直到最后都没有解决。
&&& 7月那个版本,基本上是不可用的,除了一个远不如flashget的下载。然后开始重新架构下载部分,同时试图解决jxta peer之间通信存在的问题。到10月,下载部分按照新的架构完成,有了不少的提高,可是jxta的p2p通信,任然没有进展。在这段时间,我看了很多资 料,对流行的p2p架构,软件都做了研究,深信必须抛弃jxta,pastry,p2p cdn不适合采用pure p2p。
&&& 10月那段时间,有点山穷水尽的感觉,最后,经过很多的争吵,在steve,丰良和我的坚决要求下,决定重新架构整个系统,抛弃jxta和pastry。 我负责设计,保留原来的下载部分,采用中心服务器重新架构了系统,这一次,我和steve,丰良通力合作,设计的时候,每一步都讨论得很详细,每个人都做 了很详细的单元测试,集成的时候仅仅用了一个上午就成功了,整个项目甚至提前了一周完成。IDG的杨飞下午3点来公司,呆了1个多小时,看了我的演示,当
天傍晚就决定给我们投资了。
&&&&接下来,我们又重新设计了界面,完成了后台的crawler。我则潜心研究http和ftp协议,完善了下载部分,基本做到flashget能下thunder也能够下载。
&&& 04年春节过后,我们开始3.0版本的开发,我重新架构了下载部分,因为当时在没有peer资源的时候,在好些情况下flashget都比我们快。我知道 原因,但是flashget是单点下载,thunder却是多点下载,采用flashget的方式比较困难。我那个时候自由度比较大,做设计的时候,我一 般不到公司,那样的环境没法思考,我一般去咖啡馆,或者坐在科技园的路边,呵呵。还记得那个下午,我拿着笔记本和笔,坐在路边,把一些不成熟的想法在本上
划来划去,突然之间,那个key point就冒了出来,我赶快写下来,从多种角度衡量这个架构,自己能够体会到这是一个简单的,优美的架构,而且完全解决了速度问题。做技术的人很累,可 是这样的体会,也许就是上帝给我们的礼物吧,人生不多的高峰体验。然后我把它细化成算法,验证它是不是在多种情况下权衡的一个最优解,开会的时侯,我讲完 设计,steve非常兴奋,甚至要求他来实现这个算法。
&&& 04年初,我们开始正式发布Thunder,看着用户数不断的增长,同时在线超过,直到今天超多60万,数百万用户使用&Thunder,每天下载数百T的游戏,软件,mp3,DVD等等,园了我学习计算机以来的一个梦想,做一个被很多人使用的软件。
&&& 04年中,因为人事的关系,我离开了thunder,来到腾讯。05年1月,我到战略发展部门锻炼,开始学习做市场的分析,商业模式的研究,工作和计算机 技术不再有关。也许不久的将来,我还会做技术,也许就是自己技术生涯的终结,who knows?于是有了写这个系列的想法,写出来有点虎头蛇尾的感觉,工作中的很多事不想写了,不要以为做技术就那么单纯,有人的地方就有politic。
&&&&这个系列就暂告结束了,今后的半年内,我会不定期的写一些互联网上应用和商业模式的研究,包括Blog,我始终觉得,blog如果仅仅是自己的生活的流水账,是没有多少价值,毕竟,有多少人愿意看别人的无病呻吟呢?
22:30&|&&|&&|&&|&&|&&|&&|
& 2002年,我从KState退学,回到北京,在百度开始了职业生涯。
&&百度当时大约60人,工程师30多人,我在企业产品部,刚去的时候8位做开发的工程师,负责企业级搜索引擎WST的开发。分为2个组,我和段晖,建强,世春一个组,负责kernel的开发,金波负责spider的开发,成庆是manager。
&&我从来没有接触过企业级搜索引擎,一去让我负责parser和dist模块,给了2周的时间熟悉代码。一开始对业务不熟悉,当时又没有什么文档,&manager的原意是不让我看底层中文分词模块,知道怎么用就行了,不过我还是看进去了,在大搜索组红忠的帮组下,搞清楚了底层中文分词是怎么回事。2&周的时间蛮紧张的过去了。马上就开始WST2.0 kernel的开发,概要设计由段晖主导,我对需求更本不了解,讨论的时候常常不知道他们在说什么,然后他们就说,做过之后就好了。概要设计2周,其间我
还写了一个hash索引的程序,经理想看看我写程序怎么样。详细设计的时候,我还是模模糊糊的,有些地方不是很明白,好在只是加上新的feature,从 支持一个核心表到支持最多5个核心表,有些地方不明白,并不影响要修改的部分。
&&百度当时的开发是一个小组,概要设计的时候,所有的成员参加,充分的讨论,大家畅所欲言,详细设计时,程序员负责自己模块的详细设计,设计完成后提交TC (technical conference),TC批准后,开始coding。这样的模式要求每个程序员都能力不错,呵呵,当时那个组的确是我呆过的最强的一个组,除了建强, 其他人后来都离开百度,走上创业的道路。
& Coding用了3个星期,集成测试,总的来说很smooth,因为是升级版本,我们提出要争取0 bug提交给测试组,呵呵,最后没有做到,测试组发现了大约10个bug。3个月的时间,基本上按照计划,达到了开发目标。
&&这个项目,我起的作用不大,就是一个coder,因为那个时候对搜索业务不是特别了解,欣慰的是,我负责的模块bug很少,表扬一下自己,后来的项目中,我也很注意单元测试,即使在集成时我的bug都很少,bug越早发现代价越小。
&&百度那个时候的氛围很好,也许在国内算得上最好的了,讲求人人平等,上班时间要求10点到4点在办公室,其他自己安排,虽然也刷卡,但是考勤只占考评的&1%,工作看结果,假积极行不通。每周一次例会,先讲工作,那段时间的会,我没有发现一个人有意讨好工程副总裁,经理,都是自己怎么想的就怎么发言,在我 后来呆过的公司,都没能做到这样。讲完工作,大家就谈点轻松的,记得有一次,VP engineer问大家有什么困难,建强就说,我们好难找女朋友啊。
&&后来我对企业级搜索引擎有了较深的认识,自己也设计了一个企业级搜索引擎。
22:24&|&&|&&|&&|&&|&&|&
&&在北大研究的方向是所谓的多通道用户界面,对此我完全不感兴趣,相反,互联网才是我的兴趣,论文也要和互联网拉上边“基于互联网的多通道用户界面”,一位评审老师深不以为然,看在老板的面子上,通过了论文,成为了被教育部认可的“歪博士”。
&&在KState,没有做项目,只是上课和课程作业,感觉收获不少。
& &operating system practice&讲MINUX操作系统,集中在初始化,中断机制,进程调度和驱动程序。因为MINUX足够小,老师在讲完Pentium保护模式后,详 细地分析源代码,许久以来,对操作系统模糊的地方都搞清楚了,系统怎么启动,怎么从实模式进入保护模式,设置全局描述符表等数据结构,看到了一个操作系统 设计者如何看待和应用CPU提供的机制,感觉中断机制是最核心的部分。当时还注意到,MINUX专门设置了一个es选择符,内核用来在核心态和用户态任意 拷贝数据,从而提高效率,当我以后遇到一些OO教条主义者时,就想给他们举这个例子。这门课我学得很好,因为在国内没有这样的课。
& “computer architecture & C/C++”是一门大学生的课,因为我做TA,老师要求我跟着上了一学期的课程,他们讲得很实际,很细,把主流的CISC,RISC结构各选了&Pentium和sparc来分析,然后,将C/C++的每一个语句在这两种架构上翻译成的汇编语言是怎样的,全部讲了一遍,对C语言的指针分析得尤其深 刻,C++的虚函数编译器是怎样实现的也有详细的讲解。我本来以为我对C语言已经算得上很有经验了,跟着上课的时候,才发现还是有不少东西是自己不清楚 地,以前的自满是因为自己懂得还少,记得考试前,老师出差,安排我给学生复习,讲错了一道题,寒啊。
& “Advanced operating system”名字很大,主要只讲并发程序的设计,大家都知道多线程程序设计在逻辑比较复杂的时候,正确是多么的困难,而且很难通过调试发现问题,这门课 讲述用全局不变量的方法从理论上证明正确的程序设计,当我们遇到一个问题后,只要找到GI,用经过证明的方法就可以得到正确的并发程序的同步设计。以后, 逐步发展到对典型的并发问题找到Pattern,用一组事先设计好的GI,基本上可以解决实际工作中遇到的并发问题。我也做过这门课的TA。
& “compiler”这门课就是让我们做一个编译器,把一个大学发展的web语言翻译为C语言,自己不写词法分析和语法分析,用flex和bison生 成,后面就是对树的操作了,然后有一些简单的静态优化,一个星期基本上3个晚上都花在写这个编译器上,最后却得了个B,让我很郁闷。
&&其他的一些课和国内的大同小异,就不提了。总的感觉,KState的计算机系在美国没有名气,基本是培养以后进入公司的程序员,不过,我的感觉,它的研究生教育强过北大的计算机系的研究生教育,北大如果出了一些计算机很强的人,多半是个人的原因多一些。
21:21&|&&|&&|&&|&&|&&|&
&&&&在北大,最吸引我的当然是互联网。96年,北大校园网已经基本建成,作为CERNET的华北中心,拥有一个B类网络,网络条件当时仅次于清华。我们实验室 不到10台机器,都拥有30个静态IP地址。董老师让我尽快熟悉互联网应用,从email开始。我第一次使用Linux(slackware),很快用&pine给董老师发出了我人生中第一封email。很快,董老师回信,夸奖我对他的要求的迅速行动,然后委婉的说,我把所有email的内容都写到&Title里面了。嘿嘿,我和互联网的接触就是从这么低的地方开始的。
&&& 96年,台湾校园流行的BBS系统传进中国,北大的“阳光创意BBS”和清华的“水木清华BBS”都是比较早的BBS,9.18钓鱼岛事件之后,“阳光创意”被关闭,北大网虫都跑到水木灌水。
&&&&孙宏晖是水木清华北大版的版主,98年他辞去版主,推荐我担任了版主,我也继续了孙师兄包容所有观点帖子的原则。98年北大100年校庆前,清华北大2校 网虫在北大版谩骂,不到一周时间,对骂的帖子超过1000篇,我随后清理版面,删除近1000互相攻击的帖子,引起许多网虫强烈不满,要求我辞职,并且启 动了弹劾程序。但是,也有很多网虫支持我,所以我坚持不辞职,最后,大约只有1/3的票要求换版主。虽然是在虚拟的社区,我却平生唯一一次体会了民主程
&&&&北大版给水木清华带来不少麻烦,是国安部重点监控的版面。Leeward站长有几次都紧急通知我,马上去删除版面上的某某发的帖子,虽然站长有删除任何版 面帖子的权利,不过站务组都不越权删除北大版的文章。有一次,我不愿意删除,Leeward告诉我真实的严重情况,最后说,如果我不愿意删除,他只有动用 站长的权利删除了。其实,Leeward还顶住压力,帮我挡了一次麻烦,谢谢他。我从来没有见过他,后来他不当站长,去boston工作,就再也没有在网
上联系过了。
&&& 97年底,心理系研究生刘嘉自己出钱,开办了“未名BBS”,被迫关闭后,将硬盘拿到中科院空间所,改名“未名空间BBS”,又被迫关闭,直到刘嘉去&mit读博士,带到MIT,终于生存下来,成为北美有名的中文论坛。刘嘉很有才气,赴美签证的时候,美国签证官对他说,你们国家需要你这样的人才,让他发 誓毕业后回中国,而他也真的信守诺言,据说现在中科院工作。
&&&&校园网还流行MUD,孙宏晖还在实验室自己架设了MUD服务器,他还自己写机器人程序练功,相当于今天的网游外挂拉。我对MUD没有兴趣,没有想到后来的网游有这么大的市场阿。
&&&&隔壁的网络实验室开发搜索引擎,我们是最早的测试用户了,第一个版本最大的问题是重复的网页很多,后来逐步得到解决。
&&&&很多往事掠过,突然之间不想写了,停止。&&&
23:39&|&&|&&|&&|&&|&&|&
&&&&首先当然是我的导师董士海先生,董老师为人非常好,对我也非常好,可惜我不是一个好的博士生,辜负了董老师对我的期望,自己也觉得自己算不上一个合格的博 士,放弃了对计算机科学的研究。董老师没有给我上过大课,因为那个时候他的身体已经不太好,给研究生的计算机图形都是孙师兄上了。不过3年来,每周一次的 讨论班,涉及了图形,人际交互,互联网,多媒体等多个方面。我当时觉得多通道用户界面这个领域很虚,没能产生兴趣,这也是我在北大学习上收获不大的一个重
&&&&讲网络的陈老师就是雷鸣他们的导师,她的课吸引了很多研究生,我在川大学习时,连局域网都没有,学得太肤浅,所以也抓住机会再学一次。陈老师讲课非常清 晰,听得出,她非常有经验,原来的网络课都讲ISO7层模型,96年见出分晓,TCP/IP已经事实上成为标准,陈老师可能是国内最早放弃讲ISO模型, 开始以TCP/IP为基础讲网络的老师。只是她没有激发我上课的热情。
&&&&袁崇义老师的并行计算讨论班,是我的必修课。每周轮到一个学生讲一篇论文,我都记不得我讲的是什么内容了,嘿嘿,可以想象上这门课的效果,感觉离实际很远很远。确定性,不确定性,对并行计算这是个问题,可是我,不想理这个问题。
&&&&许卓群老师的人工智能,一般的学生反映都不怎么好,觉得许老师讲课天马行空,想到什么就讲。我到觉得许老师的课很有意思,他讲一个算法会把来龙去脉,最初怎么样,为什么会想到这样来解决的一个过程讲出来,我很欣赏。
&&&杨东青老师的数据库原理和许老师的课正好相反,非常有条理,非常的系统性。比如讲到第3范式,一步一步的算法怎么做讲得非常细致,就是没有讲为什么要定义第3范式,它消除了什么样的冗余等等,我上了几次课就从课堂消失了。
&&&&程旭当时刚来北大,讲体系结构。我本来没有想去听,第一节课后,震动了整个系的研究生,熊倪跑来告诉我,讲得太好了!一时之间,体系结构的课堂连过道都坐 满了搬椅子来上课的人。可惜,程旭虎头蛇尾,讲到具体的内容时,就听得出他实际经验的缺乏,课堂上的人慢慢的少了。
&&&&袁崇义老师的petri网,就显示出我的理论和数学水平的低下。坚持听了半学期,然后实在听不懂了,不得不放弃了。
&&&&陈忠的系统设计课完全是垃圾,没有认真的准备,随便讲讲,糊弄学生,大概忙着赚钱去了。
&&&&北大三年,慢慢失去了追求计算机科学的理想,一来认识到自己的资质不够,二来也看到许多学术圈中的非学术现象,失望。
20:52&|&&|&&|&&|&&|&&|&&|
&&&&在北大认识了很多非常优秀的人,从我们实验室开始介绍一些:
孙 宏晖:比我高一级的师兄,动手能力非常强,UNIX非常熟悉,那年开始给研究生上计算机图形学,为认真上课卖掉所有股票,让学生非常感动,随后,又用研究 生们非常不熟悉的美国式大量课程作业让他们怨声连连,并且反映到系主任那里,作为不能完成各自实验室任务的理由:图形课作业太多!第2年开始上课前,许作 群竟然命令孙师兄不得布置大量课程作业。99年微软中国研究院成立,成为最早的2个SDE。他和我一样,不喜欢写论文,喜欢能做出真正实用的东西。
陈 敏:本科和我一样是89级,因为北大军训,研究生晚我一届。当时北大清华有名的GPA冠军,本科四年全年级第一名,英文好棒,有段时间,我不认识的单词, 直接问她就行了,不用查字典,所以我就叫她genius了。我刚开始就和她做一个研究项目,呵呵,蛮多的争论,不过不妨碍我们成为最好的朋友。她97年去&caltech,成为caltech计算机系成立以来,第一个非美国大学毕业的博士。之前3位世界顶级的计算机科学家同时电话面试她,最后,问到小波
(?)时,她说不懂,后来她的导师笑着说,如果你什么都懂,就不用来这里学习了。2000年,我和太太去pasadena,陈敏请我们吃早茶,吃火锅,呵 呵,是到美国半年吃到的最好的火锅,只是第2天去disney land,我拉肚子,好狼狈,嘿嘿,一直没有告诉过她。
王宏武:和我同 届的博士生,曾经获得大学生数学建模一等奖,对windows非常熟悉。他的第一年被学校派到美国工作学习,他数学基础好,程序设计能力强,而且是一个&self-driven的人,毕业后成为微软研究院最早的副研究院(我也申请了,不过我的数学,特别是概率不行,被拒绝了),后来他去了硅谷一个&startup,在美国给了我不少帮助,感谢宏武。
除了我们实验室,旁边的网络实验室和我们关系非常好,我们互称表师兄,表师弟。
熊 倪:本科91级,被我们称为天才儿童。高考江西省理科第二名,在北大7年全年级第一名,天网搜索引擎的主要开发者,华为从大3就拉他,耐心地等到他研究生 毕业,现在是华为路由器技术负责人。熊倪是非常难得的学习成绩和程序设计都非常强的学生,如果他选择留学,很有可能成为去MIT计算机系的第一位北大计算 机系学生,呵呵,不过他选择了和cisco竞争,可以做一辈子的事业。
雷鸣:本科93级,获得过全国物理竞赛一等奖,好象还没有参加过 什么升学考试。也是学习,程序设计都很棒的学生,更难得的,他还是学生会主席,管理能力也强,据我所知,他还是不少低年级女生的偶像。当时我们一个时间考&GRE,TOEFL,雷鸣拿了一堆学校的奖学金,最后都没有去。他选择了去百度,02年,他已经是百度的总裁助理,我那个时候想回国,他帮助我从百度开始 了我的career,借钱给我安顿下来。
周利民:和孙宏晖一届的同学,他们在北大教书时也住一个宿舍。天网搜索引擎的设计者,网络和分布式系统方面的guru,没有GRE, TOEFL成绩就去UCLA读博士,读了一年回国,现在是百度的首席架构师。我有什么网络的问题常常问他,受益非浅。
能和他们一起学习工作,我从中学到很多,我想这是北大给我最大的财富吧。
15:53&|&&|&&|&&|&&|&&|&
&&&&研究生的最后一年,毕业论文也是结合项目来做的。民航飞行学院需要塔台模拟机来训练塔台控制员,当时国外的塔台模拟机一般采用计算机图形学3维建模的方式,需要昂贵的图形工作站,整个系统的价格也非常高,民航飞行学院于是寻求PC网络环境的简版塔台模拟机。
&&&&游老师让胡师兄负责这个项目,游老师提出了他的方案,预先录制飞机在机场可能的各种状况的Video,针对不同的情况播放,这样训练人员的真实感,可操控 性都不是很强。胡师兄和我都想尝试更真实,更好的系统,胡师兄当时正准备去美国留学,就交给我考虑了。我从第2年做语音,图像预测编码中得到启发,提出一 种对飞机从有限个角度取样,然后根据视点的角度,从邻近的预存图像插植,实时生成显示图像的方法。后来,读博士的时候,才知道这个朴素的想法正和那2年计
算机图形学界很热的IBR(Image based rendering)相似,沈向洋博士在这个领域做了很多工作,当然,他在理论化,系统化方面非我能够相比。
&&&&可是,这个设计是个不好的设计,这是一个实时系统,复杂的图片数据库(自己实现),网络通信,非抢占式操作系统等等因素,使得这个系统对我们来说是一个不 可能完成的任务。游老师的方案看起来不是那么美,但却是一个可行的,在限定条件下比较好的解决方案,毕业前,我告诉游老师从这个失败项目中我的体会,他并 没有怎么责备我,只是告诉我积累经验,就能陪养出设计师的感觉。
&&&&项目失败了,我还是在工作中学到很多。
&&&&那一年实验室开始建设局域网(你能想象我们学习计算机网络课时,全是空对空,不要说互联网,全系竟然还没有一个以太网!),由胡师兄负责,我欣喜异常,实 验室很大,2幢楼之间还需要网桥,我终于体会到很多实际的网络知识。快毕业的时候,川大终于连上了正在建设的CERNET,呵呵,但不是计算机系,在图书 馆有台机器接到电子科大CERNET的西南主节点,发一封email,每KByte要8元RMB,咔咔。
&&&&在考虑显示动画时,最初觉得windows3.1的显示可能跟不上,还是在DOS下直接针对显示卡编程,可是这样的可移植性太差,每种显示卡都不同,我那 个时候比较熟悉VESA标准,采用VESA标准实现了双帧显示(用来消除显示动画时的闪烁),凡是支持VESA标准的显示卡都可以用。胡师兄让我写成一片 文章,发表在计算机应用上,嘿嘿,是我公开发表的第一篇文章。
&&&&想起一件事,我当时对386保护模式并不是很熟,电子科大有很多这方面的强人,我就自己跑到电子科技大学计算机系的实验室,找人请教。一次是陈勇博士给我 讲了1个多小时,巧的是他竟然是我后来太太的表叔;另一次,我竟然找到了周明天老师,他让一位负责开发实时操作系统的老师回答了我的问题,还给我演示他们 自己开发的实时操作系统。想到这些老师同行,对一个不认识的不是自己学校的研究生的热情,现在我也很感激。希望今天的大学仍然能有这样的风气,不要完全只
&&&&后来在windows上面的开发,让我学到windows程序设计的方法,特别是事件驱动,异步,同步时钟,窗口刷新各种方式,winSock等等。&&&
&&&&最后一年做的另外一件事就是考北京大学的博士。北大对英文要求比较高,所以我大部分时间都在准备英文,整个寒假都在学校学习。4月份在北大面试,许卓群老 师面试我,也许他自己理论,数学根底深厚,反而没有怎么在意我的理论和数学方面的欠缺,对我做的实际的东西很感兴趣,总之,我被录取了,导师是董士海老 师。
23:26&|&&|&&|&&|&&|&&|&
&&&从第二年开始在实验室干活了,游老师交给我的第一个任务是语音压缩算法的研究,给了我一本讲语音压缩算法的书。任务的背景是实验室为民航机场开发多通道数 字录音机。我看了书之后,开始到图书馆,查阅IEEE signal processing杂志,找到了一些最新的语音压缩的论文,发现往往要结合2/3种方法来做语音压缩。我从ADPCM,也就是预测编码开始,实验室老师 给了我一首歌的原始采样数据。预测编码的理论很复杂,需要随机过程的知识,不过别人搞出来的算法倒是很清晰易懂,我很快写好了程序,发现编码后解码却出现
了误差累积的现象,导致解码不正确。这个问题很是困惑了我,和陈益讨论,他还建议一种很复杂的误差补偿方法,我本能地觉得不是好的解决之道。后来在中间一 步的计算结果取整,非常简单,非常好的解决了问题,在我以后的技术生涯中,我越来越体会到为什么美国人要说:Keep it Simple stupid这个原则,体会到设计中的平衡和取舍,最重要的体会到美,一个设计,当我没有感觉到美的时候,我就知道这不是一个好的设计。感谢上帝
&&&&接下去,我又尝试了自适应算术编码,矢量编码,小波变换。实际上,这不是学术上的研究,只是一个学习的过程,但是,我学会了面对一个自己没有接触的问题 时,怎么去查找资料,比如,当阅读了大量资料论文后,找到了80年代最经典的一篇讲语音压缩的论文,才发现最早看的那本书最重要的部分基本就是抄袭这篇论 文,可恶的是,抄袭都抄得文理不通,读起来比原文费解许多。虽然没有提出什么新的方法,或者对原来的算法有改进,还是觉得能学习到也很不错,多通道录音机
也采用了ADPCM加一种无损压缩的方案。
&&&&二年级的第二个学期,游老师指定罗诚和我跟随杨红雨师姐,胡雪冰师兄做项目。是为国航做飞行动态显示系统,系统设计由杨师姐负责,最初的方案是在&sparc机器solaries系统上面实现,为此,实验室买了10机台sparc 10和2台sparc 20,当时很贵,开发资料差不多一书柜,我们忙着熟悉开发环境,编译器,x-window开发,solaries操作系统都是全新的,我们每天从早上到下 午在计算机上看资料(刚开始书没有到),走出实验室眼睛都是花的。后来开会,杨师姐给我们讲系统的架构,这是我第一次接触到比较大的系统设计,当时的感觉
也是不复杂,很简单,现在才懂得,用简单清晰的方法解决问题才是高手,杨师姐一直是实验室做项目的技术负责人,是到目前为止,我遇到的做设计最强的女性。
&&&&后来国航可能觉得用sparc机器成本太高,又改成PC机,windows系统。当时国航的飞机通过飞行电报网将所有数据发送到美国的飞行电报中心,电报 中心给了国航一个DOS应用程序,通过Modem连到美国,每5分钟取一次数据,保存在一个文件中。怎样可靠地把这个文件数据读出来,发送到我们的数据库 和实时显示系统比较麻烦,因为DOS不是一个多任务操作系统,而电报收取程序必须不间断运行,我当时正在看Undocument DOS,知道一个未公开的系统调用,可以用来看DOS是不是在critical
area,于是,我提出据此在DOS上实现一个简单的安全的双任务调度环境。原理不复杂,但是实现起来很麻烦,调试也麻烦,刚开始的时候,怎样也不&work,我仔细检查了borland3.1编译器函数调用时的压堆栈的寄存器的次序等等,还是不行,整整一个星期没有进展,银涛也帮我检查程序,感觉逻 辑上都是正确的,呵呵,如果你是程序员,你就知道那个滋味了,由于项目进度的要求,胡师兄已经开始考虑有没有别的方案,我则病急乱投医,东改改西改改,呵 呵,盲人摸象,竟然把象摸出来了。原来,因为我的C代码中嵌入汇编代码,而我在C代码中声明了cs,ds这样的变量名,影响了汇编代码中对cs,
ds寄存器的操作,呵呵,我没有意识的改了C代码中变量名后,成功了!人是需要一点运气的,是不是?
&&&&然后,我们实现了一个DOS下通过串口和windows机器通信的程序,每过5分钟,检查电报收取程序写的数据文件的更新部分,发给windows程序, 我第一次接触到和通信相关的程序,第一次处理简单的流量控制。飞行动态显示系统从96年初开始在国航运行多年,我的DOS下的双任务环境经受了实际的考 验,安全可靠。
15:44&|&&|&&|&&|&&|&&|&
&&&&上川大前,我患了急性阑尾炎,由于身体排异性强,伤口一直愈合不好,每周需要去医院换纱布,那个学期没法上体育课。虽然活动不方便,可是进入川大这个非常 活跃的大学,尤其是计算机系的几个教授,感觉比南京理工大学有人性了很多。另外,川大有闻名全国的ppmm,我一下兴奋了起来,和同学也以光速熟悉起来, 大虎,二娃,罗诚和彭颖等成了我一生中最好的朋友。三年的生活学习,太多的开心,太多的激情,据说那是我最帅的时候,嘿嘿。走题了,还是谈谈那个时候的我
和计算机。那段如歌的生活还是以后有冲动的时候再写了......
&&&&因为我大学是学习的信号处理,刚入校计算机的基础算是比较差的,虽然我自己看了操作系统,数据结构等课程,但是比较肤浅的。第一年,我以极大的热情投入了学习和生活。
&&&&游志胜老师讲图像处理,他师从著名科学家A.K.Jain(当时Pattern Recognition的主编),因为残疾,他只能坐着,用幻灯片上课。我还记得第一个作业是写FFT程序,还要在SVGA上显示(DOS环境下对图形卡 直接编程),那个时候我对内存空间的组织不懂,不理解显示存储怎样映射为可寻址的线性空间的,恶补厚厚的2本翻译很差的SVGA程序设计,在张天庆的帮助 下完成了第一个作业。最后的作业是选择完成一种编码方式(LZW,算术编码)或者激光打印机的驱动,我选择了写激光打印机的驱动,看起来没有什么技术含
量,可是要做好却很不容易,最核心的是采用抖动还是模板,如果采用模板,模板的设计最关键。当时,实验室的图像分析系统采用的是模板,HP的打印驱动也是 采用的模板,游老师认为理论上抖动的效果应该更好一些,我尝试了多种抖动和模板,最后我觉得综合平衡多种情况,还是模板更好一些。然后就是反复的挑选,设 计模板,非常认真,非常仔细,最后终于被我找到一种模板,在多数情况下,比当时HP缺省的驱动以及实验室图像分析系统用的模板的效果都要好。实验室负责图 像分析系统的师兄要了我的模板,没有要我的程序,因为那个时候我的程序写得很差,不过也感觉很开心了。
&&&在游老师那里,我学到很多,比如,从实际中知道应该做什么,不好高骛远,踏踏实实解决好一个个问题,不为了技术而技术等等。游老师的这门课我们是和92级 的师兄一起上的,其中陈益给我留下了深刻的印象,有一次,一台机器的CMOS的setup密码没有人记得,他直接用DOS的debug,马上写了一段汇编 程序,读出了CMOS的密码,我当时的反应只能用景仰来形容。他做的计算机图形学的光照模型的课程project,完全达到了商业产品的品质(那个时候可
是在DOS上写的啊!)。陈益对我在计算机方面的影响非常大,是他给我讲Knuth, Dijakstra, tony hoare;是他给我讲保护模式,形式语言自动机;是他极大的激发了我对计算机科学的热爱,促使我后来考北京大学的博士,他比我早一年去北大,是石青云老 师的弟子。我们经常出去吃饭,喝茶,往往都是在讨论计算机技术,这让他的女朋友很不满,呵呵。他的女朋友96年和他分手,对他的打击很大,他后来的妻子太 优秀,应该是北大第一个去MIT计算机系读博士的,我猜想这2样加上他的心脏出了点问题,使他对自己一度失去了信心,放弃了自己的追求,而我最后也失去了
这个朋友,深感遗憾,他是我唯一失去的朋友。
&&&&第二学期唐常杰老师讲数据库原理,唐老师很受学生欢迎,他身材小,声音却非常洪 亮,不知道的人完全看不出他身体不好,当年大学毕业,唐老师在煤矿背了好几年煤,腰受了伤,他常给我们讲,当年背煤好苦啊,现在一个月1500,生活太好 了!呵呵,唐老师曾经在stanford跟从数据库届的NO.1金斯伯格学习,我们用的Ullman的书,Ullman也是金斯伯格的学生。唐老师上课深 入浅出,又风趣,我很喜欢,所以上课常常发言,一般老师都喜欢上课积极的学生,所以嘛,最后我的数据库居然得了年纪最高分,比唐老师自己的学生分数都高。
&&&&第一年,因为基础差一点,我疯狂的学习。除了上课,自己看了很多没有学过的东西。寒假的时候,同学都回去了,虽然我家离成都仅仅&30公里,我只回去了3天,然后就回到学校,学习charles petzod的windows程序设计,整个单元只有我一个人,每天早上,下午,晚上都学习3个小时,不学习的时候就走在成都的大街小巷,有时候从川大走 到电子科大,或者走到西南影都。整整3个星期,除了中午,晚上在小饭店吃饭,没有和人说过话,孤独,寂寞是有的,但那是充满热情的孤独,而和今天我的孤独
感完全不同,我不能形容今天的孤独......&&&
13:16&|&&|&&|&&|&&|&&|&&|
迅雷和天网的人没有关系,但是好几个是百度出去的
我知道王垠,前段时间BBS上看到的,他跟谁自己内心的选择,一帮人怎么总是想评价别人对自己人生安排的对错呢?
我03年的时候研究过p2p流媒体,后来迅雷没有选择这个方向,我觉得p2p流媒体在当然网络环境下,不能保证高品质,至于2-3年之后,也许可行。ppLive, coolstreaming等今年很火,都拿到了VC投的钱,祝愿他们做成功。
你是北大毕业的吗?我最近太忙了,很少写blog了&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:30255次
排名:千里之外
原创:13篇
(10)(6)(2)(2)

我要回帖

更多关于 本学期最后一节体育课 的文章

 

随机推荐