Category: 未分类

  • Gmail 英明神武

    Remember The Milk有个Firefox扩展,安装后打开Gmail,就会在右侧显示RTM上的日程。后来不用RTM了,我就想能不能把Gtalk那一块放在右侧呢?由于屏幕高度的限制,Gtalk被压在inbox/spam之类的下面,显示不了多少联系人(Options->Size of chat list)。

    为解决这个问题我一直在找GreaseMonkey的脚本,没有特别合适的。知道今天,在RWW上一篇文章得知Gmail Labs里有了一个Google Calendar的gadget,我才发现,原来labs里不全都是experimental的废物,我想要的功能就在那里:”Right-side chat”。

    现在一共启用了三个labs feature:”Right-side chat”, “Right-side labels”, “Google Calendar gadget”。Google Calendar gadget在左侧显示了一个agenda,还可以方便地添加event。options里还可以设置”Show mini calendar”,虽然可以方便地查看某日的日程,不过如果屏幕不大的话,会把日程表挤到不可见区域。

    Gtalk放在右侧,更符合我把IM软件窗口拖到桌面右侧的习惯,而且,web版的gtalk,做得真是太完美了,把web的能力发挥到了极致。

    现在只要开着电脑,Gmail页面一定是打开的。不需要邮件提醒工具,我会时不时切换到Gmail看看有没有新邮件,聊聊天,看看日程……嗯,Gmail 英明神武!

  • 惠普笔记本读卡器支持4G SD卡

    今天往读卡器里插了一个4G的SD卡,竟然什么反应都没有。于是上网搜了一下,发现HP在2006年7月31日发布了读卡器的驱动更新2.0.0.6 A,更新的内容就是:

    提供一个新驱动支持 4-GB Secure Digital (SD) high-capacity media。

    而最新的版本是2.0.0.7 B (2008/02/22),“修正了蓝屏……”,真恐怖,不知道为什么有了新的,HP还是把一堆旧的驱动放在列表里供人下载。

    上面的链接是针对nx6320这个型号的。HP的网站做得还算可以,能够比较快地找到自己的型号的驱动。

    安装完毕,哎呀,可以读了哎!哈哈

  • Google Calendar的todo list何时出来?

    todo list或者叫task list,Google Calendar一直没有这个功能。一个task跟Calendar的一个event有些区别,有时我就是想起一件什么事要做,不过并不给它安排一个固定的时间,只要放在一个列表中,啥时候做完了,像辛普森一家里的Homer一样,check. Yahoo!刚刚推出的新版calendar就提供了这个功能。

    早在两年半以前,有人(ZDNet)就分析了Google Calendar的代码,欣喜地宣告Google已经预留了task list的接口,只是暂时没有实现。

    事实上,早已有众多用户在Google Calendar帮助论坛里请求加上task list这样的功能。而Google官方在2007年10月13日做了如下的答复

    Hey everyone – thanks for the loud and very clear feedback on your
    desire for a to-do/task list feature. We’re pretty passionate about to-
    do lists here as well, and we’ve got something in the works. Of
    course, we’re working to add our special Google secret sauce to the to-
    do lists space (which can take some time to get right,) so we don’t
    have something to announce just yet, but the entire team is listening
    to these threads closely.

    Please be patient – we’ll have more to talk about soon.

    是的,Calendar的team一直在倾听用户的声音,并且某些工作已经在进行中了。这项艰巨的任务进行了这么久还没有宣布完成,表现了Google的一个特点,认真。

    两年前,ZDNet被推上digg的时候,第一条用户留言是:

    That’s what I like about Google.. they actually listen to user suggestions.

    没错,倾听不代表要去执行。Calendar最近的一次更新,是加了一条表示当前时间的红线。任何一个大公司,都得有点官僚作风,这是不可避免的。

  • 根据EXIF日期信息整理照片

    一般相机拍下来的照片都是JPEG格式,文件头部有一块专门用来存储EXIF信息,包括光圈、快门、焦距等,还有拍摄照片时的日期。

    用ruby写一个这样的程序非常简单:

    require 'exifr'
    require 'ftools'
    
    unorganized_dir = 'e:\\flickr-photo\\unorganized\\'
    root_dir = 'e:\\flickr-photo\\'
    Dir.chdir(unorganized_dir)
    Dir.glob('*.jpg') { |filename|
    	exif_info = EXIFR::JPEG.new(filename)
    	date_time = exif_info.date_time
    	unless date_time.nil?
    		target_dir = File.join(root_dir, date_time.year.to_s, "%02d" % date_time.month)
    		File.makedirs(target_dir)
    		File.move(filename, target_dir)
    	end
    }

    我在E盘的flickr-photo目录下存放组织有序的照片,第一层子目录是年,2006,2007,2008……第二层子目录是月,01,02,03……把未组织的照片放在unorganized目录里,在命令行里执行ruby organize.rb,就把这些照片各自移动到合适的月份目录下了,不存在的目录会自动创建。

    当然你需要修改这个程序,把unorganized_dir和root_dir设置成你自己的目录。另外需要先执行gem install exifr命令来安装exifr这个library.

    也有个别的照片(或者图片)是没有携带exif信息的,程序不会对它们进行处理,执行完后,这些照片留在原地不动。我把它们移动到一个叫”no-exif”的文件夹中。

    差点忘记,首先,请把你的相机时间设置正确! 🙂

    这是我的第一个ruby程序……虽然简单,但很实用,帮我把从flickr备份回来的图片分好了目录。

  • 收到了咔嚓鱼冲洗的照片

    惠普的咔嚓鱼,注册就送10张免费冲洗(现在是10张,据说以前是20张,甚至有的账户有源源不断的免费)。16号选了10张照片上传到账户里,让它给冲洗
    ,前天(25号)终于拿到手了。

    咔嚓鱼 (by qingbo)

    当然不是一分钱不花,快递要了7.9元。咔嚓鱼没有自己的物流,它是委托快递公司给送货的。冲洗似乎是在上海,速度这么慢大概是因为这个原因。

    冲洗的质量还不错,相纸可以选择光面还是磨砂,不过感觉相纸比较薄(改天跟楼下的冲印店比较一下),毕竟这是6毛一张的东西。其实我更希望多花几毛钱换成质量更好的相
    纸。包装方面,有一块硬纸板防止折叠。

    咔嚓鱼是舶来品。惠普最初收购了国外的snapfish,开始发展在线冲印。在咔嚓鱼的页面最下方选择United States,就会跳转到snapfi
    sh的网站。但是现在咔嚓鱼的本地化工作做得并不是太好,有的地方还有错别字,比如上传照片用的客户端写成“咔嚓鱼上传精灵”,显然是输入法把把“传销”作
    为一个词了。

    说到上传,我使用北京网通的网络上传极慢,在网页上由于受到HTTP连接时间的限制,上传多个照片的时候经常失败,所以还是建议使用客户端上传。

    不过,如果我冲洗少量的照片,肯定会到楼下的冲印店直接去冲了,最迟第二天就可以拿回来,而不必花8块运费,等上10天再拿到照片。

    在线冲印,需要更优质的产品,更快速的物流。

  • 用FlickrDown下载flickr上的照片

    决定把flickr上的照片下载回来备份一下,于是花了不少时间在网上找下载工具。

    不少人推荐flickredit,不过我试了好多次,下载不了几张照片就出错,换了它的前身似乎叫flickrbackup也是一样。看起来很强大,实际上不能用,真是可惜。

    试了好多个,最后还是FlickrDown解决了我的问题。它主页上的图片已经old了,新版本加入了authentication,这样我们就可以下载自己账户中带有权限的照片了。当然也可以下载朋友账户中部分加有权限的照片,不过我没兴趣给别人的照片作备份,如果喜欢加到flickr的favourite里就可以了。

    默认配置下,FlickrDown仅下载最近的500张照片。目前我有700多张照片,后来才发现可以把这个值调大一点。

    FlickrDown也有个缺点,缓存似乎不会刷新,尤其是当你新建了一个set的时候,不管怎么办,它显示的还是第一次去下来的set列表。我本来想新建一个set把500张之后的照片放进去,一起下载回来,后来发现了这一点,很是郁闷。研究了半天也不知道它的缓存放在什么地方。FlickrDown首页上也有用户提出这个问题,但是没人给出解决办法。

    除此之外,FlickrDown是相当稳定的,非常推荐。

    P.S. 个篱留言说Flickr Pro是无底洞,实际上并不是这样。可以说Flickr的策略是最宽容的,即使你没有pro account,它一样为你保存了原始文件,一样不限制空间使用总量和浏览流量,只是你的photostream只能显示最新的200张照片(对200张之前的照片的外链完全不受影响),并且不能获得原始文件。一旦购买了pro,这些限制完全解除(包括每月上传限制等),什么都没有损失。假如我明年不想用它了,我的照片也不会有任何损失,只是有些功能加了限制,可以随时买一次pro,把照片搬出去。

  • 自己做个花生壳(动态IP解析)

    花生壳动态域名解析曾经风靡一时,把域名指向某台随时改变IP的机器。我从来没用过花生壳,不过大致也明白它的基本道理,自己也时常遇到需要访问某动态IP机器的问题,其实可以用很简单的方式来实现类似的功能。

    现在有许多专门做查询IP的网站,一个基本功能就是你一上去马上就可以看到自己的IP. 嗯,一般情况下你访问网站时对方就会获知你的IP地址。

    实现这个功能,只要在外网有一个固定IP的服务器(或者共享空间)就可以了。比如说,我的网站有个子目录叫”ip”. 第一步,我想在访问http://qingbo.org/ip/的时候,显示出我家计算机的IP地址。

    1. 在ip子目录里放一个ip.php文件,内容如下:

      <?php
              $file = fopen("index.html",'w');
              fwrite($file, $_SERVER["REMOTE_ADDR"]);
              fclose($file);
      ?>
      

    2. 在家里的计算机上访问http://qingbo.org/ip/ip.php
    3. 不论我在哪里,打开地址”http://qingbo.org/ip/”都可以看到家里的IP了。因为访问ip.php的时候,它把IP写入了index.html文件。

    这样有几个问题存在。首先,家里用的是ADSL(其它的网络提供商大部分也都如此),IP地址是不定期变化的,总不能家里老是放个人不停上网吧 🙂 其次,如果别人在别的地方访问ip.php,这不是捣乱吗?这个捣蛋鬼的IP会被记录下来,而家里的IP则不见了。最后,我们想访问http://qingbo.org/ip/的时候,直接转到家里的服务器去浏览网页(这是一台不太正规的web server)。

    第一个可以用cron来解决,让它定期自动执行。执行命令”crontab -e”,然后加入这一行:

    0 * * * * wget -q -O /dev/null http://qingbo.org/ip/ip.php

    Windows应该可以用计划任务,不过我没有试过。

    第二个,应该加个认证码(相当于密码)。只要在ip.php里记录IP的时候加一个判断:

    if ($_POST["code"] === "strongauthenticationcode") {
       ...
    }
    ?>
    

    这样,只有提供了正确的认证码,IP才会被记录下来,防止别人瞎捣乱。(这是cron task的最终版本

    0 * * * * wget -q -O /dev/null –post-data ‘code=strongauthenticationcode’ http://qingbo.org/ip/ip.php

    第三个问题,只要把写入index.html的内容改一下,让它作自动转向就可以了(最终版本):

    <?php
    if ($_POST["quqi"] === "_-5QzdkhxNnI5EOM6ucW") {
            $file = fopen("index.html",'w');
            fwrite($file, '<html><head><title>Redirecting...</title><meta http-equiv="refresh" content="1;url=http://'
    . $_SERVER["REMOTE_ADDR"]
    . '/"></head><body>You have crossed the oceans of time, to find me.</body></html>');
            fclose($file);
    }
    ?>
    

    现在一般的家庭网络都是由一台路由器自动拨号,这样的话,内网有一台机器不停访问外网服务器的IP记录程序就可以了,不一定非得是要做服务器的那台机器。当然了,路由器上要设置好NAT,好让外部可以访问到内部的服务器。

    写该文的时候手头没有合适的测试环境,所以文中可能有些错误 🙂 希望能帮助大家,也希望给我指出错误。

  • 如何管理照片——考虑便捷与安全

    Flickr在图片管理方面可谓是物美价廉,一年25美金的价钱,无限存储,又不会像国内的抄袭者一样限制访问流量(不可思议)。

    在正式使用Flickr之前,我把DC拍的所有照片都保存在硬盘上,不管好坏。一般是用当天的日期作为文件夹,保存之后一般就不会再去看第二眼了。这样的后果是拍下来的照片几乎不会再返回来看,想找某个照片的时候也非常麻烦,因为文件名是相机默认的编号命名,只能靠回忆拍摄的日期来找到那个文件夹。

    之前也用过几次flickr,但是想到免费的账户只能浏览200张,难免让人觉得有点不爽,所以有段时间使用国内的yupoo. 改革开放了,我的观念也有所转变——我都工作的人了,虽然赚钱不多,不过一年25美金还是非常拿得出来的。尤其是Flickr不限制上传流量和存储总量,还提供原始文件的下载。于是赶在买一年送三个月的时候买了一个pro account.

    买到了pro,把硬盘上的照片全部过了一遍,删掉拍得不好的和重复的,剩下的通通传到了Flickr上。在这个过程中又回顾了一下历史,还是有许多值得怀念的时刻的,也有一些让人感动的,还有些地方想找个时间再去。删掉的照片也非常多,应该能占到一半吧。在上传的时候,都给照片尽量打了标签,加了标题,这样将来搜索起来非常方便。

    上传之后,我把photos文件夹从硬盘上彻底删掉了。我当时是这么想的,Flickr挂掉的可能性比我硬盘挂掉的可能性要小。

    接下来的几天里,我才真正的开始“玩”Flickr,此前接触到的都是最基本的功能。建立一些Set、Collection,把照片组织一下;在地图上把照片安顿好;等等。能做的事太多了,我又把自己的照片翻了几遍。Flickr让我发现了自己照片中蕴含的一点点价值,这让我很高兴(作为一个web开发者,也由衷地佩服Flickr的Orgnizer,JavaScript做成这样太完美了,尤其是Map上的操作)。

    照片过了几遍,没的玩了……于是我有了去拍照的冲动,并且开始尝试使用我的小破A510的M档。调光圈、快门、ISO,甚至对焦。当然先去wikipedia补习了一下凸透镜成像原理 🙂 我开始喜欢摄影了,不过还称不上是爱好者(我准备买一台数码单反,不过目前有更重要的事需要钱)。后来拍的照片我就在SD卡上选好了直接上传到Flickr了,都不经过硬盘。

    但是随着对照片价值越来越高的重视,我开始怀疑Flickr的安全性。万一它挂掉,我的照片不就完蛋了吗?

    在Flickr的group里问,有没有人把Flickr作为唯一的照片存储?有人提了一个很严重的事情:flickr有些账户被钓走,内容全部被删除了……不得不说这很可恶,不过这种事情就是存在,让你不得不担心。前阵子我疏忽的时候,Paypal的帐号都差点被钓鱼成功。存储的危险性,除了硬件损毁外,还有人为的删除。在这一点上,flickr的安全性绝对比自己的硬盘要低。Flickr上一旦得到了账户密码,删除内容太容易了,直接Delete Account,而且删除是无法恢复的。自己的硬盘误删了,也许还可以做一下数据恢复,但是flickr是绝对不会为你去做这样的事的。

    硬盘很便宜的,现在基本是一块钱1G,白菜价了。有空去弄一块硬盘,专门做照片存储,把Flickr上的照片备份回来……

  • Feed两要素:质量、频率

    这年头估计大部分走在互联网前沿的人都会订阅RSS了。要是在国外,就可以说,50%的网民都了解RSS了。可是国内“网民”的定义有点不同——QQ就是网,上了QQ,就是网民了。

    我订阅的RSS不太多,总共也就几十个吧,都是我比较关注的科技、互联网、web技术等话题。有些人的RSS阅读器里动辄就是成百上千的Feed,而我感觉就这么几十个都够我每天浪费不少时间了,也许是我效率太低了?

    大部分人在消费Feed带来的信息时,自己也都在通过Feed输出信息,基本是以blog的形式,其它的有twitter、照片分享,以及friendfeed这样的life streaming。

    在这些信息的传播过程中,就体现出人性的许多矛盾。我们有时希望可以随心所欲地表达自己的观点,有时又希望自己的观点能够迎合自己的读者。有时想把blog作为人生脚步的记录,有时又想作为个人思想的窗口。

    实际上,既然提供了Feed输出,RSS也好,Atom也好,你肯定想让你的Feed有更多的受众,几乎所有的blogger都在追求订阅量。

    要让更多的人订阅你的Feed,第一,质量要高。解决一个技术难题,有了一个才华横溢的点子,这些都是高质量的内容。近期来我一直在幻想未来的美好生活,实际上却不思进取,所以blog内容非常之空洞,这就叫质量低。这样的Feed我忍几天就受不了了,喀嚓。

    第二,频率不能太高。作为一个普通blog,Feed的新生条目频率自然不会超出想象,因为大家写blog还是比较有节制的,一般每天绝对不会超过10篇。某些新闻、时评类blog就不一样了,它们可能是一个团队在写,每天可能有几十篇。TechCrunch我就退订了,因为每天的post太多,而且里面夹杂了一些毫无意义甚至是垃圾的东西。RWW虽然更新相对比较频繁,不过文章质量普遍比较高。

    频率过高,在twitter、life streaming这些服务上表现尤其突出,我已经因为某些人无病呻吟太多而把他们喀嚓掉了——当然对这些朋友完全没有恶意,只是个人习惯问题,呵呵。有时候觉得闷了,可能我又会重新follow某些人 🙂

    这篇垃圾文章,就这么结束了?记得曾经有一段时间,我写文章还有板有眼的,有个思路呢。现在怎么又不行了呢?唉……攒钱,攒钱去喽

  • 圆明园、植物园、香山一日游

    这三个地方,今天都是第一次去。来北京这么久了,也没怎么好好出去玩过,呵呵。

    本来是打算早上先去爬香山,然后去植物园的。后来坐车正好路过圆明园,我就在那下车了,最后证明还是圆明园最好玩。

    去圆明园,主要是看那些遗址了:

    大水法 远瀛观

    我看到这些的时候感觉很不爽,毕竟这是自己的祖国被蹂躏的证据,是耻辱。有些人却很兴奋,仿佛这是极大的荣耀,兴高采烈的脚踏着它们拍照留念,那神情,是不是曾经在英法联军的脸上出现过?只不过那时的相机没现在这么先进和普及。

    此外,正好是荷花节,连植物园也不可能有这么多荷花。还有黑天鹅:

    接天莲叶无穷碧 荷花 黑天鹅

    后来去了植物园,正好是中午,虽然已到秋天,仍然骄阳似火,也没怎么逛,就觉得两只老鼠比较有意思:

    两只老鼠

    最后是香山,比我想象中要高,加上已经逛了两个地方(圆明园从南门步行到大水法又绕了圈子回来)爬上去已经很累。下来是想坐缆车,一看50块,就走了下来,还是不费力的,就是膝关节有点不舒服。在顶上的时候,看北京城被灰尘笼罩的情景有点恐怖,蓝天和深色的灰尘之间有比较明显的界限。以前看到外国佬总是批评北京空气差,我一直觉得夏天是气候原因。现在没得说了,这还是空气质量好的时候呢……(右边是香山西侧的天空,作对比)

    北京市上空的“红尘” 香山西侧的天空

    今天真累,周末就休息了。今天的照片颗粒感很明显,跟那天早上的相差甚远,看了一下,原因应该是ISO太高了。我那相机ISO最高就400,已经不行了,而那天早上ISO设定是100. 全部照片在这个相册里:

    http://www.flickr.com/photos/qingbo/sets/72157606884271780/