飞's profile程序人生PhotosBlogListsMore Tools Help

飞 徐

Occupation
Location
Interests
致力于web,图形以及打印功能的开发,工作流研究

程序人生

人生如同下棋,无论何时,不可被别人占到先手。
November 11

关于操作系统

用电脑以来,我换过不少操作系统,从win95开始,然后是98,后来在一台老的386上学会了dos,也体验了一下win3.x,其实当时用起来已经很方便了,后来逐渐有一些改进。

用98的时候体会最多的时候就是它的蓝屏,经常无缘无故的就出来,很苦闷,然后那时候大家就学会了重装系统,非常熟练。不久出来了一个windows me,我也兴冲冲体验了一把,说实话,比98改进有限,而且占用资源还多,直接喀嚓了。

就在同一个时期,有了一个非常完美的系统win2k,这个东西占用资源少,硬件要求低,用起来非常舒服,唯一可以说缺憾的就是某些娱乐特性支持得不好,不过幸好的是我玩的东西都可以用,所以它伴随我5年时间。

xp出来的时候很多人换用,可是我却不习惯,因为觉得太花了,现在看起来,其实不能算花,也是非常好用的,只是占用的资源稍微多一点,当时我的电脑不太先进,就没装它。

现在还是用xp的多,我的小上网本就是用的它,家里台式机也是。公司的电脑用的server2003,有2个好处,1是有时候要跑asp.net的程序,可用设置多,2是因为公司安装一些流氓软件来监控我们,但是这些东西在server2003里面会出错,于是运行不起来 ^_^

这个vista,我一直很不喜欢,很占很占资源,很花很花,不是开发人员的用用还可以,我们的各种开发环境一跑就只好等死机。我也试用过刚出来的windows7和server2008,都还不错,可以考虑升级。

上面说的都是我的windows系列的使用经历,下面说说linux。

我第一次接触linux其实很早,2000年,那时候有一个redhat6.3的盘,我在自己电脑上装过,不过当时太笨了,没装起来。

后来在01年买了一个国产的红旗回去装,我晕,它是服务器版啊,直接把我的硬盘全部格式化了,划分了一个192M的swap,剩下的一分为二,一个安装了系统,一个给放文档,我苦啊,我的文档,找也找不回。。。

然后有一次看到一本杂志,好像是CHIP,带了一个盘,Turbo Linux 7.2,我立刻买了,杂志看完就扔了。这个版本非常不错,是我安装过的最好的版本了,安装简便,使用流畅,产用软件都有,很容易做成跟windows双启动,很好。最后是因为我硬盘不够了,想了想就把它干掉了,不过这些盘我都还留着。

有一次买杂志,送了一个livecd版本的,好像是叫做koppix?我试验了一下,不用安装,直接在光盘上运行,不用怕把硬盘分区弄坏,很好的想法。

到后来开始关注ubuntu,也装过几个版本,在上网本上装了一个9.04,但是无线网老有问题,怎么搞都搞不定,郁闷啊,最近9.10出来了,又装了一个,可以了。我觉得这个版本已经很好用了,连开发C#都可以,mono develop我试用了一下,还挺好用的。

ubuntu最好用的一点,是有一个wubi程序,能够在windows下安装,直接装在普通fat或者ntfs分区上,不损害原有文件,而且还可以很轻松地卸载,还可以装在U盘上用,这也是原来北大退休教授袁萌一直鼓吹的东西(不过貌似网上这个人评价不高,有兴趣的人可以去看看他的博客,反正我觉得能给人很多乐趣,像我这种不上sina不上天涯不上mop的人,乐趣很多都是从这类地方来的,呵呵)

哎,最近intel还搞了个moblin,应该也类似ubuntu,界面很靓,等以后arm架构的上网本流行了,价格在1k左右的时候,我再买个,然后体验一下这个东西,应该在不久之后啦。

还有google的chrome os,还有android,最近出了这么多基于linux的东西,很期待,都赶紧出来吧,还有arm架构的上网本,我很期待,虽然不看好它在中国市场上的表现,因为这个东西不能安装windows,但是只要便宜,价格1k多点,也不要有硬盘,内置个2G的闪存,屏幕还可以,打字舒服一些,慢一点不要紧,能上无线网,电池耐用一点,我就一定会买个,比如我这会洗澡完了坐在床上想要写个文章,那就简直非常好了哎。

我是电子产品狂,有上网本了还想再买,呃,女人在旁边对我很不满,我说,总比吃喝嫖赌好吧,答曰:那你去嫖吧,囧

February 25

那年那月(一)

昨天晚上睡觉之前,不知为什么想起了好久好久以前的一些事情。

我想起了马飞,他是我初一时候的同学。

马飞其实不姓马,他是彝族人,姓“拉马”,简称马。

马飞黑黑的,总是很猥琐地笑,其实他很有才,会不少乐器,能唱会跳,不像我,只会吹口哨。

马飞会画画,他还知道圣斗士,很详细地知道,而我只知道其中几个主角而已,更不知道他们的事迹。他很鄙视我,于是有一天下晚自习的时候悄悄喊我,说,给你看个东西。

我一看,是一张纸上面画了个圣斗士,画得很精致。他说,等我涂好颜色给你,本来等全部弄好了才给你看的,忍不住了,先给你看下。我很高兴,虽然我也不认识那个是谁。

第二天,马飞拿着涂了颜色的圣斗士,嬉皮笑脸地给我,我很认真地仔细观赏了一遍,然后小心翼翼收藏起来。整个人物几乎都是金黄的,我心想怎么这么土的配色,很多年之后我才明白,这是黄金圣斗士,就是这个颜色的。那时候我还几乎没有看过彩色电视放圣斗士,而现在回想起来,他画的是迪斯马斯克,所以头盔有很多螃蟹脚。

第一次去马飞家,是个周末,其实我家跟他家很近,也就走10分钟。那天他家没有人,开门的时候他叫我小心,我以为他家养了狗,可是进门一看才发现是只鹰。那鹰很凶,一直瞪我,我第一次近距离看鹰,很好奇,他叫我不要惹它,因为这家伙发飙了十分厉害,狗都咬不过它。

于是我满怀敬畏站到了一边,马飞说这家伙一天要吃三斤肉,我心想吃的比我好多了,还真是花钱唉,然后说幸好只要是肉,它都不嫌弃,所以食堂杀猪的时候把没人要的内脏拿回来给它,这样才不是特别花钱。

后来有一天,马飞带我去爬山。那是我到云南的第一年,虽然学校旁边就是山,可是我一直没敢上去太远过,更不要说到山顶了。

我很高兴,一路跟在他后面,山上有很多很奇怪的东西,他一路上找了好几种不同的野果子给我,第一种是野柿子,虽然长相跟普通柿子差别太大了,但是我一吃就知道它是野柿子,那种子的样子,我认识的所有水果除了柿子没别的这样。

这个味道还可以,然后碰到一种小小的很鲜艳的果子,我吃了一下,很酸,但是味道相当的好,从外表跟核的样子来看,应该是野樱桃,我吃得不过瘾,扳了一大根树枝走了。

然后有一种长得跟缩微番茄似的东西,但是马飞没喊我吃,我说这个不能吃吗,他坏笑,说你试试。试试就试试,我吃了一个,很奇怪竟然有几乎一点味道也没有的果子,不酸也不甜,真是没劲的东西。
后来我就胆子很大了,甚至带着一起去云南的另外两个同龄的家伙去山上玩,而且那是我第一次爬上山顶,从没有修路的山坡爬上去的感觉很好,到山顶上,闻着泥土的气息,听着松涛阵阵,再回头看看家所在的四合院那么小,大声叫着喊着不知老爸老妈是否可以听到,真是很快乐。

可惜当时我没听人说过“上山容易下山难”,下来的路上摔了几跤,擦破了一些皮,只不过这在那个年龄的男孩子身上,根本都不是一件能引起注意超过三秒的事。

回家之后天都黑了,被老爸老妈训斥一通,根据邻居的反馈,当时我的脸色很青,应该是在山上缺氧所致,确实,从一直生活的江苏到了海拔2000多的地方,而且这样的剧烈运动,其实是有些危险的。
在那之后,好玩的事情仍然很多很多。

夏天的时候马飞带我去林业局里面偷核桃吃,核桃是长在树上的,样子就跟桃子一样,根本不是我们平时见到的那个样子。因为我不会爬树,所以我被安排在下面放哨,不久他们就摘到一堆核桃,然后赶紧逃走了。

我们在一个小桥下面吃核桃,根据他们的经验,青核桃的汁很厉害,弄到什么上都洗不掉,于是我们找一个水里面的大石头,在那个上面把核桃挨个砸开,核桃外面那层桃肉是不能吃的,是涩涩的,桃核的壳子是嫩的,不像我们买的那种壳子很硬,剥开之后,吃起来感觉跟生吃青蚕豆有异曲同工之妙。

January 10

《赤壁(下)》

星期五晚上跟王华、小胖几个人去看了赤壁(下),看之前听到不少人说情节很搞笑,于是本着娱乐精神,把它当作搞笑片看完了。因为要求的起点低了,所以反而觉得还不错。

开场自然是很娱乐的,孙尚香化妆成士兵,混到北军营寨了,她也不想想,如果她被曹军抓了做人质,那东吴就有些为难了。这也就算了,可是那个鸽子。。。鸽子叫真的跟肚子饿了叫的很像吗?

然后,一个莫名其妙的傻小兵,因为踢球踢得好,晋升千夫长,这个玩笑有些大,千夫长拿现在来说,是营长团长级别的,少说也是一个中校上校,人家杨利伟辛辛苦苦上天去混了这么一阵,也就这级别,曹丞相用人果然别具一格。

可是,这孙郡主在光天化日之下,假装成一个男人骑在另外一个男人肩上,这。。。其他人竟然都没有意见啊?这可是军队啊,想怎么玩就怎么玩,而且竟然直接拿出纸笔来画营地结构图,淡定,要娱乐一点,胖猪这个昵称实在是太搞笑了。

北军不服水土,染上了伤寒,丞相猥琐过人,把尸体弄到对面去了,于是江东士民也感染了伤寒,一时人心惶惶。最神奇的一幕发生了,皇叔竟然带着自己的人马闪了,而且说的话超级搞笑,保存实力???刘备有什么实力可以保存?而且这人打了一辈子败仗,也未曾见保存过实力,竟然。。。不知道如果东吴败了之后,他保存这点实力有什么用。

曹丞相在士兵面前大发感慨,并且提到了自己的小儿子曹冲,奸雄也是有感情的,而且这个聪明的儿子也只活了十三岁就死了,人能够改变很多事情,但是改变不了的更多。朗诵《短歌行》的那一段也不错。

诸葛亮在江边看雾,跟鲁肃说帮我看看乌龟有没有流汗,很多人觉得这个很搞笑,其实未必如此,大雾将到,乌龟壳子会凝结水气,他正是要据此验证大雾即将到来。

出于应对经济危机,压缩电影篇幅,节约观众消费的需要,众所周知的草船借箭跟蒋干中计同步进行,群英会的排场也免了,取而代之的是周公瑾跟子翼兄拿筷子敲碗唱“老牛耕田哞哞哞”,都督照例还是起来舞了一回剑的,只是没有唱“丈夫处世兮立功名,立功名兮慰平生”了,蒋干曰“曹操抢别人老婆是出了名的”,在别人面前说自己老板坏话啊。

晚上睡觉,都督玩了一手真真假假,蒋干直接就拿信回去了。我觉得这一段在原著里面其实是非常精彩的,蒋干劝降周瑜的时候,周瑜说“大丈夫处世,遇知己之主,外托君臣之义,内结骨肉之恩,言必行,计必从,祸福共之。假使苏秦、张仪、陆贾、郦生复出,口似悬河,舌似利刃,安能动我心哉? ”可惜这里改掉了。

老而不死是为贼的曹丞相看了信不以为然,说这种反间计也拿来我面前玩,蒋干说不信你对比笔迹,你看,这错别字都错得一模一样呢。丞相大怒,曰:传蔡瑁张允。

这两位倒霉的人当时正在江面指挥人射诸葛亮的草人呢,电影里面的效果要比三国演义电视剧好多了,这个弓箭一看就很有威力,瞬间把船打得跟刺猬一样,而且箭的数目十分精确,刚好就比十万多一点。最可笑的是,曹操问,你们射掉了多少箭?蔡瑁说差不多十万支吧,嗯,大雾之中,曹军的箭个个都精确制导,全部射到了船上,都没有掉到江里去的啊?哪有射多少全在对方船上的道理,比搬过去还方便,难怪丞相怀疑他们通敌啊。。。喀嚓

郡主回来了,裹了一身的地图,而且在那么多人面前就把衣服脱了,搞得鲁肃那些人很不好意思,但是不看似乎又太亏了。小乔企图给郡主穿衣服,竟然都说:我不冷。

你不冷?这是什么季节啊,冬天,冬天的湖北,虽然说也不是特别冷,但是要穿得这么清凉在四面没遮挡的屋子里面,也实在太猛了。我穿一身棉衣坐在同一纬度同样临江的南京的关了窗子的屋子里,尚且瑟瑟发抖。

与会双方激烈辩论,密切磋商之后,火攻的大方针确定了,在孙权同志的领导下,先进武器开始研发。以水军甘头领为首的大规模杀伤武器研发团队用三个代表的重要思想武装自己,团结奋进,开拓创新,不断努力,取得了一系列的辉煌成就,其中涌现出了甘将军舍身试炸药等模范事迹,甘将军也因此获得了“古代中国诺贝尔”的美称。。。

下面的主要问题就是风了,气象学家诸葛亮根据多年种田的经验,推算出改变风向的时间,但是时间未必够,这个时候,小乔消失了。

她竟然跑去跟曹操聊天,拖延曹军行动。这段情节真是十分荒谬,很现代,古人根本不会这样想。于我而言,假设我处在周瑜的状况,形势紧急到需要自己的女人跑去敌人家里,就算这场仗赢了,也将作为自己一生的耻辱。

曹操这么君子,要是猥琐一点呢,先把小乔非礼一下,那周郎真是名副其实的“陪了夫人又折兵”啊。

女人总是天真的,小乔问曹操:你真的是为了我才打这场仗的吗?傻子才为了你打,最能吸引男人的根本不是女人,而是权力和地位。

电影里面说小乔小时候见过曹操,应该是基于这样一个设定:小乔是乔玄的女儿。这个可能不是这样,乔玄是对曹操很赞赏,但是乔国老未必就是乔玄。

当小乔企图借自杀阻拦曹操出战的时候,阿瞒说了一句超级幽默的话,他温情脉脉地说“别闹”,全场哄堂大笑。曹操被小乔拖着喝茶的时候,曹洪在外面急得要死,换了是我,直接冲进去把那女人一刀两断,世间美女多的是,但是江山只有一个。

大家吃元宵喽,刘家的几个人的对话很有意思,老刘竟然说正义不能当饭吃,这风格太不像他了,张飞生气的时候很有意思,把那么大的汤圆往锅里一扔。最耐人寻味的是关羽:“读书再多,却不懂得义气,这书不是白读了吗?”这是整个片子最令我触动的话,实乃至理名言。

东南风即将起来的时候,诸葛亮的表现很搞笑,他观测到风要起来的时候,赶紧把扇子一挥,然后狂风大作,从士兵的眼里,就是他这一挥导致了大风。。。

终于开始进攻了,刘备当初离开东吴原来是个计谋。。。好吧,那你们打吧。然后就是大混战,火药船冲到曹军水寨,猛烈爆炸,士兵们奋勇向前。

火烧的场面真是很壮观,游戏《三国志曹操传》里面赤壁之战的时候,周瑜赞叹道:这漫天飞舞的火焰,燃烧着我的魂魄。这句话用在看电影的每个人身上,都应该非常合适。所有人的脸上映出红光,额头流下汗水,嘴唇干燥,心里无比激动,浑身充满了热量(TMD我没有带水来看电影,渴死老子了 >_<)

影片表现的赤壁之战惨烈程度相当于古代版的诺曼底登陆和凡尔登会战。不得不说,战争实在太残酷了,无数的士兵就迎着炮火往前冲,双方都投入了很先进的武器,曹家的传统兵器投石车被强化成了抛射爆炸物的霹雳车,孙刘联军用的诸葛连弩也相当不错,前一阵刚看到过一个频道关于连弩的介绍和现场试射,当时确实有这么先进的东西,难怪那时候全国人口只有一千万左右。

孙权刘备周瑜等高级统帅不顾自身安危,纷纷冲锋在前,水军的甘老大舍身壮烈炸碉堡,谱写了一曲可歌可泣的英雄乐章。赵子龙大显神威,独自杀上城墙,打翻敌人无数。

曹操在大营跟周瑜玩起了猫捉老鼠的游戏,最终两个人剑都指着对方的咽喉,谁都不肯先动手。。。曹操叫众人拜他,因为他是丞相,结果我们的关君侯竟然说了一句特别意外的话:你过时了。。。

小乔终于被营救了,周瑜也安然无恙,当曹操被众人围住的时候,都督大发慈悲说:你走吧,从哪里来的回哪里去。这,太离谱了啊,要是刘备说这个还可以理解,东吴放了曹操对自己是一点好处都没有,杀了曹操可以让北方大乱,从而北上袭青徐二州。披头散发的曹操,很野性。

最终,瑜亮二人深情表白,这一段也很虚构,因为打败曹操之后大家就要开始抢地盘了,如果我是周瑜,必然要把诸葛亮干掉,如果我是诸葛亮,必然也要把周瑜干掉,朋友归朋友,大家各为其主,身逢乱世,想要不做敌人,那也是很难的。

至此,赤壁之战圆满结束,曹操败北,刘欢孙悦。

附赤壁(下)经典台词:

曹操:没想到,我输给了一场风,败给了一杯茶。

诸葛亮:什么都略懂一点,生活就会更多彩一点。

综上,这个片子是值得看的,设想时值周末,享用完丰盛的晚饭,与亲爱的兄弟们一同观赏着血与火的战斗,不时感受到导演穿插的小幽默,人生多么美好。

September 21

从零开始给开心网做外挂(一)

开心网现在渐渐很流行了,里面有几个好玩的插件,主要有买卖奴隶、争车位、咬人这三个比较受欢迎,其中,买卖奴隶可控性不是很高,因为有时候这个规则比较难设置,优先买谁等等,要根据情况,有人参与一下才比较好。但是争车位和咬人就比较随意了,争车位只要换个位子就可以收钱,咬人随便咬谁都有经验,但是呢,它们都需要常常在线操作,对于时间不是很充裕的人,是一个负担。

那么,是不是有必要借助工具呢?现在网上已经有相应的工具了,功能也不错,不过,对于我们做软件的人来说,自己动手做一个也是不错的事情,练练手,而且也能顺便看一下别人的代码是怎么写的。

好,我们先拿这个争车位来分析。

怎么分析呢,给开心网写外挂其实比给什么网络游戏写外挂简单多了,网络游戏的外挂需要抓数据包分析,这个过程是很烦躁的,但是开心网,因为它是web的,而且它的插件都是ajax的,所以可以直接看代码。

这样吧,我们图省事,也就拿web做外挂,HTML+JavaScript,调用他的接口。

先登录一下吧,这个步骤是没法避免的。登录页面很简单,它就是一个表单,action是/login/login.php,所以也就是http://www.kaixin001.com/login/login.php这个了,它的参数也很容易找到,就是一个email,一个password,所以,一会我们写登录部分的时候,把这两个拼起来post一下就可以了。

这里有一个问题了,post结束之后,怎么知道是成功了呢?很简单,只要成功登陆,肯定会跳转到主界面,然后主界面有什么特定的东西呢?到主界面的源码里面把它的title拷出来就可以了,只要post的结果里面包含了这个title,就说明已经登录了。

到了主界面,看左边一排插件列表,鼠标放在“争车位”这三个字上,因为这是一个链接,所以状态栏就会显示它的链接地址,好,记录下来,http://www.kaixin001.com/app/app.php?aid=1048,这个没有参数,不需要用post,只要get一下就可以。

点一下,进了争车位主界面,唔,flash做的,但是参数肯定是从js传递过去的了,看一下这个页面源码,发现两个有用的变量,一个叫做v_userdata,这是保存用户信息的,另外一个叫做v_frienddata,很明显是保存好友信息的了,这两个的内容都是json格式定义的,那么这就是在服务端生成这个页面时候拼出来的,我们怎么取得它呢?

来,我们猥琐一把。想一下,这个页面的内容是什么,一个字符串,对,字符串,两个变量分别定义在不同的行上,而这两个行只做了给这两个变量赋值的事情,接下来的事情就简单了,首先把页面源码split一下,用"\n"做分割符,这样得到的就是一个数组,每个元素是里面的行,然后,遍历下来,如果这个行indexOf我们可爱的变量,就eval它,没错,eval,然后就隐式定义了这两个变量,于是在这个作用域,我们也可以调用它们了。

v_userdata有一个属性叫做user,这是保存个人基本信息的,比如说你的名字是什么,你的id是什么,你有多少现金,等等,枚举出来即可,还有一个属性叫做car,它是一个数组,保存的是当前拥有的车辆,数组每个元素当然是一个车子了,里面有它的名字,牌子,价格,当前收益等等,我们列举它出来就可以了。

好了,到这里为止,我们已经可以查询出车子的信息了,前途是很光明的,怎么去自动停车收钱呢?以后再说吧。

通过分析开心网的代码,我了解了以下几个事情,这个网站其实技术上复杂程度并不高,代码挺少的,它主体是PHP写的,用什么语言其实差别不大,它使用的JS框架是prototype,调用后台的方式,很显然就是一个Ajax的异步call,每做一个事情,就设置一个回调函数,改变界面,对我们做外挂来说,所需要的界面基本是没有的,基本上只是拿来显示是否成功等等,那这里就要一律改成同步调用,然后按照顺序一个一个跑下去。

会写代码的可以自己动手试试哈,不会的就当我什么都没说了,代码暂时不泄露,哈哈。

September 15

无锡归来

这三天去无锡玩了。

12号晚上一下班就赶紧去火车站,然后晚上到了华仔家里,真是豪宅啊,别墅ing,夜里睡得不太好,外面施工,据说是军队,投诉也是无效的……

13号华仔请吃饭,菜很不错,尤其是那个酱骨头,我一个人吃了6大块,撑得要死。吃完去K歌,跟一堆人会合,大家都是来参加钱兔子婚礼的,晚上就都挤在戚猫和小庄的房子里,猫的床太软了,早上起来浑身发酸。

14号起来,吃了老蒋带来的很好吃的饼,就出发去凯宾斯基酒店,兔G跟兔子打扮得很漂亮,两个人幸福得要死,哈哈,酒店很豪华,吃得很不错,我一边吃一边计算结婚要花多少钱,然后得出结论,我离这个目标太远了。

婚礼结束之后去兔G家,又是一个别墅……啊啊啊,无锡人都这么有钱的啊。

然后回去玩杀人,一群人又打牌,逐渐的人们都闪人了,又一天过去了。

15号下雨,哪里都去不了,到了下午回南京。

嗯,总之就是这样。

August 31

最近一段时间

最近很繁忙,一堆事情要做。

劳民伤财的奥运结束了,对此最大的感觉就是导致几个我常常去的网站没法访问,比如CSDN,非常可恶,搞不懂技术网站有什么好封的,搞得我每天早上都没新闻看。

买了一个台式机,有640G的硬盘,我分区的时候,分了两个40的,然后后面想了半天就不知道怎么分了,随便分了一下,19宽屏,写代码的时候,两边的窗口可以展得非常开,本来想要买22寸屏幕的,貌似太大了,看惯了14寸本本之后根本不习惯。

装了一个vista跟一个server2008,都还不错,就是挺占空间的,不过空间对我来说也无所谓了。

另外现在开始玩一个叫做开心网的网站,它的意思就是一个社区,认识的人在里面分享一些信息。有一个主框架,就是登录啊,用户个人信息,互相发消息之类的,然后可以添加很多插件,比如说可以加一个插件把朋友买成奴隶来蹂躏,可以攒钱买车子,可以炒股,可以出题目看看朋友对自己的了解程度,这种模式挺有意思,值得效仿。

基础模块加插件来构成一个系统,然后在上线之后还可以不断添加功能,每个用户可以自己定义显示哪些插件,每天都在添加修改功能。

另外一个值得思考的就是里面的奴隶买卖功能,每个人都可以被买成奴隶,然后身价会提高,拉一个人来注册可以加一些钱,然后大家在互相炒作奴隶,奴隶买来之后可以打工一次,交一些中介费。这个模式让我想起了一个东西,就是房子,大家炒作,然后让这个奴隶价格提高,于是显示的个人总资产就高起来了,但是呢,如果你这个奴隶放在手里,一直没人来买了,那么就跟房子一样,变不了现金,这个价格也就没有意义了。

不过游戏毕竟是游戏,如果买奴隶次数多了,还可以每天安抚,奴隶发奋挣一些钱给主人等等,所以基本上是不会形成实际状况下的高价房子没人买的情况,而每个人的资产也是逐步增加的。

另外一个特色功能是我的足迹,这个有一个地图,你在地图上点一个地方,然后发表感想,对这个去过的地方有什么评价,最后都填好了,地图上会自动填色。看到自己去过的地方逐渐覆盖整个中国,那感觉还是不错的,而且也可以看到好友的足迹的并集。

这个网站邀请朋友很有特色,它采用一种隐式强迫的做法,怎样增加用户呢?怎样使得用户主动推荐自己的好友加入,前面提到的奴隶买卖是一个,推荐好友,自己增加一些钱,于是可以买更多奴隶,或者可以买好一点的车子,这样大家都使劲推荐好友来了,好办法。

August 20

使用Python创建Silverlight控件

其实关注Silverlight很久了,只是最初的版本令我很失望,1.0的Silverlight在我看来,就相当于强化版的VML或者SVG而已,多年以前(04年)我一直期待微软能出一个强大的web端插件,能够跟flash竞争,这么久以后,这个东西才逐渐变成现实。

好吧,Silverlight 2有了,尽管它还是beta 版,先玩玩吧。我搞了一个Visual Studio 2008 Express版,装了Web跟C#,竟然都不支持2.0的Silverlight开发,有没有搞错,就是冲着那些控件才来玩SL的,这怎么办。

这可郁闷死我了,于是我只好乖乖装完整版本的Visual Studio 2008,这玩意大得很,我把硬盘空间整理了又整理,勉强弄出一点地盘给它,N久之后终于装完,折腾了半天,那个该死的插件又装不上,搞了好久还是不行,我很生气,算了,不搞它了。

于是我决定不要VS2008了,听说Silverlight 2.0支持动态语言,好,来玩玩。我以前是做JavaScript的,换个吧,我来玩玩Python,于是我就找例子,一找找到了,怎么呢,我来写了:

这里是XAML文件app.xaml

<Canvas xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="System.Windows.Controls.Canvas" x:Name="Page" Width="400" Height="300">
    <TextBlock x:Name="MsgText" Canvas.Top="10" Canvas.Left="10"></TextBlock>
    <Button x:Name="TestButton" Canvas.Top="40" Canvas.Left="10" Content="Test"></Button>
</Canvas>

这里是Python文件app.py

from System.Windows import Application
from System.Windows.Controls import *
from System.Windows.Browser import *

class App:
    def __init__(self):
        self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")

    def start(self):
        self.scene.TestButton.Click += self.TestButton_Click

    def TestButton_Click(self, sender, eventArgs):
        self.scene.MsgText.Text = "Hello, world!"

App().start()

其他的没什么悬念了,Chiron /d,开始跑,http://localhost:2060/index.htm上出现了效果,一个文本框,一个按钮,点一下按钮,框里面出来一个hello, world!

1

于是我就很激动,原来是这么好玩的啊,貌似写起来也很简单的哇,那我来搞两个复杂一点的控件。什么控件比较帅呢,我一想,日历吧,这个东西好,那我就开始了,我加了一行

<Calendar x:Name="TestCalendar" Canvas.Top="10" Canvas.Left="10"/>

好了,开始跑,咦,不对,说找不到Calendar这个东西,研究了一下文档,发现这个是包含在System.Windows.Controls.Extended.dll里面,于是我把这个dll拷到app目录下,还是不行,怪啊,这要怎么办呢,到处找了一遍,发现竟然没有有关Python调用SL扩展控件的文章,这可痛苦了。

但是我不甘心,我相信微软不会这么不友好,于是我继续查帮助,咦,Calendar前面要加一个前缀做命名空间,但是XAML头上怎么定义呢,我想了想,实在想不出来,然后我很猥琐地想到了Blend,嘿嘿,我下载了一个,安装,创建项目,然后创建控件,这个时候只有内部控件可以用,然后我在项目上添加引用到SDK目录下的System.Windows.Controls.Extended.dll,于是就可以创建日历了。

我要的可不是这个哦,切换到XAML栏,看到没有,这行代码:

xmlns:System_Windows_Controls_Extended="clr-namespace:System.Windows.Controls; assembly=System.Windows.Controls.Extended",原来就是它在起作用呵,于是我照样定义了一遍,仍然不行。。。

这是怎么回事?继续发奋研究文档,终于发现,在Python文件里面也要写东西的,我贴完整代码了哦,app.py

import clr
clr.AddReference("System.Windows.Controls.Extended")

from System.Windows import Application
from System.Windows.Controls import *
from System.Windows.Browser import *

class App:
    def __init__(self):
        self.scene = Application.Current.LoadRootVisual(Canvas(), "app.xaml")

    def start(self):
        # TODO: replace this with your application start logic
        self.scene.TestButton.Click += self.TestButton_Click

    def TestButton_Click(self, sender, eventArgs):
        HtmlPage.Window.Alert(self.scene.TestCalendar.SelectedDate.ToString())

App().start()

呵呵,看到没有,最开始那两句,它是起作用的关键。下面是app.xaml

<Canvas xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:System_Windows_Controls_Extended="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Extended"
x:Class="System.Windows.Controls.Canvas" x:Name="Page" Width="400" Height="300">
    <System_Windows_Controls_Extended:Calendar x:Name="TestCalendar" Canvas.Top="10" Canvas.Left="10"/>
    <Button x:Name="TestButton" Canvas.Top="180" Canvas.Left="10" Content="Test"></Button>
</Canvas>

好啦,预览一下,非常帅:

2

好了,今天的试验到这里结束啦,以后我们再来玩复杂些的。

July 26

赤壁(上)观后感

今天晚上去看了赤壁,等了N个星期,没有时间去换票,这次多亏邻居闹闹同志去看熊猫,帮我换了票,路上热的要死,晚上KFC迅速解决,7点正式开始。

话说我看这个之前,已经听到N多传闻,说这个片子的瑕疵如何如何,多么的搞笑,等等,于是我都抱着把这个作为搞笑片看的想法了,凡是跟三国有关的东西,一般我是不会放过的,尤其是这种传闻很有场面的。

于是我就开看了,结果完全没有那种搞笑的氛围啊,我一直很沉默很严肃地看到了最后,片子虽然比《三国演义》改动了很多,但是改动得还挺不错。

出场的时候,著名的刘协同志上班打瞌睡,而且还玩游戏(一个小鸟),而且吹口哨,身为汉朝集团董事长,表现真是十分不好。

【题外话:这个时候旁边一个小女孩大叫“这是孙权吗?孙权这么年轻吗?”我感到极其愤慨,这个小女孩的说话从头到尾就没有断过,而且说的好多都是一知半解,而且声音分贝极大,她家长竟然毫无制止之举,唉。】

然后我们英明神武的曹孟德同志剑履上殿了,照例逼着领导批准集体出差申请,献帝同志不堪压力,于是批准之,正在大军就要上路之时,孔夫子的若干代孙,现任太中大夫,曾任北海太守,以让梨佳话传颂千古的孔融同志出言讽刺,被弄去祭旗了……呃,好吧,把孔融改得死在这里,可以接受。

然后就是刘备集团的对抗了,说实话,这一段在演义里面是极其悲壮的,刘备同志带着十多万百姓,日行十余里,十多万百姓是什么概念呢,当时全国总人口在一千多万,也就是全国人口的百分之一跟着他走,拿到今天来说,大概就是全上海市的所有人跟着他闪人了,很不可思议的一件事情。

然后曹操当然是追杀他的,将士们当然是奋力抵抗的,厮杀当然是残忍的,赵云是七进七出的,张飞是大喊的,关羽。。。呃,演义里面关羽在此处未出现,去江夏找刘琦去了。但是电影里面,此处很好看,关羽同志代表1000个兵出场了,战斗场面非常精彩。刘备的两个老婆,呃,甘夫人提前惨死了,糜夫人照例投井自杀了,阿斗笑得仍然那么灿烂,刘备没有把儿子往地上扔了。曹操不需要问,就有人知道猛将是赵云了,阿瞒同志非常感慨,为什么我手下没有这么厉害的猛将呢?

好,军师同志多吃了一碗饭,去东吴了,都督同志排练着早已过时的鹤翼阵法,而且顺便把牧童的笛子改造了一下,著名海盗甘宁甘兴霸被改名成甘兴了,依旧一副黑社会老大的样子,而且,说话的语气,难道是老外???另外,我怎么觉得演程普演员,是在电视剧《三国演义》里面演赵云,《贞观长歌》里面演李勣的那个张山?有人确认一下吗?

孙权是张震演的……,别的都好,就是这个人说话很港台腔啊,而且,诸葛亮也有点这个倾向。孔明同志冬天摇着他的鹅毛扇子,很冷静,跟周瑜斗了一把琴,冲动了一把。小乔说话太嗲了,而且那个马的情节很恶搞,而奸雄同志照例又对小乔充满了YY,画了一个图不算,还找了一个女的来cosplay小乔,可见欲望是多么得使人年轻,华佗很无语。

激情场景来啦,小乔开始脱衣服了!旁边的小女孩又不合时宜地大喊“啊,她脱啦,看到裤衩啦!”-_-!!!而且这个小孩不停地重复这个话,令人很崩溃。终于裸体了很多,两个人缠在一起了,小女孩大喊“啊,他们抱在一起了,好恶心啊!”于是我的思维也跟着认为这很恶心了,……原本还想感慨一下,为什么好事情都被梁朝伟碰到了,结果发现他碰到的原来是一件“恶心”的事情啊,哈哈。

孙权发挥他的长处了,打华南虎啦,一个我非常喜欢的情节,他射出箭的时候,场景迅速切换到佩剑砍案角,孙权大喊“有如此案!”旁边有几个人没弄清楚这个什么意思,议论纷纷。

赵云练兵ing,关羽教书ing,张飞写字ing,刘备草鞋ing,这一段的台词都很有意思,激战之中难得的轻松。

孙尚香郡主强烈要求上场打仗,而且恶搞了鲁肃一把,鲁肃应该很厚道的,结果傻笑了一下,被从马上弄得摔下来,狼狈不已,周瑜猥琐地逃走了,诸葛反应很快,也迅速跟着逃走了,智商高果然不是盖的。

曹操开始派兵了,蔡瑁张允带着水军先上,然后,然后,等等,第三批是哪两个将领???一个夏侯什么,我没注意,另外一个,魏贲!!!我当时张大了嘴,惊讶得要死,为什么呢?不为什么,《三国演义》跟《三国志》里面都没有这个人,这不奇怪啊,那个夏侯什么,也是没有的,可是,如果你看过《封神演义》,应该知道有这么一个猛将,生擒过南宫适的。好吧,我承认,我联想力太丰富了。

孙尚香带着她的宠物乌龟出场啦,紧跟她的是她的侍婢们,她们立功啦,她们不给任何魏军机会,她们的箭射出去啦,魏军死伤无数。

郡主她顺从地走在前面,把敌人带进了咱们的埋伏圈,四下里乒乒乓乓响起了盾牌声,敌人才知道受了骗~敌人被赵云挑在枪尖,摔死在大盾牌的上面,我们的小英雄曹军的兵啊,可怜他死得这么惨-_-!!!

这个八卦阵真是太帅了,原来八阵图是这个效果啊,太有视觉震撼力了,魏军的骑兵被锁在里面,然后就是纯粹的屠杀,这个时候有一个搞笑的场景,著名的美洲狼同志不知道什么时候冲到人堆里面砍杀去了,要说关羽张飞赵云在里面砍人单挑一堆我没意见,可是周瑜似乎没有这么猛的哎,而且他拿一个那么短的剑,对方的兵拿着长矛,直接捅了他就歇菜了。美洲狼被人干了一箭,最终他拿着魏军的旗子奋力拼杀,这个时候我联想到下四国军棋的时候,司令扛着对方军旗到处打人……黑社会老大甘海盗也show了一下,不错。

小小胜利的庆功酒,害苦了人民的好皇叔。皇叔被他未来的老婆跟马一样恶搞倒地,鲁肃急忙阻拦,可惜已经晚了,哈哈。瑜亮两人说了一段话,很感慨,他们两个最后终于是要成为敌人的,两个人都不愿意,但是这也由不得自己,大家都在同一个棋局中,每个人都是棋子。

总的来说,这个片子非常值得看,有关三国的电影里面,这是我觉得最精彩的一部,场面宏大,陆军跟水军,都多得令人瞠目结舌,打仗的场面血腥刺激,如同身临其境。不要过于在意里面那些看似搞笑的东西,其实这是导演的幽默。另外,仍然是老观点:三国相关的任何东西,女人戏分太多都是很不好的,喧宾夺主。总之这是个好片,没看的赶紧去电影院看。

看完之后,一看手机,若干未接电话,赶紧回电领导,工作相关的若干问题,等等等等,幸好不要去公司。迅速回家,开机,观后感一挥而就,希望大家满意,谢谢支持,下集敬请期待。

July 20

Flex

Flex是个好东西。

我说的是Adobe的那个Flex,不是做词法分析的那个。

其实我接触这个东西4年了,在学校的时候就在搞,觉得它很不错,当时还是1.0,功能也不错了,当时就觉得它的想法很有创意,浏览器里面的东西,表现能力始终是不足的,必须要有一个东西来加强它,这个东西显然必须是平台无关的一个插件,从当时来说,毫无疑问最适合的就是Flash了,它的漂亮的UI,它日趋完善的编程模型,它的跨平台,多浏览器支持,使得简直不用来做这个简直太浪费了。

04年的时候有一个朋友在我一个帖子里面问,为什么微软不打击掉Flash,我当时回答,如果打击的话,应该是搞一个类似的浏览器插件,或者干脆改进IE,包含了Flash的全部功能,而不是依赖现在的脚本,全新增强客户端编程,那Flash日子就难过了,Applet也要挂了。到了今天,Silverlight的2.0正式版本即将问世,拥有了全面抗衡并且超越Flash的能力。

可是Flash的使用方式还是很不适合于业务开发人员,所以很少有人用它来开发应用系统,Flex的出现,改变了这一切。Flex提供了两种应用方式,一种是直接编译成swf文件,类似用直接Flash开发的功能,另外一种是把MXML跟ActionScript文本文件直接部署在服务端,当首次请求的时候再编译成swf文件发送到客户端,类似JSP的首次编译,只是它要把编译结果直接发出去。

Flex里面的控件比较强大,它的树、数据列表、日期、各种布局面板、图形模块等等,而且拥有很完善的数据绑定和远程调用能力(我会在后续文章里面详细叙述这两个特性)。

其实Flash调用服务端是比较方便的,不但能够通过HTTP请求,还可以使用Socket进行连接,这个常常被用来作反向推送功能。而常常被人忽视的WebService请求其实是很强大的,比如说有一个asmx,把它的WSDL地址填起来,然后把协议的请求和响应格式都编写到这个Flash里面,就可以很简单地进行远程调用。

使用.net的朋友应该知道WinForm调用WebService有多么简单,只要添加一个代理,然后基本上就可以像本地调用一样请求了,Flash没有这么直接,但是也比较方便了。

呵,其实我还是很倾向微软的平台的,为什么呢,因为他的SilverLight甚至支持在浏览器里面跑C#代码,而且能调用WCF,这实在是太大的诱惑了,而且,C#还支持LINQ等等特性,还支持IronPython和IronRuby,尽管我也不知道这些语言怎么写,但是应该能吸引一堆人的,相比来说,ActionScript,哎,不知道怎么描述它好,熟悉ECMAScript的人还好一些,不熟悉这个的一般很受不了,很特别的语法,不过也有好东西的,比如著名的E4X,对XML有特效哦。

唔,扯到哪里去了,为什么我说话总是跑题?

后续有一些主题,敬请期待。

 
感谢访问!
Please wait...
Sorry, the comment you entered is too long. Please shorten it.
You didn't enter anything. Please try again.
Sorry, we can't add your comment right now. Please try again later.
To add a comment, you need permission from your parent. Ask for permission
Your parent has turned off comments.
Sorry, we can't delete your comment right now. Please try again later.
You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
Complete the security check below to finish leaving your comment.
The characters you type in the security check must match the characters in the picture or audio.
Photo 1 of 30
No list items have been added yet.
No list items have been added yet.