2005-06-10

Wisdom tooth is killing me...

最初发现长智齿是27,8岁的时候,没有任何感觉,是无意发现的,咦,怎么又长了颗牙? 慢慢地它露头了,也没感觉,再以后,就停止了生长,维持了大概2年不到。这不,最近可能觉得不长出来对不住我了,又开始长了起来,这次可不得了,把我折腾的够呛。

因为实在难忍疼痛,第一次(6月8日)去见德国的牙医,先挨了一针麻醉,整个半边脸没了感觉,又照了X-RAY,发现这个智慧齿的确长的不正,开始了钻,磨,洗,最后塞上了一块药布。结果不知怎地,脸是没了感觉,单单牙床还非常敏感,把我疼的满头大汗,护士还象安慰小孩似的安慰我“好了,好了,就快好了,知道很疼,但是我们必须这么做呀....”完了事,还轻轻地抚摸着我的脸,“好了,好了。。”真不知道那针麻醉针是起什么功效,结果到当天下午4点多我的脸和嘴唇才恢复知觉。

今天刚刚又去了,换了一块药布,疼痛的感觉比起上次是小了很多,但是也够呛,周三还要去。因为现在inflammation还有,所以不能拔掉,他说可能要等2周后再说。哎。。。苦啊。

本来今天下午学校有个免费餐的机会,看来没希望了。

这牙可害苦了我了.... 唯一欣慰的就是协助大夫手术操作的护士小姐挺靓,但是看她对减轻疼痛没任何作用。

希望早日脱离智齿困扰。

2005-04-13

General Undo Redo Framework works now

Undo and Redo some times needed in some projects. The undo/redo I meant is not talking about in GUI perspective but from object state view. This framework is a part of my master thesis. It is called "General" 'cause client programmer doesn't has to make big changes on existing codes. Just declare a "command block" is ok. A command block is a undo/redo unit, it can contain a number of methods or operations. In another word, it identicates a undo/redo step. With this framework, client developer just "plugs" it into existing project, and the project has the unlimited times (only in possible case) undo/redo feature. I think it's nice.

This program is implemented by Java reflection and AspectJ. To get better performance, I didn't store whole object trees snap shot in memory or disk. It definitely will construct a heavy overhead. And it is more obvious if unlimited times undo/redo is needed. So Memento pattern is not used either.

Shortly, the strategy to achieve the requirement are:
-AOP aspect acts as undo/redo observer, it capture any attempt of changing an object(mainly fields changing)
-Save the changing field old value into some structrue, e.g. hashtable , reflection used here.Save the method objects, owner object and arguments, which lead to an object change within a single command in certain order, reflection used as well.
-Undo - get the right command from command manager, restore the old values of changed fields.
-Redo - get the right command and execute all methods stored in command.methodlist again.

Object references, Collections and navigation between associated classes like composition, aggregation are some points I paied attention. Especially the last one, I found a bug about it during redo, and fixing it cost me one day! (Not all the time :) )
More testing is needed on this framework.

Dust found on my Nikon D70 CCD!!

3 dots found in some pictures, they are in same postion.

I blowed CCD, but made no sense.
Fortunately, it is not so serious. Those dust-dots only can be noticed in pictures with F> F16. And 'cause generally pictures has relative complex background, so those dots is hardly noticed.

2005-04-04

some words on my camera

I have to say, Nikon D70 is a really good camera. Gradually I am getting familiar with it. I like it. I bought a tripod for it 2 days ago in MediaMarkt. Some forum help me a lot on taking picture. This weekend the weather is really good. My girlfriend and I went out to take a walk around the little lake, and I took some pictures. See below, I hope the picture link works. I took these two pictures with CPL in sRGB III color mode. In fact I didn't do much processing with them using image processing tool, typically photoshop. I think the camera is quite ok.

Picture1

Picture2

My thesis

I am working on the first stage. Getting some knowledge about MDA, Octopus and OCL, a good complementary of UML. I have known AOP, but based on Spring implementation. My thesis needs some implementation with AspectJ. In Spring there is no "particular complier" for aspects, since it uses Proxy mechanism. For AspectJ, after coding aspects, all java files and aspects must be compiled again by a "aspectJ complier". And some good Eclipse Plugins are available. I picked the most famous one "AJDT". It took me a lot of time to let them work properly. Why? the installation is easy, but after I create an Aspect project, when I coding, no matter .aj or .java file, the auto-complete functionality has gone. I have to exactly remember the fields and methods of each object. :( Finally I download a milestone version, and it works. (at the beginning the version I downloaded is release version) However, it only works on java file, in aspect, there is no auto-complete as well.

Now I am implementing a AOP based Undo/ Redo framework, some related design patterns were used ( mainly Memento, Marker interface and Command). Collection clone is a problem. I plan to solve it using Memento pattern. Which means I will store a lot of (maybe not too much) objects' copy in memory. I don't know if this overhead is significant. But I have not thought out other solution on that yet.

The implementation is supposed to be finished in 3 days.

2005-02-15

瑞雪

小学就已经知道"瑞雪兆丰年"这句话, 昨夜, 下起了大雪. 新春降这样大的雪在我的记忆中只有2次. 上一次是198几年的大年初二...那年的雪是不是给所有的人带来了一年的好运已经不记得了. 现代的生活越来越紧张,各方面的竞争也愈加激烈,人们在拼搏努力的同时都希望着交个好运气. 我想这场大雪应该是好运气的象征吧.记得一位朋友说过,去年的雪是她的幸运使者. 也许该轮到我了... :)
看了最近的新闻,欧洲大部分地区也普降大雪,看来这个"丰年"征兆还是横跨欧亚大陆的. :D

2005-02-02

Nikon D70 in hand

I said, I wanna buy a DC at the end of Jan instead of DSLR. 'cause the weight and expense of the lens. However finally I bought Nikon D70 with Nikkor 18 - 70mm 1:3.5-4.5G ED. Because the price of this kit is just about 150euro expensive than canon pro1 in China. And with a DSLR, I always have the opportunity to extend my lens devices. That certainly would be the issue in future. :) Even though I got this camera in hand on 27th Jan. For some reason, I haven't tested it carefully yet. Today I tried it and felt it is really good.

I am satisfied with the image quality and shortcut buttons at the back of the body, though some guys complained Nikon MMI design. I feel its MMI design is comfortable to use. :) The lens is good as well. I know there really are some shortcoming on this lens, like the dark angle problem and so on. However for studying photography, it is a quite good lens.

Besides that, I found the images shot by this camera look a little bit dark, but not seriously. I don't know it is a character of D70 or the problem of my skill. Normally I use EV +0.3 to compensate it. Ok, I hope I can have more time to use it and shoot more beautiful images.

2005-01-26

回家

离家将近3年之后,今天终于又回到家,又见父母。本已激动的心情在钥匙在家门锁中旋转的同时达到顶峰。妈妈见到我后更是激动,我知道,她是非常想念我这个儿子的,尽管到现在了我还没真正地好好孝顺她。她是个非常勤劳简朴的女人,在我心里永远是可敬的。
妈妈比以前看起来显老了,这次回来给妈妈带了一瓶“世界最高档品牌”(至少Shirley和几个化妆品专卖店的服务员都这么认为)的面霜,让她保养保养。我这连玉兰油都觉得是高档化妆品的可爱的妈妈,看着我送她这瓶她用过的最昂贵的面霜,却说,这么贵,都舍不得用了…… 嘻嘻。 不过这东西的确挺昂贵的,在这向牟取暴利的化妆品生产商小小地抱怨一下。呵呵。爸爸的白发也比以前多了。 知道我已经在车站上了出租,他就下楼在寒风里等着出租车的到来……

以前和他们朝夕相处,真的没象这么深刻地体会到这种源于亲情的感动。相比之下,老外们的亲情就比我们淡的多了。用一句通用的话来说,可能因为文化背景不同吧。

还要一提的是我的旅途,旅途基本算顺利,就是在北京机场的时候,让我深刻地感觉到了“嘿,现在你已经在国内了!” 为什么这么说呢?刚踏上祖国领土,诸多“中国特色”的东西就全都来了。最明显的就是出机场的检查,那种近似变态的毫无理由的挑剔,那些“长官”们“代表人民利益”的工作态度和服务态度,呵呵,无话可说。

OK,不管如何,终于和家人团聚了,今天真高兴!