出家如初,成佛有余

Feedburner(google)新的Feed代理烧录地址

Posted in Uncategorized by chuanliang on 2008/08/31

    要在新买的Touch Diamond上用Egress订阅ReadWriteWeb、Techrunch、Mashable的RSS,这两个站点的Feed都是用的FeedBurner(2007年被google收购了),FeedBurner的烧录地址被G.F.W已经是很久的事情了,在PC上还可以通过代理或诸如Google Reader、newsgator这样的国外的RSS器来浏览,但在PPC用在线浏览或代理太麻烦了

   ReadWriteWeb的订阅地址是http://www.readwriteweb.com/rss.xml,实际最终的地址跳转到了http://feeds.feedburner.com/readwriteweb,目前此地址被G.F.W了。看来只有利用Egress支持代理方式在PPC上看ReadWriteWeb了,要找个好的代理挺费劲的。

   在订阅Techrunch时候,发现Techrunch的Feed地址已经变为http://feedproxy.google.com/TechCrunch,而不是原来的

http://feeds.feedburner.com/TechCrunch,此地址还没有被G.F.W掉,试验了一下地址:http://feedproxy.feedburner.com/TechCrunch发现也可以访问,看来google应该是推出了新的Fedd地址,呵呵,看来他们也了解广大人民群众的痛苦啊。从“Feedburner推出Feed代理烧录地址”及“Feedburner推出备用地址”也得到了确认。

    试验了一下ReadWriteWeb的类似地址:

    http://feedproxy.google.com/readwriteweb

    http://feedproxy.feedburner.com/readwriteweb

    Mashable:

    http://feedproxy.google.com/mashable

    http://feedproxy.feedburner.com/mashable

  发现都可以订阅,暂且这样吧,但愿不要再被G.F.W掉,苍天保佑吃饱饭的人民。

  PS.经过这几天的测试发现,    http://feedproxy.feedburner.com/readwriteweb的更新好像存在问题,不是很及时    http://feedproxy.google.com/readwriteweb很及时,因此都修改为使用http://feedproxy.google.com .09-07

Technorati Tags: ,,
Tagged with: , ,

通过ActiveSync同步Onenote Mobile 与Onenote 2007

Posted in Uncategorized by chuanliang on 2008/08/31

    用了接近10年的Nokia的机器,说实话Nokia的质量真的不错,换了7、8台机器,Nokia的机器没有出现过太大的质量问题。只不过感觉在智能手机的发展上,围绕手机操作系统平台相关的产业链是最大的竞争点。在这一点上,感觉Symbian平台的开放性、功能完备性及开发效率上,还是比不上像Microsoft、Apple这些做操作系统起家的厂商。

    考虑到与日常PC办公软件的兼容性,同时为了提高个人GTD管理能力,提高工作效率,换机不愿意再继续Symbian平台的机器,打算改用Windows Mobile平台的机器,新买了一台HTC Touch Dimaond,操作系统是Windows Mobile 6.1,当然由于是水货版本,因此带了WI-FI。ROM是用中国移动的心机定制版本刷的,也即S900,此版本带的Office Mobile中已经带了Excel Mobile、Onenote Mobile、PowerPoint Mobile、Word Mobile。

    首先要做的事情的是能够保持Outlook及Onenote与手机的同步。因此安装了ActiveSync来做PC与手机的同步。

    PC的操作系统:Windows XP SP2

    ActiveSync:4.5

1、ActiveSync配置

   下载安装ActiveSync 4.5版本。

    PPC端:

      开始->设置->连接->由USB连接到PC->ActiveSync(与Outlook同步),取消“启用高级网络功能”,缺省为选中

     如果不配置成ActiveSync模式(磁盘驱动器模式),那么直接通过USB连接到计算机上时候只是作为一个USB盘符出现,并不会采用ActiveSync方式同步。

    PC端配置:

      image

    配置好后,同步ActiveSync同步Outlook的联系人、日历、任务等都没有问题,但同步Onenote没有成功。

2、Onenote安装

    Onenote要与Onenote Mobile同步,PC端的Onenote 应当是Onenote 2007版本,以前版本好像支持存在问题,Onenote 的安装程序在Office 2007  大企业版中有。

    在PC端启动Onenote 2007后,在Onenote 2007菜单的工具->选项 中应当有Onenote Mobile选项,如果Mobile端没有安装Onenote,可以通过此处安装Onenote到Mobile上,或者直接用Office 2007安装路径下的Office122052OneNoteMobile.CAB在Mobile上安装。由于买的机器的ROM版本中已经带了Onenote Mobile,因此不用安装。

3、Onenote配置

    将Mobile修改为ActiveSync模式后,通过数据线连接到PC上后,在ActiveSync PC客户端通过工具->设置,选中Microsoft Office OneNote选项。

image

  确定后,ActiveSync应当可以执行同步操作,然后会提示Onenote以前未与计算机同步,选定“将移动设备上的项目与此计算机上的项目合并”,然后ActiveSync会执行同步操作。

image

    然后在PC端的Onenote中应当会出现Onenote Mobile笔记本选项夹(在Onenote 2007的默认笔记本位置的目录下也会生成一个OneNote Mobile的目录),在此笔记本下会有一个叫“来自S900的便签”的分区,在此分区下可以建新的页或分页,这样可以由ActiveSync来实现与Onenote Mobile的同步。

    要与Onenote同步的Onenote页面都必须放到ActiveSync生成的“来自S900的便签”的分区下,不然无法同步。开始以为是只要放到Onenote Mobile目录下的页面都能够实现自动同步,试验了很久才发现此规则。

    目前Onenote Mobile不能够指定Onenote笔记存放的目录(查找了注册表也无果),只能存放到“主存Application DataMicrosoftOneNote Mobile”下。

   在同步过程中如果出现无法识别设备或无法自动同步的问题,我自己在同步过程中就出现了一堆问题,下面是采用的一些方法:   

  • 注意Outlook与ActiveSync的安装顺序及版本

    应当先安装OUTLOOK再安装ActiveSync,而且应当是Outlook 2003以上版本,而不是Outlook Express

  • 采用“ActiveSync模式”,而不是“磁盘驱动器模式”

    在PPC端:开始->设置->连接->由USB连接到PC->ActiveSync(与Outlook同步)

  • 禁用防火墙

    刚开始时候将PPC通过USB连接上电脑,始终不能同步,后来发现是防火墙把端口禁用了。由于ActiveSync 采用TCP/IP栈来实现PC与PPC之间的通讯,所以会受到防火墙设置的限制,出了问题可以先禁用一下防火墙试试。

  • 禁用“启动高级网络功能”

    在PPC端:开始->设置->连接->由USB连接到PC->ActiveSync(与Outlook同步),取消“启动高级网络功能”选项(默认状态为启用),然后重新连上USB数据线,一般即可解决问题。

  • 删除Onenote的目录

    在PC端直接删除Onenote的默认笔记本位置的目录下的OneNote Mobile目录,然后重新进行Onenote的初始化同步过程

  • 解除PPC和PC之间的关联关系删除掉

    PC端:在PC端的ActiveSync管理界面上执行:文件->删除移动设备,重新进行整个设备的同步,只不过此种情况下,通信录会出现重复同步的现象。

    PPC端:开始->程序->ActiveSync->功能表->选项->选择要删除的PC,删除即可。

  • 禁止ActiveSync自动运行

    缺省情况下,PPC后台始终有ActiveSync进程在运行,不停执行同步操作,即使通过Task Manager这样的软件停止ActiveSync进程后,过上一会儿又会执行同样的同步操作,这样挺消耗系统资源及电源的,不希望ActiveSync不停地自动同步,当然通过USB连接上后还是希望能够自动执行同步操作,可以通过如下步骤来禁用ActiveSync自动同步。

   在PPC端:
   1、开始->程序->Activesync. 打开Activesync。

   2、点击ActiveSync最右下角的“菜单”。此时候在菜单中, “日程安排”选项是灰色的,不能更改。

   3、点击“添加源服务器”

   4、在后续的配置中,随意输入电子邮件地址、用户名、密码、域、服务器地址等信息后完成Exchange源服务器配置,回到ActiveSync主界面,多了一个Microsoft Exchange  ,停止Exchange的同步操作

   5、点击ActiveSync最右下角的“菜单”,此时侯在菜单中,“日程安
”选项可以点击了,点击“日程安排”

   6、在日程安排配置界面,把“高峰时段”和“非高峰时段”都改为手动,而不要使用缺省的“项目到达时”

   7、点击OK按钮,回到ActiveSync主界面  

   8、重启PPC(Reset),用的是psShutXP,用Touch Diamond红色的Reset按钮费劲

   9、点击ActiveSync最右下角的“菜单->选项->选中Microsoft Exchange->删除。

 

关于Onenote Mobile,有几个不错的插件:

Copy to Mobile Device:安装完成后,会在Onenote菜单上增加“Copy to Device”按钮,点击此按钮可以把当前编辑的页面(可以没有在Onenote Mobile笔记本中)自动拷贝为Onenote Mobile笔记本的页面,方便同步。

Use OneNote instead of Outlook Notes:http://blogs.msdn.com/johnguin/archive/2007/04/16/4-16.aspx

Export Outlook Notes to OneNote: http://blogs.msdn.com/descapa/archive/2007/02/14/export-your-outlook-notes-to-onenote.aspx

其他有用的插件,可以参考:http://blogs.msdn.com/johnguin/archive/2008/01/17/a-summary-of-the-onenote-powertoys-from-the-test-team-for-2007.aspx

门户社区REST(Representational State Transfer)支持技术实现方案

Posted in Uncategorized by chuanliang on 2008/08/28

    在门户社区开发中,从性能角度,我们尽量采用动态页面静态化+AJAX的方式来满足性能的要求,但对于一些动态请求,按照SEO的基本原则,所有的页面请求url都应当尽量采用静态页面的形式,而不要采用动态页面形式,以提高搜索引擎的检索率。尽管目前的google及baidu等搜索引擎宣称支持动态页网的抓取,但与传统的html文件相比较抓取率仍不在一个数量级。因此在开发时候url地址不应当采用

    http://www.yeeach.com/login.action?username=myusername&passwd=mypasswd

    而应当采用采用如下形式的url请求地址:

    http://www.yeeach.com/login.action/username/myusername/passwd/mypasswd

    当然也可以采用RoR类似约定俗称的规范方式,通过规则指定对应位置的参数含义:

    http://www.yeeach.com/login.action/ myusername/mypasswd

    目前我们是基于Struts2+Spring+Hibernate的模式,采用此种模式后的开发模式后,一些开发上的调整策略:

1、 页面编写

    在编写页面时候对页面中的url链接地址采用:

    <a href=”http://www.yeeach.com/login.action/username/myusername/passwd/mypasswd”>test</a>

    的形式,而不要采用

    <a href=”http://www.yeeach.com/login.action?username=myusername&passwd=mypasswd”>test</a>的形式

2、 请求处理逻辑

    目前有如下集中方案可以选择:

  • 采用struts2或RoR、CakePHP这样的框架对REST的支持来自动完成

    功能:目前相对有限。另外Struts2官方的release包中,从2.1.2中才缺省带有此功能,以前版本必须自己由代码编译。

    性能:依赖于框架的性能处理,由于struts2中是采用filter+plugin处理,因此性能应该一般

    开发模式:需要遵循其各框架对REST约定俗称的规则。目前要让大家改变这种开发习惯,不是很容易,因此暂时不采用此种方式

  • 采用apache或lighttpd对mod_rewrite的支持来完成

    功能:对rewrite支持较为全面和丰富,由apache等来提供支持

    性能:最高

    开发模式:由mod_rewrite自动完成从http://www.yeeach.com/login.action/username/myusername/passwd/mypasswd转换为http://www.yeeach.com/login.action?username=myusername&passwd=mypasswd,然后提交给tomcat的login.action。在struts2层面后端处理逻辑与正常开发模式相同。

    但是在开发时候,需要有apache或lighttpd支持,相对麻烦,开发时候可以采用如下的UrlRewriteFilter,不采用mod_rewrite模式。

    部署模式:部署时候采用此种模式

  • 采用java的UrlRewriteFilter

    功能:实现了部分mod_rewrite的功能,但需要依赖应用服务器,对于静态页面的处理性能较差。

    性能:一般,与过滤器性能相同

    开发模式:配置UrlRewriteFilter支持,作为开始时候mod_rewrite的替代

    部署模式:采用mod_rewrite,一般情况不采用此种模式,个别情况(例如对原有接口)采用此种模式

3、 结论:

    在开发时候采用UrlRewriteFilter的支持以简化安装部署lighttpd的麻烦,在部署时候采用lighttpd的mod_rewrite来完成REST模式的支持,不采用struts2的REST Plugin。

 

我的sns社区思考1-社区关系模型

Posted in Uncategorized by chuanliang on 2008/08/22

手机客户端IM技术实现思考3-聚合化生存

Posted in Uncategorized by chuanliang on 2008/08/18

    目前互联网上的IM市场竞争极其的激烈,整个市场的垄断格局基本上形成,要做一个大而全的IM基本上很难了,当然在一些垂直行业一样存在较大的机会,例如阿里巴巴的贸易通。

    在无线互联网上目前IM竞争相对还不是很惨烈,但那些在互联网占据核心优势的企业具有先天的竞争优势,等到无线互联网相对成熟时候,这些公司全力大举杀入,初创性的公司在技术、资源调度能力、市场影响力等方面都无力与其竞争。

    既然这样对于后来者来说是否还需要做IM,在IM市场是否还有机会呢?

    我觉得在无线互联网领域IM还有很大的市场机会,而且IM是任何无线互联网公司都应当做的。当然需要在产品定位上及产品形式做到与传统IM的区隔。要做到区隔需要从用户需求的原点开始,进行用户群细分。  

    与互联网IM不同,手机终端本身最大的功能还是通话功能,而IM基于VOIP的协议可以较好解决用户低成本,而通话费用是运营商们利润根本,因此这也是移动飞信、联通超信(网通灵信)、电信等运营商的IM不可能在完全正常的环境下成长起来。当然在这一点上,对于做IM的机会都一样的。

    与传统的IM(姑且叫其为IM1.0)不同,新来者的IM(IM 2.0)的竞争策略重点不应当是实时通信功能,这一点传统的IM1.0的厂商已经做得足够的好了。IM2.0要做到突围,我觉得应该是重点强化IM的SNS化、媒体草根化(去中心化)、3G化的特性:

  • SNS化:通过开放的多通信协议支持来协助用户整合各种零散分布在各个社区和渠道的关系链,成为用户的SNS中心。这里的多协议不单纯是对IM的多协议(MSN、QQ、Yahoo Messenger、Gtalk、ICQ等)支持,还包括开放社区协议(Open Social、OpenID、OAuth)
  • 媒体草根化(去中心化):用户通过Blog、Twitter、Youtube等草根社会化媒体工具来展现自我,但服务去中心化后,意味着用户使用的服务分布在不同的社区中,用户需要在不同社区间不停切换身份。同时这些UGC的内容成千上万,没有人有精力天天去及时摘取最优的内容,通过IM 2.0聚合这些优质的内容来帮助用户解决媒体草根化后的各种难题。
  • 3G化:随着3G市场及技术的逐步成熟,基于3G的各种创新性应用及服务必将浮现,这一点对于IM1.0、IM2.0而言,大家的起点都是一样的。

    这样看来,IM2.0感觉不是在做IM,而是做社区、做媒体了。没错,我认为对于初创性的互联网公司而言,仍然指望从即时通信功能上去与IM1.0的厂商竞争。那基本上没有市场机会。在所提供的IM没有明显的产品优势、技术优势的情况下,没有任何一个用户愿意去使用一个全新的工具,重新构建自己的关系链。同时初创性公司也应当避免传统IM厂商的大而全的思路,从IM、社区、内容什么都要自己做。

   对于初创性互联网公司而言,在初期可以通过通过IM这个接入工具来聚合现有的各种优质的社区服务及内容,然后逐步引入自己具有特色的核心服务,最终形成自己的核心竞争力。

    这就是所谓的聚合化生存。

“我们有难,但我们试着生存”-我的无线互联网信念

Posted in Uncategorized by chuanliang on 2008/08/17

   今天偶然看到一则新闻《伊拉克选手穿旧T恤、二手鞋参战北京奥运会》,令人无比感动,或许这是奥运开赛以来最为让我感动的一则新闻,向这些伟大的伊拉克运动员致敬,为中国男足这样的垃圾球队和垃圾队员感到可耻。

   “我们有难,但我们试着生存”!

  “结果不是最重要的,重要的是我们参加了这个盛会,我们经历享受了这个过程,我们已经创造了纪录。”

12353322

    对于初创性的无线互联网公司而言,并不是每一家公司都能够在市场、产品、技术或运营层面有核心的竞争优势。既没有核心产品创新能力去创造一种全新的商业模式,也无核心资源优势去搭建运营的竞争优势,更无核心的技术优势来构筑竞争壁垒,因此要在竞争激烈的无线互联网市场生存下去,挑战是蛮大的,可以说笑道最后的只能有不到1%的企业。

   无线互联网目前尚处于初级阶段,受限于客户使用习惯、网络带宽、客户端处理能力等因素,客户端目前所能够承载的功能相对也有限,在模式上并没有一种现成的商业模式可以参考。因此在发展上,肯定存在很多的困难和挑战。但正因为挑战,事业才有意义,成功才显得弥足珍贵。在这样残酷的境遇下,第一和唯一重要的对这项事业的热情,这是支撑我们自己能够坚持下去唯一核心的支柱。我相信这也是支撑伊拉克运动员克服各种困难参加奥运会的动力所在。一定要学会享受创业的过程中的各种痛苦和挫败。

   在创业初期,任何公司都面临像伊拉克运动员一样的窘境,各种创业条件都不具备,各种资源都无从争取。不要在初期就指望产品具有充分的创新性、拥有一个完美团队,万事俱备后才动手开做,这样而言,只会丧失掉各种市场机会,整个团队始终只是处于观望和理念阶段,整个团队也无机会去磨合和成长。对于初创性公司而言,肯定都有一个不断试错、不断自我否定并不断前行的过程,因此团队执行力是第一位的,只有在不断试错的过程中,才能够逐步在纷繁复杂的环境中理清自己的目标并强大自己。      

“结果不是最重要的,重要的是我们参加了这个盛会,我们经历享受了这个过程,我们已经创造了纪录。”

Pligg 禁用新用户注册

Posted in Uncategorized by chuanliang on 2008/08/10

    我自己基于Pligg搭建的个人网摘www.yeeach.com/digg被狂灌水,而且越来越严重,极其厌烦天天浪费大量时间去手动把垃圾记录设为“discard”状态,由于要提交新内容必须登录,因此首先想到禁用新用户注册功能,但Pligg好像没有禁止注册的功能。手工修改一下禁用新用户注册功能。

1、修改login.tpl 内容

修改digg/templates/yget/sidebar_modules/login.tpl ,把整个文件内容都注释掉

{*
<div id="maintab" class="tlb2">
        <span><a href="#" rel="register" style="text-decoration:none">{#PLIGG_Visual_Register#}</a></span>
        <span class="selected"><a href="#" rel="login" style="text-decoration:none">{#PLIGG_Visual_Login_Title#}</a></span>
</div>

 

{literal}
<script type="text/javascript">
initializetabcontent("maintab")
</script>
{/literal}
*}

2、修改header.tpl

修改digg/templates/yget/header.tpl,注释掉头部的注册链接

{*
<a href='{$URL_register}’>{#PLIGG_Visual_Register#}</a> &nbsp;&nbsp;
*}

3、修改.htaccess

修改digg/.htaccess ,将register请求重定向到index.php

RewriteRule ^register/?$ index.php

其实pligg提供了AntiSpam功能,但没有时间测试,先禁用新用户注册再看看,对老的注册用户如果还乱灌水,格杀勿论。

Technorati Tags: ,
Tagged with: ,

手机客户端IM技术实现思考2-我的IM2.0

Posted in Uncategorized by chuanliang on 2008/08/06

Firefox 3内存占用过大问题-都是隐私数据惹的祸

Posted in Uncategorized by chuanliang on 2008/08/03

    使用Firefox近3年时间了,经历了从1.5->2.0->3.0版本的升级,见证了Firefox在功能及性能的逐步完善,尤其是3.0版本在内存占用上有了明显的改善。由于在Profile中存放了大量的扩展的数据及各种隐私数据,因此每一次升级都是先升级Firefox,然后直接拷贝原来profiles文件夹到新的版本中,然后通过firefox.exe -profile "Profiles"参数指定使用的profile。每一次升级都没有遇见太大的问题。最近Firefox由于安全漏洞问题,自动从3.0升级到了3.0.1,升级后发现Firefox内存占用狂大,启动后内存经常占用700多M,CPU占用也经常是100%,导致整个系统速度极其缓慢。

    由于采用安装完成后firefox缺省的profile,内存占用只是在50M,CPU占用也很正常,因此应该是Profile中扩展的问题,开始怀疑是一些扩展升级惹得祸。

1、漫漫调优路

  • 禁用所有的扩展、主题及插件

    直接禁用所有的扩展、主题及插件(尤其是java、Adobe Reader 、flash几个插件),启动后内存占用仍然是700多M,CPU占用也经常是100%.

    看来还不是扩展装得太多或扩展升级后的问题.

  • 调优各种参数

    browser.cache.memory.enable=true

    browser.cache.memory.capacity=18432

    security.enable_java=false 禁用java

    browser.sessionhistory.max_total_viewers=0

    config.trim_on_minimize=true

    同时把DownThemAll及下载历史数据进行了清楚

    调试上述参数后,仍然无效,内存占用和CPU占用也是很大。

  • 安装调优程序

    使用了cache status、firetune几个扩展对内存进行调优,效果也不明显

    让人快疯了,又不想重建profile,然后一个一个把profile中各个扩展的数据重新导入。

    尝试了清空隐私数据操作,把包括Tab Mix Plus 、浏览历史、下载历史、已保存表单和搜索历史、高速缓存、Cookies、脱机网站数据、已保存的密码、已通过验证的会话、DownThemAll!历史和队列所有的数据都进行了清除,Firefox的内存和CPU占用竟然神奇般的恢复了正常。

    看来可能还是这些数据惹得祸,只不过很奇怪的是使用Firefox 3的时候没有出现这样的问题.

  

2、我的Firefox配置

启用扩展: [38]

禁用扩展: [22]

全部扩展: 60
已安装主题: [5]

已安装插件: (7)

  • 2007 Microsoft Office system
  • Adobe Acrobat
  • IE Tab Plug-in
  • Microsoft? DRM
  • Mozilla Default Plug-in
  • Shockwave Flash
  • Windows Media Player Plug-in Dynamic Link Library

 

3、参考资料

http://forums.mozillazine.org/viewtopic.php?t=354828

http://hi.baidu.com/hilyjiang/blog/item/06579e51c4b38c8e8d543078.html