Dec 03 2008

用手机发送豆瓣广播

就是豆瓣上的"我说"通过短信来发送。不知道别人以前做过没有,我说说我的土办法。
1.要有个fanfou的账号(因为fanfou上的信息能通过短信来发送)
2.设定一个命令,用它来指定是发往豆瓣的(我设定的是'2db#')
3.每3分钟读取一次你fanfou上的最新消息。如果消息开头包含命令‘2db#’,就把这条消息通过豆瓣API发送到豆瓣。
比如说我用短信发送一条信息"2db#what's up"到fanfou,那么3分钟之内我的豆瓣上就会自动增加一条我说“what's up".
你可以点击这里查看源文件 (感谢douban php client的作者,让大家能如此方便的调用API).至于让脚本每3分钟执行一次,就把它写入crontab就行了。
由于只是个人使用,所有代码异常简陋,还有很多可以改进的地方。当然也可以写成能够支持多人的服务。如果要支持多人,那就务必验证用户的手机号码。但你又不是sp或运营商,拿什么验证?我们照样可以山寨一个"手机绑定系统".根据用户给定的手机号码给他一个验证码,然后让他把验证码发送到fanfou,我们去检查就可以了。
其实这个应用的价值并不大,但通过我们的土办法我们可以引申一下。凡是可以在服务器上通过脚本执行的任务,我们现在都可以用手机来操作了。假设"shutdownmypc"为关机命令,那么用手机发送这个命令到fanfou就可以关机。只要设定好自己的命令,我们就可以做一切。
ps.为了避免你fanfou上的好友看见这些莫名奇妙的字符,最好重新注册一个没有好友的账号。
update:其实不用验证用户的手机号码,我们只要能够确认他给定的fanfou账号是他自己的就可以了。不过我们由此得到的山寨"手机绑定系统"还是很好玩的

Dec 01 2008

从google spreadsheet 到 google database system

王建硕的My Friend Blogroll这篇文章让我对google spreadsheet的应用充满了想象。
文章说的是,wangjianshuo把他的friends list保存到一个google spreadsheet文件中,然后在自己的blog上调用那个文件的json数据,直接利用javascript来展示出来。这样做的好处是,使自己的blog干净简单,并且数据由google保管也显得可靠。
既然朋友列表可以这样展示,那么当然一切可以保存为列表的数据都可以这样做。一个blog最重要的数据就是文章列表和评论列表。这两张表我们同样可以利用google spreadsheet来保存,然后前端通过javascript来显示就可以了。还有一点要注意,google spreadsheet数据不光可以用JavaScript读取还可以写入。这样一来我们的blog连数据库都不必用了。 整个blog就是一些静态页面
更极端一点,如果你的blog只给自己看,那么自己的blog大概只需要一个Greasemonkey脚本,需要的工作也只是操作一些json数据。到那时,你的个人blog连空间都不需要,只需要一个域名,当然你也可以自己起一个名字,那么连域名都不需要了。你的blog所有的东西就是几个google spreadsheet文件和一个猴子脚本。这个想法就此打住,再想下去就没边了。
对google spreadsheet的应用,终极的想法就是把它变成一个database system。关系数据库无非就是对表的集合操作。既然我们能取得google spreadsheet中表的数据,理论上就能对这些表做所有的集合操作。如果有谁感兴趣做一个开源项目,让大家能使用google spreadsheet来做数据库系统也不是没有可能的。
这就是我们的山寨database...
(以上想法只讨论理论上的可行性。)