Google Contacts Best Practices

大家可能不了解Google Contacts,它是我起的名。其实Google Contacts不是独立的google service,只是gmail中的Contacts而已,我用它来manage my contacts,为了方便,我称它为Google Contacts。 我自从不再使用.wab (outlook express address book, or windows address book) 来作我的通讯簿以后,一直再找一个contacs management solution。找了很久没有找到一个完美的方案,期间我没有一个统一的记录方式,导致很多联系人信息缺失(这里要对他们说抱歉了)。与其继续寻找,继续缺失,不如痛下决定,选择一个方案,尽可能地用好它。于是Google Contacts就成了我的通讯簿管理方案。 选择Google Contacts的理由是: 我没理由地喜欢google。 Google 的服务器在全世界范围内都能被快速地访问到。我所谓的全世界,其实也就只在意中国和中国以外。很多服务在中国以外访问速度很快,到了中国慢得难以忍受,反过来也是。在测试Google Contacts的过程中,我认为其访问速度在中国和中国以外都可以接受。 Google的服务很有保障。 Google Contacts就是gmail的一部分,不用再想着怎么去集成这两个服务。 搜索日久遗忘的联系人不是件容易的事情,但Google Web搜索做得这么好,Google Contacts搜索总可以借点光吧。 Google Contacts可以开放式添加联系人的电话、邮件等字段,还可以开放式添加personal, work, whatever section names. 估计不是用关系数据库。 但Google Contacts也有缺点,我有部分对策: 无法sub-group。 对策:在分组时直接按最细的级别分组。比如以前在outlook express address book里我有一个分组“同学”,子分组“初中同学”,“高中同学”,“大学专业一同学”,“大学专业二同学”,“Sussex同学”,“培训班同学”等,现在直接就拿子分组作为分组。使用一段时间发现多级分组也没什么必要,因为我不需要跨分组发送消息。 导入时丢失分组信息,导出时还是丢失分组信息。 对策:导入到Google Contacts我陆陆续续花了一周时间手工重建分组信息。虽然费时,但我quite enjoy。我边把联系人归组,边回想这些联系人是从哪里来的,有些事情回想一下还是挺有意思的。 导出时还是丢失分组信息的问题我暂时没办法解决。我是未雨绸缪,万一Google服务不好了,或者Google Contacts开始收费了而且收费不合理的话,我就得离开Google Contacts。 到那一天,或许Google Contacts的export功能已经改善了,或许我已经会用google… Continue reading Google Contacts Best Practices

Convert .vob to .iso

今天整理硬盘,想把以前以AUDIO_TS和VIDEO_TS存放的.vob等文件转化成单个DVD镜像,因为点选一个个的.vob文件来播放实在不方便。 我第一次转化.vob成.iso(我最喜欢的镜像格式),也不知道可不可行,所以google convert .vob to .iso是行动前的必修课。可惜google到的前几个答案都是让我去下载一些我没听说过的软件。对于无名软件我不喜欢尝鲜,所以我决定自己摸索。 nero是刻录界的王牌,我首先想到它。结果一试就成,出奇的顺利。我是这么做的: 创建Video DVD project 添加AUDIO_TS(即使AUDIO_TS是空的)和VIDEO_TS(VIDEO_TS下除了.vob还有.ifo和.bup两种文件,如果没有,可能需要先创建之)两个文件夹 烧录到镜像

Google Sites Best Practices

我一天淫浸在google sites,起先还抱着试玩的态度,可是几个小时下来,成果显著,做出来的google site像模像样,于是我转变态度,决定启用这个google site,于是又花了几个小时添枝加叶。现在第一个google site基本完工,我已颇有心得,这里畅谈一下。 要玩转google sites,首先要明白google sites适合干什么用,能干什么,不能干什么。如果你硬拉google sites去建它不擅长的网站,你肯定会失望。与其后来失望,那你还不如先花几分钟读读我的Best Practices。 google sites适合建project oriented sites,但不能拿它来作project management,google sites根本就不是为project management开发的。 google sites适合存储一次性信息,不要指望数据导入导出,不要指望在数据之间建立复杂的关系。 google sites适合单个处理的文件,不要指望批量上传文件,也没有ftp。 google sites适合组织内部成员共享信息,和少量外部成员共享也是可行的,但吃不消管理大量外部成员,分组分级别共享更不可能。 google sites适合懒于备份的用户,google sites后台的版本控制可以方便地追踪、撤销、恢复最近的网页修改和文件上传。但如果你很挑剔,你会感觉版本控制的控制权不在你手;如果你很万全,担心google sites的数据哪一天被黑,想把你的全站做个本地备份,这恐怕只有用手工去做了。 google sites适合在网页里调用google hosted的数据,如google documents, google calendar, google picasa, google video/youtube,google gadget,集成度堪称完美。但如果你想调用别的地方来的数据,那工作量就大了,不可能象我这样在一天内做出一个像模像样的网站。 要建好google sites,动手之前必须先规划。规划内容是: sites分类法(不是归类,google sites归类显示的功能完全不用我操心),我建议site与site之间以使用者权限来分,因为你不能单独设置一个site下某个分支的共享发布,共享发布的设置是对全站有效的。如果你有information A要共享给person A,information B要共享给person B,你必须建两个sites,分开存放information A和B。 site hierarchy也很重要。url是从page name而来,create new page时就创建好了,无法更改。如果你发现当初page name取得不好,想换一个page name是可以的,但url保持不变。如一定想要个新url,只能delete page,再create… Continue reading Google Sites Best Practices

节选设置

大家普遍认为WordPress自带的excerpt功能太弱,于是extend excerpt plugin很多,但我没找到我想要的。这些excerpt plugin大多为了解决html标签截断的问题、字数还是字节的问题、显示格式问题。 我想找的excerpt plugin是为了解决excerpt的缺省值问题,我最喜欢的excerpt值是: 如果post excerpt不为空,显示该excerpt字段; 否则,如果post content中含有<!––more––>标签,显示<!––more––>标签之前的内容; 否则,读取post content的既定字数。 我就这么一个简单的要求,怎么没有现成的excerpt plugin呢?

7zip支持rar啦

很久没有关心7zip了,以前下了432版本不支持rar格式的压缩文件,而rar又是这么流行,我当时只能放弃7zip。为什么7zip不能支持rar呢?7zip的解释是rar不公布它的压缩算法,所以7zip没法支持rar。 最近偶然想起,去下了7zip最新版457,发现它开始支持rar格式的压缩文件了,看来7zip买到了rar的算法,或是rar公开了算法。不管怎样,7zip终于能满足我对解压的要求,所以7zip以后就是我的装机必备软件了,winrar退出了历史舞台。 话说回来,对比winrar,7zip还有一个很主要的缺陷:用7zip打开一个压缩包,想要直接双击运行压缩包里某个文件,而如果这个文件需要运行时需要压缩包的其他文件(比如,.exe附带.dll),7zip就会提示说某个文件没找到。原因可能是7zip处理不好解压后临时目录下的文件, 这时一定要完整解压压缩包里的所有文件到某个非临时目录,然后才能使用其中的文件。winrar就没有这种hassle。但是为了支持开源,我忍了。

Google新增服务:google sites

今天刚刚注意到Google Apps推出了google sites,之前Google Apps就有一项google web pages,这两者都是傻瓜式建站服务。google sites侧重于内容管理和合作共享,google web pages只是单独的页面设计。

开源ERP软件的比较

如何选择适合自己的ERP软件?这个问题困扰我好久。老板一直承认ERP很重要,但就是没有预算做一个ERP project。这倒也好,我有了很充足的一段时间到处试用各种ERP软件,迄今已经颇有心得。这里说说十个开源ERP软件,因为ERP软件的选择已经够多了,不开源的ERP软件我基本不考虑。 首先要说说compiere和adempiere。我也不能免俗,因为现在一说到ERP,闭源世界里的大哥大是SAP,开源世界里的大哥大似乎就是compiere。我水平有限,一年多以前我就想装一个compiere来试用,但就是装不成功,我就觉得compiere太复杂,后来一直没敢再碰。最近看到一个排名,列了25个最受欢迎的开源软件(不限于ERP),adempiere作为一个ERP软件,排名第三,不容易啊。adempiere是在compiere基础上开发的,这又引起了我的兴趣。于是下载来,费了点周折,花了两天时间,总算装成功了。我一开始没完整阅读安装说明,其实安装并不难。用了一小时adempiere,实在没有兴趣再用下去。因为 adempiere的业务逻辑实在太复杂,我理解不了。比如我想新建一个产品,把它入库或者上架销售,怎么也找不到这个流程。 adempiere的网店功能几乎空白,只有一个店壳。 adempiere没有contact management,甚至连个contact都没有,我只找到client,或是business partner,或是staff。 接下来要说OpenTaps。它也列在25项开源软件之一,排名23。OpenTaps是目前我最看得上的ERP软件,喜欢上的理由也很简单。因为 下载1.0.0-preview7下来有349M,功能肯定很齐全,不用我再东找西找找插件了。不过我觉得有点奇怪,一年多前我下载的0.9.2版只有60M,差距如此之大。 OpenTaps是在ofBiz基础上开发的,ofBiz是Apache Foundation的一个project。Apache是让我心旷神怡的open source product,爱屋及乌就到了OpenTaps。 OpenTaps支持而且推荐使用MySQL。 OpenTaps的安装过程也令人惊喜。我在安装adempiere时设置http port: 880, https port 8443,但半途碰到了一些困难,一时解决不了,就转而去装OpenTaps。OpenTaps的安装超简单,一解压就行,还没怎么设置,结果http://localhost:880和https://localhost:8443上竟然没出现adempiere而出现了OpenTaps。 OpenTaps有我想要的contact management。 OpenTaps很注重网店功能,自带的demo shop功能很完整。 postbooks/openMFG/xTuple ERP。名称上就让我很困扰,哪个是哪个啊?唉,不管那么多,下了试用先。安装倒很省心,只是postbooks的contact management无法列示contact recent activities。这个功能是我必需的,所以postbooks还没热身就被我卸了。 openbravo。开源ERP软件琳琅满目,本来openbravo没引起我注意,但后来我搜索MVC+ERP,各种结果都指向openbravo,看在MVC的份上,我试着安装openbravo,发现openbravo安装时的问题特别多,最后还卡在那里,实在折腾不了。我怀疑是数据库环节出现问题,但openbravo只支持oracle和postgres,我知之甚少,只能放弃。 SugarCRM。其实SugarCRM有很多ERP的功能,自称为CRM有点委屈自己。SugarCRM曾评为linux平台下的十大杰作之一,功能和稳定性是有目共睹的,SugarCRM也能在Windows下运行。但SugarCRM只想做个CRM增强版,我不能指望它涵盖ERP的全部功能。 Hipergate。安装也是困难重重,装好以后仍无法登录Demo,换句话说,Hipergate还没真正露脸给我。 WebERP。跟SugarCRM的自谦正好相反,WebERP只能作accounting软件,自称ERP让人觉得有点上当的感觉。因为功能单一,安装和使用也很简单,如果只是寻求accounting功能,WebERP不妨做个候选。 Tiny ERP。如名字所述,太tiny了。 CK-ERP。要求装在Linux下,我没试过,不过看了简介,CK-ERP只是多个开源软件的连接件,没有核心,这跟ERP逻辑背道而驰啊。CK-ERP想整合的都是各个领域有众多用户的开源软件,CK-ERP是否好用完全取决于整合程度。但我对之没有信心,因为CK-ERP开发团队没有给我这个信心。 erp5。也要装下Linux下,没用过。714M的安装文件啊,让人想入非非。 每个开源ERP软件都说要让SME用得起ERP。看看SME的定义,500名雇员以下的都是SME(SME的定义很多,按人数来定比较简单)。1-500雇员的企业实施ERP区别很大,Tiny ERP不太适用于3人以上的企业,OpenTaps完全适用于1-500人的企业,50人以下的企业不太玩得转compiere/adempiere,openbravo,Hipergate。500人以上的大企业要玩ERP,因为大企业有足够的财力做二次开发,OpenTaps相比compiere/adempiere,openbravo,Hipergate没有特别的优势,当然我也拒绝承认OpenTaps在大企业竞争不过compiere/adempiere,openbravo,Hipergate。 我承认上述结论有偏颇,因为我完全站在我的需求评价这些开源ERP:我们公司正从Act/Sage Line 50转型中,老板又是目光短浅,总是想零二次开发。然而,请您别指望这个问题有个大众化的结论,因为ERP不能以机械化大生产模式实施,每个公司都是个例,我只能站在我自己的角度说问题。

让环境变量生效不需重启Windows

很多安装程序在安装完成后并不要求重启Windows,而新的环境变量已经生效了,可见在不重启Windows的情况下让环境变量生效是完全可行的。 可我搜索如何不需重启Windows让环境变量生效的方法,只找到三类方案: 下载一个专门的软件 编个小程序 修改注册表 我既然是个懒得重启Windows的人,难道我会不厌其烦按上述三种方法去做吗?没办法,我只有自己摸索。最后找到一个非常简单的在Windows下直接让环境变量生效的办法: 先到我的电脑>属性>高级>环境变量,添加新环境变量或修改已有的环境变量,然后运行“DOS命令提示符”或run cmd,假设要修改PATH变量,不管PATH的原值是什么,在DOS窗口直接把PATH修改为任意值,关闭DOS窗口,这时,我的电脑>属性>高级>环境变量里PATH已经在Windows全局生效了。 不用担心在DOS窗口的修改会影响我的电脑>属性>高级>环境变量里的修改,DOS窗口的环境变量只是Windows环境变量的一个副本,副本的改动不会影响正本,但会触发正本的刷新,这正是我想要的——让环境变量生效。 附注: 不懂在DOS下修改环境变量?简单得很,如要修改PATH,“SET PATH=C:\”,等号两边不要有空格。PATH环境变量最常用,专门有个DOS命令PATH,用来查看和修改PATH值,这里就不展开讲PATH的语法了。 想验证一下环境变量到底有没有生效?简单得很,新开一个DOS窗口,如要看PATH值,“ECHO %PATH%”。同上,PATH还可以用PATH命令来查看。

WP Shopping Cart Not Support utf-8

Recommended by WordPress, I installed one of business blogging plugin – WP Shopping Cart. Although I don’t think it’s a good idea to sell anything on this blog, I wanna try the plugin by categorising under WP Shopping Cart my investigation to hundred brands in Bicester Village. To my disappointment, this plugin (ver 3.6 beta… Continue reading WP Shopping Cart Not Support utf-8

Why Google Analytics Tracking Code Was Not Included In Source Code?

这个博客从一开始就装了Google Analytics for WordPress,但我在前台页面的源代码里总看不到tracking code,我为解决这个问题陆陆续续花了不少时间找原因,把plugin反复deactivate and activate,甚至卸载plugin再重装、切换theme,都没见source code 包含任何analytics的字眼。 我在wordpress.org寻求前人的经验,也有人说Google Analytics for WordPress这个plugin无法工作。他最后是放弃了Google Analytics for WordPress,还推荐了另一个google analytics plugin叫sem google analytics。但是我见Google Analytics for WordPress功能远比sem google analytics强大,不舍得放弃。 试装sem google analytics后,我查看了前台页面的源代码,代码里有一行注释,说sem google analytics不追踪admin登录状态。一语惊醒梦中人!同理,我的Google Analytics for WordPress一直就是正常工作着的,只是我一直在admin登录状态去查看源代码,也就无法看到tracking code,但Google Analytics for WordPress一直没给任何提示说明这一点,导致我瞎折腾,这是Google Analytics for WordPress做得不够好的地方。 花了很多时间,总算搞明白一个粗显的道理:Google Analytics for WordPress不追踪admin登录状态。