| 峰's profile袁峰PhotosBlogLists | Help |
|
|
April 09 又送儿子去 BOSTON儿子有去 BOSTON 了, 又是一个人去, 又带了他的就 GUITAR.
三月他进了 INTEL STS 2008 决赛 (前四十名), 去 DC 比赛了几天, 我们也去凑热闹, 不过他没得奖(前十名).
三月底受到了 HARVARD, PRINCETON 的录取信; BROWN 可能觉得他去的可能性不大, 英明地给了他一个 WAISTING LIST. 现在是一儿三许.
这次去 BOSTON 是 MIT 的 PREVIEW WEEKEND.
December 15 儿子被 MIT 录取了 !一个半小时前的最新消息: 儿子被 MIT 录取了 (Class of 2012 early adimission).
马上起来做早餐, 破天荒地送到床前. 他在和同学/朋友打电话呢.
前几天为儿子的 YearBook 准备的广告. 八张照片(一到十七):
![]() June 24 小鸟飞了星期五学校才结束, 星期六儿子一个人飞了, 去参加夏令营. 八千里路, 第一次一个人出远门. 以前出门, 不是有父母, 就是有老师同学, 这次只能把他送到安检, 让他自己去应付了. 带上了他的笔记本电脑, 电话, guitar, 西装, 领带, 衬衫, 皮鞋, 内衣, 风扇, 台灯. 俨然象上大学的样子. 儿子的 guitar 用了快两年的, 开了一个很大的口, 他自己送出去让别人修. 要价上百, 而且还赶不上他的飞机. 星期五我去把它拿了回来, 加了些木工胶水, 用木工夹子夹了一夜. 儿子对老爸的水平很有顾虑. 星期六一看, 对照钢琴调了一下弦, 居然验收了. 儿子平常只喜欢穿舒服的衣服, 最恨各种衣服内的小标签. 这次夏令营要求带正式衣服: 西装, 领带, 衬衫, 皮鞋样样要全. 连便娤都要求挺高的. 每星期有三个晚上要用. 看来是要把他们培养成申士淑女了. 前几天 LP 带他去选了一身衣服, 星期六才拿到. 夏令营在 MIT. 星期五给他的小学老师打电话, 她 N 年前说过等儿子要去 MIT 前给他打电话. 老师甚喜, 要叫她女婿去看我儿子, 指导指导. 小鸟飞了, 漫长的六个星期夏令营, 他会学到很多东西, 交很多朋友, 还有人知道他做数学’研究’. 八十名营员, 五十名来自美国, 三十名来自全世界个地. 其中有倆个来自上海, 六名来自新加坡. 费用全免, 家里只要出路费, 制装, 临用钱. 真是有点唯才是举,有教无类了. 儿子昨天问我假如现钱用完了, ATM 卡不能用怎么办. 去年他也是六星期夏令营,几乎没用钱. 看来还是长大了一点. 我告诉他我们在波士敦有老同学, 会有人帮忙的. 电邮写过去, 老同学居然打电话来问要不要接飞机. 我说让他自己应付. 睡了几个小时打电话过去, 儿子已在出租车上去 MIT. 他在飞机上找到了一个从本地去的夏令营老师. 小鸟飞了, 暂时的空巢期开始了. May 16 明天: 可怕March 28 RSI最近大学寄来的信太多太多, 每个都吹自己怎么怎么好. 看烦了, 就堆在那里, 有时间再清理. 那知道把一封儿子苦等的信耽误了好几天.
信封上不起眼的写到:
E X C E L L E N C E
Center for Excellence in Education
8201 Greenboro Drive
Suite 215
McLean, VA 22102
看似小小皮包公司, 实际上他们是主办很有名的 RSI 夏令营的.
儿子终于被 MIT RSI 夏令营 (http://www.cee.org/rsi/) 录取了.
RSI 夏令营 全美收 53 名 + 其他国家收 27 名高中生, 一流师资, 六个星期, 费用全免(自己付来回机票), Jimmy Carter 是名誉董事.
网上传说:
1) RSI 比 MIT 还难进. RSI 一年收 80 名高中生, MIT 收 1500 名.
2) 进 RSI 100% 能进 MIT.
3) 进 RSI 75% 能进 MIT. December 24 五年前胡里胡涂签了一个名五年前胡里胡涂签了一个名,
五年后莫名其妙收到一封信. www.uspc.com 要卖我一块小木板, 核桃木做的要收我 $269.00 (http://www.uspc.com/store/image.asp?IMAGE=Ad177.jpg&ITEM_ID=6&DEPARTMENT_ID=1). 我可没钱买他们的.
五年前快要离开 HP 前, 同事写了一个专利申请, 因为我帮了他, 就把我写成共同发明人, 我就签了名. 五年后, 终于正式批下来了(2006 年, 十二月十二), 我的第二个专利. 后面还有一个我签名的专利.
这三个都是我挂名的, 我并不感到什么自豪.
但是去年我自己写了一个值得自豪的专利申请书, 到时候我会买一个豪华的专利木板.
December 16 回归自然星期四下午听说十年未遇的风暴来袭, 赶紧回家应急.
星期四半夜断电.
星期五早晨天寒地冻, 开车上班, 办公楼只有照明电, 小区周围倒了七八棵十几米高的大树, 一路交通灯失灵.
星期五晚上点蜡烛烧饭, 吃饭, 看书, 玩游戏.
星期六家里更冷, 办公楼恢复正常, 来办公室避难/加班. 晚上终于有电了, 暖气很长时间才回到70度. December 04 业余木匠读中学的时候, 老爸曾经想让我去学木匠. 当时姐姐高中正要毕业, 家里商量好让她留城工作, 让我上山下乡. 原因主要是姐姐脾气比较坏, 上山下乡肯定是会搞得鸡犬不宁的; 而我的脾气通常比较好的. 学木匠是为了在下乡有一门手艺. 另一个原因的我数学不错, 当木匠用得着. 后来老邓恢复高考, 我就不用向接受贫下中农再教育了.
虽然没有学木匠, 我还是非常喜欢树, 木材, 木料家具, 木工活的, 小工具慢慢买了不少.
最近想翻新洗手间, 有一快地方没什么用, 我就想买个柜子放进去. 可是它的大小很不标准: 19 x 20 x 76 英寸. 只能自己设计, 购材打制. 做到一半, 发现自己锯功太差, 趁机买了一个早就想买的台锯 (table saw). 台锯装好了不会用, 到图书馆请了几本木匠书, 以防闭门造车.
柜子终于今天做完, 装好了. 还顺便教了儿子几招基本功. 儿子的最后评价是, "It totally works.".
费用:
七合板: 4 x 8 英尺, 半英寸厚, 两张, $50.
预制门: 18 x 30 英寸, 两扇, $50
Oak: 3/4 半英寸厚, 其他材料, $50
锯盘: 80 齿 $50
其他工具, 书: $80
合计: $500.
终于成了业余木匠.
第二天向高手请教为什锯的木头锯口是烧黑的, 众说纷纭, 最后我发现锯盘装反了.
业余得可怕. A little knowledge is a dangerous thing. November 16 答:金旭亮先生 之 <我对袁峰先生及众网友观点的回应><我对袁峰先生及众网友观点的回应>
(http://blog.csdn.net/bitfan/archive/2006/11/15/1384681.aspx) ===============
金先生题目提到 '袁峰先生及众网友观点', 我只能谈我的观点. 其他请金先生说明, 何人何时何地讲了什么.
我写的东西起因是金先生的《回应我的指责:学生来邮件把我痛骂了一通 》. 文中提到他学生的匿名邮件:
> 你是计算机系所有老师中间最不受尊敬的老师
> 你老是发帖子也在你的书里说你是如何在专业之外学习计算机软件的,取得了什么样的成就。 > 你老是吹嘘自己有多么的努力在编程方面有多么牛比,那为什么你不去微软呢? > 而且众所周知你心胸狭窄。 而金先生只是轻描淡写地说:
> 其实我这么多年来被很多人骂过,也整过,不缺这方面的经历。
> 我也不用多说,说了你们也现在听不进,自己去悟吧。 > 不要再花时间来恨老师了,.. 我是一个当父亲的人, 儿子有一次和我们发了很大的火 -- 他是有道理的. 我马上看了金先生在网上的所有公开材料, 开始同情他的学生.
更令我气愤的是金先生写的:
> 我从不要求学生喜欢计算机,我是班主任,从大一就一直对班上的学生说:大学四年最
> 重要的是认识自己,找准自己的发展方向,确信不喜欢计算机的,就60分万岁,保证顺 > 利拿到毕业证,将时间用在喜欢的专业上,然后考喜欢专业的研究生。 对照金先生自传, 我看他是在把他 "一张白纸进来,一脑浆糊出去" 的大学历程作为成功经验推广.
'很随和的' 袁峰就进入了 '言辞犀利,锋芒毕露' 的状态.
先回答金先生提出的几个疑问. 请注意我常常看不出金先生到底是在和谁的论点辩.
> 我不知道怎么会有人看出我在书中“轻视”理论了,是您自己“猜”想的吧?
这是我写的:
假如我是学计算机的, 特别是软件专业的, 我会马上放下你的书, 告诉所有朋友, 以后远离 "金旭亮".
金旭亮对 "很好的程序, 合格的程序员" 所定的标准太底, 对软件专业的学生不合适, 甚至是有害的.
金旭亮对 "合格的程序员" 的定位在我看来是二三流的程序员, 俗称 "软件民工", 我觉得应称为 "软件装配师".
金旭亮的所谓 "高手" "牛人" 的定位属于我的"合格的程序员"的定位, 对软件专业的学生是不合适.
北京理工大学是重点大学. 假如中国重点大学的好老师对程序员有这样的定位, 难怪好公司大叫招不到人才, 难怪好公司的程序员很大比例来之清华等一流大学.
中国不缺程序员, 缺的是真正"合格的程序员". 有了"合格的程序员", 我们才能谈 "很好的程序员" 和 "优秀的程序员".
> " 要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以写出很好的程序!"
关键词: 不需要大学计算机系艰深的理论, 适当的指导与训练, 高中生, 很好的程序
这里我们大致知道 "大学计算机系艰深的理论" 是什么, 但 "适当的指导与训练" 未定义, "很好的程序" 我们大致可以分析出来是他自己写过的那类简单应用程序.
假如 适当的指导与训练 >= 大学计算机系艰深的理论, 本句话是空话. 所以 "适当的指导与训练" 应比 "大学计算机系艰深的理论" 明显地简单才有意义.
所以我的理解是金旭亮认为至少有部分 '大学计算机系艰深的理论' 是没必要的. 但他又没说那部分必要.
对重点大学计算机专业, 对想成为一流软件人才的人, 这是误导.
对其他场合, 对想成为二三流软件人才的人, 可能是合适的. 但这一人才市场很饱和. 你愿进入请便.
建议改名为:《零起点编程速成 -- VB.NET 软件技术学习与实践》
> 实践中需要什么我就讲什么。讲 C++/Java,我就抛开了指定的教材,
> C++ 我讲了 STL,Java 我讲了 OOAD,两者我都讲了用 Rose 进行双向工程, > 引导学生去学 UML,一开始就用 UML 去描述自己开发的程序, 技术是讲不完的, 大学应该从最基本的教起, 教深, 教好. 内功比外功重要得多. 本末倒置! 浮躁!
> 5.实践第一
错! 数学第一, 软件基础第二, 实践第三.
> 事实上,中国高校的计算机系课程一直都是按袁峰先生所倡导的“打好基础”的路子走的,
不知道金先生是如何得出这一结论的.
我说的 "数学第一, 软件基础第二, 实践第三" 是指实践要以理论为指导, 而不是不要或少要实践.
从看金旭亮的自传, 他的实践是闭门造车的实践, 是重数量而不重质量的实践. 他不止一次说他编了多少行程序:
> 我的编程能力主要是自己培养出来的。怎么培养?很简单,这么多年来我编写过近百万行代码,
十年编写百万行代码, 就是每天编 250 行代码. 这样的代码或者有很多重复, 或者是很简单的代码. 这种实践完全可以在更少的时间内完成.
从金先生的书可以明显看出他的基础没有打好:
> (离散数学) 所谓哈希值,就是一个很长的数字,这个数字由特定的数学算法(称为哈希函数)生成。不同的对象拥有不同的哈希值
> (计算机) 小的小数用Single,值很大的小数用Double
> (数学, 英文, .NET) 在高中代数中学过集合的概念,集合是若干有着相同特性的元素的整体。在程序设计中,集合有着非常多的应用。本节介绍.NET中最常使用的两个集合数据类型:ArrayList和HashTable。
> (计算机语言, 编译) Else子句总与离它最近的If配套
假如你说我是断章取义的话, 请加上上下文, 看你能作出其他什么理解.
我所说的实践是和理论结合的实践, 是伸入到底的实践, 是有指导, 有合作的实践, 是不断提高的实践.
1) 合格的程序员, 重复型人才, 能重写 notepad.
2) 良好的程序员, 改良型人才, 能先从一个更好的设计出发, 写出一个更好的 notepad.
3) 优秀的程序员, 闯新型人才, 能让人掏腰包买你的 notepad.
(注: 重写 notepad 要求不用现有的 EDIT/RICHEDIT CONTROL).
金先生的书中教的就是封装 RICHEDIT CONTROL, 但称其为 "克隆Word". 浮躁吗?
> 另外,我想指出一个现象:说我这本书不好的许多人,恐怕根本就没有细看过我这本书。
> 而仔细看过我这本书的,却好象没人告诉我这本书是垃圾,他给“误导”了。 懂行的人看几页就能看出问题, 初学的人不读别的东西是看不出问题的. 这本书的确写的很容易读, 所以初学的人会喜欢. 但是真的想靠写软件吃饭的不应上课读这本书, 特别的重点大学计算机系的学生.
书难免有错, 我的书也有很多错, 特别是英文错. 大概只有 Knuth 敢出钱让人找错.
但是这本书里的几个错和一个重点大学计算机系硕士, 教师不相称. 当然出版业也是有责任的, 所以我也在和他们联系.
主要问题:
1) 读者: 对重点大学计算机系的学生太浅, 太表面, 太杂, 太不严格.
2) 作者: 应该知道自己的不足, 找一合作者. 3) 审查: 好像没有高手技术审查 4) 书名: 太浮夸 5) 语言: 因作者熟悉 VB 而选 VB.NET 对读者不负责, 因把读者放在首位. 6) 前言: 太强调自己的成功之路. 7) 自传: 未加深入批评而附上自传有很大误导性. 8) 推理: 好几处无理的推理, 反映作者不严格的思维,写作. http://community.csdn.net/Expert/topic/5138/5138078.xml 9) 基础: 计算机基础薄弱有好几处可见. 10)教材: 不明白这样的书如何成为重点大学的教材. 没有更好的书了? > 有关中国教育问题
> 您的一些想法在目前的教育现状下是“水中月”——看上去很美,但若真的这么做,
> 至少在当前以及若干年内,恐其得到的结果与您的预期相反。 其实我还没有对中国教育这一大课题提什么建议, 不知为什么你和其他人都说是行不通的.
我的意见是象你这样的教师每天可以做的事. 我在 CSDN 上就是这样做的. 简单得说:
1) 提高合格程序员的标准.
2) 给学生指明合格程序员的好前途/钱途. 3) 强调数学和计算机基础课的重要性. 4) 辅导. 这不就是你说的 "传道受业解惑" 吗?
看看我在 CSDN 上的帖子和回贴:
1) 关于收徒 http://community.csdn.net/Expert/topic/5141/5141428.xml
2) 写给学计算机的中国学生们 ---- 其实你们很幸运 http://community.csdn.net/Expert/topic/5139/5139728.xml 3) 袁峰请进,请教个问题 http://community.csdn.net/Expert/topic/5158/5158795.xml > 其实我和您都是理想主义者,都希望能做点有意义的事。
对.
> 这场论战我们都是大输家,都是“理想被现实撞得头破血流”。
我想我们都学到了一些东西. 我希望大家都是赢家, 主要是学生们.
November 11 五年磨一剑昨天下午两点, 象通常秋天西雅图的天气一样, 天下着小雨, 很多人走进了二十六楼的地下车库.
更往常不同的是, 他们受到的是红地毯待遇, 有一个很强的大灯照着进去的人, 旁边几十个人鼓掌欢迎, 闪光灯闪了几小. 这就是微软内部的 Windows Vista RTM Shipping Party. 几千的工程师聚在一起, 庆祝 Vista 终于做完了. 二十六楼和二十七楼的地下车库连起来相待大. Party 有现场乐队表演, 啤酒, 葡萄酒随便喝, 还有简单的自助餐.
Party 的高潮是 Jim Allchin 出场会议 Windows Vista 的坎坷经历, 感谢员工. Marekting 部门陈述 Windows Vista 推销计划. Bill Gates 出场感谢员工, 最后是 Kevin Johnson 和 Jim Allchin 合影.
Jim Allchin, 1951 年出身穷人家庭, 1980 年 Stanford University 硕士生, 后研读操作系统; 1990 年终于被 Bill Gates 劝来 Microsoft. 从 NT 3.5 开始领导 Windows NT, Windows XP, Windows Vista 开发. Windows Vista 完了, Jim 就要退休了. 另一个微软人喜欢的帅才是 Brian Valentine, 最近去了 www.amazon.com.
其实微软是很朴实的, 开大会都没有一个象样的会场, 自助餐没什么好吃的, 地下车库开 Party 又冷, 又黑, 又湿. 当然大家还是很高兴的. 昨天还有几个大大的 CD 让大家签名, 我签了中文名.
我是五年多前加入微软的, 赶上了修 GDI+ 最后几个 BUG. 后来做 GDI+/GDI. GDI+/GDI 组又成为 Avalon (Windows Presentation Foundation) 的一部分, 所以 WPF 中几个 DLL 有我的代码.最后我是在 Digital Document 组.
五年磨一剑.
剑成.反思,继续. November 10 答 金旭亮先生 之 “学生恨老师”与“耶鲁教育的无奈”金旭亮先生在他的 “学生恨老师”与“耶鲁教育的无奈” 最后写道 (http://blog.sina.com.cn/u/571d0ffe010006b5):
联想到我与袁峰先生在 CSDN 的论战,其实质是大学的本质的问题。到底大学是精英教育还是大众教育,恐怕要由每个学校来自主选择。而中国最大的问题,我看就是“中国大学是政府的一个部门罢了”,不是独立的。因此,我与袁峰先生的争论,是根本不可能有结果的。 我和金旭亮先生的最大不同是, 我觉得重点大学计算机系应以培养能进一流公司的合格程序员为目标.
对我来说合格程序员的定以不是用简单的 API 拼凑一些看似伟大的程序, 而实际上基本都是封装 OS 已有的功能.
比如说, 大学毕业时合格的学生应能不用 EDIT/RICHEDIT 控件写出一个类似 NOTEPAD 的程序.
为达到这一目标 '计算机系里去学很多艰深的理论' 是一定要学的. 为达到这一目标, 我们不能只 '把高中生经过适当的指导与训练'.
这一论战根本不是 '精英教育还是大众教育' 的论战, 而是踏实和浮躁的论战.
这一论战也不是理论和实践的论战, 而是如何更有效实践的问题. 我大学毕业 24 年了还在写程序.
这一论战更不是对学生严格不严格的论战. 而是如何给学生希望, 引导学生的问题. 我也在南京大学教过四年书.
为达到这一目标, 为人师表者先应 "学高为师".
为达到这一目标, 我们的教材应该过硬.
为达到这一目标, 我们不该把责任推给教育制度和可怜的学生, 推说最大问题是'大学不独立', 推说'学生恨老师', 而是看看自己能做什么.
假如北京理工大学这样的重点大学做不到这样, 难到全中国只能靠清华, 北大, 南大类的寥寥无几的一流大学了?
假如你们觉得这只是“仁者见仁,智者见智”, 那我可以给你们再看看一些纯技术问题. 看完后再想想 "学高为师" 四个字.
我也不明白为什么这一论战是 '根本不可能有结果的'. 我已和出版社写了一封电邮, 提了几个改进图书质量的建议. 起码这会带来一些有益的变化.
更令人费解是金旭亮先生多次把“精英”、“海归”放在对立面, 难道他们不是靠双手在劳动? November 05 解读《一个普通IT人的十年回顾》想必很多人读过《一个普通IT人的十年回顾》. 很多人为此感到激动, 兴奋, 景仰, 感激. 很多人发誓要以作者为榜样, 以愚公移山的精神, 不考上研究生决不罢休.
这篇文章是比较叙述性的, 没有太多分析, 反思. 但以国人通常的想法以十年磨练而成为重点大学的教师肯定是一个成功的英雄事迹式的故事, 就象愚公移山典故一样.
下面我就以我现在的眼光分析一下《一个普通IT人的十年回顾》, 希望对大家有所启发.
在开始之前, 我们应该感谢作者和大家共享自己的经历. 假如更多的人这样做, 对很多人会有好处. 我自己的经历也在我的 BLOG 上,有兴趣的人也可以帮我'复盘'一下.
> 完成于 2003-8-3 北京
> 从1994 到 2003,不知不觉之间,我已在计算机技术的世界里沉浸了十年
作者实际上很幸运, 在 1987 年读高二时就有计算机可用, 沉浸了十七年了, 但他没有抓住机会.
> 有位哲人说过:如果一个人能用十年的时间专心致志地研究一门学问,或学习一门手艺,
> 或从事一个职业,他一定能成为这个领域的专家.
有全称量词的句子不要太相信. 要是这个说法成立的话, 专家就太多了. 很多人多年会在同一水平徘徊. 我比较信的是: 逆水行舟, 不进则退.
> 1987 年我在桂林中学读高二,我上的是计算机班,当时用的微机是 Apple II,用 Basic 编程。老师讲的我又不明白,考试的时候也不知道怎么过的。
多好的机会啊, 可惜, 可惜.
Bill Gates 就是在中学迷上计算机的, 最后大学都不用读完了.
> 1989 年六四动乱,广西高考名额一下减了7000多,竞争激烈,十几人里才能取一个,
> 由于压力过大,我高考前夕失眠,第二天考语文,120分的试卷当时只考了68分, 因而与重点高校无缘
少睡几个小时好象不会影响语文考试, 因为考试会让人兴奋. 看官慢慢可以看出作者失败是有怪外部环境的习惯.
> 我万分不情愿地顺从了父母的意愿,去了我不喜欢的学校,读了我不喜欢的专业。
> 男怕入错行,我在大学毕业后重新开始学我喜欢的专业,足足用了五六年的时间才转过来.
能得到第一志愿的人并不多. 即使进了不喜欢的学校,读了我不喜欢的专业, 也不用五六年的时间才转过来. 又怪别人.
> 四年里我是个老老实实的好学生,但四年除了玩命过了六级,什么也没学会。
> 大学里我学的专业是电力系统自动化,学过微机原理与fortran,上机时还用的是 > 古老的主机加终端方式的计算机(叫做l/f机),我上机时真是一塌糊涂,因为这 > 门课我从没学进去,也从没学懂过。有同学很厉害的,... > 1993 年我毕业了,用我总结的一段话来说,是:一张白纸进来,一脑浆糊出去。 好学生, 四年除了英文什么也没学会有点夸张. 假如一脑浆糊出去, 就不会是好学生. 有机会用计算机又没有掌握. 工科起码应可以把数学学得很好.
我上大学第一自愿是数学, 没上了, 也是二流学校, 计算机条件更差, 但我四年毕业后考上的中国当时最有名的软件教授的研究生.
不要以 '入错行' 为假口浪费时间, 浪费生命, 浪费父母心血. 即使不喜欢, 你还是可以学很多有用的东西的.
> 而我们现在的中国高校,这么多的本科生都在为考试、考研、考托、考g而奔忙, > 这种填鸭式的应试教育体制,扼杀了太多学生的创造性。结果是一个学生在大学里 > 读得越认真,就受到的错误影响越大,我是用好几年的时间反思才得出这个结论的。 怪学校? 中国高校是有问题, 但是你还可以学得很好. "读得越认真,就受到的错误影响越大" -- 谬论.
> 所以,中国高校十几年数以几十万计的本科生中出不了可编写 linux 内核的杰出人才, > 一点也不奇怪。 莫名其妙的推理过程. 大学老师不应该只样轻率. 编写 linux 内核 不就是杰出人才, 因为他们学过 UNIX. 中国高校十几年数以几十万计的本科生没写出 linux 是因为没有这样的需要.
1982 年中国就有自己的计算机, OS, 高级语言, 编译.
1986 年成电就把 UNIX 反编译出来了, 还要自己写干什么?
> 公司老总办公室里的灯不亮了,学电的大学生我花了半小时楞不知原因在哪!
> 四年里,我的电脑知识与技能=0! > 现在看起来,我浪费了宝贵的四年光阴! 只能怪自己
> 没有当初的浪费,怎有后来的珍惜?这是人生必经的一个阶段。 歪理 !
> 我向老师要来了桂林电子工业学院计算机应用专业本科四年的培养方案,,回到家中, > 列出了所有本科课程,再根据书上的先修课程介绍,绘制了一张巨大的课程树, > 从树根开始,决定一本本地啃, 目标低了. 工科应看清华的培养方案.
> 把谭浩强的《C程序设计》一书中的所有例题和习题全部敲到计算机中运行了一遍,
> 打下了C语言扎实的基础。 多年后 VC 还是没学会?
> 我用一年半的时间基本自学完了计算机专业的主干课程(除了《编译原理》,我实在看
> 不懂),1995年我参加了初级程序员考试,结果上下午成绩加起来有90多分。但96,97我两 > 次参加程序员级考试,虽然我已有不少编程实践,但仍然通不过,现在看起来,这反映出 > 一个事实:我理论基础实在太差,天资也并不高。直到现在,我仍然痛感我的计算机基础 > 理论不好,使我难以成为一名计算机科学家,而只能成为一名不错的软件工程师。 自学有点像闭门造车, 走错了路很长时间才能回头, 或永远不能. 起码应该多交点志同道合的朋友. 理论基础实在太差通常是数学 + 基本基础. 其实到现在作者还不能称是一名不错的软件工程师, 但他反而还在说中学生经培训就能写很好的程序.
> 从95年开始,我的生活开始加速下降,我所在的公司弄得不成样子,我只得离开了公司,
> 在这四年中,我干了不下四五种工作:当过推销员,当过打字员,当过培训老师, > 修过电脑,从事售后服务,甚至摆过地摊……,一切的一切,很简单,就为了能有口饭吃。 > 生活是严厉的,不讲情面的,我唯一的爱好就是闲下来就拿起我的计算机书来看。 精神可佳, 但是作为 24-28 的大学毕业生, 没能用自己的专业+多年学的计算机知识谋生, 很失败.
> 1996 年,我的一个高中同学杨考上了湖南大学计算机系研究生,饭后跟我说,你既然那么
> 喜欢计算机,为什么不考研呢?对啊,我为什么不去试试呢?当天晚上我躺在床上, > 没怎么想就确定了要考研的想法。我就去买了相关资料,取出尘封己久差点当废纸卖掉的 > 大学课本,又开始了学生生涯。我想起了高中时的梦想,决定直接考北京的高校。 憎恨中国的教育系统又想回去再受罪?
学校是按地名选的? 专业是怎么选的? 导师是怎么选的? 钱那来? 读完了干什么? 读大学已经太一般了(虽然也没有多好), 还有不少人把读研看成改变生命的秘诀.
> 经过半年的复习,我参加了1997年元月的全国研究生入学考试,数学才得了 44 分,
> 1997 年 7 月参加陈文灯老师的考研班, 1998 年的数学试题,平均分为30多分,我的数学 > 成绩让我差点去跳漓江了--- 13分 从 98 年到 99 年 1 月,我断绝了一切外部联系, > 我学英语,背政治, 考研数学考试分析 500 多页的书,被我翻来覆去地将历年考试试题 > 做了三遍。党的十五大报告我至少背了一百多遍,生活总算给了我一次微笑。1999年考研, > 我数学得了60分,终于迈进了大学的门槛 数学: 44 -> 13 -> 60.
数学差的人写不好软件! > 回顾这段经历,我只能说是“具有中国特色的考研之路”。我感叹,中国的考试就是扼杀
> 人性的东西,高考与考研尤其如此。 为考研而考研.
> 99 年 4 月,我来到北京参加研究生复试。复试完了之后就不回去了,开始了打工生涯,
> 除去学费,来京时父母给我 2000 元,大哥资助我的 1000 元, 在我数着最后还剩余 600 > 元钱的时候,终于有一家公司要我了,做中小学教育软件,月薪1600。 > 我到了 28 岁才可以用自己的知识与技能养活自己,再不用依靠父母和兄长的资助. > 只能是个不成熟的人,一个躺在父母身上的人,不是一个真正的男子汉!我当这样的孬种 > 当了28年 有点反省了.
> 读研两年半的时间,我四处打工,这两年半我至少在七八家公司做过,编了十几万行代
> 码,为自己赚了一台电脑,两部手机(丢了一部),还有读研期间的所有费用,实现了我 > 的目标:没向家里要一分钱。 读研就是打工? 为什么来的? 为什么花了三年考研? 目标就是不向家里要一分钱?
对作者这样的基础, 读研的第一目标应是通过可老师, 同学, 图书补漏洞. 否则读研又是稀里糊涂为文凭. 代码数量根本不说明问题, 通常越差的人代码越多. 高手和低手的差别在于难度, 质量, 创新, 少走弯路.
> 我水平不高,但在打工过程中,发现许多中国软件公司的水平更菜!
> 但我所见到的软件公司,我敢说没一家能做出世界一流的软件! 坏习惯, 和差的比.
> 后来我总结VB程序员的三个境界:工程中有CLS模块的,属于高手,他们已掌握了面向对象 > 的思想,并能应用这种思想来解决实际问题 作者很大一个问题是重表轻里, 不求甚解. 用 CLS 模块不一定是掌握了面向对象的思想, 依葫芦画瓢不一定是好画家.
> 九月,研究生要开题,我自拟了个课题:软件体系结构设计。我决心弄明白, > 好软件到底是怎么做出来的。 这么大的题目? 居然教授会同意(看来他也不是写软件的)? 论文在哪发表了?
> 我上的研究生课程也让我失望,整个就是本科教育的再版。经过高考与考研两次重大考试 > ,我对考试已是深恶痛绝,但读研期间仍要考试,而且是闭卷! 考了三年, 还是上当?
> 我看到了一个北方交大的本科生作品,在半年的业余时间里,用Delphi写了十几万行代码,
> 他甚至在代码中嵌入汇编,自行编写数据存取引擎读写Foxpro,速度超快!软件中有一个计算> 公式解析模块,他用编译原理理论居然 > 做了一个小型的公式解析器,其基本功之扎实,水平之高让我望尘莫及!
程序行数不重要.
汇编是基本功, 嵌入汇编不一定是高手. 汇编应在高级语言无发解决问题, 或性能最关键的地方才用. 很多人写的汇编比编译生成的还差.
表达式计算是是基本功, 只是编译的一小部分.
这些是合格软件工程师的基本要求. 读到计算机研究生应补上这些漏洞, 特别是还要教重点大学计算机系的学生的人.
'望尘莫及' 之谈对自己要求太底.
> 但我毕竟是靠自己奋斗出来的,我并不自卑,这世界需要牛人,同样需要大批合格的劳动
> 者,我成为不了牛人,但我作一名程序员是合格的。 自我安慰. 谁说你合格的?
> 时间过得飞快,一年半根本就不算时间,马上就要毕业了,学习的成绩如何,要到社会上
> 去竞争了,让社会考场来决定你是否及格。 研究生除了文凭学了什么了? 达到了一流大学本科水平了吗? 起码要在好杂志上发一遍文章吧? 否则最知道你的软件体系结构设计研究成果.
> 另一家是个很不错的民族软件企业,想要我,其老总专门找我去面谈了一次,希望
> 我能到他的公司工作。在就业不景气的2002年,对我一个30岁的技术水平有限的老 > 程序员如此看重,真叫我感动。虽然我最后还是没去, 不错的机会, 可惜.
> 我个人的力量很微弱,技术也有限,但我自认为至少是一名合格的程序员,如果能培养出 > 一大批达到我的水平的学生,他们毕业后成为合格的程序员,中国软件的根基就会更扎实, > 如果更能有一批远远超过我水平的学生出来,中国软件就有希望了。于是,我选择了留校。 低估了自己的弱点, 特别是读研是打工太多. 低估了在大学生存的难度. 可能大学老师的头衔和稳定的工作对作者有一定的吸引力.
> 我一位杜教授的两堂课让我印象深刻,其中两句话让我深深震动: > 第一句话:我是一个教书匠,教书匠好啊,好就好在“匠心独运”! > 第二句话:做什么工作都要达到变魔术的境界! 我深深感到的是反震动, 为什么这两句话没被'批倒批臭'.
"教书匠好啊,好就好在“匠心独运”"? 三个字中, 只用了一个匠字, 和教书有多少关系? 泥水匠也可以匠心独运啊. 匠心独运意为闯新, 偏偏是作者的弱点. 匠心独运又强调独, 符合作者的经历, 但能不利于提高.
"什么工作都要达到变魔术的境界"? 变魔术是骗人的, 见不得人的. 教书恰恰要的是真才实学, 有条有理.
匠心独运变魔术只能是可恨的传统老学究.
> 都已经是什么时代了,许多大学还设立Foxpro课程
同意
> 许多的国内教材对C++语法下了大功夫,却对体现了C++精华的 STL 只字不提
C++ 的教材就是要将全 C++ 语法. 不讲 STL 没关系. STL 有它自己的问题.
> 实践中需要什么我就讲什么。讲 C++/Java,我就抛开了指定的教材, > C++ 我讲了 STL,Java 我讲了 OOAD,两者我都讲了用 Rose 进行双向工程, > 引导学生去学 UML,一开始就用 UML 去描述自己开发的程序, 技术是讲不完的, 大学应该从最基本的教起, 教深, 教好. 内功比外功重要得多. 本末倒置!
浮躁! > 5.实践第一
错! 数学第一, 软件基础第二, 实践第三.
> 于是一个新的想法产生了,我要把以前的产品用.net重写,利用.net强大的组件模型, > 将设计模式理论推广应用到组件级别,通过XML和反射机制建立一套可动态装配的软件 > 生产流水线,实现象Dell直销PC那样的软件动态装配直销。 Wow! 软件生产流水线? 天才!
> 我用 VB,net 重写了原先用C++编写的系统,将原先的一个EXE变为十几个DLL,而且这些
> DLL还会随着发展而不断地分裂,也有可能重新组合,利用Refractoring(重构)不断进 > 化,最终形成一整套完备的行业软件组件库。 真是匠心独运变魔术也!
> 我投了十年的时间去学习电脑
不少时间在考研上, 闭门造车会多走弯路.
> 古语云:三十而立。我今年32了,仍是孤身一人,看看周围的同学,他们的小孩都
> 差不多上小学了!许多都有了自己的房子和车子,而我到现在才开始申报中级职称, > 还挤在集体宿舍中 人生的目标不只是单一的.
> 现在社会越来越功利了,看着象我这样的穷光蛋,看着由于长期面对电脑缺少锻炼而
> 瘦弱的身躯,又有哪个女孩愿意嫁过来受苦? 不能只怪社会. 男人首先要对自己负责.
> 我尽了自己的力,回顾往事,我可以说:过去的事只有遗憾,却没有后悔。如果给我
> 再一次选择职业的机会,我还会再次选择软件! 我的人生有不少后悔. 即使再次选择软件, 也还有不同的路径.
October 31 我想对金旭亮说金旭亮北京理工大学计算机系硕士, 教师. 著有:
1)《编程的奥秘——.NET软件技术学习与实践》
2)《一个普通IT人的十年回顾》 程序人生论坛发表的个人自传
3) BLOG http://blog.csdn.net/bitfan
4) BLOG 贴子《我被中国计算机教育的现实打败了》
2006-10-31 9:23:05
不习惯说好听的话, 但还是要说一句. 我敬佩会写程序的大学老师. 我在南大教过几年书, 至少那时没几个老师真的写程序的老师. 那时, 我敬佩的是张福炎教授.
你在 《.NET软件技术学习与实践》序言中说到: " 要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以写出很好的程序!"
假如我不是学计算机的, 我可能会很高兴, 买了你的书, 看完就以为能写"很好的程序"了. 假如我只是写点自己用的小东西, 我会很感谢你. 但假如我找到写真的软件的活, 不久可能就到处碰壁, 最后回家卖红薯为生.
假如我是学计算机的, 特别是软件专业的, 我回马上放下你的书, 告诉所有朋友, 以后远离 "金旭亮".
假如我是出版业的, 我会要你删除这句话, 除非你能充分证明之. 而且我会更认真的读你的每一句话. 最后你的书要重写好几遍.
假如我是你的系主任, 我不会让你上软件专业的课.
假如我是北大青鸟的, 我会马上请你加盟.
2006-11-01 00:21:00
谢谢大家的讨论. 我只是说了我的结论, 还没讲我为什么要这样 '当头一棒'.
金旭亮的话:
"要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以写出很好的程序!"
本身没什么错对. 问题是说话的对象和场合.
我的结论可以概括为:
金旭亮对 "很好的程序, 合格的程序员" 所定的标准太底, 对软件专业的学生不合适, 甚至是有害的.
金旭亮对 "合格的程序员" 的定位在我看来是二三流的程序员, 俗称 "软件民工", 我觉得应称为 "软件装配师".
金旭亮定位太底的其他证据 (一个普通IT人的十年回顾):
1) "《编译原理》,我实在看不懂"
2) "工程中有 cls 模块的,属于高手,他们已掌握了面向对象的思想,并能应用这种思想来解决实际问题"
3) "我也见到了许多牛人, ... 他甚至在代码中嵌入汇编, 他用编译原理理论居然做了一个小型的公式解析器, 其基本功之扎实,水平之高让我望尘莫及!"
金旭亮的所谓 "高手" "牛人" 的定位属于我的"合格的程序员"的定位, 对软件专业的学生是不合适.
北京理工大学是重点大学. 假如中国重点大学的好老师对程序员有这样的定位, 难怪好公司大叫招不到人才, 难怪好公司的程序员很大比例来之清华等一流大学.
中国不缺程序员, 缺的是真正"合格的程序员". 有了"合格的程序员", 我们才能谈 "很好的程序员" 和 "优秀的程序员".
1) 合格的程序员, 重复型人才, 能重写 notepad.
2) 良好的程序员, 改良型人才, 能先从一个更好的设计出发, 写出一个更好的 notepad.
3) 优秀的程序员, 闯新型人才, 能让人掏腰包买你的 notepad.
(注: 重写 notepad 要求不用现有的 EDIT/RICHEDIT CONTROL).
你想当怎样的程序员是你个人的选择.
但是一个重点大学计算机系的老师这样定位是误人子弟. 只就是为什么我要这样对其 '当头一棒', 以正视听.
2006-11-1 13:17:39
我写这个贴子的起源是金旭亮是《我被中国计算机教育的现实打败了》, 其中他大怪中国计算机教育体系, 大怪学生, 我很看不惯.
学生是无辜的. 他们几年前进重点大学是最好的. 至于中国计算机教育体系, 金旭亮本来就是它的一部分, 特别是他还给新生上 .NET 课.
更令我不解的是有学生给他很很提了几个严重的问题后, 他竟然轻描淡写的说:
"我也不用多说,说了你们也现在听不进,自己去悟吧。10年之后你们再回首时,如果还记得我,那倒真是对我的最大称赞了。"
我最看不惯中国传统师长不懂装懂, 故弄玄虚, 欺世盗名的形象. 在他们眼里, 错永远是小辈的.
再看了他的新作, 很是差异. 居然会说 " 要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以写出很好的程序!", 居然会用来给重点院校计算机系的学生.
既然中国传统重师长, 我想中国比金旭亮年长的没几个还在写程序, 只能我出来说几句话. 好在我长金旭亮十岁, 他 1989 年入大学时我博士毕业不久, 在南大计算机系当讲师. 而且我现在还在写程序为生.
2006-11-1 23:43:44 > 看来袁老前辈和楼上这位兄台是在断章取义,对金老师说这句话时的上下文没有仔细看清楚 http://blog.csdn.net/bitfan/archive/2005/05/16/375790.aspx >编程其实并不难! 断章取义? > 您说"我最看不惯中国传统师长不懂装懂",我很赞赏 金旭亮写得东西毛病和多, "高中生就可以写出很好的程序" 只是其中之一. 他的很大一个毛病是基础不扎实, 推理不严格. 例子: 1) "高中生就可以写出很好的程序" 2) 除了在校的大学生,社会上还有大批的软件开发爱好者,他们由于没有机会系统地学习软件开发技术,就采用自学和自我实践的方式,结合自己的工作来应用学到的计算机技术,虽然他们没有在校生的优越条件,但其中优秀的人物其真实开发能力远胜正规高校计算机专业“科班”出身的本科生甚至是硕士生。这种例子已经很多了。 3) 在计算机技术中,有一个并不严格但众所周知的“软硬定律”: 4) 读者可以掌握最重要最基础的windows软件开发技术,并对面向对象理论会有深入的体会,有了这些基础,深入学习网络编程就是水到渠成的一件事。 5) 如果读者能沿着我的路线图走到这里,那就恭喜您,您已成为了一名.NET技术专家,更宽广的道路将展现在您的面前。 6) 第十二章 基于组件的软件开发 本章是您迈入职业程序员的必经之路! 7) 我的编程能力主要是自己培养出来的。怎么培养?很简单,这么多年来我编写过近百万行代码, ... September 26 $57 搏来的 <大英百科全书>前一阵买了一套历史旧书, 又在 EBAY 上标中了一套 Great Books of the Western World (六十本, 包括<资本论>), 兴致勃勃又标了一套<大英百科全书> 1995 版.
卖方只在几年前卖过一件东西, 又不收 PAYPAL 和信用卡, 所以投标的人不多, 我居然以 $57 圆标中了一套原价 $1500 的好书. 接下来和买方通了几次电邮, 了解运费, 付款等细节; 顺便考察一下对方是不是骗人的. 特别可疑的是买方换了电邮地址, 而且要我将支票寄往一个邮箱 (P.O Box), 而不是通常的家庭住址 (street address). 运费六十多 (分三箱), 再加保险, 挂号, 包装, 总计 $130 多. 我估算这套书值 $300, 假如对方可信度是 50%, 从概率上算我就不亏. 然后我就寄了一张 $150 的支票.
昨天三箱书终于到了. 真有点不好意思当初怀疑别人.
十几年前在南京就有一套<大英百科全书>, 现在可以和儿子一起看了. September 19 二十年二十年前, 我在南大读博, 她在南航教书, 中秋节我们在南京鼓楼登记结婚.
二十年后, 儿子都十六周岁了, 我们居然算是瓷婚 (china wedding) 了, 老了老了.
二十年前, 一介布衣, 助学金不足百圆, 结婚时只有我自己设计, 老妈监工打的家具.
二十年后, 还是自食其力, 但可以补上钻戒一枚了 (推荐 www.bluenile.com). August 23 北京来电在办公室收到一个北京大来的电话 (奇怪), 问我想不想去北京工作 (奇怪^奇怪).
我说有两类人适合回中国工作: 小孩来没有读 middle school (五六年级)的, 或已上大学的. April 06 学说话小时侯老师说: "儿歌郎颂不能熟练掌握, 声音不够响亮". 今天 Richard Klees 还是说: "Speak LOUDER!".
被抓差下个月 WINHEC 演讲. 今天由 Richard Klees (http://www.communicationpower.net/html/principal.html) 单独辅导一个半小时. 回家要练嗓子.
最后向他推荐了一个马来餐馆 (http://www.malaysatayhut.com/), 一个四川餐馆. April 01 十年前九六年二月, 和美国 HP 计算器组做完了 HP38G 计算器. 他们对我印象很好, 力促让我去美国两年开发下一代产品. 签证办好了, 制装费发了, 突如其来新加坡头头把项目砍了. 我就被分到了另一个组做 WINCE 开发. 正好有一个同事 Mark 回了美国, 说他们很要人手, 而且他们的头头要去新加坡开会. Mark 就安排我和他们见面, 谈得很投机.
三月, 美国方面正式请我去美国面试. 小头目不敢同意, 我只能和 GM 谈了半个小时. GM 是一个很不错的人, 对我很看重, 所以拼命劝流, 说我肯定回后悔的,应该在亚洲发展.最后还是放行了.
三月底来美国面试一天, 效果很好, 马上要人. 一九九六年三月三十日, 我面试后回新加坡,准备搬家.
常言说人生能有几搏. 可我觉得人生有很多机会,关键是看得准,抓得牢. |
|
|