方才转了dreamhead的一篇文章,忽然想起,为什么不建一个帖子大家说说自己这些年的技术之路是怎么走的呢?肯定于人于己都有收获:)
自己先开个头吧:
01年进大学的时候,想学计算机,但却身在数学系,那个时候就做好了打算,数学只要混个及格,其余时间钻心看计算机的书,曾经一个月买了四百多块钱的书,结果只能吃方便面度日,大学有两三年时间,学习计算机的热情是最高的,从坐车到上厕所都带着书:P
也正是在那个阶段,学了很多底层知识,也钻了无数的细节。那个时候的信仰是:技术隐藏在细节当中。那个时候看的书,代表性的是:《编码的奥秘》、《80x86汇编技术原理》、《Windows核心编程》、《C++设计新思维》、《Inside C#》、《Linux内核源代码情景分析》。。。(那段时间最喜欢的就是"内幕揭秘"、"原理"、"深入"之类的书)
现在看来,这段时间学习方式的优点:钻技术细节,锻炼思考能力。缺点:一叶障目不见泰山。过分钻研技术细节导致忽视了要紧的技能;如,编码习惯非常差,以前写的代码,过了两年之后拿出来看,不忍卒读,连基本的DRY原则都没能遵循。此外,对技术细节的关注导致了忽视了一些编码方面形而上的原则。
这样的学习几乎持续到了本科的结束;其结果就是脑袋里技术细节不少,但编程方法学上的东西却几乎一概不知(比如对如何编写优质的代码的忽视、对测试的忽视、对重构的忽视、乃至对OO也只是停留在一点皮毛认识上)。
直到读研的第一年,才开始拿起《The Pragmatic Programmer》、《Code Complete 2nd》、《Object Oriented Software Construction》这些书,关注起一些"更大"的问题来,也拿起来《Programming Ruby》读一读,也正是这个时候,才算是走出了语言细节、技术细节的无尽泥沼,开始思考一些软件开发方面一般性的东西,开始意识到"脱离语言思考,使用语言实现"。四年,从纯技术的小世界中走出来,还不算晚。回头看,以前的钻技术细节的历史也并非全无用处,尤其是培养了金出武雄所谓的"思维体力",而在底层知识方面的积累也让后来看一些更高层的东西的时候心里更有底。然而,现在看来还是觉得:一,在细节方面花的时间太多了(细节的世界是无穷的,尤其是IT领域,一个老概念新翻,就能变化出无数细节。一个框架的API文档就隐藏着无数的"技术细节")。二,没有区分"非本质的细节",和"本质的细节",像硬件架构知识,属于本质细节,像语言细节知识,就是非本质细节了。前者是不变的,后者易变。三,没有在关注技术的同时,分出一部分时间来关注更大一些的主题(如编程的方法学,乃至项目管理,一个例子是,在以前,会认为语言的好坏至关重要,因为语言的世界是最熟知的,然而实际上软件开发的成本包含了更多重要的内容,甚至在语言方面还要取决于库、工具等等因素。以前看到"精巧的"设计模式觉得兴奋不已,现在则意识到,这些其实都是"非本质"细节)。
如今呢,倒是又开始觉得这些都不太重要,这些年的学习最大的收获不是学到的东西,而是学习的能力。对于软件开发这个知识无比细分、繁杂的领域,想要躺在过去学到的东西上过日子几乎是不可能的,然而又不可能把所有知识都装在脑中,所以唯有利用"元"能力:学习能力----用到啥,就学啥。毕竟,正如当初入数学系时的新生大会上,我们的系主任说的:数学都学了,还有什么学不了的呢?
--
刘未鹏(pongba)|C++的罗浮宫
http://blog.csdn.net/pongba
TopLanguage
http://groups.google.com/group/pongba
我跟计算机的缘分差不多可以追溯到公元1989年。我还是6年级的小学生,兴趣小组把我们带到浦明师范,然后玩弄了一下apple II。也就是个四则运算什么的。说真的,我是一点感觉都没有,基本上没分清计算机和计算器的差别。
此后,在中学里我参加模型小组什么的,玩的挺开心,还得了些小奖。联系了实践能力和动手能力,倒是很有好处。我的钳工手艺差不多是那时候打下的基础。高中时,参加了"头脑奥林匹克"(Odyssey of Mind),一种从美国引进的面向青少年的创造能力比赛。我们得过冠军和季军。从中我接受了分析能力和创造能力的训练(没错,这也是可以训练的),学会如何运用基本原理,创造性地解决一个复杂问题。当然,这种比赛时要动手的,动手能力进一步得到锻炼。
后来,我稀里糊涂地进了大学。(我没有夸张,我们这一届应该是全中国历史上唯一的一次,仅凭借会考成绩进大学的。没错,是上海工业大学,现在的上海大学,托钱伟长的福,祝他安康:))。
由于高中时的比赛经历,我选择了机械系。我原本喜欢物理的,不过上工大那时没有物理专业。不管怎么样,能读大学就行了。两年级开始学用计算机----autocad----机械系学生的吃饭家伙。94年的时候,我母亲的一个同事的先生建议我们家买电脑,让我学计算机。至此,我才真正地接触计算机技术,一发而不可收。
先是学了dBase,然后是C。96年开始接触C++,接着一头栽进去,就回不来了。从Borland跳到VC,从Win16到Win32,从api到mfc。啃过几个月的com规范,对于ms那套东西算是摸得很熟了。但始终没有跳出ms的范畴。而所用的C++,也不过是C(++)而已,直到两件以前,接触了标准C++和众老大的著作。一句话概括,我是一个用了12年C++,拥有2年半C++经验的程序员:P。
半年多以前,我听说了pongba和他的blog,然后发现了toplanguage。然后么,在同众老大的学习和探讨中,进一步开拓了我的眼界,跳出了C++,跳出了ms,进入了更广阔的天地。一切还都在学习,学无止境啊。
这就是我的技术成长经历。概括起来就是两个字"杂交"。尽管我现在搞软件,一个很专业的领域,但是过去的经历,所学的知识,都有极大的帮助。有时,另一个学科(对我主要是机械工程)的只是和技能,会起到意想不到的作用。我也曾经学习了一些物理学,其中的一些营养,或许现在正在潜意识中促进了我的编程技能。:)
btw:从我现在的眼光看来,pongba的专业经历是最理想的:)。本科的数学,然后转向计算机,通讯或其他什么理工类专业,思维往往非常深刻严谨。没的话说了。:)
我接触电脑算是早的了。小学4年级还是5年级的时候,学校搞了一批中华学习机,其实就是一种apple
II的兼容机,然后组织我们学basic。当时鬼使神差的就报名了。后来学校组织我们去考计算机奥校。话说考试题目完全没有计算机的内容,除了语文就是数学。(至今对语文卷子的最后一道题记忆深刻:问,是否知道曹冲秤象的故事,如果知道,举一个你生活中的例子。我当时纠结了半天也想不出类似的例子,所以答案写了个"不知道"。)
之后,居然鬼使神差的考上了!每周末要去上计算机课,5年级那会儿以算法和数据结构为主,但并不系统,而且都是用的basic,对指针啥的没有概念。主要像线性表,列表,排列组合,深广度搜索都学到了。话说,那会儿老师最喜欢出的题就是报数杀人,开始是一遍遍顺序报数,之后是折返来回报数,在最后转圈报数……(爆个老师的八卦:那老师写大写字母都能连笔,每次看他在黑板上写程序都要辨认半天……)
之后上了初中,就是奥校哪个学校,在所谓的计算机班。而且家里给买了台386电脑。记得那段时间最喜欢的就是用各种技巧把基本内存弄到630k左右。上课学了pascal(所谓计算机班嘛,总要有点特色,别的班学的是wps),算是接触到指针类的语言了,还短暂接触了一点OO,但只知道是把函数放在结构里(turbo
pascal对oo的扩展太弱了),还不懂啥叫封装。最大成就是用pascal写了个分割文件的小程序,使用命令行,用一个函数来判断输入是否合法(当时还是8.3的文件名,输入8个字符后就必须输入'.',之后只能输入3个字符;还有只能输入数字、路径等不同的合法限制),还会判断目标位置是否足够容纳,会自动分割。(后来上了高中,找原来同学玩时,发现他还在用我写的这个程序,兴奋。可惜现在那个程序找不到了……)然后记得有年暑假,看了一遍谭浩强的《C程序设计》,算是入了C的门了。还看过一本讲ARM
C++的书,算是入门了C++。(这本C++的书没讲命名空间,以至于大学有人拿着书上例子问我using是啥我都不知道,汗……)期间参加过几次比赛,最好成绩好象是区第二?记不得了,反正成绩不咋样……
高中基本都在围着高考转,也没有啥计算机上的进展。不过,报考志愿时倒是一直想上计算机系,无奈分不够,只能报了自动化(2000年,那年是唯一一次先出分后报志愿)。
大学开始接触的windows编程。入门书是《Visual
C++xxxx》(忘了,反正就是ms出的配合VC6的那本),砸重金考了个MCSD,算是对COM有了一点点理解。(不知道这个证书,在我第一次找工作时,有没有起作用……)也就是在大学,在学校图书馆借了《C++沉思录》,算是上了C++的道儿,开始对语言本身着迷。不过自身懒,虽然学校的计算机系不错,我也从没去蹭课过,想想后悔啊。而且当时总觉得拿着个C++就啥都能干了,什么GUI数据库之类,无非就是数据结构+算法嘛。现在对这个想法真是汗颜,年少轻狂……
毕业后,先是在上海一家台湾公司做光驱(在张江,可能这里不少朋友知道那里吧)。基本上感觉是被骗去的。说是程序员,结果去了工作都是针对CD盘调整firmware参数……后来辞了,去了北京华为。在这里算是开始接触软件工程的相关思想。从华为图书馆借了《代码大全》(第一版,还是复印的……),读了后才知道以前的浅薄。于是开始大量看书。正好华为内部买书挺便宜(工卡里的钱不要税的,而且只能在内部用),于是《深入理解C++对象模型》,《C++设计新思维》等书也是在那会儿看的。并且工作中接触了Java和Unix。对Java倒是没啥好感,倒是被unix的命令行迷倒了(比dos强多了啊)。不过华为的工作,大家也都是知道,看的东西虽然多,没时间实践。现在在一家公司做linux,开始接触python,linux系统本身等方面,还有很多东西要学……
唯一的遗憾,大学玩的太多了,而且太狂了。好歹那会儿应该看看操作系统和编译原理。这东西现在静不下心看啊。
在 08-2-23,pongba<pon...@gmail.com> 写道:
--
新的理论从少数人的主张到一统天下,并不是因为这个理论说服了别人抛弃旧观点,而是因为一代人的逝去。
My blog: http://googollee.blog.163.com
在 08-2-24,王磊<wangle...@gmail.com> 写道:
--
Best Regards,
Niu Jin
2008/2/23 莫华枫 <longsh...@gmail.com>:我跟计算机的缘分差不多可以追溯到公元1989年。我还是6年级的小学生,兴趣小组把我们带到浦明师范,然后玩弄了一下apple II。也就是个四则运算什么的。说真的,我是一点感觉都没有,基本上没分清计算机和计算器的差别。
呵呵,我最早接触计算机比老莫晚多了,是在97年,刚进高中,老爸买了一台台式机(奔腾MMX 200MHz,32M内存,2.1G硬盘),那个时候,最感兴趣的就是每天吃完饭之后去校图书馆看电脑爱好者,把里面的注册表应用技巧抄在一个小本子上,回到家里折腾:) 那个时候每个月必买的是三本杂志:科幻世界、电脑爱好者、电脑报。
此后,在中学里我参加模型小组什么的,玩的挺开心,还得了些小奖。联系了实践能力和动手能力,倒是很有好处。我的钳工手艺差不多是那时候打下的基础。高中时,参加了"头脑奥林匹克"(Odyssey of Mind),一种从美国引进的面向青少年的创造能力比赛。我们得过冠军和季军。从中我接受了分析能力和创造能力的训练(没错,这也是可以训练的),学会如何运用基本原理,创造性地解决一个复杂问题。当然,这种比赛时要动手的,动手能力进一步得到锻炼。
后来,我稀里糊涂地进了大学。(我没有夸张,我们这一届应该是全中国历史上唯一的一次,仅凭借会考成绩进大学的。没错,是上海工业大学,现在的上海大学,托钱伟长的福,祝他安康:))。
我感觉这类经历还是相当有价值的!我本科有一舍友,高中的时候玩过竞赛,我们讨论算法问题的时候,感觉他直觉明显比我好多了。我们那个时候学校比较保守,玩的是应试教育,没有这些经历,对思维方式造成了很大的僵化影响~
由于高中时的比赛经历,我选择了机械系。我原本喜欢物理的,不过上工大那时没有物理专业。不管怎么样,能读大学就行了。两年级开始学用计算机----autocad----机械系学生的吃饭家伙。94年的时候,我母亲的一个同事的先生建议我们家买电脑,让我学计算机。至此,我才真正地接触计算机技术,一发而不可收。
老莫,我高中的最高理想就是报理论物理(握个手哇~~),一方面小时候看的自然科学的书对我的兴趣影响极大,另一方面初中的物理成绩也给了我很大的成就感。非常喜欢物理的那种深刻。但因为色弱不能报考理论物理,所以报计算机的,但差了3分,落到骗人的"信息与计算科学"(后来听另外几个朋友说也是被这个名字骗了,以为是计算机相关的系,才报的,哈哈:P)
先是学了dBase,然后是C。96年开始接触C++,接着一头栽进去,就回不来了。从Borland跳到VC,从Win16到Win32,从api到mfc。啃过几个月的com规范,对于ms那套东西算是摸得很熟了。但始终没有跳出ms的范畴。而所用的C++,也不过是C(++)而已,直到两件以前,接触了标准C++和众老大的著作。一句话概括,我是一个用了12年C++,拥有2年半C++经验的程序员:P。半年多以前,我听说了pongba和他的blog,然后发现了toplanguage。然后么,在同众老大的学习和探讨中,进一步开拓了我的眼界,跳出了C++,跳出了ms,进入了更广阔的天地。一切还都在学习,学无止境啊。
这就是我的技术成长经历。概括起来就是两个字"杂交"。尽管我现在搞软件,一个很专业的领域,但是过去的经历,所学的知识,都有极大的帮助。有时,另一个学科(对我主要是机械工程)的只是和技能,会起到意想不到的作用。我也曾经学习了一些物理学,其中的一些营养,或许现在正在潜意识中促进了我的编程技能。:)
btw:从我现在的眼光看来,pongba的专业经历是最理想的:)。本科的数学,然后转向计算机,通讯或其他什么理工类专业,思维往往非常深刻严谨。没的话说了。:)
:-) 怎么说呢,虽然数学仅学了个半吊子,但后来我回头看,最重要的课程"微积分"(严密思维)其实已经在大一学掉了,我记得教微积分的那位老教授的课,是相当有意思的,在整个大学生涯中,也仅有这一门课,去听过;也仅有这一门课考了90分向上。后来大三大四就是在软院读的了,偶尔跟过去的舍友聊聊数学系在上什么课,感觉后来学的近世数学就开始繁复了,不复原来的简洁优美。另外,每次考试前的包夜(临时抱佛脚)也极大的锻炼了理解力,一两个晚上需要基本搞定一学期的内容,一般我的策略就是捡最重要最本质的内容理解(而不是记忆),其余的就管不着了,结果每次都混个过关:P
虽然最终数学没学到什么东西,但在严密思维以及理解力上面的锻炼还是相当有益的;或许,正如系主任所说,在学新东西的胆量上面,也有作用:-)
看大家都是牛人啊!我原来以为pongba在江湖混迹多年了呢,没想到还这么年轻(就这么厉害哈)。我想这里算我最菜了,但是还是想和大家分享自己的路
程,希望日后各位大牛多多指点(感激涕零)!
偶是03年从南方一个遥远僻塞的山沟里考上北京的大学的,也是当地第一个大学生,因此在家乡可谓远近闻名。高考报志愿时报计算机,主要原因是自己知道有
电脑这个东西,而且属于高科技,虽然那时候还没有上过一次网。大学里学的是计算机,怎奈这孩儿没出息,大二结束时虽然学了C语言,汇编语言,但还没编写
过一个程序,考试也只是及格万岁。也没有自己的电脑(买不起,每年生活费只有3K)。我想最主要的原因还是一种迷茫的心态使然,总觉得接触电脑太晚了,
和那些小时候就玩这东西的人没有可比性。出于对文学的爱好,大二那年写了一长篇小说(这里http://vip.book.sina.com.cn/
book/?book=9375),
现在回想起来要是用那时间学computer多好!
可惜没有回头路。此外,大二泡在图书馆读了很多书,励志之类的较
多,如卡耐基的等等。看完之后踌躇满志,好像自己马上就一个成功人士了。
2008/2/27 鋆邓 <tdzl...@gmail.com>:
> 课程…… 是属于被忽略的东西……
>
>
> 2008/2/26 natur...@gmail.com <natur...@gmail.com>:
>
>
>
> > 完全同意你的说法,但是我看到很多ACMer通常是在大一大二打数学基础的时候参加比赛,天天对着电脑K题,远远还没达到算法进行分析的程度,却耽误了
> > 微积分这样的课程.
> >
--
Any complex technology which doesn't come with documentation must be the best
available.
2008/2/28 abracadabra <jerry...@yahoo.com>:
> 汗,偶们那个垃圾的BME还存在啊。很强大...
> 伝説なBME~~~
> 偶是你师兄哦,哈哈哈哈哈
>
>
> >
>
--
博客:http://zsp.javaeye.com/
个人网站:http://zsp007.com.cn/
电子科大,7月就要毕业了,何去何从...
双学位:生物医学工程+计算机科学与技术
-- 张教主
后来就慢慢的想不起来干什么了。……
2008/2/29 张沈鹏(电子科大 08年7月毕业) <zsp...@gmail.com>:
2008/2/29 up duan <fix...@gmail.com>:
方才转了dreamhead的一篇文章,忽然想起,为什么不建一个帖子大家说说自己这些年的技术之路是怎么走的呢?肯定于人于己都有收获:)
自己先开个头吧:
01年进大学的时候,想学计算机,但却身在数学系,那个时候就做好了打算,数学只要混个及格,其余时间钻心看计算机的书,曾经一个月买了四百多块钱的书,结果只能吃方便面度日,大学有两三年时间,学习计算机的热情是最高的,从坐车到上厕所都带着书:P
也正是在那个阶段,学了很多底层知识,也钻了无数的细节。那个时候的信仰是:技术隐藏在细节当中。那个时候看的书,代表性的是:《编码的奥秘》、《80x86汇编技术原理》、《Windows核心编程》、《C++设计新思维》、《Inside C#》、《Linux内核源代码情景分析》。。。(那段时间最喜欢的就是"内幕揭秘"、"原理"、"深入"之类的书)
现在看来,这段时间学习方式的优点:钻技术细节,锻炼思考能力。缺点:一叶障目不见泰山。过分钻研技术细节导致忽视了要紧的技能;如,编码习惯非常差,以前写的代码,过了两年之后拿出来看,不忍卒读,连基本的DRY原则都没能遵循。此外,对技术细节的关注导致了忽视了一些编码方面形而上的原则。
这样的学习几乎持续到了本科的结束;其结果就是脑袋里技术细节不少,但编程方法学上的东西却几乎一概不知(比如对如何编写优质的代码的忽视、对测试的忽视、对重构的忽视、乃至对OO也只是停留在一点皮毛认识上)。
直到读研的第一年,才开始拿起《The Pragmatic Programmer》、《Code Complete 2nd》、《Object Oriented Software Construction》这些书,关注起一些"更大"的问题来,也拿起来《Programming Ruby》读一读,也正是这个时候,才算是走出了语言细节、技术细节的无尽泥沼,开始思考一些软件开发方面一般性的东西,开始意识到"脱离语言思考,使用语言实现"。四年,从纯技术的小世界中走出来,还不算晚。回头看,以前的钻技术细节的历史也并非全无用处,尤其是培养了金出武雄所谓的"思维体力",而在底层知识方面的积累也让后来看一些更高层的东西的时候心里更有底。然而,现在看来还是觉得:一,在细节方面花的时间太多了(细节的世界是无穷的,尤其是IT领域,一个老概念新翻,就能变化出无数细节。一个框架的API文档就隐藏着无数的"技术细节")。二,没有区分"非本质的细节",和"本质的细节",像硬件架构知识,属于本质细节,像语言细节知识,就是非本质细节了。前者是不变的,后者易变。三,没有在关注技术的同时,分出一部分时间来关注更大一些的主题(如编程的方法学,乃至项目管理,一个例子是,在以前,会认为语言的好坏至关重要,因为语言的世界是最熟知的,然而实际上软件开发的成本包含了更多重要的内容,甚至在语言方面还要取决于库、工具等等因素。以前看到"精巧的"设计模式觉得兴奋不已,现在则意识到,这些其实都是"非本质"细节)。
如今呢,倒是又开始觉得这些都不太重要,这些年的学习最大的收获不是学到的东西,而是学习的能力。对于软件开发这个知识无比细分、繁杂的领域,想要躺在过去学到的东西上过日子几乎是不可能的,然而又不可能把所有知识都装在脑中,所以唯有利用"元"能力:学习能力----用到啥,就学啥。毕竟,正如当初入数学系时的新生大会上,我们的系主任说的:数学都学了,还有什么学不了的呢?
--
刘未鹏(pongba)|C++的罗浮宫
http://blog.csdn.net/pongba
TopLanguage
http://groups.google.com/group/pongba
_____________________________________
第1段:启航
遥想当年初高中,对编程一无所知,只是在课本上听说过有VB,而不知VC为何物.居然也能仗着在电脑报上看到的一点鸡毛蒜皮被同学们当作电脑高手,粪土当年万户侯.
写第一个程序大概是在高二时分,那是一个帮我的妹妹练口算的小程序.现在看来,功能的确是简陋,不过界面并不逊色.VB6的简单正复合微软的一贯风格.
真正开始学编程要等到高考结束的真空时间(在这里我忍不住想插一句:中国的教育,哎...),那是2004年.NET刚刚面世,在我们那个小县城的书架上摆满了它的书.在Bill
Gates的连蒙带骗下,一个懵懂无知的少年就这样踏上了一条不归路...
那一年是先出高考成绩再填写志愿,我辛辛苦苦的把各大门户网站的学校资料做成了一部精美的电子书.打算刻成光盘,拿到学校门口去骗一点小费.不过终因没有找到刻录机,未果.不过现在想起来有的搞笑的就是:我居然不知道运行.NET要装虚拟机,打算拿它去给光盘写一个自动运行的文件.现在回想起来,光盘一插进去,用户就得到一个错误信息。。。下场,将是极其可悲的(汗)。
话说回来,那年.NET没看懂多少,倒是知道了到CSDN论坛上发帖子,问高手。另外还写用VB了一个类似流氓软件的东西,能伪装成你的IE,显示桌面,windows防火墙等等东西,定时的给你弹广告。在那个大家都比较单纯的年代,我似乎已经有了一点先行者的意味:)
第2段:入门
接下来就大一了.一群带着憧憬的学生来到刚建成的新校区,那是一个远离了城市喧嚣的郊区.四周除了一些隐蔽的网吧,剩下的就只有野竹林了.
按照有中国特色的大学惯例,大一是不允许带电脑的.这的确是一件很让人沮丧的事.不过也还是有令人激动的事情.新建的图书馆中一排排都是.NET和各种编程语言的新书,尤其是微软的黑皮书系列,一本一本都极为厚重,堆在一起,看着就觉得颇为壮观.
由于专业是父母填的,与编程没有什么关系,一切都要靠自己去摸索.当时也不知道什么书是经典,如何入门,反正是借出5,6本,一本一本啃.看的大部分是关于VB.NET的东西.其实VB.NET和VB的相似之处剩下的只有语法了,不过当看到所谓C++的后人C#的速度和VB.NET只在伯仲之间,心中也是一阵暗喜.
给我印象最深的应该是黑皮书封底的一句话了:"微软用.NET为未来十年做好了准备,你准备好了吗?".当年的我就想当然的把.NET当成了"未来之路",自以为搭上了这班车就能拥有"未来时速".
话归正题,学习.NET的收获就是让我理解了面向对象.现在看来再清晰明了不过的继承,多态当时却是让我头疼无不的问题.这时候,年少的我又再一次天真的认为只有纯正的面向对象才是大型软件开发的万能钥匙.VB.NET只能写写一些小玩具,VB.NET的代码难以维护,VB.NET比VB复杂又没VB好用.总而言之,我了VB.NET说了"再见永远".
接下来,我就有了两种选择:
A.刚出道的C#
B.久负声名的JAVA
大概是因为有着C#是C++的接班人一说,而C++有着难学的恶名.另外加上书架刚好有一本候杰老师翻译的<<JAVA编程思想>>这本久负盛名的煌煌巨作.我阴差阳错的看起了JAVA.
时间一天天的流逝,不知不觉大一上学期就这样结束了.
写于 2007-01-03 14:38
第3段:求索
2008-4-12 15:33 书接上回
JAVA又看了一个学期带一个假期,从大方向说上感觉和.Net神似.不过这是应该现在看法,当时的认识估计没有这么深刻.
那时是想用Java去写一个视频P2P的东西.网络一块到还有不少用Java封装的开源库,不用自己造轮子.不过视频播放这一部分就比较麻烦了,需要用到解码器/.COM,而这些东西毫无疑问都是C/C++写的.由于不懂C/C++,一直没有明白怎么去整合他们.
无奈之下,逼上梁山.开始看C++了.在Csdn上听说<<C++ Primer>>是最好的入门书,就去找了一本慢慢看.<<C++
Primer>>到是不难,但放下Primer去玩MFC就开始要吐血了.一时没搞定MFC,便又跑去看<<Effective
C++>>,<<C++ Template>>这类书,越看越有些误入歧途.每天津津乐道于语言细节,模板技巧,优雅设计.
受一些书影响,对跨平台的C++程序开始感兴趣.接触到了wxWeight,虽然wxWeight很MFC很类似,不过好像好懂多了.但是学了一些之后,发现如果想写一个支持皮肤的程序程序很是麻烦.我想,如果可以直接用网页做界面那么多好.于是Firefox所用到XUL技术进入了我的视野.
XUL本质上就是网页,因此HTML,CSS,Javascript是必不可少.因此也看了一点,另外还学习了一点XPCOM.
为了实现界面和后台的分离,又受到Google
Desktop的启发,我想,既然前台都已经是网页了,那么后台就应该一个web服务器了,但是既然要放到客户端,web服务器就不能太大,需要是一个微型的web服务器.
当然有服务器还是不够的,还需要一种生成动态网页的方式.先尝试用C++写Cgi,很痛苦,放弃了.尝试PHP,学了一天,会用了.但是第二天,在csdn看到鼓吹django.试用了一下,发现它居然自带了一个web
server,二话不说,放弃php,改投python.
于是被一些django教程作者毒害:),追求优雅的将模板和代码分离.从此在心中埋下了鄙视PHP的阴影......
这个时间应该是到了大3下学期了.有一天,同学问我,"有一个'星辰工作室',去不去?可以免费上网,还有工资".我
觉得还不错,另外自己写的东西也需要找一个空间挂出来,就去试了试.
在此之后一两个月,我写出了我的第一个web作品,支持自动完成的在线词典(http://web2.stuhome.net.cn/dictionary/).具体过程,且听下回分解.
-----
Blog(Chinese Edition):
http://zsp.javaeye.com/
Resume(Also Chinese):
http://zsp007.com.cn/
Where graduate soon , where to go ......
Double major:
Biomedical Engineering
Computer Science
-- Hierarch Zhang
看到大家的经历都相当羡慕,我学的经济管理类,今年7月份毕业。大学的头三年的实践和自学活动都是在做一些和赚钱相关的勾当,最高的记录数一天赚
600,很轻松,几乎都是坐着,并且是坐在操场,当时真的很烦数钱:-)
直到去年的5月份才开始学习计算机。只是由于一次偶然的机会让我喜欢上编程。于是拼命学,近8个月每天只睡5个小时,相当平稳。1月份的时候很幸运收到
了自己心仪的一个公司的面试,但很遗憾,持续1个多月以后还是被拒。二月份之后继续拼命,希望能争取到了在那里的实习机会。
现在小点的孩子问我学计算机现在还好不好,我都给他们说一般,要是为了钱就别学了
Uneeda一天能賺600的话,已经算是高等IT人才的薪水了,还属于soho,自己当老板,日子美翻了,学计算机干吗.......
2008/6/3 pongba <pon...@gmail.com>:
--
Yours Sincerely
Kun
blog: www.forwind.cn