嗡嗡世界杯创造的商机:过滤Vuvuzela的软件

zerray | 六月 19th, 2010 - 18:17

不得不佩服,国外的geek们敏锐的嗅觉和创意:

来自德国慕尼黑29岁的混音工程师Clemence Schlieweis 发明了一个anti-Vuvuzela filter(vuvuzela过滤器)。他取样了原始Vuvuzela 的声音,根据声波振幅制造出一个完全相反声音,据说把这个声音在比赛时同时播放,便能够过滤掉那恼人的嗡嗡声。

而目前这个东东,以0.99欧元的价格放在网上出售,据说销量还不错。这里可以购买

但英国Salford 大学的声学教授则认为,Clemence 发明的这个东东理论上是可以消除噪音的,但在实践中可能效果并不理想。

From 无厘头世界杯,致富信息:过滤Vuvuzela 软件 / 煎蛋.

简单的到令人发指的perl6

zerray | 六月 18th, 2010 - 18:01

刚在搜erlang实现fibonacci方法的时候,看到wiki上这么一页:http://en.wikibooks.org/wiki/Fibonacci_Number_Program

列举了不同语言实现fibonacci数列计算的方法,每种语言都有各自的表达方式,可到了perl6这,就这么一句:

1,1...&[+]

无语了。。

不过话说perl6这玩意是夭折了吗?我上学那会儿就听说perl6要来了,还帮助翻译过perl6的文档,现在怎么没见有人用呢?

终于能连续跑10圈了

zerray | 六月 15th, 2010 - 22:58

跑了快1个月了,每周都跑3、4次,从一开始的每次5圈到现在的10圈,今天终于能连续的跑完10圈了,而且跑完之后并没有很累的感觉,而是觉得精力充沛,感觉比之前跑到3、4圈时的感觉还好

原因主要是今天改变了跑法,速度跟之前差不多,但步频加快了很多,基本在180步/分钟,之前跑时总感觉腿酸抬不起来的感觉,今天没有了,之前跑完十圈中间都要至少走1~2次,今天连续的跑完并且还觉得比较轻松。这些都得感谢今天在水木上看到的一个关于慢跑的帖子,摘录如下:

跑步的速度由步幅和步频来决定。慢跑比起快跑,步幅肯定要小,这个大家自然都能理解,可是步频呢?一般人慢跑时候的步频要比快跑低的很多!你可以试试数数 看,估计在150-160 步/分钟左右。步频慢有什么不好呢?步频慢说明身体腾空的时间长,从普通物理来说,说明身体在垂直方向的移动较大,那么落地时 对身体的冲击自然就大了,受伤的可能性也自然就大。还有,步频慢容易导致 overstride,也是导致跑步受伤的一个重要因素。

那么,步频需要多快才好呢?这里没有严格的准则,只是一个大概范围吧,180步/分钟。如果你试试,就会发现,这个步频太快了!如果你跑个 1500 比 赛,达到这个步频应该没问题。可是,在慢跑的时候,这个步频对一般人来说,实在太快了!因为大脑对慢跑的理解就是“慢”跑,步频“慢”就对了,呵呵。个人 认为应该把慢跑理解为速度上的慢,而不是动作上的慢,就是说,保持一定的步频180,缩短步幅来减慢速度。这么做的好处自然就是:减少受伤的可能性!

接下来,打算逐渐增加距离了,hoho

shell脚本中管道重定向read的问题

zerray | 六月 12th, 2010 - 15:19

同学问了这样一个问题:

#! /bin/bash

declare -a lines
i=0
cat /proc/net/netstat | while read line
do
    lines[$i]=${line}
    i=$((i+1))
done

echo ${lines[0]}

最终了输出结果${lines[0]}是空
试了一下果然如此
经过一番尝试,发现是使用了管道的问题,改为

#! /bin/bash

declare -a lines
i=0
while read line
do
    lines[$i]=${line}
    i=$((i+1))
done < /proc/net/netstat

echo ${lines[0]}

就没问题了
同样,如果管道前的cat换成ls、echo等,也会有相同问题
似乎是使用了管道后,变量的作用域发生了改变

关于这点在《高级bash脚本编程指南》上找到了相关提示

echo的输出通过管道传 递给read命 令可能会产生不可预料的结果. 在这种情况下, read命令的行为就好像它在子shell中运行一样. 可以使用set命 令来代替(就好像例子 11-17一样).

不过也没解释为什么,feature or bug?

新科技:用手势代替设备

zerray | 六月 11th, 2010 - 15:47

看来钢铁侠里的场景将要实现了,到时程序员们再也不用担心因为久坐引起颈椎病啥的了,跳着舞就把项目做好了,哇哈哈

在空中画几个数字就能表示在拨打电话,或者在空气中点几下就表示在打键盘,这么神奇的东东,你信吗?

德国的研究人员近日展示了他们正在开发中的移动设备,一个小巧的佩戴在胸部的一个手势监测器。它可以记录你挥舞出的各种手势,并将其转换成对应的命 令执行。它将实现的功能,就如上面所描述的那样,在该设备完善之后将变得无比神奇。

来自德国Potsdam 大学的研究人员说“我们能想到这种设备能带来新的输入方式,替换掉现有的那些”。

From 新科技:用手势代 替设备 / 煎蛋.

这个发明不错

zerray | 六月 7th, 2010 - 17:55

1951年,潜望眼镜。用于躺着看书。

From组图,旧时代的超未来发明:大轮车、漂浮器等等 / 煎蛋.

btw,图片上的aids啥意思?艾滋?

sqlite3中show tables的实现

zerray | 六月 3rd, 2010 - 17:16

sqlite3 中每个 SQLite 数据库有一个 SQLITE_MASTER 表,用来存储所有表信息;

SQLITE_MASTER 表结构如下:

CREATE TABLE sqlite_master (
    type TEXT,
    name TEXT,
    tbl_name TEXT,
    rootpage INTEGER,
    sql TEXT
);

使用查询命令:

SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;

就可以实现show tables的功能了

已成往事。。。

zerray | 六月 3rd, 2010 - 16:00

突然发现自己的firefox扩展里,说明文字很有趣

python中类的静态成员函数和变量

zerray | 六月 2nd, 2010 - 17:25

类似C++中的:

class A {
    static int var;
    static int func(void);
}

在python中如何实现呢?
研究了下,静态函数可以这样:

class A():
    # non-static method
    def func1(self):
        pass

    # static method
    @staticmethod
    def func2():
        pass

但静态变量就麻烦些了,需要用classmethod来间接实现,如:

class A():

    last = -1

    @classmethod
    def last_argument(cls, n):
        temp = cls.last
        cls.last = n
        return temp

A.last_argument(1)
A.last_argument(17)

决定了

zerray | 五月 28th, 2010 - 16:08

从今开始,要养成跑步的习惯,每周至少3次,立此为据