星期日, 四月 30, 2006

五一

五一长假,基本上从来没出去玩过,今年也不例外。因为人太多,不想凑这个热闹,想玩,还是找个轻松的季节比较好。

星期六, 四月 22, 2006

宝宝厉害了

苗苗宝宝已经可以自主的东张西望,对色彩鲜艳的物体特别感兴趣,比如红色的玩具和色彩丰富的图画,一边看时,一边还兴奋的咿呀咿呀,好像很懂事。
150ML的奶粉对她来说是家常便饭,吃土豆泥、米粉时,甚至会自己拿起碗值往嘴里灌,后果就是把自己弄成一个大花脸。
我刚回来的那个晚上,正如其母所言,苗苗果然不认识老爸我。抱她一下就哇哇乱哭。经过两天的沟通,这一矛盾开始逐步消融在血浓于水的亲情之中。哈哈。

星期五, 四月 14, 2006

心随我动

快了,快了,后天就去订机票,下周四迎来5个小时的飞行,落地成佛,进入我的地盘。
这两天在诼磨唐诗,感觉最绝的几句,如下
”葡萄美酒夜光杯,欲饮琵琶马上催。“
”明月松间照,清泉石上流。“
"沧海月明珠有泪,蓝田日暖玉生烟。”
可惜的是,小时候唐诗背得少,现在有印象的已经不多了,以后有空要多多学习古典诗文,博古通今,不愧对自己是个中国人。

星期二, 四月 11, 2006

易中天品三国

最近几个周末都在看央视10的百家讲坛-易中天品三国,很不错,内容风趣幽默、切入视角也颇具匠心,播放时间,首播:每周六、日,12:45,重播:每周六、日,23:30,上周讲了贾诩和官渡之战。
这里可以下载一些节目片断
易中天的Blog

星期五, 四月 07, 2006

见闻

今天收到总公司某领导发给软件公司全体同仁的一封email,主题是“出租司机上的MBA课”,内容是某人发给这位领导的一片文章,文章讲述的是一个微软员工坐出租车到机场,途中和司机聊天的内容。前言处,醒目的注明“据说是微软的Manager写的”。
让我感到意外的不是文章的内容和email,而是网络居然让我在该文章刚刚发布的那天就看到了,比今天收到这个email早了近一个月,因为这位微软员工的blog就在我bloglines的OuterFeeds里。不过这位作者不是搞技术的,否则就有可能是我的前同事,现在上海微软工作的sillybird同学的顶头上司了。
CSDN在搞社区人物接龙,会陆续介绍csdn社区的活跃分子,他们的经历会给我们不同的企示,csdn是用积分来衡量社区成员技术水平的,但低积分的人当中仍是藏龙卧虎。当然,还有一部分高手根本不去csdn,而在一些更专注的技术论坛厮混。

李连杰再认识

李连杰北大讲演全文
李连杰北京大学演讲全文

星期二, 四月 04, 2006

见到曙光

从昨天开始,交通银行ICS开始跟帐测试,我们项目也同时跟帐测试,到今天已经把两个大头,外汇和基金业务测完了,剩下一些太平洋卡和中间业务的测试,哈哈,终于见到曙光了。
这段时间一直用标准C写程序,发现C写的东西虽然没有OO那么美妙,但效率很高。不过,对于大项目来说,如果没有一个很好的应用框架,程序逻辑会很容易混乱,潜在的隐患也就多起来了。

风筝飘带

第一次阅读一部长篇小说大概是在初中一年级的暑假,从堂兄的书桌上拿回来一套古龙大师的《多情剑客无情剑》。大概花了5天时间才把三本厚书看完,古龙的文字对于像我这样的少年人具有极大的魅力,细腻而富有幻想。以至于后来几乎看遍了古龙的书,包括一些很一般的作品。
最近一次阅读古龙,是前年在徐州的一个小书店里买了一套盗版的《三少爷的剑》,趁着夜色在彭城饭店4楼的一个房间里咀嚼。
除了武侠之外,很少去阅读长篇小说。记忆中只是耐心的读过王蒙、王朔、钱钟书、石康、春上春树、刘心武的作品。记得王蒙有个中篇小说叫《风筝飘带》,那年头读起来就跟听小虎队唱歌一样让我爱不释手,以至于今天都能把小说的片断历历浮现。

星期六, 四月 01, 2006

愚人节

又是个属于西方的却在中国很有名的节日,不过相对于西方人的幽默感,中国人的性格不适合过这个节日,干巴巴的低级幽默常常尴尬的收场,倒是有个明星在今天会引发一连串反应,这个人就是张国荣。
霸王别姬
张国荣跳楼的时候,我正躺在上海开往重庆的火车上,而他落地的一刹那,或许我正眺望窗外闪过的三湘山水。从来没有太多关注过他,只不过从火车的电台传来的消息,让我有一点诧异,第一反应就是愚人节的玩笑。倒是在他死后的这几年里,因为各种形式的纪念文章,让我开始对张国荣熟悉起来。
有些荣迷说,张国荣是个史无前例的两栖天王,音乐和表演都能信手拈来。可是,为什么大多数人们都很难记得住他,尽管张国荣有很多优秀的作品。在我的映象中,也就是《沉默是金》和《霸王别姬》(王家卫的作品情节平淡,唠嗑一般,看了一遍就忘了)。

星期五, 三月 31, 2006

上帝的玩偶

上小学的时候我喜欢数学,每次拿个100分的考试卷都沾沾自喜,不过表面上还若无其事,记得还拿过两块肥皂或毛巾回家,因为它们是期末的奖品。
God's doll 上初中的时候开始喜欢化学,发现凭借分子的力量可以创造很多奇迹,并受到一个同桌的影响,开始关注足球,也曾在梦里大力抽射,结果弄伤了小腿。
高中的时候喜欢语文,并真正开始喜欢上文学,觉得顾城是个神,“黑夜给了我黑色的眼睛,我却用它寻找光明”,这简直不是“人”能想出来的诗句。
大学的时候喜欢计算机,从而喜欢上英语,还看见一个路人朝bill脸上扔了一块蛋糕。
现在喜欢睡在沙发上看DVD,喜欢打开Sleipnir看煮酒论史,喜欢bloglines和bittorrent,下载成了我网络流量的99.99%。
这不,刚刚从bloglines我订阅的链接上看到一个奇怪的画,我叫它“上帝的玩偶”,并把它放到了我的Flickr相册。同时在下载一部叫《上帝之城》的电影。

星期二, 三月 28, 2006

无聊时的游戏

每天下班回到宾馆基本上都有一段时间很无聊,一般都是做两件事,一是玩会游戏,再就是看网上下的电视剧,游戏是古董级的《古墓丽影1》,电视剧是《迷失》,昨晚终于把古墓1打爆了,总共存盘262次,耗时15个小时左右。
rola_bf
CRED1

email struggle

用了几个月的LiveMail Beta,终于支撑不住,在上周五退出,返回Hotmail的怀抱,因为LiveMail实在是个极其名不符实的产品,违反了微软一贯的易用、体贴的原则,也许LiveMail的开发经理以前都是用命令提示符发送电子邮件,而不是用windows和ie。
今天打开gmail信箱,孩子她妈给我发了最近宝宝的照片。有重大发现,gmail已经把删除功能做成按钮发到收件箱了,以后删除邮件就方便多了。

星期六, 三月 25, 2006

电视

乌鲁木齐别的不行,这有线电视确实厉害,全国各省、直辖市、自治区的卫视全部囊括,另外新疆和乌鲁木齐各有大概10个台,一算下来,这台还真不少。
还有一个特色,电视台经常播放一些热门或比较经典的好莱坞电影,比如最新的奥斯卡最佳电影《撞车》,乌鲁木齐电视台都放过了,好像速度不比盗版上市慢多少。还有像《空心人》、《死神来了》、《火柴男人》等等老片放得也不少,在乌鲁木齐,或许就不需要买盗版DVD回家看了,难怪没怎么看见DVD音像店。
前天晚上,大概1点多,调到广东卫视,居然在放《CSI:拉斯维加斯》第二季第12集,厉害,我还不知道这部电视剧被引进到国内,不过中文配音的效果还是不如听原音看字幕舒服,而且看那画质好像是VCD版的(?)

星期四, 三月 23, 2006

星期四, 三月 16, 2006

又下雪了

本来以为春天已经来了,可今天早上10点起床,拉开窗帘,鹅毛大雪满天飞,乌鲁木齐的冬天还没结束啊?希望雪下得大点,周末可以拿相机去拍雪景...

星期一, 三月 13, 2006

相对的自由和谎言

米洛舍维奇,终于还是被西方自由国家给干掉了,萨达姆有可能是下一个...

星期五, 三月 03, 2006

AutoCAD

孩子她妈3月1日开始上班的,昨天打电话告诉我说,要学AUTOCAD制图,叫我帮她找电子书,这些东西还真好找,电驴上一堆,慢慢下吧。
AUTOCAD这个软件还是挺厉害的,那个公司叫什么desk来着(autodesk?),反正就靠这么个软件名誉天下,好像正版的一套AUTOCAD要几万块人民币,抢钱啊,所以大多数学习型的同志和公司都用盗版,不是俺们不用正版,是正版的价格太离谱,不着边啊,谁会花几万块买个也许明年就会升级的产品摆在书架上荡秋千玩?!

星期二, 二月 28, 2006

103天

到今天为止,宝宝来到这个世界就整整103了,以前看过电影《101斑点狗》、《102斑点狗》,今天是我们家有了“103苗苗牛”
100天的时候,苗苗她妈带她去儿童摄影拍照。昨天中午,苗苗她妈传给苗苗她爸我看(绕口令?),果然拍得不错,几百块钱花得值。
现在正是苗苗长记性的时候,等我回家的时候,苗苗肯定不认识偶是who了。不过没关系,等我在家过两天,苗苗又要跟我玩成一团了。
现在在考虑一个问题,乌鲁木齐这儿能有什么东西能带回去送给苗苗玩?!

星期一, 二月 27, 2006

在乌鲁木齐

交行网络管理太严格了,只有中午吃饭的时候可以上网,所以上网的时间太有限了,而住的宾馆没有宽带,拨号太原始社会了,不想上。
现在的乌鲁木齐冰天雪地,白天晚上大街上都没什么人,时间上跟常州有两个小时的时差,很不适应。晚上7点,大多数商店都关门了,而实际上大多数单位在7点半之后才下班,所以下班之后根本没法购物,据说,这里的人都是在中午出来购物,呵呵,很有趣。
平时和周末都会出去转转,在人民广场到东风超市这片地区,也没走多远,发现乌鲁木齐到处都是地下商场,地下比地面还热闹,而且营业时间会到晚上9点半左右。
从人口密度来说,乌鲁木齐还是很萧条的,从楼高和商场数量来说,又还算不错的城市,也许旅游季节一到,乌鲁木齐会是另一番景象。

星期一, 二月 20, 2006

Evolution of Programmer(程序员进化史)

看到一篇极其搞笑的文章,转载并记录一下。

High School/Jr.High(高中、初中)



10 PRINT "HELLO WORLD"
20 END

First year in College(大一)


program Hello(input, output)
begin
writeln('Hello World')
end.

Senior year in College(大二)


(defun hello
(print
(cons 'Hello (list 'World))))

New professional(毕业生)


#include
void main(void)
{
char *message[] = {"Hello ", "World"};
int i;

for(i = 0; i < 2; ++i)
printf("%s", message[i]);
printf("\n");
}

Seasoned professional(开发人员)


#include
#include

class string
{
private:
int size;
char *ptr;

public:
string() : size(0), ptr(new char('\0')) {}

string(const string &s) : size(s.size)
{
ptr = new char[size + 1];
strcpy(ptr, s.ptr);
}

~string()
{
delete [] ptr;
}

friend ostream &operator <<(ostream &, const string &);
string &operator=(const char *);
};

ostream &operator<<(ostream &stream, const string &s)
{
return(stream << s.ptr);
}

string &string::operator=(const char *chrs)
{
if (this != &chrs)
{
delete [] ptr;
size = strlen(chrs);
ptr = new char[size + 1];
strcpy(ptr, chrs);
}
return(*this);
}

int main()
{
string str;

str = "Hello World";
cout << str << endl;

return(0);
}

Master Programmer(开发组长)


[
uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
]
library LHello
{
// bring in the master library
importlib("actimp.tlb");
importlib("actexp.tlb");

// bring in my interfaces
#include "pshlo.idl"

[
uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
]
cotype THello
{
interface IHello;
interface IPersistFile;
};
};

[
exe,
uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
]
module CHelloLib
{

// some code related header files
importheader();
importheader();
importheader();
importheader("pshlo.h");
importheader("shlo.hxx");
importheader("mycls.hxx");

// needed typelibs
importlib("actimp.tlb");
importlib("actexp.tlb");
importlib("thlo.tlb");

[
uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
aggregatable
]
coclass CHello
{
cotype THello;
};
};


#include "ipfix.hxx"

extern HANDLE hEvent;

class CHello : public CHelloBase
{
public:
IPFIX(CLSID_CHello);

CHello(IUnknown *pUnk);
~CHello();

HRESULT __stdcall PrintSz(LPWSTR pwszString);

private:
static int cObjRef;
};


#include
#include
#include
#include
#include "thlo.h"
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

int CHello::cObjRef = 0;

CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)
{
cObjRef++;
return;
}

HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString)
{
printf("%ws\n", pwszString);
return(ResultFromScode(S_OK));
}


CHello::~CHello(void)
{

// when the object count goes to zero, stop the server
cObjRef--;
if( cObjRef == 0 )
PulseEvent(hEvent);

return;
}

#include
#include
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

HANDLE hEvent;

int _cdecl main(
int argc,
char * argv[]
) {
ULONG ulRef;
DWORD dwRegistration;
CHelloCF *pCF = new CHelloCF();

hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);

// Initialize the OLE libraries
CoInitializeEx(NULL, COINIT_MULTITHREADED);

CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
REGCLS_MULTIPLEUSE, &dwRegistration);

// wait on an event to stop
WaitForSingleObject(hEvent, INFINITE);

// revoke and release the class object
CoRevokeClassObject(dwRegistration);
ulRef = pCF->Release();

// Tell OLE we are going away.
CoUninitialize();

return(0); }

extern CLSID CLSID_CHello;
extern UUID LIBID_CHelloLib;

CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
0x2573F891,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
};

UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
0x2573F890,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
};

#include
#include
#include
#include
#include
#include "pshlo.h"
#include "shlo.hxx"
#include "clsid.h"

int _cdecl main(
int argc,
char * argv[]
) {
HRESULT hRslt;
IHello *pHello;
ULONG ulCnt;
IMoniker * pmk;
WCHAR wcsT[_MAX_PATH];
WCHAR wcsPath[2 * _MAX_PATH];

// get object path
wcsPath[0] = '\0';
wcsT[0] = '\0';
if( argc > 1) {
mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
wcsupr(wcsPath);
}
else {
fprintf(stderr, "Object path must be specified\n");
return(1);
}

// get print string
if(argc > 2)
mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
else
wcscpy(wcsT, L"Hello World");

printf("Linking to object %ws\n", wcsPath);
printf("Text String %ws\n", wcsT);

// Initialize the OLE libraries
hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);

if(SUCCEEDED(hRslt)) {


hRslt = CreateFileMoniker(wcsPath, &pmk);
if(SUCCEEDED(hRslt))
hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);

if(SUCCEEDED(hRslt)) {

// print a string out
pHello->PrintSz(wcsT);

Sleep(2000);
ulCnt = pHello->Release();
}
else
printf("Failure to connect, status: %lx", hRslt);

// Tell OLE we are going away.
CoUninitialize();
}

return(0);
}



Apprentice Hacker(黑客初学)


#!/usr/local/bin/perl
$msg="Hello, world.\n";
if ($#ARGV >= 0) {
while(defined($arg=shift(@ARGV))) {
$outfilename = $arg;
open(FILE, ">" . $outfilename) || die "Can't write $arg: $!\n";
print (FILE $msg);
close(FILE) || die "Can't close $arg: $!\n";
}
} else {
print ($msg);
}
1;



Experienced Hacker(上手)


#include
#define S "Hello, World\n"
main(){exit(printf(S) == strlen(S) ? 0 : 1);}



Seasoned Hacker(有经验)


% cc -o a.out ~/src/misc/hw/hw.c
% a.out



Guru Hacker(高手)


% cat
Hello, world.
^D



New Manager(项目经理)


10 PRINT "HELLO WORLD"
20 END



Middle Manager(产品经理)


mail -s "Hello, world." bob@b12
Bob, could you please write me a program that prints "Hello,
world."?
I need it by tomorrow.
^D



Senior Manager(部门主管)


% zmail jim
I need a "Hello, world." program by this afternoon.



Chief Executive(CEO)


% letter
letter: Command not found.
% mail
To: ^X ^F ^C
% help mail
help: Command not found.
% damn!
!: Event unrecognized
% logout

中文说明是我加的。
原文出处: