October 29
FeedSky组织的一个连续30天每天一篇blog的一个活动。我犹豫了好几天,还是打算参加。
我选择的主题是:最喜欢的文艺作品(书/电影/音乐),从11月11日开始,正好可以整理整理我看过的书和电影、电视。

October 28
最近要搬家了,点宝也得考虑转幼儿园的事情了。他现在读的是一个音乐特色幼儿园,据他们老师说,点宝有很不错的音乐天份。在他们那个小班里,他是弹钢琴弹得最好的小朋友了。而且还能边弹边唱呢。
所以,我就在跟老婆商量,这要是转了幼儿园,肯定没法就近找到另外一个音乐特色幼儿园了。那是不是要给他报一个钢琴班什么的呢?否则一个很有天赋的小孩子,岂不是可惜了。
今天吃饭晚饭的时候,我就问儿子:“点点,你喜欢弹钢琴吗?”
儿子说:“不喜欢,我最不喜欢弹钢琴了。”
我说:“啊,我还以为你很喜欢呢!”
儿子说:“哪有,我那也是没办法”
我说:“那你在幼儿园弹得不是挺好的吗?老师还表扬你呢。”
儿子说:“老师要一个一个叫小朋友的名字的呀。”言下之意是,那也是躲不掉的事情呀。
我说:“那你弹得好,老师表扬你,你高兴吗?”
儿子说:“也就是一般性”
我想,报钢琴班的事情,还是算了吧。照外公的说法,小孩还是不错的,虽然不是自己喜欢做的事情,还是能够把它做好的。这样说来,我也觉得这个儿子不错了。
晚上回家的路上,儿子突然说了一句:“我最喜欢外公了,因为他总是工程师。”
我们大家都笑起来了,我说,“是总工程师,爷爷也是高级工程师”。
然后大家就在那里闲聊。我接着说:“妈妈也是工程师,不过还不是高工。”
“爸爸什么工程师都不是。”
然后我突然想起来了,我虽然没有职称,但是我是搞软件的呀。然后我就对儿子自豪的说:“但是爸爸是一个软件工程师”
儿子一下子高兴起来,说:“那我也是软件工程师,我也每天坐在电脑前面的!”
October 25
庄表伟 说:
我最近在整理自己的思路,怎么写出来,还没想好
徐X 说:
嘿嘿
你也好久没博了吧
庄表伟 说:
我还是在MSN里,先跟你说说,看看能不能理清楚一点
徐X 说:
好
庄表伟 说:
我以前写那个丧钟,当时是一鼓作气,想推翻OO中心论的思维模式
现在做的项目种类多了之后,就发现打错了目标了
现在我能够想清楚的,有三大块:
1、不同的软件系统所针对的问题域==>需要采取不同的分析问题的模式
2、不同的语言组合==>需要考虑不同的系统架构模式
3、不同的问题域、语言组合、人员情况==>需要考虑不同的开发管理模式
我当时的经验,其实只不过局限于“Web、三层架构、信息系统”这样一个领域。而在这个领域里,我发现以Java为中心的,以面向对象思想主导的分析、设计与系统架构模式,并不适合。
而市面上流行的书籍也好,言论也罢,似乎在告诉我们,OO能够通吃一切,也能够适应一切。当我们在开发过程中遇到困难时,往往没有资格去考虑,是不是OO出了问题,而是一味的反省,觉得自己的OO能力还不足。
徐X 说:
嗯
这样似乎范围就划的明确很多了
庄表伟 说:
所以,ajoo对我的指责,在当时是有道理,如今我给自己另划了一个圈子,就逃脱他的指责了。
当时他说,我批判的所谓OO,不知道OZ,不知道Ruby,不知道OCaml....
而我现在觉得,现状才是值得批判的。OZ的好坏,OCaml的好坏,其实无关痛痒
现状是,什么样的语言,在什么样的项目里,作为主导语言,并提供主导的分析思路
徐X 说:
嘿嘿是啊
庄表伟 说:
那些已经出现或存在,但是没有被大规模应用的语言,其实并不值得深究
徐X 说:
我到是觉得,没有被大规模应用的语言才值得深究,嘿嘿
毕竟,所谓商业选择
庄表伟 说:
那是你出于个人的爱好,自然可以去玩
徐X 说:
往往都是中下的产品
比如java
以及java代表的OO,放在整个OO的领域来看
不过是中下的水平
庄表伟 说:
呵呵,这个倒是蛮有意思的一个话题
为什么,中流的产品,会成为市场的主导
徐X 说:
因为80%的程序员是中下水平
大众能够明白的,一定不是什么高深而精妙的东西
就像电视剧和歌剧的差别一样
庄表伟 说:
没那么简单,如果是这样,那么岂不是应该推论出,越是傻的语言,用的人越多吗?
java,毕竟不是最傻的
徐X 说:
这个很简单啊
庄表伟 说:
logo语言那么简单,也不够流行啊
徐X 说:
就好像,并不是越肥皂的电视剧越流行一样
需要80%肥皂,20%复杂
之前有一个人说过这样的故事
之前在欧洲有一个产品,放在微波炉里就可以产生好吃的蛋糕
但是买的人并不多
于是厂家做了修改
你必须使用3个步骤,才能达到之前一步就可以做到的事情
反而变得非常畅销
庄表伟 说:
呵呵
徐X 说:
人就是这样,需要哪些有一点复杂,但是并不是那么复杂的东西
庄表伟 说:
那你就更无法解释,java->ruby的趋势了
徐X 说:
实际上
ruby比java简单
只不过meta programming让ruby看起来复杂而已
庄表伟 说:
我的理解是:程序员并不是买蛋糕的人,他们大多数情况下只是吃蛋糕的人
徐X 说:
如果说smalltalk是哈姆雷特,ruby就好比狮子王一样
庄表伟 说:
买蛋糕的理由,比吃蛋糕的理由要复杂得多
徐X 说:
几乎一样的东西,通俗得多的演绎
无论如何,我认为,就像商业艺术一样,把好的东西通俗地推销给大众,是最好的business
因此,我们的眼睛应该盯着好的东西,去发现它的通俗性
而不是盯着大众的东西去复制它
steve jobs盯着alan kay的smalltalk,产生了mac os,bill gates盯着steve jobs的mac os产生了windows
每下愈况,但一个比一个流行
庄表伟 说:
下流者流行啊...
徐X 说:
嘿嘿,是啊
庄表伟 说:
或者说:往上看,往下走
徐X 说:
嗯是的
再说java
从我接触java的第一天,就听说过这个说话
java是c syntax, smalltalk semantic
或者我们可以说,java是smalltalk披上了c的外衣
现在微软的c# 3.5,有点ruby/fp披上c#外衣的倾向
都是另类的冷门语言,成为商业选择变化源头
庄表伟 说:
有一段话,看你是不是同意
在现在越来越多语言混合编程的趋势下,语言本身的特性演化,也开始向多范式的方向发展,以便更好的与其他语言协作。
或者,一身兼多任
徐X 说:
嗯,差不多吧
ruby就是混合了oo, 脚本,unix shell等多种特性
庄表伟 说:
先干活去了
跟你的这些对话,我就直接发blog了