Browse all articles in history

TinyTui2:带有降噪功能的Twitter客户端

| 8 comments 2010-03-02 17:53:22

去年春天的时候我写过一篇名为“一个更好的Twitter客户端”的文章,里面提到了使用贝叶斯算法来对tweets的内容进行过滤,把自己不喜欢的内容删除掉,这样可以解决信息过载的问题。

庄表伟对这个事情也很感兴趣。他本来写了一个名为TinyTui的Twitter客户端的,于是我们经过简单的讨论,决定就在TinyTui的基础上,融入降噪的功能,并将这个客户端命名为TinyTui2,简称TT2。

系统需求

TT2使用PHP+MySQL编写,使用了CURL库,服务器只要支持这3个条件就能用。

降噪算法

这是TT2的重头,目前主要从三方面入手:

  1. 内容过滤。按照内容对tweets进行过滤,使用贝叶斯算法

  2. 行为过滤。按照行为规则过滤,比如过滤掉我深恶痛绝的“用RT聊天”的行为。目前没有想好用什么算法,@tinyfool和@virushuo推荐了“隐马尔可夫模型(Hidden Markov model)”“协同过滤(Collaborative filtering)”,不过这两个坑都太深了,庄老师和我都还只是站在坑边上往下看了看,没敢跳。此外,我觉得算法可以有很多种,但每种算法要单独写到一个过滤器里面,然后用户加载不同的过滤器满足自己的需求(类似LT的VisitorSense);

  3. 好友过滤。简单地说,就是给每个你follow的人以不同的权重。

这三个方面经过计算后分别得到一个0到1之间的值,然后按照某种公式把这三个值汇总,得到一个总分,最后比较这个总分和事先设定好的阙值,就可以决定某条tweet是否应该显示或者被过滤掉。

其它功能

除了降噪以外,TT2还集成了一些其它的特色功能,比如它内建了一个简单的网页代理,可以让你直接查看那些被墙的网页(典型如短网址)。

项目地址

项目托管在Google Code上:http://code.google.com/p/tinytui2/。要注意的是,提供下载的0.1-0.4版是我参与之前的版本,没有降噪功能,最新的代码请从SVN中获取。

代码完全是“quick and dirty”风格的,我们都是实用派。

使用Win32 Networking R2 Patch来使PearPC支持网络

| 1 comments 2010-02-23 18:27:36

  1. 下载OpenVPN Installer v2.0并运行它,此版的OpenVPN只支持安装了SP2的Windows XP。在安装的过程中除了TAP-WIN32 driver外其余的都不选;
  2. 到控制面板-〉网络连接中,右键单击你的Internet连接(不是新的TAP DRIVER),激活Internet连接共享(ICS)。不要担心没有连接网络电缆的提示,当你运行PearPC时它就会显示网络接通了;
  3. 修改PearPC配置文件,确保pci_rtl8139_installed = 1,以及pci_rtl8139_mac = "de:ad:ca:fe:12:34";
  4. 启动PearPC,进入OS X后点击苹果菜单-〉系统预置-〉网络,此时应该弹出一个对话框说检测到网卡,不要理会它,点“现在应用”,网卡应该出现在列表中了。点击“显示”下拉菜单,选择“PCI Ethernet Slot pci10ex,8139, Port 4”。DHCP应该好用了;
    手动配置IP4,将IP设为192.168.0.200,子网掩码255.255.255.0,路由192.168.0.1,接着输入一个可用的DNS服务器IP,如果不知道的话就用你ISP的DNS;
  5. 点击“现在应用”,现在你就可以上网冲浪了!

相关文件下载:

原文网址:http://www.kelley.ca/pearpc/

 

后记:这篇文章原本是我于2004年6月21日译出,并发在由我创建并维护的“PearPC中文站”上的。时隔近6年后再次整理发出,是因为收到一封读者来信,咨询我如何设置PearPC使其上网。

2010春节杂记

| 6 comments 2010-02-22 23:15:24

除了吃吃睡睡探访亲友,春节期间最重要的事情,就是在长春家中整理旧物。这一次整理,正经翻出了不少好玩的东西,比如下面这几样:

西部数据鱼子酱硬盘,容量1624.6MB(yfrog

西部数据鱼子酱硬盘,容量1624.6MB

这恐怕是我现存的最老的计算机硬件了-出厂日期为1995年。除了这个东西以外,我手里还有一块同轴接口的NE2000网卡,也算是个老家伙。说起这个,本来我还买过IDT C6这块CPU的,这东西产量很少,可惜后来被我卖掉了,否则现在当个收藏品也不错。

KV300(yfrog

KV300

我买的第一个正版软件,标价要260块呐,我记得实际花了180多。1998年的事。

其实KV系列(还有当年的Kill系列)的口碑都曾非常好,我那时满硬盘的CIH病毒就是KV300帮我干掉的。再看看现在这些杀毒软件厂商的口碑……我只能说很多事情怪不了别人。

旧光盘(yfrog 1yfrog 2

在宽带普及以前,在玩电脑人手中各种光盘一定是少不了的。粗略算算我手里买的光盘少说也有三、五百张,其中大部分是游戏 :D

素材光盘,还有98年的3D游戏:死亡竞赛(Forsaken)刚学网页设计时搜集的素材光盘,还有98年的3D游戏:死亡竞赛(Forsaken)。

黑暗王朝(Dark Reign)整理旧物又一战果:翻出了前几天和同事聊到的老游戏:黑暗王朝(Dark Reign)。

其实“黑暗王朝”这款游戏很好玩,AI非常高,行动路径的设定在当时也是绝无仅有的,只是在国内似乎不太流行。

《大众软件》1996年10月号(yfrog

《大众软件》1996年10月号

这是我买的第一本《大软》,至今仍然清楚地记得那是在高中放学以后,天已经黑了,我骑着自行车路过一个报刊亭时买下的。从那以后一直到2000年初,我期期不落地购买这本杂志。在那个互联网仍不普及的年代,反复研读《大软》成了我重要的学习途径。

除了《大软》以外,96-99年间各种各样的计算机杂志我买了不少,基本上市面上有的我都买过。其中特别值得一提的有两本,一是《软件报十年精华(1986-1995)》,另一本则是早期的《电脑高手》,这两本书的内容都是既广又深,读起来十分的过瘾。

阿尔卡特 OT715的附赠全键盘(yfrog

阿尔卡特 OT715的附赠全键盘

阿尔卡特 OT 715是我的第三个手机,也是迄今为止外形最讨我喜欢的一款(一个原因是,以后我就开始用形似砖头的智能机了)。715堪称是黑白机时代的机王之一,屏幕够大,功能够强,并且阿尔卡特不惜血本的给它配备了在当时看来很豪华的一些配件,比如数据同步线、数据同步底座、Creation Studio软件、耳机和这款外接全键盘。

刚才Google了一下,发现一群老外直到2006年还在为阿尔卡特OT 501(我的第二款手机)和715编写软件,真是疯子!

唐朝乐队(yfrog

唐朝乐队

唐朝的《梦回唐朝》记得吧!这是当年磁带中附带的歌词页,为了向这支伟大的乐队致敬,我给这页覆了膜。

虽然已经时过境迁,但唐朝和黑豹永远都是我心中摇滚乐的两座高峰。

《雪椰》(yfrog

雪椰

小时候很喜欢看,那个女主角在当时也算是个梦中情人了 :D 可惜作者颜开的更新速度实在太慢,差不多一年才出一本。一个漫画从我上初中就开始画,等到我上大学了还没完呢!

 

就写这么多吧,最近很少更新blog,工作一忙起来,就很难静下心来写东西。

对了,我最近主要在Twitter上说话,欢迎follow我:@felixding

一个十分好用的铃声制作软件:Ringtones

| 14 comments 2010-01-24 21:28:55

我是无意中发现这个软件的,试用了以后让我彻底改观了对铃声制作软件的看法-原来此类软件可以做得这么好用的!

软件启动后会直接读取iTunes的曲库,这样用户就不用再傻乎乎的去一首首打开mp3了。很棒的设计。

软件主界面

选取一首歌曲后,界面下方会直接显示歌曲的信息和波形图。

歌曲的信息和波形图

要截取声音片段,根本不用像我原来用过的此类软件那样、在播放的过程中设定片段开始和结束,而只要用鼠标拖动那个蓝色的区块、并调整区块的大小就行了,非常方便!

修改声音片段

更赞的是它的预览设计之妙完全出乎我的意料!按下右下角的Preview按钮后,软件进入预览模式,此时它会自动重复播放声音片段,无论是你移动了声音片段的位置、还是调整了声音片段的长短,预览都会在操作完毕后自动开始。

做铃声时最麻烦的一点无外乎调整铃声的开头和结尾,常常要反复的修改和预览。很贴心的是,当你修改完结尾后,软件会自动地从后面几秒开始播放,这样马上就能听到调整完的效果,非常方便!

制作完毕后点一下Send to iTunes,铃声就被传进iTunes的曲库了。不瞒你们说,因为担心麻烦,我买了iPhone几个月来从没改过铃声,这还是第一次,呵呵。

添加到iTunes

在Snow Leopard下编译PHP的pecl_http扩展库

| 4 comments 2010-01-14 10:31:50

由于Snow Leopard为64位系统,Apache无法加载直接编译pecl_http出来的http.so,查日志文件可以看到如下提示:

PHP Warning: PHP Startup: Unable to load dynamic library '/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so' - dlopen(/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so, 9): no suitable image found. Did find:\n\t/Applications/XAMPP/xamppfiles/lib/php/php-5.3.0/extensions/no-debug-non-zts-20090626/http.so: mach-o, but wrong architecture in Unknown on line 0

Google一圈后,发现要设置一下环境变量:

MACOSX_DEPLOYMENT_TARGET=10.6

CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"

CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"

CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"

LDFLAGS="-arch i386 -arch x86_64 -bind_at_load"

export CFLAGS CXXFLAGS LDFLAGS CCFLAGS MACOSX_DEPLOYMENT_TARGET

然后在终端下照常编译即可:

phpize

./configure

make

成功加载这个扩展后,phpinfo()中会看到:

phpinfo()中显示的模块信息

About

我在厦门拍的照片

丁宇(Felix Ding),电脑Geek,狂热的爱书和爱乐分子,99年迷上网页设计,并从此一发不可收。现在在上海做用户体验/产品设计咨询。Email: felixding[AT]gmail.com。

订阅到RSS

Latest Comments

  • 钢盅郭子 2010-09-08 13:47:30

    “机器是为人来服务的,但是只有最了解机器的人才能让机器最好的服务。”

    ──背离人们发明、改进机器的初衷

    让不了解机器的人也能得到最好的服务,Mac可以而Windows不行

  • altamira 2010-09-08 12:24:15

    大学时,都说吉他是爱情的冲锋枪,于是与寝室哥们一起去学了一学期。

    感觉,没啥天赋,弹得很差劲。不过自得其乐。

    毕业以后就没弹了。貌似盒子上面都有一层灰了。

    还是要人多才有兴趣,一个人太孤独。

  • 三十 2010-09-06 12:07:59

    唉,我也三十出头了。

    三十立不立?

  • 徐帆 2010-09-05 18:53:48

    为什么我的评论没发上去。。。。原来说是我没有填写我的妹儿。。好吧,重新再来一次。原来你三十啦,看起来不像呀。我还欠你一餐饭噢。。。。。原来你也读红楼啊,这年头成稀罕物儿了。。

  • Felix 2010-09-02 14:09:15

    @Aether 你没有读出重点。

  • Aether 2010-09-02 13:56:42

    又是一篇用Windows用户习惯来比较Mac用户习惯的文章么……

  • stefan 2010-08-31 16:46:03

    big_smile.gif

    生日快乐,虽然有点晚 (*^__^*) 嘻嘻

  • tevin 2010-08-28 00:13:22

    eye_up.gif 原来你小时候就喜好摆这个POSE,到现在可能下意识的都会出现。

  • 丁宇 2010-08-27 23:28:05

    @JoJo 同一个。

  • JoJo 2010-08-27 23:24:48

    是同一个人吗?周云蓬,韩寒独唱团中一位写了“绿皮火车”文章的作者与你日志中唱歌的周云蓬是同一个人吗?

Douban