我的电脑一直是用Linux和Windows双启动,Evolution是在Linux上的email客户端,现在打算换成Thunderbird。其实Evolution没什么特别不好用的地方(除了更占内存,偶尔崩溃等小麻烦外),可以继续用下去。只是现在打算windows和linux下都用同一个email客户端,方便管理(导入导出备份等),Thunderbird就是最好的选择了。
除了跨平台,TB最大的功能就是扩展,跟firefox一样,强大的扩展性可以说是它们的killer feature。现在在用的有:
比较有趣的扩展是Display Mail User Agent,它会显示发件人所用的email客户端软件的logo,用了它才发现原来有那么多以前都不知道的email客户端软件。
另外值得一提的是TB的垃圾邮件过滤也做得不错。
现在Evolution最让我怀念的功能是unmatched vfolder,希望将来TB上也能有这样的功能,或者有扩展提供这个功能,实在不行,自己写一个也不是不可能。
应该说Mozilla 产品线(包括Firefox,Thunderbird,Sunbird/Lightning等)能否成为客户端开发的平台?
想到这个问题是因为正好工作上的项目有可能要开发一个客户端,首先想到的几个可能的选择:
Win32应用,在福州倒是不难找到熟练的Delphi工程师,开发应该也很快。但感觉有点落后,另外团队里没有熟练的Delphi/VB程序员,也未必有兴趣去学,开发上的经验和代码也不大可能能在将来的项目上用到,为这个客户端专门招聘一个工程师也说不过去;
Java Swing,优点是工程师们已经熟悉Java了,而且跨平台(okay,就算是了)。缺点是团队除了我自己在上个世纪的经验(几乎忘光)之外没有多少Swing实战经验,其次Swing应用未必是那么容易开发而且慢和占内存(据说Java6进步很大,还没时间研究),然后还有个部署(首先就是得在客户机器上装JRE)的问题;
.NET Windows Forms,.NET framework现在在很多电脑上都有了(吧?),开发上C#与Java很接近,中文资料文档网络上下也很丰富,开发速度(考虑prototyping等过程)也不会慢,虽然开发过程中积累的经验和代码在将来“或许”还有用,但还是要程序员去把.NET捡起来。
然后突然想起,这个客户端是否可以考虑用Firefox的扩展来做呢?想到的优点有:
工程师熟悉Javascript, CSS,实际工作中其它项目里天天在用;
界面开发上XUL不难,也不算难看;
绝对的跨平台(从Unix/Linux,Windows,到Mac);
成熟的安装,更新机制(这点很重要);
数字签名机制;
Firefox的一些扩展(Firebug,Console2,Extension Developer,Javascript Debugger等)结合起来提供了足够好的开发环境;
对程序员来说,应该更有趣味性和挑战性,而且没有浪费(见第一点);
扩展很轻小;
当然,这个项目是否能用Firefox要看最终用户能否接受(也许最终还是选择前面说的三个选择之一)。重点是对我来说,项目开发里客户端的开发和部署方案又多了一个值得考虑的选择,虽然这个方案解决的问题有限,不能满足或者适合所有客户端的需求(比如需要连接本地关系型数据库,哦,等等,改用XML+XPath+XQuery?… )。
对了,还有一个好处:推广Firefox!:D
平时使用电脑的时候为了备份或者整理硬盘空间,需要了解目录的大小,Linux上有df和du两个命令,Windows上却没有对应的命令或者工具,而Windows Explorer(资源管理器)上的Details view里只能显示文件的大小,不能显示目录的大小。
痒总是有人会挠的,于是就有了Folder Size和WinDirStat。
Folder Size 是个Shell Plugin,安装后,打开Windows Explorer,到要查看的目录,选择detail view,鼠标移到列表头,按右键,选择Folder Size就可以了。要注意的是因为读取目录大小的操作可能比较耗时和导致大量读硬盘的操作(如果某目录下子目录深,文件多,或者变化频繁)。在控制面板里还有个Folder Size的选项,可以终止Folder Size服务。
WinDirStat 是个独立的程序,它在显示目录大小之外,还提供了使用TreeMap 的直观的展现。
LOL, love it, especially the ending when all the programmers parachute off the plane.
在二十七楼写blog的Cathayan向流氓投降了一次 ,跟Royal几天前 一样,使用多年的Windows终于重新装了。
面对病毒,恶意和流氓软件的猖獗和泛滥,除了使用防病毒软件,恶意软件清楚工具,和不得已的重装等手段之外,似乎大部分(没有调查统计过,只是个人有限的观察和猜测)用户都忽略了或者不知道最有效的也是第一道防线:使用受限的帐号使用电脑。
每个程序都有一定的权限,能做什么,不能做什么。对于大部分桌面程序,权限是由运行它的用户帐号决定的,如果用户能够安装软件,修改注册表,那么被他运行的程序也可以,如果用户用有管理员权限的帐号,那么上网或者收邮件感染到的病毒多半就能干任何想干的事情。
所以,第一道防线就是使用没有管理员权限的帐号,使用满足做大部分工作所需要的最小权限,即Principle of least privilege 。
需要使用高级权限的次数和时间相对平时使用电脑来说小很多,每次需要的时候再切换到高级用户或者管理员的步骤也不复杂,多几步的代价完全值得,也是应该的。
公司里几个星期前开始这么实施,所有同事的电脑帐号都是普通用户,再加上杀毒软件和SpyBot,到现在似乎还没有人投诉不方便或者出现被病毒或者流氓软件骚扰的报告。
Firefox 2.0发布后,用户抱怨最大的似乎对Feed的显示不使用用户定义的XSL和CSS(Feedsky的吕欣欣同学曾经抱怨过,昨天看到Zola也抱怨了)。这个问题已经被提交为Firefox的一个Bug ,但是Firefox开发团队认为这是个功能而不是Bug,不用修改(WONTFIX)。
Ben Goodger, 年轻的Firefox开发者,昨天做了自己的解释 :
In general, we felt that RSS reader was a very personal choice to be made by the user, and that we did not want to compete with existing RSS readers that exist , which are very competent in a variety of ways. Rather, we wanted to allow users to easily subscribe to feeds using their favorite reader. The UI presented is not intended to be one for consuming the content, but rather previewing the content before subscription (since many feeds have non-descriptive titles). I think this is where the confusion arises, because the presentation is similar to Safari’s and IEs and so people may expect reading functionality.
Firefox在看到一个URL的页面是XML后,会先扫描(scan/sniff)文档的前512个字节,如果发现有<rss或者<feed,就判断这是个feed文档,不理会自带的style,而直接使用Firefox的方式展现这个文档。所以,最快速和简单的解办法就是不让Firefox在文档的前512字节里看到<rss和<feed。上述的Bug报告的反馈里,Firefox开发者就提到了这个Hack :
The emerging workaround for this problem (which isn’t new to us, since we’re using the same heuristic that IE7 betas have been using for months) is to put in a comment ranting about the evils of sniffing web content and overriding the desires of web developers which is long enough to move "<rss" or "<feed" out of the first 512 bytes, since that’s all we sniff.
这是最简单的办法,代价是512字节。Mozilla Developer Center也提出了另外两个方法,见Custom styles for RSS 。
中午向Zola建议了这个办法,充满PK精神的Zola小朋友于是在自己的feed文档的开头部分加进了了三十二遍“f*** firefox2.0”的xml comment后,Firefox2.0上成功显示了用他自己定义的风格的feed 。
我个人看法是Firefox应该尊重信息发布者以及阅读者自己的选择,在没有自定义的时候使用Firefox的显示方式,在已有定义风格的时候,还是尊重发布者,使用他们定义的风格。
话又说回来,我还是不很理解为什么要对Feed定义显示风格,Feed是给机器/程序读取最近更新内容,用来展现内容的毕竟还是HTML。
Wed Nov 29 2006 02:03:42 GMT+0800 (CST)
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.8) Gecko/20061115 Ubuntu/dapper-security Firefox/1.5.0.8
2006111503
[20]
以上用MR Tech Local Install生成,themes和plugins忽略。