博客

福建南平

1. 就是报复社会,用精神病来当幌子不会增加我的安全感
2. 别以为中国禁枪老百姓就安全了。如果他有一支枪,我觉得他更可能会去市政府
3. 俺们无法独善其身

4. 所以想法让这个世界更好一些吧

Topic: 社会

国新办网络局就谷歌搜索退出中国内地发表谈话

  这位负责人指出,贵国政府在中国运营必须遵守中国宪法。贵国政府违背进入中国市场时作出的书面承诺,这是完全错误的。我们坚决反对将政治问题商业化,并表示不满和愤慨。

  这位负责人说,贵国政府在未事先与中国人民通气的情况下,公开发表声明,不愿在中国运营 “受到中国人民审查的政府”。如果贵国政府自绝于中国人民,那是贵党自己的事情,但必须按照中国法律和国际惯例,负责任地做好有关善后工作。

Topic: 社会

谷歌搜索退出了

www.google.cn 重定向至 www.google.com.hk,随便输入几个敏感词看看下拉框提示,这才是没被审查的结果。虽然继续下去仍然会 reset,但是已经做到该做的了。不过,我对这个 hk 域名还能在大陆存在多久抱有深刻地怀疑。

昨天看到一个小道消息说:北京高官透露,已和微软必应 www.bing.com 达成协议,将取代谷歌。未知真假,拭目以待。

本周流水账

1. 周二送达达去幼儿园的时候,被她同班同学家追尾

2. 周二达达掉了第八颗牙

3. 被王菲暗涌里的钢琴迷住,遂去搜索琴谱——虽然知道自己肯定弹不来。。。结果发现漩涡也是陈辉阳的作品,汗,以前只注意两个"伟文"了。《声音变魔术(陈辉阳钢琴作品集一)》 强烈推荐

4. 周日下午看了十二怒汉。这类密室题材很好,期待啥时候大陆翻拍。理论上可以一个镜头从头跟到尾

5. 小说《嫌疑人x的献身》;之前读过东野圭吾的另一本《白夜行》,还是这本新作好看

6. 看到有人猜测盛大的"锦书"是取清照词的"云中谁寄锦书来",想到这句其实最适合的是EMail。盛大要弄个@jinshu.com邮箱才叫有文学气质呢,哈哈

看WebLeOn童鞋刷屏,倒是有好多不知道的新闻

# 18、刷屏完毕。 3 minutes ago via Seesmic

# 17、李长江、孟学农两人重回两会的新闻不炒作,不推荐。 4 minutes ago via Seesmic

# 16、内蒙古开豪华车的女检察官辞职后官复原职的新闻不报道。 4 minutes ago via Seesmic

# 15、某地看守所囚犯睡觉死的新闻不报道。 4 minutes ago via Seesmic

# 14、邯郸一次提89名干部的新闻不推荐。 4 minutes ago via Seesmic

# 13、两会各地的负面新闻谨慎发布,会造成重大影响的新闻不炒作,不推荐。 4 minutes ago via Seesmic

# 12、13家媒体联合推进户籍制度改革的新闻不炒作,不推荐。 4 minutes ago via Seesmic

# 11、艾未未等艺术家绝食的事件不报道。 4 minutes ago via Seesmic

# 10、两会期间上访的新闻不炒作,不推荐。 5 minutes ago via Seesmic

# 9、两会期间关于北京的重大报道事件不推荐。例如“西单图书大厦物业员工砍死经理”及“顺义4s店事故,一人死亡”的时间不要炒作,不推荐。 5 minutes ago via Seesmic

# 8、海南毒豇豆事件只用新华社、人民日报及海南当地官方媒体的稿件。 5 minutes ago via Seesmic

# 7、优昙婆罗花的相关新闻删除 5 minutes ago via Seesmic

# 6、转载或者发布两会文章时不出现“雷人”、“雷议案”、“雷代表”等字眼,不用雷的概念定义两会的相关内容。 5 minutes ago via Seesmic

# 5、负面信息不上两首要闻区 5 minutes ago via Seesmic

# 4、局长日记的新闻不推荐。新闻中不能出现相关人物图片,或者人肉搜索等涉及个人隐私的内容。 5 minutes ago via Seesmic

# 3、国外评南方周末主编为十大风云人物的新闻不报。 5 minutes ago via Seesmic

# 2、关于社会各界要求官员进行财产通报的新闻不报道。 6 minutes ago via Seesmic

# 本周管理要求: 1、两会关于选举法的新闻只能用新华社和人民日报的稿件。 6 minutes ago via Seesmic

Topic: 社会

IronPython 里某些类型的显式转换


import clr, System
x = clr.Reference[System.UInt64](0)

#创建一个到System.UInt64对象的引用,C的行话是指针

x.Value = 1 * 1

上述代码在最后 x.Value = 1*1 的时候抛了一个类型异常出来..

我就直接在 ipy console 里执行 x.Value = 1 测试

我靠,没有任何错误啊。为啥后面赋值把整数替换成表达式就错呢?我想当然的以为这个是 IronPython 的 bug,差点就去开 Issue 了。后来转念一想,这个 2.0.3 的 ipy 出错,或许 2.6 就 fix 了...

然后发现在 2.6 里更悲剧,x.Value = 1 也直接抛异常..我这才意识到这种赋值操作是有问题的,改成 x.Value = System.UInt64(1*1) 搞定

Topic: 技术

饭否用户数据导出

http://fanfoublog.com/

没什么好说的,只是不理解为什么不像牛博那样把服务器搬国外去。只不过这样的话,基本上也就是个个人网站,想做大就难了。总有一天,你会被再次提起的,希望早点到来吧。

Topic: 网络

关于动态gif的帧速

做了一个小实验,结果预期的目的失败了,倒是额外发现了关于动态gif帧速的一个链接:http://humpy77.deviantart.com/journal/12374968/

如果没耐心读英文,我中文介绍一下:

动态GIF的定义,是弄一组GIF图片,然后指定渲染图片序列的时候,处理下一帧之前 delay 多长时间。这个时间是一个整数n,表示延时 n * 1/100 秒。

理论上我们可以得到非常棒的动画图像,要知道电影也不过每秒24帧而已,但我们从来没有看到过效果很好的动态gif,不是么?

原因在浏览器对这个规范的实现上。所有的浏览器,都不支持 n=0,1的延迟,而且如果把值设成0或1,会得到更糟糕的动画效果!

  1. IE,所有n<6的延迟,统统提高到10 (0.1秒 or 10fps)
  2. Firefox,所有n<2的延迟,统统提高到 10。就是说 n=2 确实可以在firefox上看到很漂亮的动画,可惜IE上会慢得一塌糊涂
  3. Opera,最糟糕,最小是0.1秒
  4. Safari,和Firefox各有利弊,所有n<3的延迟,会提高到3。换句话说你不小心做了一个n=1的图,在其它浏览器下都悲剧了,但在Safari上还凑合
  5. 最后,上面都是2007年的测试,我自己又重新用各个浏览器最新的版本重新测了一下,看n=2以及n=6动画的表现:
    • 对IE 8/Firefox3.6来说,上面表现一样
    • 新版的Opera表现很好,n=2的时候,效果和Firefox一致,赞!没有测是否支持n=1
    • 新版Safari,至少是Windows上的Safari 4吧,比老版本退步了。n小于某个值的时候,会提高到一个更高的值(应该是10)。在我测试里n=6的图片,效果比n=2要好;但不知道现在它支持的最小值是多少,也许仍然是3?n<3的时候n=10?
    • Chrome表现和Safari一样。我猜所有webkit浏览器,应该都一样的

等下周有时间了生成n=1,2,3,4,5,6,10, 再全面测试看看

结论,千万不要用 0/1 来指定 n,这就彻底茶几了;用2/3/4/5?在Firefox和Opera下效果会如你预期;但为了兼容所有浏览器,还是用6吧

Topic: 技术

2:1 主场搞定切尔西

自1965年以来,国际米兰在冠军杯淘汰赛遭遇英超球队时,45年不胜。。。这个和恐韩症有一拼了

180 分钟的工作只进行了一半,等待下回合客场

Topic: 生活

IronPython 的 .NET 线程

IronPython 除了实现 Python 的 threading 接口,也包括了 .NET 线程接口。如果不考虑跨平台移植的话,.NET 的接口应该是更为好用,也更强大些.

IronPython 线程开发最权威同时也是最简洁的介绍,就是 Michael Foord 大神的 http://www.voidspace.org.uk/ironpython/threading.shtml。剩下的就去研究 MSDN 上的 System.Threading 吧

我模拟了一个 start_new_thread 实现如下:

from System.Threading import Thread, ParameterizedThreadStart

def start_new_thread(func, args, kwargs=None):
def thread_func(obj):
f = obj[0]
a = obj[1]
k = obj[2]
if not k:
return f(*a)
else:
return f(*a, **k)
t = Thread(ParameterizedThreadStart(thread_func))
t.Start((func, args, kwargs))
return t

使用 .NET 线程要注意,Thread.Abort() 方法无法中断非托管代码,比如一个阻塞的 socket 调用。线程会一直停留在 AbortRequested 状态下,而不去抛 ThreadAbortException 异常.

Topic: 技术
订阅 RSS - 博客 | BT的花