2006年第45周杂事
我曾说过,写本书是我的未来理想之一;我也曾说过,2007年我的计划之一就是写本自娱自乐的书。
这天晚上,首次安装CTeX,一个关于文字排版工具LaTeX的中文套装软件,并初步开始写书的草稿。书名还没想好,章节还未划分清楚,也还没想好找谁作序……简而言之:一切还未正式开始。
在此之前的一个星期,顾东东同学有意邀我参与写一本书中的一小部分。我对他说,“我把写书看成一个严肃的事情”。我也是这么着看待我未来将出炉的这本书的,虽然只是玩玩而已。我有句个人口号常挂在心里,就是“做最专业的菜鸟”。我对很多事情感兴趣,不可能每样都做得很好。但只要我用心去做,在我能力、精力范围之内,我就要尽量做得比一般人更专业、更好。
至少,我要能感受到在这个过程中(学习)的乐趣所在。
2006-11-02 (周四)
有些无聊,于是,下午买了一箱啤酒。结果一天半的时间里喝了10余瓶。
于是再次感觉自己很没品位。
关于品位这个话题,等以后我有品位了再详细讨论。
2006-11-03 (周五)
虽然在此之前的几天初次阅读了CakePHP的在线手册,但直到这天晚上才下载、安装、测试CakePHP。按照在线手册的说明,建了一个简单的网志(blog)程序来尝试CakePHP的一些特性。随后第二天(周六)中午又看了几部CakePHP的视频教程。
去年,在谈到Ruby on Rails的时候,我曾经用“震撼”一词来形容该技术给我的冲击力。现在,我想再次用“震撼”一词来形容CakePHP给我的感受。
除了在语言编码方面还有明显需要改进的地方外,CakePHP正是我目前想要的那种东西。
类别:
存在的价值 (1)
后来(主要指来了加拿大以后),我觉得,为了球场上的一次机会、一场胜利而不说实话,是很不值得的。虽然不说实话可能会赢得一次机会、一场胜利,但却是以自己的信誉为代价的。我觉得永久的信誉比暂时的胜利更为重要,因此,我后来给自己订了个踢球规则,就是在球场上,决不说谎。
但对于禁区内手球这种情形,让自己主动承认“自己手球了”是很难的事情,尤其是在没有裁判、可以半推半就混过去的情况下。因此,在2004-2005年前后,对于这种情形,我一般都是采取保持沉默的态度,让队友去应付这种事情,除非到了别人非要追问的时候我才会承认自己手球。
后来,我觉得,这种性质的沉默跟说谎差别不太大。于是,我放弃沉默,每次犯规后主动承认、并接受相关判罚。承认犯规并不意味着对方一定会进球、一定会胜利,也不意味着自己后面踢得就不开心。实际上,承认犯规可以让自己更好的心态面对比赛的过程和结果。
公平、和谐的比赛氛围不是靠一两个人就能够形成的,但每一个人都可以为此而努力。正己之后,也要正人。对于场上争议,如果我觉得我方无理的话,我会和本方球员沟通,劝其放弃争议,尽快回到比赛中。
最难做的,不是规劝本方那些“不诚实”或“无理取闹”的行为,而是如何对待对方的“不诚实”和“无理取闹”。对方跟自己不在一个立场上,因此自己的规劝往往是无效的。这种情况下,我觉得最好的做法就是,尽可能豁达地放弃争议,回到比赛中。这一点,我还做得不是很好,以至于上个月某次黄炼手球后耍赖的时候,我“大骂”老夏(夏春义)“和稀泥”。
昨天(周六)下午在Mic Mac踢球,气氛大体比较和睦,但其中有两件和以往略有不同的小事让我颇感宽慰。一次是在对方前场一对一的时候,国米(另一外号为“情圣”)打算突破对方刘坤的防守,但刘坤突然主动后撤、放弃防守了,弄得国米莫名其妙。后来才知道原来刘坤手球了,自己主动承认并后撤。第二件事情是,我在右侧边路逼抢对方老徐(徐伟),双方对脚后足球出界。老徐过去拿球,我笑着对他说,这球是我们的吧。以往这种一半一半的球,像老徐这种中年球友往往不喜欢放弃的,但这次老徐没说什么,就把球还给我了。
通过这些小事,我感觉我们在Mic Mac足球场上的和谐气氛在不断提高。我也相信,这里面有我一份功劳在里面。我可以通过自己的行为影响、改变别人。
类别:
PHP框架(framework)大观
随后,我便长时间地脱离PHP代码编写第一线。在随后的日子里,我有时像个品酒师,评测别人写的程序;有时候则像个小学生,从别人的程序中学习新方法、新思路、新观点。
最近,我打算动手用PHP做些东西,需要有一套省心的PHP框架。
显然,我不打算从头开始写起,写一套自己的PHP框架;我也不打算借用自己过去的一些程序,因为那些程序现在看来有各种不足。
因此,我打算找一个开源的PHP框架,或者借鉴某一成功PHP程序的框架,在此基础上开发自己需要的PHP系统。
照套某一成功PHP程序(例如Serendipity等)的框架是比较困难的。因为这些PHP程序的需求都是非常特定的,其框架欠缺足够的灵活性,不一定适合我的需要。
因此,比较可行的方法还是找一个现成的PHP框架。
这个PHP框架至少需要有如下几个鲜明特点:性能出色、使用模版引擎、支持Ajax、架构清晰、使用简单、较为完美的多编码支持等等。
我曾在《"Ruby on Rails"技术观后感 (2)》一文中列出了去年5个主要的"PHP on Rails"技术。1年后再看看文中提到的这几个PHP框架,Biscuit、TaniPHP的开发目前似乎陷于停滞状态,似乎只有PHP on TRAX、CakePHP、Symfony这三个还可以考虑。其中,CakePHP、Symfony受到的追捧明显高于别的框架。在明年第一季度,将各有一本分别针对这2个PHP框架的书出版。1
到底哪一个PHP框架对我最合适呢?
2006年3月,Dennis Pallett写了一篇文字《Taking a look at ten different PHP frameworks》(瞅瞅10个不同的PHP框架)。文中对10个PHP框架作了比较,并附了图表分析和个人评价,有相当的参考价值。Dennis认为,CakePHP没有明显的缺点;Symfony融合了好些别的开源项目,功能强大,但好些任务(例如分页)处理起来比较复杂;Seagull是另外一个功能强大的PHP框架,但欠缺官方的Ajax支持……
Fabien Potencier是CakePHP的爱好者。2006年5月,他写了一篇文字《Rails-inspired PHP frameworks》(源于Rails的PHP框架),对主流的一些“PHP on Rails”框架作了比较,并对每个框架都有他个人的点评,同样具有相当的参考价值。在他看来,CakePHP虽然没有官方的国际化支持,也没有发挥PHP5的全部潜力,但相当简单易用;Symfony功能过于强大,而且结构过于复杂;PHP on Trax特点不鲜明,基本上只是照本宣科复制Ruby on Rails的概念而已……
CodeScripts网站的“PHP Framework”网页提供了对各种PHP框架的打分。从中可以看出,CakePHP和Symfony分别得到6.6和6.5的高分,而且二者受到众多读者的关注,分别有172和103个读者对其打分。2
最终,我认为:CakePHP最符合我的需要。需要提醒的一点是:符合我目前胃口的东东不一定适合你。
[注1] 具体出版信息可从Amazon.com上查到。
[注2] 此处打分统计时间截止于2006-10-30 18:14:25。
类别:
2006年第43周综述 (3)
周三 (2006-10-18)
周二毕业答辩结束之后,晚上在家准备加拿大公民入籍考试。
众所周知,加拿大的入籍考试超级简单。但是,我还是不敢掉以轻心,因为入籍对于我的短期未来生活来讲,影响特别重大(因为我计划毕业后去美国发展,而入籍是我去美国发展的前提),我不想在这件事情上有可能“阴沟翻船”。
我曾有过一次接近“阴沟翻船”的境地,那是5年前为申请加拿大移民而准备雅思(IELTS)考试的时候。当时我在准备雅思考试方面过于自信,以至于上新东方雅思班的时候,只是上课听听而已,课后根本就不管了;雅思考试前7、8天,我休年假,结果一个来星期的时间里,我完全没复习,只是在考试前一天晚上才拿起新东方的讲义看看。结果,第二天一早的雅思考试,第一场考听力,一上来就让我面临巨大的心理挑战:前面好几题我都没听懂!当时考试的时候我心理感觉有2点:一是悔之莫及;二是告诫自己,要坚持考下去。
结果,那次雅思我考了3个5分,一个6分(阅读),总评5.5分。虽然达到了加拿大移民的英语能力要求(最低5分),但考试时惊心动魄的心理感受的确也给我敲了一个警钟。
言归正传。
BC省(大不列颠哥伦比亚省)有个网站提供入籍在线模拟考试。周二晚上,我把这个网站的所有模拟题做了三遍。第一遍错了大概6、7题(此处计分不含BC省政府方面的题目,下同),第二遍、第三遍都全对了。另外,我还把国家、省、市相关政府、政党领导人信息都大致背了下来。
周三一早起来,又上网做了一遍模拟题,然后就乘公车去了移民部门参加入籍考试。
入籍考试的确非常简单,所有的试题都包含在我之前做过的模拟题里。总共20道4选1的单选题,答对12道题就算通过,但其中第16、17两道关于公民权利和义务的题目必须答对,而最后三道关于选举的题目则必须至少答对一道题。总共给2个多小时的考试时间,但据说大部分人10分钟就能搞定。我们那一场考试大概有13个人参加,最快的一个人可能2分钟就交卷了。我细心答完全部题目后又复查了一遍,便交卷了,估计花了4到5分钟。预计我至少答对了19道题,而且最后5题全部答对。
[补充说明1] 本文配图为2001年我参加雅思考试的成绩单。
类别:
2006年第43周综述 (2)
周二 (2006-10-17)
我的导师特地取消了这天(17日)下午的一门研究生课,使得我能够在20日之前挑出一个大家都有空的日子来进行毕业答辩。这样的话,我就有足够的时间在10月20日之前完成毕业所需的所有手续。按照学校的标准,如果我能在10月20日前结束学业的话,可以拿回本学期一半的学费。
答辩前一天,我几乎整整一夜都没睡好觉。朦胧中不断地在睡梦里放电影,乱七八糟的。
更糟糕的是,早上一早起来吃完早饭、到了学校后发现肠胃不适……
答辩安排在这天中午12:00进行。
按我的工作安排,这天早上10:00到11:20我要带一节256课程的试验(主要负责给学生答疑)。起先我想跟别的同学调换工作时间的,但后来还是放弃了这个想法,按时去带试验。只是在实验课上跟任课老师讲好,我要提前20分钟离开,以便有足够的时间准备毕业答辩。
答辩安排在系里新建的一个非常棒的演讲室。我把相关设备带到演讲室后,系里的技术支持人员热心地告诉我里面几个设备(例如遥控笔等)的用法。很快我就把答辩所需的准备工作都做好了,于是自顾自地先试着演讲了一会。
答辩比预定时间晚了20分钟才正式开始,原因是来自外系的答辩委员会成员Jagdish博士没能按时到。
我的答辩包含260张幻灯片,打印出来的幻灯片足足有88页(含封面)。我自己原先私下考虑的是主要讲两个算法中的第一个(Touma-Gotsman算法),预计总共要讲45分钟到55分钟左右,然后留下10多分钟让老师们提问,总共所花时间将不超过1个半小时。但委员会主席Subir看到我的幻灯片讲义比较厚,所以开场白的时候特意说了一句:“你有25分钟到30分钟的陈述时间”。
结果我讲了差不多67分钟,因为导师要我把两个算法都讲一遍,这弄得我在台上讲得口感舌燥。我带了一壶咖啡去,但基本上来不及喝,而且咖啡也不解渴。讲的过程中大概受到了2次敲门干扰,这让导师感到非常不愉快,也对我的思路产生了一定干扰。实际上,我的幻灯片都是为导师而准备的,讲的内容也都是为导师服务的,以便让导师理解算法的具体实现方式。答辩的时候,估计也只有导师听得特别认真。但对别人而言,也许耐着性子听自己不了解的东西的确比较痛苦。
很显然,讲的过程中我用飞快的速度跳过了很多幻灯片,估计这是最让其他列席答辩的人员倍感顺心的时候。
我全部讲完之后,答辩委员会随便问了几个简单的问题,然后我们学生就退出演讲室,委员们留下来商议答辩成绩。
最后,答辩委员会对我的论文工作表示非常满意。
同学Yu, Kan,Eugene列席了答辩;同学Li, Yun答辩前前来慰问。
答辩完了,但并不意味了我就可以轻松下来了,因为我还有两个重头戏要做:准备第二天的入籍考试;在周五前把毕业论文定稿。
类别:
2006年第43周综述 (1)
周一 (2006-10-16)
中午前后,导师来到实验室,让我再详细跟他讲一遍如何把Touma-Gotsman算法扩展到四边形网格压缩中。
我曾断断续续提过,在我的毕业论文中,我“实现”了两个用于四边形网格压缩的算法:Touma-Gotsman算法和Spirale Reversi算法。这里我用“实现”而不是“创造”,是因为这两个算法是别人创造的、用于三边形网格压缩的。但是,从来没有人公开、详细、成功论述过具体如何能够把这两个算法推广到四边形网格压缩中。我做到了这一点。
Spirale Reversi算法导师已经研究多年,但在某个关键点上他始终无法能够突破。我延续导师以前两个学生的工作,把该算法成功、彻底地实现了。从各方面来讲,我在这方面的工作比前两个同学要出色。但是,在这个过程中,前两个同学所做的奠基性的工作对我的帮助非常重要。学生Jing系统地阐述了每个解压缩操作的细节,并且给出了正确的压缩程序框架;学生Archana完整地阐述了如何处理高亏格网格。可以说,没有这两位同学以前所做的一些工作,我(绝)不可能在1个多月的时间就完成该算法的代码。
然而,让我最为得意的,不是实现了Spirale Reversi算法,而是实现了Touma-Gotsman算法。这也是特别让导师感到开心的一点。在Touma-Gotsman算法中,我准确地把四边形网格状态细化成18个特例,并具体地阐述了如何对这18个特例进行处理。
我的论文的所有工作中,另外一个让导师特别开心的一点是:我完整地解决了“用指定编码体系(encoding scheme)压缩编码”这个问题。相对来讲,这个问题不是我论文的重头戏,属于边角料的活。但是,在这一点上,我所做的工作明显超出导师的预期,以至于在提案汇报(proposal)和答辩(defense)的时候,他两次把我在这方面的工作提出来,作为我工作成绩的例证。
我不得不承认,我在学业方面有不足,但我对自己在论文中所做到的这些成绩感到满意,我认为我的相关工作成果值得让答辩委员会的委员们满意。
类别:
2004-10-18:诚
后来在四川大学读书,在社团、学生会到处招摇,很多时候不得不自己动手写宣传海报。于是几年下来,成了写海报高手。只是所写的毛笔字属于应用文字性质的行书,谈不上多少美感;所做的海报也谈不上多少美学内涵,虽然足以糊弄一般看客。
……
2004年10月左右,陪一朋友找房子,后来在Mill街的一栋公寓里,碰到打算租房的王某。王某的父母来加探亲,其家里贴了不少王某父亲的手迹。我一看顿时感到有些兴趣,表示也想有机会写写毛笔字。于是王老先生非常热情地非要送我一瓶墨水和一只毛笔。
把笔墨拿回家后没几天,我就摆开阵势开始写字了。我打算写一个“诚”字,放到镜框里面挂起来。写来写去,最终写出了一个还看得过去的“诚”字挂了起来,如下图所示。
我个人对这个字一直都不满意,有两个缺点:一是感觉虚伪,跟“诚”的境界相差较远;二是缺乏些内在的劲道。
南京的王阿姨近两年参加老年大学书画方面的学习,小有成就,比较自得。我打算以后有机会的话好好学学书法,争取能写一手有骨气、有精神的毛笔字。
类别:
[转] "花好月圆"大型中秋歌舞晚会盛况空前
——大温莎中国艺术学院成功举办"花好月圆"大型中秋歌舞晚会
百果成熟,金桂飘香,又是花好月圆的仲秋时节。今年的中秋节恰好与西方的感恩节相遇,长长的周末,正是人们宴邀亲朋,品尝美食的好时光。
十月七日晚,皓月当空,像造物主慈祥温柔的目光。温莎地区众多华人,以及他们的洋人好友,近四百人欢聚在福临饭店,一边品尝豪华自助餐,一边欣赏大温莎中国艺术学院为他们精心编排的歌舞节目,在洋溢着酒香,饭香,亲情,友情的温磬气氛中度过了一个难忘的夜晚。
晚会命名为“花好月圆”别有一番深意。毕业于复旦大学中文专业,现任学院中文项目总管的王薇女士说,身处海外,逢年过节难免思乡,我们这台晚会不应强化人们的离愁别恨,而应给人们带来“把他乡当故乡”的乐观情绪。温莎的华人,来自同一片黄土地,秉承的是同一支血脉,说的同是汉语乡音。在这个合家团聚的日子,我们坐在同一屋檐下,吃的同是中国菜,看的是同一台节目,唱的是同一首歌,谁能说我们不是一家人?我们的晚会就叫“花好月圆”,2006年的中秋,花正好,月正圆,情更深,意更浓,今晚,我们同欢乐,今晚,我们是一家人!
晚会特邀温莎小有名气的刘志红和后起新秀王刚担任男女主持。由许群爱编排,学院舞蹈班学员表演的《追月》为晚会拉开了序幕。月宫里,四个仙女长袖起舞,一群小白兔活蹦乱跳,好一幅天上人间的追月图!为了感谢枫华超市每次活动帮助售票的辛劳,晚会特邀枫华超市的负责人之一的孟祥东先生即兴演唱《弯弯的月亮》。随着《枉凝眉》那如泣如诉的乐曲,温莎人熟悉的女高音歌手漆晓丽款款走上舞台,在她身后,由王萍,LISA,石春玉,石微粒扮演的“林黛玉”翩翩起舞。观众还没从宝黛二人的经典爱情故事中走出,张爱国的吉它弹唱《一块红布》已像一阵旋风把人们拉回到现代爱情的热烈和执着中。现场游戏《母子》让如痴如醉的观众放松了一小会儿。当孩子仅凭摸手就认出了自己的妈妈,场上一片轻松的笑声。接着,学院舞蹈教师许群爱的印度舞《苏尼达之歌》,学院轻音乐团团长朱伟的英文歌曲,和学院少儿舞蹈班的孩子们的现代风格的舞蹈激起另一波掌声热浪。观众互动节目《才艺竞赛》亦非常精彩。口技表演,惟妙惟肖,让人捧腹;即兴武术表演,天真可爱;童声独唱《小燕子》,激起人到中年的观众对童年的回忆。
专程从底特律赶来的著名女高音演唱家汪洁一曲《我爱你,中国》,和她与丈夫张金生先生共同演唱的《松花江上》把晚会推向高潮。在他们歌声的感染下,善感的观众泪流满面。汪洁女士毕业于河北师范大学音乐系,后去瑞士洛漳音乐学院深造,获声乐硕士学位,她演唱的歌剧,德国和法国艺术歌曲多次获专家肯定。这次晚会的独唱演员,漆晓丽和汪洁夫妇,家住底特律,为了让四百名温莎观众欣赏到他们专业水平的歌声,不辞辛苦赶来温莎演出,这种情谊,怎不让人感动。这台晚会的另一个亮点是张素芳和黄炼表演的诙谐小品,双簧《第三者》。夸张的动作,严丝合缝的配音,全场笑翻。晚会以总导演马自觉亲自编排的歌表演《阿拉木罕》压轴。徐莉扮演的阿拉木罕,活泼、美丽,黄鹏、董西虎、殷德敏、张爱国扮演的四位男青年,各有千秋。流畅的舞姿,娴熟的舞蹈语言,让人回味无穷。
一台晚会的成功离不开众多的幕后英雄。总导演马自觉,负责摄影的Scott Davison,摄像的黄春鸿,音响系统的朱伟,音乐合成的黄鹏,图像效果的殷德敏,内联的王萍,化妆、服装的许群爱,无一不尽职尽力,倾心奉献。
一个半小时的歌舞表演结束了,观众哗然,怎么这么快就完了,这样的节目再来十个也不嫌多啊!人们站在那里,迟迟不肯散去,不断询问,下次活动是什么时候?有位第一次参加学院活动的老年朋友说,今天是我来温莎后过得最开心的一天。更让人感动的是,后排有几位观众,手持望远镜观看了整场演出。他们是有备而来呢。
在这里,大温莎中国艺术学院衷心感谢所有观众的热心参与,感谢提供赞助的商界朋友,感谢参加演出的所有演员,感谢帮助伴舞演员化妆的资生堂梅女士,还要向那些匆匆赶来,却因场地已满没能参加晚会的朋友说声对不起。我们春节见!
大温莎中国艺术学院 章云
[补充说明1] 本文由大温莎中国艺术学院院长 章云 于2006-10-12 10:40:00发布于CCIGW网站,并配多篇现场图片发表于温莎本地华文报纸《大众时报》等。本站转载时对个别标点符号略作调整。另外,文中插图为本站转载时添加,内容为现场节目单。
类别:
昨日琐事
看录像的时候,三年前曾一起前往圭尔夫踢比赛、但此后即在温莎球场销声匿迹近三年的温莎华人球坛“老将”孙军突然携家眷出现,让我很意外。三年前的他还比较瘦(跟我差不多),现在明显要富态一点,以至于我第一眼看到他的时候,都不大敢确认。我向他简单介绍了最近三年Mic Mac球场的人员变化和足球氛围1,并欢迎他继续跟大家一起踢球。
喝得、唱得都比较高的时候,马导(马自觉)唱了一首歌:姜育恒的《再回首》。马导唱之前,说把这首歌送给朱伟和我(我们三个都是南京来的)。我当时好像认真听他唱了,但没记清具体怎么唱的。
我素质比较差,聚会的时候什么都没带。别的朋友带来了不同的食物和饮品,所以食物、酒源充足。黄炼的汾酒和北京二锅头,朱伟拿来的一瓶据说是压箱底的孔府家,加上两三箱不同牌子的啤酒,还有红酒、可乐……我每样都喝了,但由于喝得比较久,也比较慢,所以一直都颇为清醒。只是今天早上9:00多醒来后,觉得脑子没喝多,但两只手臂好像是喝得有点多:酸酸的,提不起劲,没精神。于是躺在床上上网逛逛。再想想,这几天还有不少事情要做啊……
我还是不喜欢喝多的感觉,虽一时痛快,但事后身心不适,还容易误事。所以对酒,有爱有恨,恨多爱少。这点和我对华人社团的感觉恰恰相反。我对华人社团的感觉是:有爱有恨,爱多恨少,爱得难受,恨得无奈。
上周六参加中秋晚会和这次聚会的时候,我都感到一丝丝的伤感。对我而言,每聚一次,就少一次;每次都可能是我在温莎的最后一次。
仍需修心。
[注1] 我对孙军提到,现在Mic Mac球场除了黄炼比较跳以外,整体足球气氛比较好,大家比较谦让、愉快。
类别:
笔记本触摸板的使用
虽然很少使用触摸板,但偶尔我也会用一下。有时候,使用触摸板过程中就会发生莫名其妙地打开文件、运行程序的情况。
早上来做256课程辅导和答疑,又碰到这种情况。于是,上了一下Google,用“how to use touchpad”作为关键字,搜索到一篇文章《 Using the Keyboard and Touch Pad》,一下子提高了我对触摸板的使用认识(绿色为翻译后的文字):
触摸板侦测你手指传来的压力和运动,以此来指引鼠标指针在屏幕上的运动。……
- (轻轻地)在触摸板上滑动你的手指,以移动鼠标指针。
- 要选择文件的话,可移动鼠标指针到指定文件,然后(轻轻)敲击触摸板表面一次。……
- 要选择并拖拽文件的话,可移动鼠标指针到指定文件,然后以“下-上-下”的方式敲击触摸板表面。在第二个向“下”敲击时,将你的手指停留在触摸板表面,然后在触摸板表面滑动你的手指,把文件拖拽到相应位置。1
- 要双击文件的话,可移动鼠标指针到指定文件,然后连续敲击触摸板表面两次。……
[注2] 但不对有小红帽(Track Stick)的笔记本有抵触心理。2006-10-12 22:24:54