Archive for August, 2007

伊朗、瓦尔登湖、广告和其他

Friday, August 31st, 2007

一些琐碎的事情,不知道该怎么写标题,于是也来做一回标题党。 :)

早晨本来要去移动营业厅,路过联通营业厅的时候一个营业员突然叫住我,叫我帮忙把什么东西“搬运”一下。我也没有听清楚是怎么回事,便跟着过去。才发现原来是帮忙翻译一下。三个外国人在那里,从打扮上来看像是伊朗那一带的人,而且他们也互相说着一些完全没有听过的语言。我正心想这根本没法翻译,突然他们改口对我说英语了。

原来几个人买了联通的卡,要问联通的那个买卡送手机的事情。我便在那里充当了一下翻译的工作。确实比较困难呢,因为首先要听明白一方说的是什么意思,然后要想办法跟另一方解释清楚。不过那个营业员看上去好像比我还紧张的样子,说了半天我都没太明白。不过最后总算是把问题解决掉了。其中一个外国人还说了一句中文的“谢谢”。唉!其实完全不懂中文的话,到中国来生活也不容易呢!嘻嘻,看来英语也没有白学啊,虽然不是很顺畅,但是日常对话应该没有什么大问题了,不过确实还需要继续努力才行啊!

吃过午饭就骑车去了书店。这次不是去买计算机方面的书了,好像这一年以来完全忽略了计算机以外的事情,许多原来感兴趣的东西都渐渐丢掉了,感觉自己好像慢慢变成了一台电脑一样。那可是非常可怕的。不过买多了计算机的书,发现其他类的书都好便宜啊!竟然一大本只要二三十块就能买到!挑了半天,买了一本瓦尔登湖和一本 Introduction to Linear Algebra。本来还看中一本 The story of mankind ,不过实在是一次买太多的书也看不完,回去说不定又要被骂了 :P ,便只买了两本。

骑车路上遇到红绿灯,等待的过程中看到前方的大广告牌。这种地方打广告真不错,等待的那几秒钟实在是没有什么其他事情可以做,应该大部分人都会抬头看一下广告吧。广告也很吸引人,品牌笔记本狂降一千,还送 80 G 的移动硬盘。可惜似乎漏掉了什么。然后突然旁边一辆轿车车窗打开了,一个人探出头来,问旁边的一个本地人,说这个广告里面说的电脑销售的地点具体在什么地方。可惜那个人也不知道。

这个时候绿灯亮了,于是大家又匆匆忙忙地往各自的方向离去。只有那么十几秒的时间,如何吸引大家的眼球呢?又如何才能包含必要的信息呢?这确实是一门学问呢!

下午的时候顺路就去玉泉吃了晚饭,每天都在紫金港吃实在有些受不了。回去的路上特别挤,还有许多轿车都跑到人行道里来,真是讨厌。唉!还是郊区的那种宽畅的大道走起来舒服。不过人呢,始终是不能一个人的,大家在一起才会感觉到温暖,可是如今虽然人多得快把地球挤爆了,但大家互相只是擦身而过的陌生人而已,来来往往,却其实和会动的机器没有分别……

最后下起了雨。晚霞非常美丽。虽然是同样的画面,但是照片里的景色始终不如自己亲自看到的那么美啊。何况照片只是局部的东西,唯美,其他的东西你却看不见。真正混杂在世间这一切的乱七八糟之中,反而更显现出它的珍贵。 :)

nXhtml: tame your rhtml files

Friday, August 31st, 2007

I personally use Emacs as an IDE to develop rails project. Equipped with emacs-rails, it becomes a powerful IDE for rails developing.

However, you may noticed, it doesn’t have full support for rhtml files. You can use html-mode to edit rhtml files, it is already good enough. But is is of course not as good as other wonderful modes(e.g. ruby-mode) Emacs supplied.

Other choices is mmm-mode, two-mode-mode or some similar things. But it is a little complicated to config while the results is not very impressing.

There’s also a custom-made mode for rhtml files in Rinari: rhtml-mode. It might be good. Bug I guess there’s something wrong with the code. Emacs may become slow when I turn on this mode: a latency can be felt even to move the cursor up and down.

I still use the plain old html-mode to edit those rhtml files, until I finally find the godsends nXhtml package. It has a nxhtml-mode which can recognize plenty of embedded fragment including javascript, php and, of course, ruby, etc.

It is really an amazing package! And the installation is very simple. Just download the latest nXhtml zip package. Unzip it and load the autostart.el file in your Emacs.

However, as an Emacs geek, I always want to configure it to my own style. So here comes my configuration for nXhtml to edit rhtml files:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
(load "~/emacs/packages/nxml/autostart.el")
(add-to-list 'auto-mode-alist
             '("\\.rhtml$" . kid-rhtml-mode))
;; only special background in submode
(setq mumamo-chunk-coloring 'submode-colored)
(setq nxhtml-skip-welcome t)
 
;; do not turn on rng-validate-mode automatically, I don't like
;; the anoying red underlines
(setq rng-nxml-auto-validate-flag nil)
 
;; force to load another css-mode, the css-mode in nxml package
;; seems failed to load under my Emacs 23
(let ((load-path (cons "~/emacs/extension/"
                       load-path)))
  (require 'css-mode))
 
(defun kid-rhtml-mode ()
  (nxhtml-mode)
  ;; I don't use cua-mode, but nxhtml always complains. So, OK, let's
  ;; define this dummy variable
  (make-local-variable 'cua-inhibit-cua-keys)
  (setq mumamo-current-chunk-family '("eRuby nXhtml Family" nxhtml-mode
                                      (mumamo-chunk-eruby
                                       mumamo-chunk-inlined-style
                                       mumamo-chunk-inlined-script
                                       mumamo-chunk-style=
                                       mumamo-chunk-onjs=)))
  (mumamo-mode)
  (rails-minor-mode t)
  (auto-fill-mode -1)
  (setq tab-width 2)
  (setq indent-tabs-mode nil))

You can see in the screenshot the nxhtml-mode recognize both ERB fragment and javascript fragment. It can also handle css fragment if you have proper css-mode installed(nxml comes with a css-mode, but it refuses to load with my Emacs 23). Wonderful! :D

linum.el: Yet another package for Emacs to display line number

Wednesday, August 29th, 2007

Emacs 自带的行号显示方式仅仅在 mode-line 上显示当前行号,有时候显得颇不方便。其他流行的和不流行的编辑器通常都有在左边显示行号的功能。Emacs 当然也有许多扩展来实现这个功能,比如 setnu.el(再配上 setnu+.el) 以及 wb-line-number.el 等。今天在这里又发现一个 linum.el ,它的主页在这里

其实总的来说,这几个扩展都不是特别理想,比如 setnu 总有各种各样的小问题,虽然不太印象使用,但是让人感觉不舒服。wb-line-number 看上去要好一点,不过却要求你把滚动条关掉。而这里的 linum 几乎和 setnu 差不多,不过据说性能等方面会好一些。其实这种东西应该 Emacs 自身从 UI 上提供支持的。包括其他许多诸如自动补全的 UI ,做起来以后许多扩展会写起来很方便(比如输入法、自动提示等)。但是不知道是 RMS 太顽固还是没人愿意去做,这些功能一直都是通过现有的 UI 以 Elisp 的方式“旁敲侧击”地去实现,虽然能用,但是总是有各种各样的小问题。 :(

2007 微软夏令营之行:花絮

Monday, August 27th, 2007

MSRA Vs Google China

第一天晚上回到酒店以后,托周 core 的福,我们俱乐部四个人顺便去 Google 那边参观了一下。因为还有两个人穿着微软夏令营的文化衫,其实也不方便在里面乱逛,基本上就是在二楼的休息的地方玩了一下。那里有几个架子上放了许多零食和各种各样的饮料。还有诸如按摩椅、台球、桌上足球之类的娱乐设施,另外,还有一个游戏机放在那里,可惜里面只有两个游戏。

那样的环境下工作真的会很舒服,累了便放松一下,饮料和零食都随手可得。其实能进这样的公司的肯定都是高水平的人,若是对他们管得太严,难保会偷懒,若是放开来了,工作效率反而会提高的。

可惜没有机会参观一下 Google 那边工作的地方。倒是在西格玛那边四处都稍微逛过。MSRA 其实也和 Google 那边差不多,零食、饮料、娱乐设施都是一应俱全的,只是没有看到游戏机( :D )。工作的环境也非常舒服,有单人的隔间,也有两到三个人的那种,既然是研究院,应该主要都是做研究的吧,几乎每个桌子上都有两个超大的屏幕摆在一起,好像是两个屏幕一起用啊,真是羡慕死了! :P

Read the rest of this page »

2007 微软学生夏令营之行:王坚访谈

Monday, August 27th, 2007

我的记忆力是越来越差了,这次夏令营有许多高层的人士过来,一是我一开始就不认识他们,二是他们讲完以后我也没能记住名字或者职位什么的。不过这个王坚我倒是记住了。

其实这个座谈会整个是非常搞笑的,因为主持人老是说错话,或者说王坚老是挑主持人的毛病。 :D 王坚穿着非常随便,主持人说,您说过某某某某话,然后要谈论一下那个话题,王坚却说,我什么时候说过这样的话的,你们又从哪里抄来的。台下一阵大笑。因为王坚以前学心理学的,所以界面还精心准备了几个心理小测试,要王坚来点评,王坚却说,他以前就说过心理学家有两种,一种是真正的心理学家,一种是江湖骗子心理学家。搞的主持人没办法,直接把后面的几个心理测试跳过去了。我也一直觉得那些什么心理测试、星座测试一类的,用来娱乐倒是不错,实际上却是没有什么依据的。

主持人又要王坚说说成功的秘诀,王坚却说起运气。嘿嘿,我觉得这个人真的很合我胃口。我也觉得,那些成功人士老是被抓来谈成功的秘诀,其实哪有什么秘诀,还是要靠努力和运气,真的要谈了,没有办法,于是只好谈一些放之四海皆准的大道理,其实谁都明白。又或者即使真有什么“秘诀”,那也是不能拿来用的,每个人各自都不一样,要真说秘诀,也只有自己摸索出来的才最适合自己了。

提问也很搞笑,平时提问都是下面的同学举手,然后从举手的同学中选,这次这个主持人竟然无视举手的人,自己胡乱选人起来提问,管你举手没有举手,点到你你就马上站起来想一个问题吧!-,-bb

整个访谈非常有趣,其实是全程录像的,只是不知在哪里才能找到那个 video 了,要是能收藏起来,偶尔拿出来看一下,放松心情也是非常不错的!而对于王坚这个人,我是非常喜欢了,好像是很淳朴的那种,哈哈! :D

2007 微软学生夏令营之行:换一个角度思考

Monday, August 27th, 2007

这次夏令营有一个环节是用于各个学校的俱乐部展示获奖的实践项目。其实我自己也有过这样的体会,比如做课程项目的时候,如果项目最后做得不太好,在文档里面没有什么好写的,就把诸如“本项目用到了XX技术”之类的东西写一堆进去,或者是“由于我们使用了XX平台/技术/框架/语言,所以XX功能不方便实现”之类的。比如这次参展的(我丝毫没有针对某个俱乐部/学校的意思,只是随便举一下例子。 :P )有一个叫做“泡泡堂”的游戏,游戏界面实在不好看,而且和真正的“泡泡堂”也差得很远,只能单击玩,可是项目介绍里面写了一条说使用 Turbo C 的那个 graphics.h 进行开发,这就没有办法了,能用 graphics.h 做出这种效果已经算是高手了吧。可是这又怎么样呢?我写了一个 Hello World 程序,不过我是用纸带打孔直接写二进制写出来的,这样就有价值吗?

Read the rest of this page »

2007 微软学生夏令营之行:另一个团队

Monday, August 27th, 2007

我们以俱乐部为单位进入了夏令营,但是第一天晚上欢迎会就把我们各个俱乐部的成员打散,组成了另外的团队,一共八个组,每组十五、六个人,并交给了每个组一个任务:在三十分钟之内确定队长、副队长、队名、队训(必须以一个给定的英文字母开头)、队歌,还要设计和制作出自己的队旗。这是第一个挑战,在完成的十分钟之前我都一直觉得不可能完成任务的,然而最后还是让我体会到了团队的力量。而且大家都是从全国各地各个学校的俱乐部过来的精英,肯定都是顶呱呱的聪明的了!不过完成任务也不是容易的事情,相信每个队都用满了这足足的三十分钟吧。经过这紧张刺激的第一次挑战,原本互不相识的组员们也一下子互相熟悉了不少。我们是第二组,队名叫做“小白II”,其中“II”按照英文读音谐音为“兔”,非常独特哟,因为其他几乎每个组都走“勇猛”路线,而我们组却是“可爱”路线。

Read the rest of this page »

2007 微软学生夏令营之行:北京印象

Monday, August 27th, 2007

其实我很少旅行,这是第一次到北京,甚至是第一次到北方。我们几个从火车站坐地铁到酒店。北京给我的第一印象就是民风彪悍,不管是男是女都挂着脏话,地铁上还发生了一次不小的冲突,两个人破口大骂。另外地铁也很令我失望,第一次坐地铁嘛,除了速度快一点,感觉比公交车还挤,不过什么东西在中国都这样,也是没有办法的。还有就是到处都看到有人在学英语以及谈论奥运的事情。

活动要当天(8.20)下午才开始,于是我们 check in 之后便自己出去解决午饭,首先买了一张北京地图。其实我这个人比较迟钝,看看北京的环境、房子之类的,也没觉得有什么特别的,看看地图好像也没什么感觉,只是把地图翻过来才把我吓了一跳:那公交车列表比杭州的公交车列表不知大了好多倍!北方的东西果然都很大气!我们随便进了一个餐馆,按照杭州的标准点了几盘菜,结果上来的盘子都是超级大,分量足够杭州的三四倍,几个人撑死了都没有吃完。-,-bb

在北京六天,也没有体验到传说中的沙尘暴,天气也还是不错的,至少比杭州凉快多了!

MSRA 那边西格马大厦和 Google 的办公楼那边环境都不错,娱乐健身设施、零食饮料都一应俱全,在这种地方工作应该是很惬意的了吧。

在去 BBQ 的那天还在路上看到了长城,个子比我想像中的要小很多,竟然能在太空中看到犹如火车车厢般大小的建筑,我真是觉得很惊奇,莫非还有其他地方的长城特别巨大的?

离开的那天还去天安门看了升国旗。也许我真的比较迟钝,就没有觉得天安门、人民大会堂还有历史博物馆有什么特别的地方。那天其实是被拉着去看升国旗的,我倒是一点兴趣也没有,原本可以和队友们多待许多时间的,于是心情首先就不好了,在加上前一天晚上根本没有睡觉,又在那里站着排了一个多小时的队,实在是不行了,那短短的两分零七秒,我竟然睡着了三次。你要是骂我不爱国我也没有办法,我确实不想去在乎这些形式上的东西,而且我觉得哪个人爱国不爱国也不是这种时候能看出来的。

看完升旗之后为了补充睡眠,我们几个便去地铁环线上兜圈子去了,幸好早上地铁人不是特别多,抢到了位置。

2007 微软学生夏令营之行

Monday, August 27th, 2007

非常幸运这次能有机会参加今年的微软学生夏令营,虽然不知道会是什么样子,但是知道肯定会非常有趣并且非常难忘。经过了一系列的准备,带上了相关的资料,便和俱乐部的另外三个 dd 一起上路了。其实听说每个俱乐部参加的四个人中都必须至少有一个 mm ,不过这次我们也没有办法了 :P 。而且这次我们竟然一个大二的,三个大一的过去,不知道是不是平均年龄最小的一个俱乐部了。

夏令营虽然只有短短的五天时间,但这五天也着实学到了许多东西,不像技术方面的东西,看书就能学会,这五天体验到的东西也许真正是看五年的书也换不来的。虽然有点累,但是却是非常快乐的五天。

Read the rest of this page »

Photoshop 鼠标绘图一张

Sunday, August 19th, 2007

每次快要出门的时候都总是按奈不住,其实我是不喜欢旅行的,因此并不是感到特别高兴,但是确实是无法静下心来做些正事了。那就休息一下好了,但不能总是睡觉,在 Energy Management 一文中说过,精力并不只是物理上的休息就能完全恢复的,虽然我一项都很喜欢睡觉的时候体验一下虚幻的梦境,但是要让情绪等各方面都得到休息,还是干点其他有趣的事情吧,改变工作就是最好的休息啊。

于是我打开 Photoshop 开始涂鸦了,因为我最近学到一招,就是用钢笔工具来制作路径,用控制点来控制曲线的方法,而不是原始的用把鼠标当作笔那样用,虽然那样很方便,但是鼠标当然不如比好用,一点也不好控制,精度非常低。用路径来画线的话,主要的问题就是每次调整控制点实际上也是非常麻烦的事情了,唉!还是在纸上画着方便呢~不过怎么说呢,各有各的好处吧。

总之待会就要出发了,现在把画好的图贴上来好了~