2007年2月6日星期二

解决Komodo中文支持问题

Komodo是一个支持多语言开发(python/ruby/perl/php/tk/javascript/xml甚至java)的IDE,基于Mozilla开发,经过试用(4.0版),还是很不错的,至少速度上比我机器上的eclipse+plugin要快许多。不过比较郁闷的是,虽然编辑器能正常录入中文,但解释运行的时候就会出错,上网查了一下,原来可以通过配置一个python文件来解决,在这里先记录下来(针对4.0版本):

官方网站:
http://activestate.com/products/komodo_ide/
(闲话:这是一个商业软件,需要注册,但是0day……^_^)

1、打开Komodo安装目录下的lib\mozilla\components,找到koEncodingServices.py文件,在其81行加入如下代码:
('cp936', 'Chinese(CP-936/GB2312)', 'CP936', '', 1,'cp936'),
('GB2312', 'Chinese(GB-2312)', 'GB2312', '', 1,'GB2312'),
('GBK', 'Chinese(GBK)', 'GBK', '', 1,'GBK'),
('GB18030', 'Chinese(GB18030)', 'GB18030', '', 1,'GB18030'),
也就是把中文编码支持补全到那个列表参数中,这样在后面我们就可以通过Komodo的设置页面来选择这几个编码了。

2、启动Komodo,选择Edit->Preferences菜单,找到Internationalization,把“Use Encoding Defined in Environment:cp936”勾选上,这样就把编辑器的默认编码设置为系统默认的cp936了,当然你也可以在下面的“Language-specific Default Enciding”选项单独为某个脚本设置编码。

3、做完第二步还不够,在编写python程序的时候,需要在前面加上“#-*- coding:UTF-8 -*-”以指明文件编码,在这里推荐使用UTF-8,其他的如gb2312也是可以的。

通过以上操作,即可完全解决Komodo的中文支持问题,不过还是希望厂商在下一版本发布的时候解决这个小bug,免得大家麻烦。详细的测评等用上一段时间了再说,希望对大家有用。

2007年2月1日星期四

下雪了

昨晚听天气预报说今天会下雪,一早起来出门,果然是真的,想想这应该是我到昆明以来见到的第一场雪。去年?去年冬天,或者可以说是整年我都在外面出差,跑新疆,跑小县城,搞实施,搞维护,搞验收,就这么过了,昆明下不下雪当然也就不得而知了。
其实挺讨厌下雪或者是下雨的,因为昆明这个城市交通状况太差,一到这个时候就非常恼火。今天也一样,为了不迟到,又打了个的过来,唉,我一天挣的钱能抵多少次打的啊?没办法,我住的远,有人规定迟到一次扣100,打车也就二十,还能赚80,想想还真是值呢。反正又不是头一回……
日子一天一天的在过,还是那句话,一切都会好起来的,春天马上就要到了。

2007年1月26日星期五

腾讯,我无言了

今天看到一个python群公告上显示有新的文章,好奇点进去想到群空间看看,居然跳出这么一个提示窗,直接晕倒……

难道这就是标榜软件人性化的腾讯?作为一个web开发人员,真的无法想象,如此差劲的可用性!看来,web标准的推广,还是任重道远呐。就拿公司的小弟来说,给他们讲xhtml,讲css布局,讲javascript,还那么不耐烦听,不屑一顾的感觉,唉,怎么会这样呢?

2007年1月15日星期一

Learning Groovy:Face to Face

to be continue……

流水帐

这几天在大理云龙出差,说起来还真是倒霉,扁桃体发炎外加拉肚子,唉……
日子还是那么一天天的在过,当然我以前写的目标,还是一直在努力,不管怎么样,做了才知道结果如何,相信自己,自己是最棒的(好像有点拽了,哈哈)。
就当是旅游吧,带病旅游:)
乘着这些日子,把Groovy给深入学习了下,感觉非常棒,以前学python,喜欢是喜欢,可惜总是用不上,现在不用苦恼了,Groovy才是王道,所谓的王道,就是既强大,又有实战的地方,我觉得这次选对了。当然python还有javascript还是一如既往的学习,毕竟一个是自己的最爱,一个是最实用的脚本,三管其下!累就累点了,过几天把学习心得写上来与大家分享。
突然想起一句话:春天,是骚动的季节,没错,这个春天,我要求变!不要误会哦,不是jiao chun,哈哈……

2007年1月6日星期六

我看《javascript dom编程艺术(dom scripting)》


这本书在刚出版的时候,编辑就送了一本给我,可惜那段时间出差在外没能看到,真正到手是4号那天,之前一直关注china-pub上的评论,有网友评价说内容太肤浅,“大失所望,感觉象是喝了碗稀粥,一点实在货都没有”。的确,此书是我有史以来读得最快的一本,三百页,从4号晚上开始看,到第二天下午就看完了,说明写的真的是很简单-_$
不过话又说回来,就我的阅读体验来说,还是有收获的,为什么这么说呢?也许就因为我是个初学者吧,web前台的初学者,书里面提到的三层分离思想:结构(XHTML)、表示(CSS)、行为(javascript、dom)的解耦,还是非常有意义的,阐述得也还清晰,示例简单,比较容易理解。有一个地方给我的映象比较深刻,就是在讲“当前页面标示”的时候提到的方法:作者用document.location.href来提取当前页面地址,再对比导航条中相应的超链接地址,然后设置其css以达到突出显示的目的,非常新颖。在这之前,我都是按照《精通CSS(CSS Mastery)》里面的硬编码方式来做的,呵呵,没想到可以如此灵活,要知道他这段代码是可以重用的……另外,作者一贯用循序渐进的方式,进行实例讲解,一步一步的完善各个函数,也就是重构,这一点也是值得我们借鉴的。还有就是最后提到的hijax,提倡先按旧式、常规的方法开发系统页面,最后再用javascript和XMLHttpRequest来拦截和传送数据,以加入AJAX功能,这与之前看过的《AJAX实战(AJAX In Action)》中阐述的“忘掉Web的页面概念,打破以前的经验”似乎背道而驰?这个问题有待于看了作者的新书《Bulletproof AJAX》再下结论,这本书就是讲解hijax的,也是人邮的图灵公司引进出版,比较期待。说到Bulletproof,又想起了之前翻完的《无懈可击的Web设计(Bulletproof Web Design)》,也是很有意思的一本书,改天抽时间也来以自己的眼光评一评^_^
上面讲的都是优点,那本书的缺点呢?不是没有,而是太明显了:重复、罗嗦是最大的特点。作者把读者都当成从来没接触过javascript和dom知识的门外汉,讲解一个循环或者一个条件判断语句都能花上几页篇幅,而且在书中其他地方遇到一样的语法,也如法炮制,不厌其烦。很多时候为了几个结束函数用的右括号“}”,也能把前面已经列过的代码清单再复制粘贴一遍,完全是在骗书稿。正如china-pub上的Renart兄所说,“这么一丁点东西难得作者竟然能写出三百多页的篇幅来”,晕。至于有人评论说作者认为“只能通过DOM获取inline的style”,这一点有失偏颇了,其实作者一直强调的是,用style属性只能取得inline的样式信息,至于如何通过DOM的其他手段去获取外部文件的样式,压根就没讲,呵呵。
总结一下,本书用来入门还是可以的,不过对dom的讲解也太浅了点,基本的操作之前很多书上都有了,比如《AJAX基础教程》就提到不少,够用了,要想深入学习这方面的知识,可以看看《javascript高级程序设计》,里面讲了不少,然后我最最期待和推荐的《ppk on javscript》一书里面也详细介绍了这部分内容,而且是基于“分离、解耦”的思想来阐述的,非常棒,这本书等看完了电子版再上来好好详细为大家评述吧。言归正传,对于想快速入门javascript dom的朋友,还是推荐翻翻此书,毕竟作者传播的三层思想还是很有道理的,阐述的也比较细(至于细得是不是让你觉得烦,我就不知道了,呵呵),就我个人来说,一本书,只要有个闪光点,能让我有收获,就是值得的,我认为,本书也算得上“值得”。

目前发现的小问题(勘误):
1、81页第12行"如果你不理解getElementById和getElenmentsByTagName,你就不能参与这项游乐活动",应该是"或",而不是"和";
2、117页第二行开头,"变量para"应该是"变量testdiv"。

-------------------------------------------
补充:有朋友对我上面说的那个例子感兴趣,之前讲的不是很清楚,本来是想把代码贴出来的,可是这个blog需要自己写转义字符,而且格式也不能保持,唉,看来google还需要完善呐。下面是我写的一个简单的例子,大家可以看看:实例下载

2007年1月3日星期三

Groovy 1.0发布!

好久没有关注groovy(An agile dynamic language for the Java Platform)这个java世界的原生脚本了,今天打开maillist,惊奇的发现1.0 finally 版正式发布了,赶紧down一份瞧瞧^_^下载地址:
http://dist.codehaus.org/groovy/distributions/?C=M;O=D

至于参考资料,发布包自带了一些,也可以上官方网站看看教程。另外,目前所知道的,还有两本相关书籍会出版,一本是Manning的《Groovy in Action》,另一本是Morgan Kaufmann的《Groovy Programming: An Introduction for Java Developers》,如果把模仿Rails的Grails算上,还有一本Apress的《The Definitive Guide to Grails》,这些书想要在国内看到是不太可能的了,出版社不会对这个偏门的东西感兴趣的,期待电子版的到来,0day万岁^_^

2006年12月28日星期四

心态?目标?

最近一段时间,总有种疲惫的感觉,不管是身体还是精神上都有,我到底怎么了?想来想去,大概只有一个可能:对现在的工作毫无兴趣,也许吧。自打从大学毕业之后来到春城,就到了现在这家公司,也是第一家。怎么说呢,中途换了个部门,一直干到现在,做的事都是一样的无聊——拿着别的公司的产品卖给客户,然后做售后维护,自己没法掌握核心技术,很被动,也很无聊。问我这一年来都写了些什么代码?sql,sql知道吧,只能在那个pb写的破玩意儿上写写sql……回头仔细想想,为什么自己会越来越厌倦这份工作,常出差倒是无所谓,可以多赚点钱,可是长此以往,我最终会变成一个什么样的人呢?要技术没有技术,要经验没有经验,年纪半大不小,真的会完蛋的!还好自己比较好学,新的动态是要关注的,每月的好书是要预算的,就是没有实战的机会。现在这个环境下到底该怎么办,真的是不知道了。不过有一点我坚信:技术不是万能的,但没有技术肯定是万万不能。

写了那么一大堆,算是发泄吧,没办法,琳说的对,生活本来就是很无奈的,要学会适应。OK,从今天开始我要调整好自己的心态,振作起来,不过目标还是要定一下的,我不相信什么五年、十年计划,一年就够了:

1、手头的工作尽量做好,但主要精力必须放到学习、充实自我上,做好技术储备,为以后铺好出路。具体来说,在深入掌握java、python、ajax知识的同时,另外再把ruby/rails给学了,数据库方面可以研究一下面向对象的db4o
2、有计划地把手头积攒的优秀书籍分批看完、吃透,有精力的话一定要写读书笔记(暂定1200页/月,没办法,因为经常出差不方便携带)。目前手头的《python in a nutshell 2e》、《dom scripting》、《ppk on javascript》和《head first html、xhtml&css》优先,《ajax in action》需要再仔细的翻一遍,另外java方面《beginning java object 2e》、《agile java》以及《重构与模式》都在计划之中。
3、和朋友认认真真的做两到三个项目,把书本上学到的知识用起来,当然得有质有量,最好能赚到外快。
4、养成写blog的习惯,提高自己的写作水平,顺带也有个记录督促自己。

暂时就想到这么多,其他的杂七杂八的事就不用写了,有琳陪在身边,好多东西都是要我们两个人一起考虑的^_^