Windows or *nix?

技术人员总是乐于争论Windows和Unix/Linux的优劣,而且hack程度越高,越是偏向于后者。

其实作为终端用户,我们完全不必偏执。

技术实现不同、历史发展不同、社区文化对立……了解、理解就够了,何必非得分出孰是孰非。

举个例子。微软的Office是最为便捷强大的所见即所得办公软件,而充满Unix文化的各类TeX系统,则一直骄傲于自己对排版的精确控制独一无二。

然而LaTeX的发明者Leslie Lamport 被问到“当前为什么没有(基于TeX的)高质量所见即所得排版系统?”时,回答道:“门槛太高了,一个所见即所得的排版系统要做到 LaTeX 当前的水平,工作量之大不是单枪匹马所能完成的。微软这样的大公司可以做,但是市场太小了。”

在Windows还是*nix上,始终兼容并包,至少有三种好处:

1、作为用户,哪种合适用哪种,有益于自己的工作;

2、作为开发者,认识自己的不足、吸纳对方的优点、分析差距的原因,有助于改进产品,让世界更美好;

3、作为旁观者,没有什么比中立地看两个人辩论更长见识的了。

所以写下这篇日志,防止自己哪天又头脑一热拜倒在Unix/Linux的石榴裙下。

 

写了一个简单的Google Chrome浏览器扩展程序

最近碰到一件头痛的事。我需要下载看雪论坛的一些资料,因此去注册了一个账号。但为了获取认证码,需要一定的论坛积分,新手获取积分的方法有:技术性回帖、长时间在线。很懒的我显然会选择长时间在线,但论坛会检测在线状态,如果长时间没有更换浏览的页面,是不算在线的。

因此琢磨这件枯燥的事有没有别的办法解决。

最开始想到用wget和命令行脚本,尝试之后发现wget无法登陆到论坛(也许是我没找到方法)。具体地说,这个论坛是用post方法把用户名和密码用MD5加密发送到服务器端登陆,之后用cookies保持状态。用socket也许是可以做到的,不过还是觉得麻烦。

然后就想到了Google的Chrome浏览器可以自己开发插件(官方叫法是“扩展程序”)。花了一个下午的时间读文档、写代码和测试,终于搞定了。下面就是详细的介绍。

Continue reading