坚持与这个世界Sync

很不幸,我得开篇就这么黑暗地假设一个场景:你已经被死神盯上,用过的很多剂药物都失效了,一位称职也尽职的医生告诉你,现在有两个方案可选:一是不再进行治疗,什么都不做,接受现状,等待死亡,1周内生命就会平静地结束;另一个是他还有几种药物可用,这些药物绝无伦理或金钱方面的问题,亦不造成身体或精神上的任何痛苦,除了要按时服药这样的小折腾,没有其他任何不妥,不过它们也只能延长1年生命,1年之后,死亡仍会坚定地到来,绝无例外。两个方案你大概会怎么选?

这个死神就是 GFW:Gongchan Fucking Wall,已经被它盯上并被镰刀成功收割的名单很长,最近一个是 Dropbox。不过,现在还有些可选的替代药物,可惜跟前面假设场景里的情况类似,这些药物没有一个可以保证永恒,最多是延长些许生命,这期间只要那个死神愿意,还是可以立马让药物失效,剥夺你的生命。你会选择接受死亡,不再折腾了,还是明知那些待选药的命运捏在GFW手里,撑死生命只能延长1年,也要和GFW 抗争1年?

我这么想前提一下,是因为后面会介绍一些Dropbox的替代品或替代方法,当然还想提一下一劳永逸的完备的超越文件sync范畴的免疫GFW的方案。如果你现在累了烦了,不想再折腾了可以不用看下去了。没事儿,不用过虑,我(并建议所有人)尊重人的选择,并真诚地理解,因为每个人都有决定自己生活的权利,如果总把自己的想法强加给别人,那我们和建造 GFW 的人就没什么不同了。当然,也请不要忘记我这种人的存在,就像我也不会忘记你一样,如果有重新鼓起兴趣想尝试不同的生活的一天,欢迎!

如果你的选择是明知下面这些服务总有一天也会被封掉,还是愿意在他们被一一干掉之前选一个使用,那请继续看下去。尽管有切换的痛苦,有熟悉新软件的麻烦,但我们不惜这样的代价,对我来说,这不是技术问题,这有关信念,有关按自己选择的方式生活,在这片土地上,坚持信念,坚持按自己的方式生活从来就不简单,从来就不是无需付出代价,记得这句?freedom is not free。

Dropbox 的核心我以为只是 sync(多机同步),外加 cloud 端存储可以通过浏览器访问,还有方便地与他人共享。以这3点为核心,功能很精干。开玩笑说的话,我看这就是面向消费者的版本控制软件,无非隐藏了技术细节(没有commit,check out,update,branch等等),改成了消费者友好的人机界面。这是个典型的注重产品的 soul,而不是堆砌 feature 的例子 —- 如果做不到这一点,那一个反例是,你可注意到如今国内的大学?楼房,餐厅,体育操场,课题,论文,院士数量这些都是,都是光鲜夺目的 feature,只是这些 feature 从未也不会带来实力和人们发自内心的敬畏,这样构建出的大学没有 soul,可悲地没有 soul。

以上面3个核心功能为指标,我找了这么些替代服务。后面先逐一简介,然后是功能比较(自从把 blog 迁到新地址 ResetTarget.com 以来,还真没这么认真地试用写写有价值的软件/服务了):

. SugarSync
SugarSync虽然貌似媒体曝光率不比 Dropbox,不过我看一点不比Dropbox差,也是个十分优秀的服务。单论feature,SugarSync不比Dropbox缺了什么,所以替代Dropbox绝对没问题的,实际上它提供得比Dropbox更多,有些设计用起来就能体会到“哇,这个更方便”。

SugarSync 的客户端界面直观,漂亮,拖放即可操作。有右键菜单启动SugarSync Manager,然后所有操作在SugarSync Manager 中完成,而不是右键菜单中提供直接命令。

跟Dropbox比,SugarSync最大的优点是可以指定任意文件夹加入多机sync关系,而不像Dropbox那样只有拖入Dropbox文件夹的才行。SugarSync的magic文件夹其实是和Dropbox文件夹的功能类似,全自动,无询问式地互相sync。而SugarSync Manager中可以指定任意文件夹加入同步,在其中观察多机器之间文件夹的同步关系和状态等功能非常直观也很实用。

目前有免费plan和多种收费plan,容量和特性上有差别。现在还能看见有10G 免费计划,哈哈,别错过(需要给TrialPlay一次机会哈)。如果你以前是试用用户,已经过期,还是可以转成free plan的。
这个 SugarSync 链接是我的referral链接,通过这个注册并安装客户端,你我都能获得250M的额外空间。完成入门向导还会有 250M 的奖励空间。

. syncplicity
这是在精简程度上最类似DropBox的,其功能和客户端的实现上都如此。直接命令和操作都在右键菜单命令中完成,没有类似SugarSync Manager 的控制台部分。

. ZumoDrive
ZomoDrive 的做法和上面两个比较不一样,安装后会映射一个虚拟驱动器,缺省其盘符是Z,不过用户是可以自定义这个盘符的。ZumoDrive 实际上不是文件sync,其核心只是创建能访问其他机器的文件夹的快捷方式,没有做适当的隐藏和抽象。我认为这个和Dropbox以及前面两个不太可比,介绍一下,看有哪位觉得适合自己吧。

在任意一台安装了ZumoDrive的机器(比如A,B,C 中的B机器)上,指定一个文件夹“连接到ZumoDrive”,就能在其他安装了ZumoDrive的机器A和C上访问B上的那个文件夹。这种模式有些人可能喜欢,有些人可能不习惯。

. iGliss
客户端做得有点简陋,从UI和响应性看的出来,而且不能从客户端直接注册新用户,得在网站注册,然后客户端登陆。另外,不支持代理。从工程师的角度看,做得很差,都没有兴致评价了。

. EverNote
严格说来,EverNote 的精髓不在我们前面提的3点,不大符合我们说的文件sync的主旨,不过理论上沾边,提一下,供参考,看喜好了。

比较
. 免费计划和容量
SugarSync:免费2G,现在这个免费plan的链接放在页面下方,不那么显眼,其实还是有的。另有4个收费计划,30G,60G,100G,250G,价格从50 到 250 刀一年不等。
Syncplicity:免费2G,收费的也只有两个选择,15刀每月,容量50G;还有个就是定制的。我觉得这么下来Syncplicity的钱可以买SugarSync 100G还绰绰有余,而SugarSync提供的功能又多,Syncplicity实在没吸引力呀。
ZumoDrive:免费2G,外加多种plan,从10G到500G,

. 文件操作:同步,加入,删除等
SugarSync和Syncplicity都以目录为添加和同步单位,而不是单个文件。目录可以位于机器的任何路径—这点比Dropbox好。加入文件夹后两个软件都能正确迅速地开始同步,该有的提示都有,需要用户给出order的都会询问。同步速度也不错。ZumoDrive 亦然,从任何一端访问都没问题。

从SugarSync同步的机器中任意一方删除文件夹并不会自动删除另一端的文件夹(这是正确的期望行为),也不会删后自动把另一端自作聪明地重新sync过来(也是正确的期望行为),在SugarSync Manager里会显示哪端的文件夹还在,哪端删除了,关系和状态很明了,如果愿意用户可以重新选择同步起来,这个功能考虑得很周到。

相比之下,这方面Syncplicity做的不够好,Syncplicity在收到新文件夹改动时,会询问用户本端新文件夹路径,不过缺省路径总是在my documents下,不论对端是在哪里,不够智能。在一端删除一个文件夹,另一端不会自动删除,不过也没有任何提示,想在删除端重新和对端同步比较麻烦,因为没有类似SugarSync Manager那样的控制台,查看当前多机的同步状态以及各自加入了哪些文件夹很不方便。在试用过程中,在两台机器上,Syncplicity都发生过失去响应。

. 多机器同步
能多机同步本是天经地义的,不过3个软件的免费版本都是有些限制的,都只能在2台电脑间完成。有哥们会想,那我用SugarSync连一对电脑,这一对中的一台再和第三台用Syncplicity连,如此一来不是达到3台可以超越限制吗?理论上可以,不过拿他们的Windows 版来说,这些软件都要hook Windows explorer来进行文件变化侦测,多个软件对同一个目录/文件来的话,存在发生冲突并造成混乱的可能性,XX有风险,用户需谨慎哈。

. 客户端OS
SugarSync:Windows,Mac OS X
Syncplicity:仅支持Windows
ZumoDrive:Windows,Mac OS X,Linux —- 列出了Ubuntu和Fedora,32和64的包都有

. 两端都编辑加入同步关系的一个文件
用“合适”的文本编辑器在两台机器上都打开该文件(“合适”的意思是专业的文本编辑器知道用适当的不一定是独占模式使用类似 fopen() 的调用打开文件),一端编辑存盘,另一边很快编辑器能弹出侦测到文件改变,经用户确认reload 后载入文件。期望的正确行为是同步软件(SugarSync和Syncplicity)不应该报错无法打开或无法更新文件,而编辑器应能像处理一般本地文件一样侦测改变,完成reload,而且文件应该确实是最新版本,无内容丢失,无混乱。SugarSync,Syncplicity和ZumoDrive全都完成了全部过程,都没出现问题。当然,我拿txt测试的。要实现精细的“实时”多方同时编辑,应该使用其他服务而不是这三种“粗粒度”的宏观同步软件。

. 从网站访问cloud端存储的文件
三个软件都会在服务器端存放软件,所以都可以从浏览器访问。都是https。Syncplicity的web访问页面完全基于flash,SugarSync和ZumoDrive是HTML+script。

. 专门的移动设备应用软件
SugarSync:iPhone,Android,BlackBerry,Windows Mobile。在 HTC Desire,WCDMA 情况下测试移动设备支持: Android应用启动后自动提示是否备份相机摆设的照片,很人性化,不错。为了鼓励用户使用,在移动设备上完成“发送文档”,“发送照片”和“上传照片”的用户能再获得250M空间。在Android上只能查看不能编辑文档(和文件格式无关,即便txt亦不能)。 iPad 版客户端支持编辑,很酷。
Syncplicity:无移动设备应用
ZumoDrive:iPone,Android,WebOS,这个的Android应用我就没试了。

. 代理支持
三个软件都支持,

. 方便的共享
一个url链接发给别人,就能方便地共享文件。
SugarSync:可以share 文件夹和文件,可以从客户端发起要share 的操作,不过会启动浏览器到SugarSync网站,后面操作设置等都在网站完成。可设置权限:只读或者可以添加编辑,还能设置密码。
Syncplicity:实现得有点别扭,只能share文件夹,要share单个文件这样的粒度不行,workaround 是把这个文件放到一个目录然后share目录,折腾。
ZumoDrive:可以share文件夹和文件,ZomoDrive客户端会直接生成URL,不过没有权限密码等设置。

. 资源占用
一般来说,“资源占用”应该写写内存,处理器,IO (包括硬盘和网络)等使用的均值,峰值,分布,典型情况,极限数据等。不过,其实,我长久的意见都是,最终消费者不具备也不需要具备知晓并衡量这些指标的技能。似是而非的数据和理解其实更会误导用户,比蠢货更可怕的是喜欢说话的蠢货。
作为结论,可以说,SugarSync,Syncplicity 和 ZumoDrive 的资源占用中等,它们本非小巧类型的工具软件,不过使用的资源也绝不夸张。如果你的 Windows (不论什么版本)本来就能顺畅地在电脑上跑起来,电脑的主要部件属于 3 年以内的那几代产品,这 3 个软件问题就不大。

最后,因为我是工程师,喜欢全面的控制感和精细的选项,所以我的选择是SugarSync。各位可以根据自己的需要选用一个。

SugarSync网站上还有个和很多网站的feature对比列表,也有参考价值。里面包括了MobileMe,Box.net,Mozy等。不过开头我说了,sync是我看中的核心功能,也就是文件更新后能自动同步到多台机器上,而 Box.net 等都是太粗粒度的存储 storage 服务,sync不是其核心或者做得不好,因为今天根本没有考虑,也就没试用。

这篇已经够长了,剩下的一些另写一篇。