宽带升级光纤

一直以为住的小区很土,没有光纤,最近意外接到电信电话,说是要升级了,2M变4M不用加钱。升!

家里的光纤出口在外间屋,二奶机在里间,整个挪出来工程太大,而且没地方放,小P随时可能把二奶机砸坏。同事推荐买了电力猫,285,小贵。

晚上回家折腾,问题开始冒出来了。

  1. 两个电力猫始终无法互联。google了半天,才发现是pair那个按钮按的时间太长了。应该按5秒钟的样子就松开,这样电源灯闪烁并开始配对。说明书些得太烂了。可能光盘上的好一些,可是是小盘,还得把外置光驱拿出来,麻烦。
  2. 光猫没有管理员权限,默认只给了useradmin。同事说可以找安装的小工要,开始装的时候我不在家,后来打电话过去,关机了,估计下班之后就不接电话了。还是求助于万能的google,发现我这个光猫的型号太容易找出密码了。这个也很快搞定。
  3. 如何把光猫变成纯粹的拨号器。其实倒不复杂,只是不确定之前adsl的用户名密码现在还能不能用,网上有人说是一样的,有人说是不一样的,纠结。最后痛下决心,删除已有的配置,改成桥接模式,在路由器上拨号。还好,密码没变,成功了。
  4. 之前还尝试过DMZ,不过没搞定,更可怕的是光猫上红灯亮起,告警!别这么寸,刚装好就搞坏了。算了,放弃。

没有IPTV的需求,也没有VoIP的需求,剩下那两个连接就留在那里吧。还有一个问题,远程管理不知道怎么关掉,也不知道能不能关掉,万一哪天电信抽风连上来把我的配置删了就完蛋了。如果光猫被打上patch,拿不到管理员密码就更麻烦了。

对于cheater-node的总结——underscore篇

javascript确确实实是一个functional的语言,但问题是它本身并没有提供什么方便使用的库。不过还好我们有社区,有无数英雄们默默无闻地做贡献(眼泪花花儿的)。

介绍一下underscore。点过去看看就知道了,亲切得很。

安装很简单,直接npm就行了。不知道npm是什么的,或者google,或者参考这里

虽然那里有无数的例子,但这里还是给一个吧:

1
2
3
4
5
6
7
8
9
10
11
12
13
var loginInfo = function () {
    var info = [
        ['tz_offset', '480'],
        ['username', 'xxx'],
        ['password', 'yyy'],
        ['realm', 'Zoning']
    ];
    var _ = require('underscore');
 
    return _(info).map(function (item) {
        return item[0] + '=' + item[1];
    }).join('&');
};

“_(info)”返回一个对象,包含一个名叫_wrapped的property。

> var _ = require('underscore');
> var w = _([1, 2, 3]);
> w
{ _wrapped: [ 1, 2, 3 ] }

有了这个东西之后一切都变得美好了,跟所有functional的用法一样,点啊点得就干了很多事儿。不过需要注意的是_(info).map()之后返回的东西就是一个数组了。嗯,不太好……

这个问题人家早就考虑过了:

1
2
3
4
5
6
7
8
9
10
11
12
13
var loginInfo = function () {
    var info = [
        ['tz_offset', '480'],
        ['username', 'xxx'],
        ['password', 'yyy'],
        ['realm', 'Zoning']
    ];
    var _ = require('underscore');
 
    return _(info).chain().map(function (item) {
        return item[0] + '=' + item[1];
    }).join('&').value();
};

先chain一下,玩儿完之后再value一把。这回爽了吧?

顺便说一下,functional这么好的东西为什么会有人跳出来反对呢?

再多废一句话啊。如果你在node的交互式终端里面使用“_”,你会发现诡异的问题,原因是这个终端默认使用“_”表示上一个命令的返回值。

还是抓不着?

??

最近都没时间更新

就忙着调性能了……

用iPhone上的Skype打国内电话

终于在iPhone的Skype打通电话了。网上有一些地方讲怎么打,但是貌似现在不行了,需要这样:

手机号码前面加拨: +99008668033+0+手机号码
座机号码前面加拨:+99008668033+区号(不要去0)+电话号码
如示例:
拨打手机方式: +99008668033013148888888
拨打座机方式: +9900866803301099999999

最前面的+,原来是00,不知道tom又改什么东西了。不过这样是可以打通的。电脑上用非tom版的Skype也是这样拨号。

以上针对使用国内卡的用户。

本来想转载我老婆的一篇文章的

无奈QQ空间土得要死,必须登录才能看到,即使是公开的。

上海市政府的脑子坏掉了

好像最近出台了一个新的政策:符合一定条件的人可以提取公积金来缴纳房租。http://xwcb.eastday.com/c/20090704/u1a595391.html

我很激动,以为重见天日了,仔细看了一下,结果又是政府忽悠我们的伎俩。

恐怕对于大多数被政府定义为白领的人都只可能符合第三种条件,但是我们到哪里弄发票去?找房东要?脑子让门挤了吧?房东去哪里弄?如果要他每个月花上一天时间去和政府部门打交道,买发票,你认为他会干吗?老子不租给你了,想租的人多得是。再说,即使有这么穷极无聊的房东愿意干,买发票的钱不还得我们出?结果怎么样,还不是负担更重了?

伟大的政府工作人员啊,麻烦你们抽空用脑子思考一下,别老是拿屁股想事情。别动不动就出台,咱也不能这么贱吧?

看着google的pagerank

心里实在是难受啊,一直都是0,感觉像是哪里坏了。

受不了那些该死的spam了

wiki被整了很久了,每次都要花上好长时间清理垃圾。试了试MoinMoin里的TextCha,还行,应该可以挡住不少了。

我怀疑

这个世界上还有网络银行做得能比中国银行烂吗?

我就是想交个电费,点了十几二十次,选来选去,每次还都只有一个选项,这还不说,还要用一个什么破动态口令牌,这简直就是脑子让门给挤了,挤得稀巴烂。