重做USACO

cow1 USACO是“USA Computing Olympiad”的缩写,是为美国中学生而设立的信息学奥林匹克训练网站。对我们中国OIer们来说呢,USACO里有一套训练题库。不仅如此,这套训练题库还带有评测系统,当你做完一道题后,系统有测试数据来做黑箱测试,对我们的训练更有帮助。只不过整套题库都是英文的,我们当时还需要金山词霸来阅读它们。

当年,我和其它同学一样,做着USACO。做出的题目也着实不少,让人很有成就感。这几天为了将来的学业做准备,决定再熟悉一下C语言。因为我参加信息学奥林匹克竞赛时使用的是Pascal语言,虽然自学过C语言,但因为没有多少实践,对C语言确实是一知半解。这次我想到了USACO,通过做这些题目,应该是足以磨练自己的C语言水平了。

刚才我完成了第一道题。题目本身很简单,我也记得题意与做法,只是我还不太熟悉C语言的一些“陷阱”。说老实话,这道题我做了有几天了。刚才发现我弄错了一个细节,把乘法弄成了加法,真令人惭愧啊。虽然是第二次,加上是一道最简单的题,当我看到通过的页面后也非常高兴。回想起当时我做这道题时,花了足足一个星期。在那个周末放学时路上向同学描述这道题的时候,心中突然有所领悟,结果那个周末就把它通过了。当然,那时的兴奋劲就远非这次可比了。

令人怀念的FreePascal

自从告别了信息学奥林匹克以来,我几乎没有用到Pascal语言了。现在想想,它对我影响颇深,使我受益匪浅。这么一来,过去不离手的“家伙”也都生疏了,以至于我今天看到了FreePascal的主页竟然感到比较震惊。

今天到网上下载Dev-C++,结果看到了下面的Dev-Pas就想起了过去用的FreePascal来。那时候官方竞赛的Pascal语言工具一是Borland公司的Turbo Pascal,再就是FreePascal了。因为Turbo Pascal是Borland公司Pascal语言系列的入门版本,功能稍弱,没有保护模式,不能使用640K以上的内存;而高级版Borland Pascal又是商业软件,而且年代较为久远,几乎找不到了。FreePascal是一款开源软件,网上对它的开发一直很活跃。因为FreePascal比较“年轻”,因此它的的功能也比较强大,远非16位的Borland公司早前产品可比。于是FreePascal一直是我们OIer们的随身“家伙”。

另外,FreePascal支持多种平台,不像Borland/Turbo Pascal一样限制在DOS/Windows平台,也是我比较喜欢的一个功能。我有一阵子捣鼓FreeBSD操作系统,同样在上面使用FreePascal来做题,十分方便。

到我用的时候,虽然没有一个图形化的IDE,但FreePascal的功能与当时的Delphi相比已经不遑多让了。

说起来,我曾经从网络上找到过Borland Pascal的大约13张安装盘,下载下来安装过。不过除了可以使用保护模式外,它的其它模块包我们也不熟悉,而且它也比FreePascal落后,我当时只是拿来尝鲜,并未久用,感情也远不如FreePascal深。

今天,忽然决定上FreePascal的网站上看看。时隔这么多年,我居然也没有输错。不过弹出来的页面倒令我有些惊叹–怎么首页成了中文了?仔细一研究,发现不但页面变漂亮了,而且已经被人汉化了。想来这几年来使用FreePascal编程的中国人又多了吧。回想当年的页面,似乎是蓝色的标题栏加上一个朴素的页面、纯英文显示。现在的页面,更显优雅。

FreePascal目前的版本是2.0.4,至于当年我用的是什么版本,现在居然完全记不起来了。总之,有越来越多的人使用FreePascal是一件好事,好使这个软件可以发扬光大。

UNIX并非Windows

Google果然不同凡响,自从今天推出Linux版本的Google桌面搜索后,我订阅的几大blog争相撰文报道。就我读的几篇文章里,无一例外的说道了Google桌面搜索 for Linux的好处,然后点出一点点不足–没有widget。然而,我对这款软件的感觉并非如此。

首先说一句,Google桌面搜索是我在Windows XP上必装的一个软件,因为Windows本来并无这个功能,有了它一切都很方便。我用的最多的,就是两下Ctrl键,然后输入程序的几个字母来启动一个应用程序。

但是,Google桌面搜索在Windows下的优秀,是建立在Windows本身功能的相对弱小上的。Windows XP本身没有桌面搜索功能,因此Google占了便宜。可当Windows Vista里有了桌面搜索后,Google就只能通过法律途径来扩充自己的业务了。

相同的东西,到了UNIX平台未必就能得到一样的结果。UNIX平台下面,已经有了很多的桌面搜索工具,其中Beagle算是最著名的一款。Google桌面搜索的功能,与这些软件大致类似。况且,Beagle是一款开放源代码的软件,相对与Google桌面搜索,Beagle在UNIX用户中有着更高的威望。这就给Google桌面搜索的推广带来了一定的困难。

我不知道Google桌面搜索 for Mac OS X的使用效果如何,不过我猜测不会有人愿意使用。因为Mac OS X的SpotLight太强大了。不仅做到了无处不在的搜索,而且因为与系统结合紧密,它可以方便的让我们建立“智能文件夹”。只要我们给一个文件夹设定了条件,所有符合这个条件的文件就会动态的出现在这个文件夹里。这个功能似乎任何第三方桌面搜索软件都没有实现,应该就是无法做到与系统紧密结合的缘故吧。不管怎样,Google桌面搜索 for Mac OS X不会如for Windows版那么流行。

因此,如果Google桌面搜索想在UNIX上面流行,必须把软件做的更好。现在这种情况,虽然我对Google一向有好感,但我并不打算试用它。

而且我不理解为什么桌面搜索一定要有widget。Linux版的Google桌面搜索不带widget,被不止一个blog提到过,而且希望可以在下一个版本添加上。花儿开了甚至说“没有了widget相当于将桌面搜索削减掉一半”。我个人认为widget纯粹是中看不中用的东西,对UNIX用户尤其如此。而且,本来不算大的屏幕被占去了约五分之一的大小,也是比较让人不爽的。况且widget上的内容,我们基本上通过浏览器这种瘦客户端就可以搞定了,根本没有必要耗费系统资源在胖客户端里面获得。反正在Windows下我是从来不打开Google桌面搜索的。

总之,我认为Google不应当简单的把在Windows下获得成功的软件移植到UNIX系统上,毕竟两者的差别太大,无论技术上还是文化上。发动智慧,开发发挥UNIX系统效能的软件才能有更长的路可走。

国内门户网站的blog系统让人呕吐

几天前表妹来我家玩,期间她用家里的电话线上网更新她在新浪上的blog,我在经历了这件事情后,有了以上的感慨,并且越来越讨厌非专业的blog系统(指的是Movable Type和一众开源的之外的blog系统)了。

刚开始时表妹听说我也在建立自己的blog,就说有一些关于blog的问题要请教我。我当时就答应了,心想虽然我不是太专业,但在用WordPress搭建了一个blog后,对blog的原理和使用也略知一二,帮她是不成问题了。不料我错了。

等我知道她的blog放在新浪上时,我就预感有些不妙。看到她的blog半天都无法载入我就着急,因为我家用电话线上网,下载速度最高5K/s,所以我喜欢的页面都属于清爽型的。而一个对计算机所知甚少的小女生,这个年头又花的很,页面载入速度自然慢了。

因为她这个blog建立不久,文章数目还处于个位数水平,于是便有意无意的说新浪blog的坏话,希望可以“勾引”她放弃这个blog,尝试一个够专业的。当时我的目标是Yo2,用WordPress搭建,而且二级域名完全免费,用起来既方便、又清爽,还不失专业,多好!不料那表妹不知中了什么邪,就认准了新浪。我估计是因为她有不少同学在新浪上建博,这种榜样的力量是绝对强悍的。

既然这样不行,那就硬上呗。表妹说想让相册可以在侧栏显示,我找了一圈发现是因为新浪的blog系统升级,要求客户浏览器必须安装最新的Flash Player,也就是说我这里也要升级。由于我这里下载速度慢,我没敢升,就找个托词把表妹糊弄过去,告诉她到了别的计算机上就好了。不过新浪也邪,过去用老的Flash Player相册也显示的好好的,系统那里升了个级,就得逼着用户跟着升级。YouTube用的也是Flash技术,人家怎么就好好的了?人家就不升级了吗?

接着,表妹找出了一个同样是建在新浪的blog,让我帮她也做一个类似的效果。我看了看那个blog,算是比较华丽吧,动画背景加上一些特效,搞得比较炫。首先是把背景图换了。我本来以为新浪这么“傻瓜”的blog系统做这点小事应当是很容易的,就到了后台去找相应的设置。找了一个遍,居然没有。无奈下上网去搜索,得知要修改背景图,得先新建一个自定义的widget,再修改widget的代码,间接的给页面加上背景。我一听大为奇怪:WordPress里面也用不着这么麻烦啊。搞了一通,终于成功了。好在表妹没有继续要求我做什么“高深”的事,因为该背景要添加代码,她就“识趣的”知难而退了。

之前我就曾经写过文章,说搜狐的blog系统太弱,今天又是新浪。从那时我就不明白,与其下那么大功夫自己做一个blog系统,门户网站们直接使用WordPress之类的专业blog多好呢?这些所谓的blog系统,既难用,功能又弱,还与真正的专业blog不兼容。实在不知道有什么用。

而这些披着华丽外衣的blog系统,带给我们的是“弱智”的使用者。我见过许多用户,光把心思花在美化页面上,却疏于写自己的文字,我表妹就是其中的一个。他们把blog完全当做了自己的私人日记或后花园,可以说写blog纯粹为了自我满足。结果做的页面既无用又慢,她还要在首页上加入mp3播放!看着她既兴致勃勃有固执的表情,我也没敢给他看我的那篇《好的blog阅读习惯》,也没有告诉她许多人使用阅读器来读blog,这些所谓的美化到时候全部会被脱掉。既然blog是用来自我满足的,别人怎么看,她怎会听得进去呢?

计算机越来越“傻瓜”,到底是好还是坏呢?我感觉一个拥有自己的电子邮箱之前就有了QQ号的网民,是比较不正常的。这帮人写blog,出来的基本上都是废话吧。

棍棒下面出孝子

今天在回家的公交车上看到了让我难过的一幕。一位中年男子抱着一个大约有两岁的小孩上了车,坐下后小孩嘴里尖声嘟囔着什么。开始时我以为小孩不想被抱着,要自己走路。这是好事啊,于是我有些想笑,小孩子学走路多可爱啊。后来仔细一听,小孩子在嘟囔“不坐这辆车回家”,似乎是搞错了方向吧。那位像是他爷爷的男子给小孩解释。岂止小孩不听,反而一个劲的嘟囔同一句话。

弄了半天,那位爷爷和我才弄明白原来小孩子要“打的”回家。然后无论那位爷爷怎么说,小孩还是那一句话,并且有“暴走”的倾向。我可以想想到那位爷爷的尴尬。规劝无效后,那位爷爷无奈的说:“带了个败家子出来。”真是让人叹息,想我小时候能走一站就不坐5角钱的公交,这孩子真让人厌恶啊。

我在那爷孙前面下车,不知道事情的结果如何——是爷爷让步,下车打一辆的呢,还是孙子闹够了就消停了。

说实在的,对我这种讨厌吵闹的人,最讨厌听到小孩或女人的“哼唧”声。当时我都有了上去揍那小孩一顿的心。亏了不是我带那孩子,否则我绝对会出手的。我也是由此推测那男子是小孩的爷爷而非父亲,正常父亲的话,怎么能够容忍孩子这么无理取闹呢?

忽然我想起了在新东方托福作文课上听老师杜昶旭讲他小时候父亲如何教他写作文时提起过,他父亲对教育子女的观点就是“孩子要打”。经过杜昶旭一解释,确实有道理:小孩子(除了某些特殊的“神童”)根本无法听进去大人的道理,所以你跟他们说什么都不管用,这个时候就要让孩子形成条件反射,当他做错事的时候一顿暴打,下次孩子就会知道再做同样的事下场会很不爽,这样慢慢就把孩子教育好了。

我觉得这种方法对学龄前孩子都适用。

用标准数字键盘写blog真痛苦

这几天妹妹从烟台过来了,成天占用电脑,搞得我没有时间更新blog。好在现在有了手机,可以上网,我便试了一下子在Opera mobile上直接登录控制台来写blog。上一篇文章的前半部分就是这样输入的。

为什么不一次性的把文章输完呢?因为我发现用手机上的数字键盘来写文章实在是太痛苦了。首先是我之前没怎么用过手机,无论对数字键盘的键位还是手机上的输入发都不熟悉。而且手机上的输入法不带有词组功能,原有的联想功能太弱了。其次我本身用“谷歌拼音输入法”在计算机上打字还是很快的,同学都比较佩服我的输入速度。这样一来,输入速度带来的挫折感就更明显了。从那篇文章中每一段的字数就可以看出来:前一块每段字数明显少于后面几段的。结果输入了一半,我实在是受不了了,选择了保存,等着以后再继续。

今天上来一看,本来在手机上那么短的滚动条,在计算机上看来却相当长,这就是我忙了半小时的结果。真是不堪!于是我决心,除非用有QWERTY键盘的手机,我决不在从手机上写blog了。

第一次花钱注册软件

有了手机后,我一直在上面捣鼓安装软件来扩展功能。手机上网是肯定少不了的,很久前就耳闻Opera的大名,于是我去它的官方网站去看看。

然后我发现手机可用的版本有两个,一是Opera mini,二是Opera mobile。mini算是mobile的简化版,而mobile要收24美元注册费,否则只能免费试用30天。

我从论坛上得知可以通过修改系统文件来无限期的延长mobile的试用时间,或者用算号器算出注册码。

我一看挺麻烦,干脆装了mini。不料我因为询问ZH关于智能手机软件的问题,他用邮件给我发了一个包,把他手机上用的软件都传了过来,其中就有Opera mobile,而且还带有破解方法。既然这样,试试无妨。于是我便安装,依照步骤去做,结果每次启动时依然提醒我注册,只是30天后我依然可以继续使用而已。

这个时候我知道了mobile版的种种好处,就不再想用mini了。这样我就有了要注册这个Opera mobile的想法。30天后无法使用是一方面,还有就是Opera这个公司的口碑一直不错,我也很欣赏它。再有就是注册费用为24美元,相比起制作这么一个浏览器而言,我并不觉得很冤枉。

但那时我还是没有下定决心,因为之前的日子里我没有花钱注册一个软件的经历。于是我上网搜索一下注册机,结果让我找到一个。我把它下载下来,可机器里的卡巴斯基一直提示有病毒。尽管我选择了跳过,下载下来的文件依然无法使用。没办法,看来只得注册了。

既然要注册,那么就干脆下载个最新的版本吧。ZH给我的那个是8.0版的,官方网站上已经有了8.65版,于是我把它下载下来安装上了。注册过程到很简单,把个人信息输入后,在接下来的页面中告诉系统信用卡号就可以了。我是将近中午12点时提交信息的,当时收到了两封中间机构BMT Micro的邮件,然后大概到了晚上9点我收到了Opera告诉我的注册码。把它输入软件,注册就完成了。

这是我有生以来第一次花钱注册软件,感觉倒是比较平静的。然而我相信如果我更加仔细的寻找,应该是可以找到注册码的;况且直接用Opera mini也可以浏览网页,不行的话我可以用它。因此我身边一定有人认为我傻,放着破解软件不用,要花钱注册。前几天在QQ上和Dr.Quest也讨论过软件破解的道德问题。

确实有些人有了盗版就不再用正版了。对我来说,这也确实在某方面成立。不过确实有一些伟大的公司的伟大产品我心甘情愿去注册,Opera就是这么一个公司,Opera mobile就是这样一款软件。虽然它确实有一些毛病,比如有时会让我的E50重启之类的。但这个公司的文化确实是我赞赏,我也确实希望可以为它的发展做一点贡献。

因为,人必定要花钱注册一款软件吧。要么这么多年的网就别上了。

拥有了第一个手机

nokia-e50

今天买了一款Nokia E50,是我“有生以来”用的第一个手机。

细说起来我看上这款手机已经很久了,它外表朴实、毫不张扬;使用S60系统,支援Python编程等等好处,让我心动不已,而且价格还算合理,我在今天毫不犹豫的选择了它。

之前我曾感觉它的外形有些丑,后来看到了ZH买了这款手机,拿在手里颇为惊艳,别打消了这个念头。

对一个从未使用过自己的手机的人,有了它有些许的不习惯。我到现在还没记住我的号码呢!

Google Toolbar下岗

昨天我把Google Toolbar删除了。

自从我第一次把Google Toolbar安装到了firefox上,Google Toolbar一直是我使用firefox的必装插件。期间因为使用了上面自带的bookmark功能,我基本上把一直使用的del.icio.us给停用了。期间我安装过del.icio.us的firefox插件,但因为每次添加书签要登录,我就把它放弃了。Google Bookmarks就不一样了,因为我每次上网的第一件事就是去Gmail里检查邮件,在这个时候就自动登录了Google Account。

最近几天因为对Wordpress的深入接触,我对del.icio.us、Flickr等工具有了更深的了解。后来仔细想了一想,除了书签功能,我似乎并没有使用什么Google Toolbar上的独有功能。一开始我把firefox自带的搜索框给屏蔽了,后来发现按Alt+D后再按Tab键就能切换到Google Toolbar上的搜索框,这真是太方便了!我一直以为这个功能是Google Toolbar提供的,却不知道原来在firefox里默认就是如此。这样的话,加上del.icio.us插件的firefox也确实不再需要Google Toolbar了。

其实这个Google Toolbar带给我们的不只是放弃了del.icio.us而改用Google Bookmarks,我还因为它放弃了flickr而使用了Picasaweb。现在想来确实没有必要与自己过不去,放弃全球第一而使用不算如流的另一项服务。于是我狠心把Google Toolbar给禁用了,希望借此摆脱对Google的迷信。

现在我发现,没有了Google Toolbar,我并没有感到有什么不方便的地方,反而firefox的浏览空间更大了。

文化游戏《云》与《流》

《流》的图标。
《流》的图标。
昨天所有的考试已经结束,同学们只等着回家呢。两年里同学的感情凝聚成了一桌桌饭局,大家一一赴宴。我嫌乱,就一个人在屋子里面翻看老杂志。其中有一本不知何年何月的《三联生活周刊》,我从中看到了一大篇关于独立游戏开发的文章,并在里面知道了《云(cloud)》与《流(flOw)》这两个游戏以及他们的作者陈星汉。

文章里对《云》给了相当大的评价,它是陈星汉的成名作。因为人们沉迷于目前各个游戏里的疯狂,本着希望人们花两三分钟停下来静心思考的想法,陈星汉开发了这个游戏。游戏中的你是一个生病的小男孩,在云彩上飘来飘去,与云彩为伴,并可以把云彩做成各种各样的形状。后面有网友说他玩这款游戏的时候感动的哭了,看到这里,尽管我对游戏不是很感兴趣,仍不禁对它产生了莫名其妙的向往。

至于《流》呢,就像是水中的《贪吃蛇》游戏,你用鼠标控制一条“鞭节虫”,在海洋里吞吃各种生物以完成进化。游戏中不光有你的“鞭节虫”,还有其它“鞭节虫”和类似与乌贼一样的会攻击你的生物。配合上动听的背景音乐,你会乐的忘了时间。

从Google上搜索,我马上找到了陈星汉的官方网页,并找到了这两款游戏。它们都可以免费下载,不过《云》足有近40兆,我便只试玩了一下8兆的《流》。《流》是一款用flash做出来的游戏,本身十分简单,让我惊叹的是它的创意。这时一种难以言传的感觉,要想感知它,唯有身临其境!

这类游戏显然更加适合这种人玩:爱好文史哲、崇尚神秘并仍保有儿时的理想的人。虽然游戏不分等级,但这种游戏明显比那些打打杀杀的游戏多了一份优雅,称之为“文化游戏”并不为过。

似乎是一种必然,现在的游戏都越来越复杂。老掉牙的“红警”已经超越我的理解、承受范围了,今日的“魔兽”更让我头疼。似乎很少有人真正在做一些简单的却可以给我们带来乐趣的游戏了。

《云》和《流》似乎都已经非常成熟,我看到网页上说的最后更新是去年。以今日的标准来算,这算是老游戏了吧。但我知道依旧有很多人并未听说过这两款游戏,因为他们的耳朵都被“魔兽”等一些大型流行游戏而堵塞了。因此,我写这篇文章,希望读到的人尝试一下,也重温一下儿时的梦。