Temporarily suspending feedlr for an overhaul

April 12th, 2009

As some of you may have noticed, feedlr has the problem of sporadically repeating posts and it’s been happening more often recently. This bug is due to some mysterious errors that somehow skip my try/catch blocks and throw tons of stacktraces in the logs. Also due to the problem of there being too much noise in the logs from Grails and the lack of spare time I have lately, it’s been quite a pain for me to track down and eradicate this problem. And I feel very sorry for the users who have suffered from repeated posts.

The current implementation of feedlr is a result of the resource limitations of the server where it’s hosted, which is an everlasting problem for the Grails service. So I’ve always wanted to thoroughly refactor the code and find a better hosting service. With the problem of repeated posts aggravating, I’ve decided to temporarily suspend the current feedlr service while I migrate the whole site to Google App Engine, which means a rewrite of the existing code in Python.

This complete refactory (or rather, rewrite) won’t be completed very soon but I’ll make it happen as soon as I can. Meanwhile, I’ll keep this blog updated. Thank you very much for using feedlr and let’s meet again later on Google App Engine!

由于近期feedlr重复播发消息的问题变得严重,彻底重构feedlr的需求变得越来越紧迫。feedlr的实现是对于目前使用的服务器上有限资源的妥协的结果,随着feedlr支持的feed数量越来越多,服务器性能显得越来越突出。而由于近来我的时间非常有限,还有Grails在日志方面的过多噪音,我很难马上彻底解决重复播发消息的问题。对重复播发给大家造成的麻烦我深表歉意!

于是我现在决定暂时停止目前版本的feedlr服务,花一些时间把feedlr移植到Google App Engine上,彻底解决可扩展性的问题。由于需要用Python重写整个服务,需要花一定的时间。具体需要多久我也说不准,只能利用有限的时间尽快完成,请各位关注本blog,有更新会在这里发布的。在此对所有feedlr用户表示诚心的感谢,让我们在Google App Engine上再见!

Read my mind

January 15th, 2009

I recently realized that I’ve been tossing my articles all over the place, which has become hard to manage. So I consolidated them to my personal blog, and will from now on use that as the only prominent place for dumping my geeky mind, including all things about Grails and Groovy. Only stuff related to Feedlr itself will be published here. Please pay a visit to my place and hope you like it.

最近开始执行本人名下博客的重组计划,过去和将来的原创技术文章都将统一到本人的个人博客上。请访问这里并按兴趣订阅,谢谢!

feedlr的2008

December 18th, 2008

08年初,我在开发feedlr的时候,就只是想做一个对人们有用而且好用的工具。虽然我是个程序员,但是我向来热爱设计,精巧而优美的事物总是最能吸引我(天秤座?)。其实如果我在中学没有读理科班,到现在很可能是个设计师,因为在那个时候我就非常对设计方面非常感兴趣。有点扯远了:)

我对自己的作品一直是很挑剔的,我为feedlr设定的标准很简单,要让我自己爱用它。那么feedlr做到了吗?我觉得80%做到了吧。自从feedlr上线开放以来,我自己就一直订阅着好几个feedlr驱动的微博机器人,每天可以直接在im上快速阅览我感兴趣的新闻,用了feedlr机器人确实大大提高了我的feed阅读速度。

feedlr的定位本身就决定了它只可能在略geek的群体中传播,但是看着每天新增的feed机器人,我感到非常欣慰。刚开始,feedlr上线的只有英文版。大家可能觉得奇怪,还有人问过我是不是中国人。其实,虽然我从小在上海长大,但是我确实一直对中文互联网没多大兴趣和接触。因为我英文还不错,在上个世纪末通过14.4k modem接触网络的时候,网上的中文内容还非常贫乏,所以我从一开始就是喜欢浏览英文内容。而且对一个标准geek来说,也确实在英文互联网上有多得多的吸引的内容。中文世界呢?新浪?网易?还有百度?我都几乎从来不上。看着这些弹出窗口花花绿绿满屏的广告毫无设计可言的页面就烦。中文互联网是不属于geek的。

我这么说可能很有争议。我在之前对中文互联网最多的接触,还是在兼职solidot.org的主编的那段时间。但自从feedlr项目起深入接触中文互联网,认识了很多朋友,却更巩固了我这样的认识:中文互联网也不缺少才华横溢的geek,但是统治这个江湖的却是一批中年商人。这只是一个商业世界的延伸,而不是一个容得下创新和geek精神的地方。人们谈论和崇拜的是马云,而不是戴志康。叽歪是我一年多来用得最多的国内web2.0服务,创始人李卓桓也是我很敬佩的一位朋友。但在csdn英雄会上,大家争相握手献媚的却是垃圾网站51.com的庞升东,那位号称只找60年代人合伙的商人。

没错,不管是不是做互联网,business的目的总是赚钱。但其实,就像Paul Graham说的那样,我们想要的其实是财富,而不是钞票。那么,在一个理性的世界,你创造出了人们想要的东西,就是创造了财富。所以,你应该努力做到的,是不断创造出人们想要的,有用的东西来。而不是挖空心思想着怎么从无辜的人兜里抢钱。这个世界也不能离开商人,但是真正创造财富的,是创造商品的人,而不是把商品卖到不可思议的高价的人。更重视前者的社会,才是一个理性的值得尊敬的社会,也是一个有持续发展动力的社会。因为这样,这个社会里的人才会整天想着怎么做出更棒的产品,而不是做梦都想明天怎么去忽悠下一个客户或者投资人。当人们崇拜的是钞票而不是财富时,这个社会就失去了创新的动力。

而我们的互联网,其实和整个社会一样,是个浮躁浅薄的地方。只要这样的状态不改变,这里不会真正有中国的google,中国的facebook,当然也不会有中国的TechCrunch,更不可能出现Y Combinator。有的只能是C2C(Copy To China),只能是忽悠了钱走人的MBA,还有拿个ecshop几分钟搭个网店就认为是互联网创业的青年。

一不小心就说了那么长一通,其实我打算写这篇文章是想感谢一下分享web2.0的盗盗同学,把feedlr提名为“2008 最值得关注的15个 China Web2.0 Startup”。和那些我很喜欢和尊敬的web2.0项目摆在一起,其实颇不好意思。话说我差不多也有半年没有改进feedlr了。我希望的只是feedlr能继续对人们有用。在feedlr之后的时间里,我其实放弃了一些hardcore geek的想法,认真尝试了中文互联网创业的方式,为钱做过了妥协,圈了几十万的用户,也有日pv一百几十万的成果。但是在2008年即将过去的时候回头看看,还是feedlr为我带来了最多的快乐。

一个人能有一些值得坚持的原则是应该珍惜的,所以我想,在即将到来的新的一年,不管金融危机怎么恶化,不管“业界”热点转成抄袭哪个另外的国外网站,我还是会照着自己的原则做事,做出更多对人们有用的东西来。feedlr也会继续办下去的,因为至少,我还需要用它来每天快速接收新闻呢!另外,我也可能比较彻底的改写一下feedlr,让它变的更有用。

如果你喜欢和支持feedlr,现在可以通过文章底下的tipjoy来方便的支付一小笔零钱了。

Wordcamp China 2008

September 9th, 2008

今天报名了Wordcamp China 2008上海站,9月21号在复旦大学。可惜上海站只有下午半天,看来没有免费午餐吃咯:(

如果有使用feedlr的朋友同去,到时候可以联系我:)

外一则:

feedlr自从搬迁到linode提供的vps服务器以来,运行的一直比较稳定,从国内访问速度也比原来要快了。经过这段时间的使用,我可以向大家郑重推荐linode vps服务器,价格便宜量又足,性能也好!如果大家正想购买国外服务器的话,不妨尝试一下linode。推荐选择加州Fremont机房(可以4个机房里任意选一个),从国内连接速度不错。通过这个链接申请注册,就可以在注册的同时支持feedlr的服务器费用。谢谢:)

新服务器:Linode和Nginx

June 4th, 2008

Feedlr搬到新服务器了!

Feedlr经过一段时间的改进,程序性能已经比刚开始优化了不少。而另一个反映相对较多的问题是访问速度。原先的服务器由于无法克服的客观原因从大陆某些地区访问速度不理想。新服务器由Linode提供,位于美国加州,连接速度更理想。于是经过最近的一些准备,今天Feedlr正式搬迁到新服务器。

另外,除了硬件服务器,现在Feedlr的web前端服务器也从Apache换到了Nginx。轻量高效的Nginx比Apache更节省服务器资源,也为Feedlr性能的提高提供了支援。

Feedlr一直进行着这样一些表面上不易察觉的改进,希望能继续给大家提供一个稳定好用的服务。

新增功能:关键词过滤播发

May 24th, 2008

今天Feedlr的关键词过滤功能面世了。现在起可以给Feed指定一系列关键词,这样在播发新闻的时候,只有匹配到了关键词的内容才会播到微博客机器人帐号上。在新建Feed或者编辑Feed页面上,在关键词过滤一项填上用空格或逗号分隔的关键词就行了。在这一项为空白的时候就不会进行过滤。

另外,还可以选择匹配全部关键词还是任何关键词。比如有关键词“苹果”和“电脑”。默认的匹配方式是匹配任一关键词,那么只要新闻标题或内容里提到了“苹果”或者“电脑”就会播出去,如果有关于苹果丰收的新闻也能播出去。而如果选择了全部匹配,那么只有同时提到了“苹果”和“电脑”的新闻才会播出去,有时候这才是你想要的结果:)

keywords

利用关键词过滤,我建立了一个“中国地震监测”机器人:http://jiwai.de/中国地震监测 利用USGS的地震监测Feed,过滤关键词“China”,就能把发生在中国的地震过滤出来了。

除此以外,关键词过滤还可以用在从不能分类的综合新闻Feed里筛选感兴趣的内容,建立特定主题的机器人。比如“cnbeta Linux新闻”等等,就等着你去自由发挥了~

增强的feed解析能力

May 22nd, 2008

有用户反映过,有些feed在feedlr无法正常解析,feedlr对一些feed的容错能力不高。

现在,feedlr能利用Google新近开放的Ajax Feed REST API来作为备用的后台feed解析工具了。如果feed解析出现错误,就会自动调用Google API来再次尝试,这样就提高了feed解析的容错能力。而Google Ajax Feed API就是Google Reader使用的解析器,所以feedlr现在能做到Google Reader能正常访问的feed就能正常解析。

如果大家发现feed解析方面还有什么问题,请通过留言版告诉我,谢谢!

另外,这次更新还修正了标签功能的一些bug并进行了一些改进。标签输入的时候现在可以用包括全角和半角的空格以及逗号来分隔了。之前分隔有问题的一些标签也全部整理了一下。

为大地震遇难者默哀 Mourning for the victims in the China earthquake disaster

May 19th, 2008

(…)

Feedlr支持做啥微博客,并即将支持OAuth认证

May 6th, 2008

大家可能已经发现,在新建和编辑Feed的时候,可以选择微博客服务为做啥了。没错,Feedlr开始支持广播到做啥了。使用方式和其他支持的服务一样。而且类似叽歪,在做啥,你也可以通过播发完整链接(选择不使用TinyURL转换),来在网页上直接内嵌多媒体内容。目前由于API的差别,暂时无法在Feedlr显示做啥帐号关注者人数和总消息数。

另外,Feedlr即将支持最新的OAuth认证方式。OAuth是一种开放的API安全认证标准,通过OAuth,大家就不必在Feedlr提供微博客帐号的用户名和密码,也能建立广播机器人了,这样能最大程度地保证用户账户的安全性。目前叽歪已经开始支持OAuth,Twitter也有非正式的支持,正式支持应该也快了。Feedlr将首先支持叽歪的OAuth认证。

Feedlr支持OpenID登录了

May 2nd, 2008

今天起,Feedlr开始支持(先进的,时髦的)OpenID登录方式了!大家快来试试吧。

普及篇

什么是OpenID?访问OpenID主页就可以看到详细介绍。简单的讲,OpenID就是“一个以用户为中心的数字身份识别框架”。对用户来讲,可以用唯一的OpenID来登录任何支持OpenID的网站。这样一来就不用在不同的网站重复注册,记住一堆用户名,密码了。

这里有一段很有意思的视频,为大家通俗地解释OpenID的概念(英文)。

使用篇

那么,在Feedlr怎么使用OpenID呢?有两种方式。

如果你已经注册过一个帐号了,那么

  1. 以普通方式(email地址加密码)登录你的帐号
  2. 在“我的帐号”页面上点“绑定OpenID”按钮进入OpenID登录页面20080501233035285
  3. 在完成OpenID登录以后,你提供的OpenID就自动绑定到你的Feedlr帐号了。在“我的帐号”里会列出已经绑定的OpenID。你可以对一个帐号绑定多个OpenID,然后用任一个OpenID登录这个帐号。绑定的OpenID也可以随时删除,重新绑定。20080501233724254

如果你还没在Feedlr注册过,那么可以直接通过OpenID登录来得到一个Feedlr帐号

  1. 在登录对话框里,选择“使用OpenID”进入OpenID登录页面
  2. 完成OpenID登录,会进入到自动新建帐号的页面。如果你的OpenID帐号里已经保存了email和昵称,Feedlr会自动帮你填入,不需要再填密码。确认并新建帐号以后就完成登录了,新建的帐号也自动和OpenID绑定了。
    这里有点需要注意的是,Feedlr不允许重复的email地址和用户名。所以如果Feedlr提示你OpenID里的email或者用户名和已有用户冲突,那么有可能你已经在Feedlr用这个email或用户名注册过帐号了。那么请用本文以上第一种方式,先登录帐号再绑定OpenID来启用OpenID登录。
  3. 直接用OpenID注册的帐号也可以用普通的email地址加密码来登录,只需要先在帐号设置里填上你自己的密码就行了。

这样就可以开始用OpenID登录了。目前,提供OpenID的基本都是国外网站。Feedlr通过ID Selector了提供常用的OpenID供应者菜单。当然,你也可以使用在菜单列出以外的网站注册的OpenID。openid