2011年1月27日星期四

光芒的制造

这是刚才下班路照的月亮,就是图片中最高的那个蓝色的光斑:

用一点小技巧就可以认为的控制光芒的方向。第一张是水平方向的,第二张是垂直方向的。当然如果愿意,我还可以做出各个角度的,比如斜向45度之类。

要控制光芒的方向,首先要了解,光芒是什么?
下面是一段Nerdy呓语,非Geek请跳过
** 衍射 **
实际上镜头眩光,是由于镜头边缘或者镜头内部的狭缝造成的衍射造成的衍射光斑。
衍射会发生在狭缝出现的时候,或者边缘。衍射的图样会垂直于狭缝展开。高中物理会讲过如何计算每一级衍射条纹的位置,用上一堆三角函数公式。不过那个只能处理给定宽度的单缝衍射图样。如果狭缝更为复杂就无能为力了。其实对于入射光为平行光,只要对狭缝,或者任意形状的狭缝,取傅立叶变换,就可以得出在焦平面上的衍射图样了。比如圆孔,就得到Airy斑。至于如何做Fourier Transform,就交给计算机,或者问伟大的http://www.wolframalpha.com大神了。
**********

所以,上面两张图,实际上是在镜头表面做出了一组衍射光栅。如果你的镜头足够便宜,比如手机镜头,做一组衍射光栅是非常容易的――只要用手指往一个方向抹一下就可以了。手指抹过的结果,是手指上的汗液油脂以及其他各种代谢产物与镜头表面的灰尘相混合,在抹过的过程中,由于指纹的摩擦,朝一个方向均匀排列。于是形成了细密的灰尘+油脂的纹理。这就是一个衍射光栅。从光学原理可知,其产生的衍射图样方向是垂直与手指抹动方向的。

同理可知。对于汽车的前挡风玻璃,如果没有使用专用的玻璃水或者擦玻璃的刮板来擦拭的话,比如只是临时用抹布蘸水擦一下,也会有相同的效应。如果产生大量水平的光芒,会影响对于前面两辆车的分辨。所以,应该尽可能产生垂直的光芒,那么擦玻璃的方向是――水平擦拭。

我可真够nerd的

Posted via email from goldengrape's posterous

通用短链接,用于解决magnet和ed2k的链接缩短

非常CD和BT中国,又一次倒下了。
其实,网站无所谓是网站,只是一个分享信息的地方,于是只要有分享行为,就无所谓是在这个网站还是那个网站,人们之所以上一个网站,仅仅是因为那里容易找到东西。
所以不论是BT还是电驴还是什么其他的,其实都只不过是在twitter上的一个带着#的tag。

那么,问题就是如何把BT的链接或者电驴的链接缩短,变成一个短链接。只要有一个电驴或者磁力下载的短链接网站,任何p2p的分享网站都将在twitter上复活,甚至由于RT的放大作用,下载速度还将相当的快。

好吧,另外又出现一个问题,就是有中心就可能被封禁。只有完全的P2P才是不可封锁的。也就是说,如果封锁掉一个电驴短链接网站或者磁力下载短链接网站,就跟关掉verycd之类的一样。

再次重述一次问题:需要一个通用的,p2p下载链接的缩短服务。

下面是方案:
设有自有网站a(1).com,其上建立有短链接服务。
比如,要缩短magnet:?xt=urn:btih:R2FTZQGMR55K4D25EKVLF4DWCF4RQK24
调用goo.gl的API
POST https://www.googleapis.com/urlshortener/v1/url
Content-Type: application/json
{"longUrl": "http://magnet:?xt=urn:btih:R2FTZQGMR55K4D25EKVLF4DWCF4RQK24"}
注意,由于goo.gl只能缩短http,所以如果不是一个常规的http链接,而是magnet或者ed2k的链接,则加装一个http://的字符串帽子到前缀。
得到的结果应该是
{
"kind": "urlshortener#url",
"id": "http://goo.gl/eOPo0",
"longUrl": "http://magnet:?xt=urn:btih:R2FTZQGMR55K4D25EKVLF4DWCF4RQK24"
}
于是取出eOPo0,生成a(1).com/eOPo0

展开的过程相反,发现a(1).com/eOPo0的输入,调用goo.gl API
GET https://www.googleapis.com/urlshortener/v1/url?shortUrl=http://goo.gl/eOPo0
得到的结果是
{
"kind": "urlshortener#url",
"id": "http://goo.gl/eOPo0",
"longUrl": "http://magnet:?xt=urn:btih:R2FTZQGMR55K4D25EKVLF4DWCF4RQK24",
"status": "OK"
}
然后,取出longUrl. 发现http://magnet或者http://ed2k时,删除http://,否则不管

运行同一个程序的服务器a(2).com,由于采用同样的算法。所以a(2).com/eOPo0
也仍然会指向或者返回magnet:?xt=urn:btih:R2FTZQGMR55K4D25EKVLF4DWCF4RQK24
换句话说,如果服务器a(1),com由于种种原因无法访问,而知道服务器a(2).com的地址,就可以随时替换链接

有没有GAE的程序员呢?来帮我实现这个吧。

Posted via email from goldengrape's posterous

2011年1月19日星期三

北京挤地铁指南:地铁1号线

选队伍排,最靠边的不follow,因为相对人多50%,以下按顺序unfo:拿行李箱的,背大背包的,带小孩的,老人,外国人,穿细跟高跟鞋的,胖子。首选fo一队背单肩笔记本电脑包的程序员

如果不是站在排队前3位,第一辆车进站不要妄图挤上去,否则即使上了,下站还会被挤下来。首车进站后应利用上下车的混乱时机尽可能抢占排队的第一位。

第二辆列车到来前注意整理好着装背包,保持身体流线型。脚前后站立在黄线后,避免后面的人把你推下去。先下后上是美德与安全,上车后不要妄图扶把手,迅速向两翼穿插,同时做好冲击准备。

关车门前会有首次冲击,注意脚下不要有箱子之类。列车启动时出现第二次冲击,人群会向后倒,回弹时利用此时机迅速穿插进入列车中部。终于安全了。

上车乘车下车时遇到抱怨地铁挤的,喊别挤了的,为毫无经验的挤车者,立刻躲开,他们动作缓慢导致延误上下车,可能与周围的人发生争执,增加不必要的麻烦.

出站时两侧的出站口人会多20%左右,走中间的,当出现中间某一出站口坏,比如一边两个口一边一个口。人群会有判断失误导致两口的人流>2/3,走一个口的。

鉴于1号线的人群密度,一旦出现紧急情况,例如车厢内火灾,基本是必死,也许用如下方法可以逃生:大声命令所有人脱掉大衣扔掉辎重,约可腾出20%空间,然后迅速撤离。

Posted via email from goldengrape's posterous

2011年1月16日星期日

如果把劝酒的语言更换成吃巧克力

如果把劝酒的语言更换成吃巧克力:

@goldengrape: 你看,我都吃了半块巧克力了,你也得吃一半,不然不够哥们。

@C__JUN: 感情深一口一块,感情浅舔一舔。

@ovecakezhang 感情深一口吞,感情浅不给舔;俩人感情这么铁,今天必须啃出血;能啃半斤肯八两这样的同志党培养,能肯八两肯一斤这样的干部党放心…

@Sarladin 感情深一口吞,卡死完事。这真是舍命呸孙子啊。RT @C__JUN 感情深一口一块,感情浅舔一舔。

人类真可笑

Posted via email from goldengrape's posterous