刘未鹏|C++的罗浮宫

Knowledge sharing is the best reuse

刘未鹏ID:pongba
[修改头像]
703721次访问,排名42好友7人,关注者62
pongba的文章
原创 99 篇
翻译 8 篇
转载 0 篇
评论 1509 篇
刘未鹏的公告
除非特别声明,本站采用Creative Commons License许可。转载请注明作者、出处,非商业。

喜欢这个Blog的风格?见这里这里,还有这里

我的豆瓣饭否

讨论问题请到TopLanguage小组

TopLanguage

gtalk/msn(邮件请发送到gmail邮箱)

pongba@gmail.com
pp_liu@msn.com

订阅C++的罗浮宫

  • FeedSky
  • 订阅到鲜果
  • 订阅到Google
  • 订阅到抓虾
  • 订阅到BlogLines
  • XML聚合

搜索C++的罗浮宫上的内容

最新发表

    whaz going on


    饭否

    books I've translated




    最近评论
    李彬:我大一本科,也是所谓的“信息与计算科学”专业的,现在拼命学习C++,学些高代 分析之类的课,其他课实在没兴趣,我接触电脑业比较早了,前辈们的经验一定会让我少走弯路的
    pongba:@julie:
    sorry, 不知道啊:-)
    Kenny:“肯德基和麦当劳的食物中的热量早就超过了人体所需,但我们的身体系统还是照样笑纳”

    对这个,我有点话要讲:肯德基和麦当劳套餐一直比中餐馆的食物更健康——当然,这个是从统计意义上来讲的,如果有个MM进中餐馆后一直点素炒苦瓜加一碗米饭那就别说了

    我觉得你这句话写得有失水准,平时看BLOG感觉你满有深度的,但这一句可能是人云亦云得太多了吧?
    julie:请问:Viking Adult出版社在哪个城市?

    我在豆瓣上看到你读过斯蒂芬平克的思想的材料

    pongba:@bigfatsea:
    Ma和Mb只需要两相比较便至少可以扔掉一个,所以不存在复杂度问题。
    另,你的方法,包括上面列的方法,本质上都是一样的。用的都是一个关键性质。所以..
    关键是不同的思路,引领到同样的答案。
    文章分类
    收藏
    相册
    其它图片
    文章中的图片
    我的大头贴
    C++
    Andrei Alexandrescu
    Andrew Lumsdaine
    Bjarne Stroustrup
    boost
    C++ Standard Commitee
    Doug Gregor
    Hans J. Boehm
    Jaakko Jarvi
    Jeremy G. Siek
    Matthew Wilson
    newsgroups
    boost.Developer
    boost.User
    comp.lang.c++.moderated
    comp.std.c++
    TopLanguage
    Open Source
    codeplex
    Google AJAX Search API
    Google Code Prettify
    Google Web Toolkit
    MS shared source initiative
    notepad++
    STLSoft
    不认识的朋友们
    fatalerror99
    Yelz
    余晟|乱象&乱想
    刘慈欣
    姬十三
    张志强|阅微堂
    许式伟
    阮一峰
    鲍志云
    其它
    科学松鼠会
    科学美国人
    科幻世界
    认识的朋友们
    chenyufei
    duguguiyu|Venus神庙
    Joyfire
    littlestone
    lxwde
    Matrix67
    soloist
    云风
    刘江@图灵
    史晓明
    周星星
    周筠@博文视点
    孟岩
    张振
    徐宥|4G Spaces&Web 2.3
    方舟@博文视点
    李笑来|Pure Pleasure
    杨文博
    王信文|地球没有好朋友
    荣耀
    莫华枫
    袁泳(g9)|负暄琐话
    谢东升
    陈冀康@华章
    存档
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 你的技术之路

    新一篇: Failing To See the Big Picture - Mistakes we make when learning programming

    你的技术之路

    刘未鹏(pongba)

    C++的罗浮宫(http://blog.csdn.net/pongba)

     

    上周末看了dreamhead的一篇文章(《起步的台阶》),有些感触,忍不住在TopLanguage上八卦了一把,抛的是砖,引的是玉,获益良多,故摘抄于此:

     

    01年进大学的时候,想学计算机,但却身在数学系,那个时候就做好了打算,数学只要混个及格,其余时间钻心看计算机的书,曾经一个月买了四百多块钱的书,结果只能吃方便面度日,大学有两三年时间,学习计算机的热情是最高的,从坐车到上厕所都带着书:P

    也正是在那个阶段,学了很多底层知识,也钻了无数的细节。那个时候的信仰是:技术隐藏在细节当中。那个时候看的书,代表性的是:《编码的奥秘》、《80x86汇编技术原理》、《Windows核心编程》、《C++设计新思维》、《Inside C#》、《Linux内核源代码情景分析》……(那段时间最喜欢的就是"内幕揭秘"、"原理"、"深入"之类的书)

    现在看来,这段时间学习方式的优点:钻技术细节,锻炼思考能力。缺点:一叶障目不见泰山。过分钻研技术细节导致忽视了要紧的技能;如,编码习惯非常差,以前写的代码,过了两年之后拿出来看,不忍卒读,连基本的DRY原则都没能遵循。此外,对技术细节的关注导致了忽视了一些编码方面形而上的原则。

    这样的学习几乎持续到了本科的结束;其结果就是脑袋里技术细节不少,但编程方法学上的东西却几乎一概不知(比如对如何编写优质的代码的忽视、对测试的忽视、对重构的忽视、乃至对OO也只是停留在一点皮毛认识上)。

    直到读研的第一年,才开始拿起《The Pragmatic Programmer》、《Code Complete 2nd》、《Object Oriented Software Construction》这些书,关注起一些"更大"的问题来,也拿起来《Programming Ruby》读一读,也正是这个时候,才算是走出了语言细节、技术细节的无尽泥沼,开始思考一些软件开发方面一般性的东西,开始意识到"脱离语言思考,使用语言实现"。四年,从纯技术的小世界中走出来,还不算晚。回头看,以前的钻技术细节的历史也并非全无用处,尤其是培养了金出武雄所谓的"思维体力",而在底层知识方面的积累也让后来看一些更高层的东西的时候心里更有底。然而,现在看来还是觉得:一,在细节方面花的时间太多了(细节的世界是无穷的,尤其是IT领域,一个老概念新翻,就能变化出无数细节。一个框架的API文档就隐藏着无数的"技术细节")。二,没有区分"非本质的细节",和"本质的细节",像硬件架构知识,属于本质细节,像语言细节知识,就是非本质细节了。前者是不变的,后者易变。三,没有在关注技术的同时,分出一部分时间来关注更大一些的主题(如编程的方法学,乃至项目管理,一个例子是,在以前,会认为语言的好坏至关重要,因为语言的世界是最熟知的,然而实际上软件开发的成本包含了更多重要的内容,甚至在语言方面还要取决于库、工具等等因素。以前看到"精巧的"设计模式觉得兴奋不已,现在则意识到,这些其实都是"非本质"细节)。

    如今呢,倒是又开始觉得这些都不太重要,这些年的学习最大的收获不是学到的东西,而是学习的能力。对于软件开发这个知识无比细分、繁杂的领域,想要躺在过去学到的东西上过日子几乎是不可能的,然而又不可能把所有知识都装在脑中,所以唯有利用"元"能力:学习能力——用到啥,就学啥。毕竟,正如当初入数学系时的新生大会上,我们的系主任说的:数学都学了,还有什么学不了的呢?

    老莫

    我跟计算机的缘分差不多可以追溯到公元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的专业经历是最理想的:)。本科的数学,然后转向计算机,通讯或其他什么理工类专业,思维往往非常深刻严谨。没的话说了。:)

    我和老莫:

    老莫写道:

    我跟计算机的缘分差不多可以追溯到公元1989年。我还是6年级的小学生,兴趣小组把我们带到浦明师范,然后玩弄了一下apple II。也就是个四则运算什么的。说真的,我是一点感觉都没有,基本上没分清计算机和计算器的差别。

    我:呵呵,我最早接触计算机比老莫晚多了,是在97年,刚进高中,老爸买了一台台式机(奔腾MMX 200MHz,32M内存,2.1G硬盘),那个时候,最感兴趣的就是每天吃完饭之后去校图书馆看电脑爱好者,把里面的注册表应用技巧抄在一个小本子上,回到家里折腾:) 那个时候每个月必买的是三本杂志:科幻世界、电脑爱好者、电脑报。

    老莫写道:

    此后,在中学里我参加模型小组什么的,玩的挺开心,还得了些小奖。联系了实践能力和动手能力,倒是很有好处。我的钳工手艺差不多是那时候打下的基础。高中时,参加了"头脑奥林匹克"(Odyssey of Mind),一种从美国引进的面向青少年的创造能力比赛。我们得过冠军和季军。从中我接受了分析能力和创造能力的训练(没错,这也是可以训练的),学会如何运用基本原理,创造性地解决一个复杂问题。当然,这种比赛时要动手的,动手能力进一步得到锻炼。

    后来,我稀里糊涂地进了大学。(我没有夸张,我们这一届应该是全中国历史上唯一的一次,仅凭借会考成绩进大学的。没错,是上海工业大学,现在的上海大学,托钱伟长的福,祝他安康:))。

    我:我感觉这类经历还是相当有价值的!我本科有一舍友,高中的时候玩过竞赛,我们讨论算法问题的时候,感觉他直觉明显比我好多了。我们那个时候学校比较保守,玩的是应试教育,没有这些经历,对思维方式造成了很大的僵化影响~

    老莫写道:

    由于高中时的比赛经历,我选择了机械系。我原本喜欢物理的,不过上工大那时没有物理专业。不管怎么样,能读大学就行了。两年级开始学用计算机——AutoCAD——机械系学生的吃饭家伙。94年的时候,我母亲的一个同事的先生建议我们家买电脑,让我学计算机。至此,我才真正地接触计算机技术,一发而不可收。

    我:老莫,我高中的最高理想就是报理论物理(握个手哇~~),一方面小时候看的自然科学的书对我的兴趣影响极大,另一方面初中的物理成绩也给了我很大的成就感。非常喜欢物理的那种深刻。但因为色弱不能报考理论物理,所以报计算机的,但差了3分,落到骗人的"信息与计算科学"(后来听另外几个朋友说也是被这个名字骗了,以为是计算机相关的系,才报的,哈哈:P)

    老莫写道:

    这就是我的技术成长经历。概括起来就是两个字"杂交"。尽管我现在搞软件,一个很专业的领域,但是过去的经历,所学的知识,都有极大的帮助。有时,另一个学科(对我主要是机械工程)的只是和技能,会起到意想不到的作用。我也曾经学习了一些物理学,其中的一些营养,或许现在正在潜意识中促进了我的编程技能。:)

    btw:从我现在的眼光看来,pongba的专业经历是最理想的:)。本科的数学,然后转向计算机,通讯或其他什么理工类专业,思维往往非常深刻严谨。没的话说了。:)

    我:^_^怎么说呢,虽然数学仅学了个半吊子,但后来我回头看,最重要的课程"微积分"(严密思维)其实已经在大一学掉了,我记得教微积分的那位老教授的课,是相当有意思的,在整个大学生涯中,也仅有这一门课,去听过;也仅有这一门课考了90分向上。后来大三大四就是在软院读的了,偶尔跟过去的舍友聊聊数学系在上什么课,感觉后来学的近世数学就开始繁复了,不复原来的简洁优美。另外,每次考试前的包夜(临时抱佛脚)也极大的锻炼了理解力,一两个晚上需要基本搞定一学期的内容,一般我的策略就是捡最重要最本质的内容理解(而不是记忆),其余的就管不着了,结果每次都混个过关:P

    虽然最终数学没学到太多东西,但在严密思维以及理解力上面的锻炼还是相当有益的;或许,正如系主任所说,在学新东西的胆量上面,也有作用:-)

    Googol Lee

    受到两位大牛的感染了,我也拉拉杂杂写两句:

    我接触电脑算是早的了。小学4年级还是5年级的时候,学校搞了一批中华学习机,其实就是一种appleII的兼容机,然后组织我们学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系统本身等方面,还有很多东西要学……

    唯一的遗憾,大学玩的太多了,而且太狂了。好歹那会儿应该看看操作系统和编译原理。这东西现在静不下心看啊。

    KatKat Lim:

    俺第一次编程是在小学或者初中的时候。第一个程序是:

    hello

    不是hello world,因为我看到小霸王学习机手册上面写着:人机对话……

    Niu Jin:

    也不是科班出身,本科学的生物医学工程。

    大一时一大堆无聊的课程里就觉得C语言程序设计比较有意思,老师是刚毕业的,开堂第一节课说:"C语言我不是很熟,大家共同学习"。于是自己天天跑机房,做的是谭浩强那本C语言程序设计的习题。

    后来,一堆同学报了国家计算机等级考试,也跟着报了。那个南开一百题我读起来比读小说还有味道。考试上机过了,笔试没过,因为压根没看(我知道我错了,不该浪费父母血汗钱……-_-!)。

    再后来,无意中在网上发现了pongba的blog,无意翻到pongba的那篇《我的C++学习历程》。也去翻翻pongba提到的那些C++名著,然后就上了贼船^_^,大学剩下两年半将一本本C++名著读下来(全是早饭钱换的)……

    现在毕业未满一年,工作是数据库维护,对坛子里的诸位大大的谈吐无限敬仰,每日来潜水。 ^_^

    星染流云:

    现在想想当年那些电脑杂志里最好的一本,应该是《电脑高手》,其内容之强大,至今无出其右者。不过后来改版了,我就再也没买过。

    代数,我倒是认为是相当优美的,因为可以把各种数学结构用统一的角度看待。清华出的高等代数学(第2版)挺好的。

    分析,也不错,就是感觉有些琐碎,各种教材角度也不同,要么偏应用,要么偏理论。应用+理论的话,同济版的高等数学+Rudin的数学分析原理,我觉得是一种还不错的组合。

    语言上,静态的、动态的各学两门。

    yzzrn:

    小学最后一年的时候用小霸王步步高之类的学习机学会了英文的ABCD,学会了五笔字形。

    初中的时候用了一下学校的DOS:每次上机插入一张软盘,最喜欢玩的"游戏"是TT。学习了一些DOS命令,用了用UCDOS和当时很牛的WPS。

    高中的时候喜欢看电脑报,最爱干的事就是修改我表哥一台P2的机器的注册表。

    后来城里有了无盘工作站的网吧,于是经常去修改网吧的机器(解除其中的一些限制),还经常安装冰河:-)

    大学在南京NUAA上的,信息安全专业:大一上学期学了C(谭浩强版本),大一下学期学了C++,我们老师自己整的一本E文书(不知是否原创),当时他很自豪地说他的书里有一个string(即std::string),在别人的书里是没有的!!后来想写界面,于是自学了MFC(书是JJHou那本),认识了虚函数多态的妙用,被台湾术语搞晕了(繁体电子版JJHou那本书,后来自己买了一本简
    体的,大三的时候送给图书馆了,至今下落不明),被JJhou对MFC一堆宏的解说搞晕了,不过framework倒是了解了不少。后来看了GOF的那本书,于是对DP无比崇拜。接着是:Bob大叔的3P书,martin的Refactoring,C++设计新思维……

    然后就大学毕业开始工作了,发现书与现实的差别巨大无比。目前还在与VC6,MFC做斗争。

    刘新宇

    其实我是上周五才注意到这个TopLanguage的。和前面几位相比,看来我可以卖卖老了:-)

    "诸事无成,但尚能饭"。

    我是初二接触计算机的,也是Apple II。参加了一些竞赛,不过印象都不深了,印象最深的是这几件事:

    • 拿剪刀在double density的5寸盘的左侧剪一个缺口,然后在普通软驱上当双面用。
    • 期末考试结束后,写个冒泡排序帮老师算年级排名和平均分。……终于亲自验证了计算机可以帮助提高生产力。
    • 晚上调程序太晚,机房和教学楼都锁了,和老师一起跳窗户出来。

    然后进入高中,接触了pascal,接触了几个同学+好朋友,也搞竞赛,牛人真的很多。不过比赛得奖能一起看个电影什么的也蛮有意思。印象深的有这样一些事情:

    • 学习了些数据结构,并且在计算机小组活动上,利用老式光学幻灯机给大家讲。
    • 机房的机器都是意大利赠送的ollevitti(拼写可能有错,中文据说是"好利获得"),相当于8086, 意大利键盘。
    • 第一次和好朋友们一起逛中关村,大开眼界,逛了不少展览会,拿了不少好看的资料。

    然后是大学和读研,这个比较复杂,列举事情似乎不够了。说说一些变化吧。

    • 专业课里计算机相关的不多,C语言,汇编语言,算法与数据结构,也就这些了。现在很佩服当初的课程设置,老教授们的确看的很远,他们知道什么是工具,什么是知识,什么是要培养的能力。数学,物理培养的是科学的素养,数字电路,模拟电路,信号与系统,自动控制原理培养的是工程专业知识。实验课程培养的动手能力和——非常重要——自信。相信自己有能力解决真正的工程问题。(对了,我是自动化系)
    • 可惜年轻气盛,没有能够及时理解老师们的苦心,自己在大量的语言学习,Windows编程上浪费了不少时间。
    • 认识到这个问题是逐渐逐渐的,真正的生产需要扎实的基本能力和基本概念。
    • 我在大学里出过很多差,到过2次湖南农村的汽车厂里帮助开发汽车自动检测线的控制程序,到过7次江西的火电站帮助开发发电系统自动检测程序。接触了一线工程后,我知道了计算机的威力,也感到了自己的不足。
    • 这个不足就是硬件能力,于是悔之晚矣,我拼命学习硬件知识,动手制作电路。
    • 开始读论文,认识到研究是一件非常神圣的事情,后悔当初没有好好学习数学和专业课。
    • 接触图像处理,被极大吸引,发现Matlab是个好帮手。尝试静心研究,写论文,可惜岁月蹉跎,留给我的时间太短了,我毕业了。

    求学

    • 毕业后我空了半年时间,一边帮助老师做工程项目,一边帮助朋友写程序。这一阶段犯的错误是满意自己已经完全能够写任何程序解决工程问题了,现在看来,人一刻也不能自满。
    • 到日本学习机器人开发,发现自己擅长的程序设计和电路设计,单片机开发都不使不上劲,发现了另一个弱点:机械设计。
    • 努力学习机械设计,搞定了几个机器人。
    • 开始学习新的C++,包括STL。
    • 意外,被迫中断学业,回国。

    工作

    • 找工作,很艰难。先在上海工作,学习了设计模式。明白了所谓大公司里的软件开发流程。遇到了很多事,明白了社会是个残酷的大学。
    • 回北京,很长时间怀疑自己,很矛盾,曾请甚至觉得"读书误人"。
    • 继续工作,要承认现实。接着腰部生病,人生想法发生极大改变,珍惜活着的每一刻,生活,工作,薪资,都是身外之物,家人和亲情最可包括,人生要随遇而安。
    • 开始每月写技术文章,到现在积累2本:(《听雨集——C++小品文集》《看云集——软件开发杂文集》
    • 偶尔在cpper灌水。
    • 接触squeak,明白了工作和业余爱好的区别。
    • 现在越发觉得自己精力脑力大不如前,大量的非技术工作也逐渐占据了我的技术工作的部分。最近看看lisp,编译原理,Smalltalk和haskell,希望能够活到老,学到老。

    对了,说个题外话,我的同学很多都发生了极大的转变,有很多事自己主动做出了重要的人生决定,列举一些:

    • 认为理工,尤其是工程技术并不是自己追求的,大学期间开始学习经管的双学位,毕业后毅然出国学习经济。
    • 毕业工作一年后,毅然转行学习集成电路;学成后一致在集成电路业内工作。
    • 工作后转入半导体行业。
    • 坚持老本行,工业自动化行业。
    • 创业。
    • 转入纯软件行业……这个可能最多。
    • 当然,还有大量出国从事研究的。

     

    你的技术之路是怎样的

    (更多讨论请移步我们的讨论组

    发表于 @ 2008年02月25日 05:27:00|评论(loading...)|编辑

    旧一篇: 东写西读:我们都是信息时代的远古人

    评论

    #for_sql_q 发表于2008-02-26 04:07:01  IP: 121.46.87.*
    总结一点,都有个共性。。。因为某XX。。。所以搞上了计算机。。。当然,我也一样!顶了!:)
    #Eyoung 发表于2008-02-28 09:40:07  IP: 123.116.156.*
    顶一个,我也经常在细节问题上犹豫,总感觉花很多时间在那上面不值得,不过有时还得去攻克他,不然问题还能继续!
    #VBDONET 发表于2008-02-29 15:39:37  IP: 58.246.179.*
    我是在高中的时候正式接触计算机的。QB~~
    然后学了PASCAL~半吊子~
    大学么,说来还是和PONGBA学的同一个专业(被名字给骗了)
    遗憾的是,大学里对计算机的热情下降了许多,毕竟专业课不是那么容易过的。
    现在出来了,做的计算机行业,才发现大学里计算机学得太少。
    只好现学现卖,日子过得不容易啊
    #hxl268 发表于2008-03-02 07:06:13  IP: 202.105.37.*
    39字推翻百年集论
    黄小宁(广州市华南师大南区9-303 邮编510631)
    摘要 仅用39个字符就推翻了百年无穷集论。
    关键词 推翻一系列数学定理;百年集合论;重大错误:将部分误为全部
    1 G的真扩集K={a}∪G必显示K比G多一个元素a
    两无穷数集A与B=A∪{a}≠A是否分别包含同样多(个)元素?规定一个数只能“拉”一个数,A的各数x均将B内与己相同的数y=x“拉”出来,于是B的一部分:A的元素全都给“拉”出来后,A内就再也无数将a“拉”出来了。为什么?原因一目了然:B比A多包含了一个元素a。关键是A的各数x均有与己相同的对应数x=y∈B。总之,若A的所有元x与B的一部分——真子集的各数y一一对应,就表明B至少比A多含一个元素。康脱就断定无理数比自然数多;…。
    两集不对等的原因是一集至少比另一集多或少一个元素。故两集不对等就更谈不上相等。
    真扩集定理:任何可有真扩集的集G与其真扩集KÉG不对等、更不相等,原因是K至少比G多出一个元素,即K的一部分G包含不了K的全部元素。
    证明:G~G。给G增添一个非空集H得G的真扩集K=H∪G就极显然不~G了:K的一部分G的各数与原G的所有元一一对应成双配对“结婚”,而另一部分H的各元素就都“单身”,表明K至少比G多出了一个元素。证毕。
    2 39字推翻百年集论——凡无穷集都不能与其任何真子集对等
    H定理:任何至少有两元素的集J都不能与其任何一部分对等;故凡~J的集或=J,或≠J,都不是J的真子集。
    证明:任何至少有两元素的集J都可是其两不相交非空部分的并。设E是J的任一非空部分,J-E=V也非空,则J=E∪V,即J是E的真扩集,E与V不相交。E极显然不~J:
    P={0,1,2}与Q=P∪{3}的一部分P对等,就不可与Q对等了。同样,原E各元与J的一部分E各元一一配对了,哪还来多余的数与J另一部分V各元相配对?——这里39个字符数就推翻了百年集论!证毕。
    关键是J的任何一部分E的各数均有与己相同的对应数∈J,若E内有数再与V内数相对应,那就是重复对应了。
    D =E=(0,1)的各元x均有对应数y=2x与其成双配对;所有对应数y组成的Z~D.康脱由此错误地断定J=(0,2)可~它的一部分D。问题是如[1]所述,
    Z≠D∪[1,2)=J!
    即“定义域为D的y=2x的值域Z=J”是自有直线函数概念以来的几百年重大错误!如以上证明所述,Z的各元2x全都有“对象”x∈J的一部分D了,从而全都不能与J的另一部分[1,2)的各元x“搞对象”。否则就是“搞重婚”。可见Z与J不对等!从而更不相等。所以Z~D=E与D一样是J的真子集,康脱的百年集论是建立在几百年重大错误:将部分误为全部之上的更重大错误。
    以上推翻了一系列的“定理2 在可数无限集中增加或减少有限个元素,还是可数无限集。…。定理3 两个可数无限集的并集是可数无限集。…。推论 如果A是无限集,B是可数集,那么A∪B~A。…。定理4 …[2]”例如书上的自然数集N不~它的真扩集{0.1}∪N。
    可见,数学引以为豪的被“最伟大数学家”希尔伯特断定任何人都不能推翻的百年无穷集论,是重大的百年之误!建立在此重大错误之上的理论必是错上加错的更重大错误。不及时纠正会使人在错误的泥坑里越陷越深以致无力自拔。
    对占统治地位的集合论,1908年著名数学家庞加莱富有远见卓识、高瞻远瞩地作出极其
    #hxl268 发表于2008-03-02 07:06:52  IP: 202.105.37.*
    惊人的超凡越圣的伟大科学预见:“下一代人将把(康脱尔的)集合论当作一种疾病,而且人们已经从中恢复过来了。”(张锦文等,连续统假设,辽宁教育出版社,1988:20)。
    3 百年集论是建立在病句之上的病态理论
    说无穷集N内一个不漏地一切数n全都有对应数y=n+1比其大,不就是说有数y>N内一切数n吗?不少人为了分数而扼杀自己的正常思维能力
    若所有已知自然数组成的N的各元n都有对应数n+1,则所有的n+1都∈N吗?数学断定N的各元n都有对应数y=n+1。N的各元n都有对应数n-1,但并非所有的n-1都∈N。同样,以下揭示…。
    S式:代表数的y=n+1> n = 0,1,2,…,表达式中数列N的各数n都有对应数n+1,同时也一目了然地直接表达有数y>数列的一切数n,即y必可代表N外的数n+1>N的一切数。式中n可一个不漏地遍取N的一切数使代表数的y必可一个不漏地遍比N的所有n都大而成为(代表)N外的数,即y必可代表N外的数。否定此常识者暴露出其是数盲(学数学最关键的是须明白代数式所代表的全部内容,否则就是鹦鹉学舌,从而成为数学王国里的睁眼瞎。)。若限制式中y只能在N内取值,则式中数列≠N!
    然而自然数公理断定S式中的y只能在N内取值即断定N的任何元n<y=n+1∈N——一目了然的重大病句:说N中有数y>N的任何(所有)元n。说式中n可一个不漏地遍取N的一切数,就是说代表数的y>n必可一个不漏地遍比N的所有n都大。关键是对数学表达式所表达的内容不能只有一知半解,对式中各字母的含义不能只有一知半解。
    函数论断定:S式的y= n + 1的定义域D=N,N的任何元n均有对应数y= n + 1∈N与n成双配对“结婚”,所有对应数y组成的Z={1,2,…,n+1,…}是N的真子集而且~D=N。
    其实这是错误的,根据H定理,若Z~D=N,则Z不是N的真子集,即Z中至少有一 n+1不∈N;若Z是N的真子集,则不可有Z~N。不明此理使函数论一直隐含重大病句——百年集合论就是建立在此类病句之上的病上加病的病态理论:断定N的真子集可~N;…。
    周光召精辟指出:“中国目前最需要的是颠覆性创新。”(南方周末报,2007.12.6,A8)
    4 说明与鸣谢
    说明:本文实际上是获中国教育学会一等奖的文献[1]的一小部分。
    鸣谢:衷心感谢众多敢于实事求是、坚持真理、有正义感的合格教育工作者多年来对作者的极为难能可贵的教育与鼓励:这不是少数人搞的学问而是亿万人学习研究的集合论,企图封锁其错误真相者如当年对无理数发现者的“杀人灭口”,是利令智昏!
    参 考 文 献
    1 黄小宁 50字推翻五千年科学“常识”:无最大自然数,科技信息,2007年第36期:31.
    2 田开璞 现代科学数系论,济南:山东科技出版社,1998.4:12-13。
    3 黄小宁 “最伟大创造之一”的康脱集论最让数学脱离健康,见:左庆润、蒋峰主编,中华素质教育理论与实践新探(4), 北京:中国戏剧出版社,2006.2:423.
    电联:020-88506843(下午) 初稿完成于2008.2.13。E-mail:hxl268@163.com(hxl中的l是英文字母)



    #purewinter 发表于2008-03-04 15:58:57  IP: 222.66.175.*
    想起了那个该死的using namespace,最后被总结为compiler bugs。但是到底是哪儿的区别让别人能通过的。。。我是没兴趣找了。
    #糊涂 发表于2008-03-22 16:32:06  IP: 125.39.32.*
    终于有归属感了,以后这就是我的必看博客了,我大一,我的路才刚迈出第一步,相信前辈们的经验会让我走的更远更高
    #qiutao 发表于2008-04-29 22:52:28  IP: 218.104.96.*
    我要是那么早接触计算机就好了
    #李彬 发表于2008-05-11 21:16:34  IP: 211.68.112.*
    我大一本科,也是所谓的“信息与计算科学”专业的,现在拼命学习C++,学些高代 分析之类的课,其他课实在没兴趣,我接触电脑业比较早了,前辈们的经验一定会让我少走弯路的
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © 刘未鹏