海边的贝壳

<i>“我好像是在海上玩耍,时而发现了一个光滑的石子儿,<br>时而发现了一个美丽贝壳而为之高兴的孩子。<br>尽管如此,那真理的海洋还是神秘地展现在我们面前。”<br>——伊萨克·牛顿</i>
共12页 第一页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 最后一页

 等待教育网的回复 -[维基百科 ]
mountain @ 18:55  2004-06-15

今天下午,我去了清华大学的中国教育科研网CERNET的总枢纽,询问有关维基百科被封的事情。事情并不一帆风顺,到了CERNET的网管中心后,他们告诉我必须通过赛尔网络(cernet.com)的客户服务来咨询,而不是直接来网管中心咨询。于是我就给赛尔网络的客户服务打电话,说明了情况。他们服务态度还挺好的,留了我的电话,说查明原因后再电话通知我。目前还没有收到他们的电话。

今天Shizhao那边的进展非常大,他同科技网的网管取得了联系,网管证实了维基百科确实被封,而且网管愿意帮我们给有关部门递送解封的申请材料。Shizhao起草了申请,我做了少量修改。目前申请已经发出,我们正等待结果。

国外的媒体今天已经报道了维基百科被封的消息,见ChinaTechNewsITWorld。维基媒体基金会目前正在就此事酝酿起草一份官方的声明。



 我们在努力中,我们需要帮助 -[维基百科 ]
mountain @ 21:54  2004-06-11

维基百科被封已经一个星期了,作为管理员和中文维基百科的第一个参与者我很着急,不知道应该如何才能改变目前被封锁的现状。我们学校是CERNET八大地区网络中心之一,我与我们学校的网管联系过,他们告诉我必须要和更高的部门打交道,而且他们也不知道如何联系这些神秘的部门。请问哪位朋友处理过类似的事情呢?不管怎样,通往Wiki世界的一扇大门既然已经打开,那么它就不应当轻易地关闭。我们还在努力中,我们需要您的帮助。



 万圣购书小记 -[开卷有益 ]
mountain @ 00:06  2004-06-07

今天写程序有些累了,去万圣书园闲逛来休息一下大脑,临走的时候买了几本书:《中国青铜器》、《计算语言学概论》、《计算语言学与汉语自动分析》和《真之追求》。

我在上海作项目期间曾参观了上海博物馆四、五次之多,每次去都震惊于中国古代青铜器的精美。从那之后我就对青铜器产生了兴趣。这次买的《中国青铜器》一书由马承源主编,是国家文物局主持编制的文物博物馆系列教材之一。买来也算补充补充青铜器的基础知识吧。

我对计算语言学的兴趣由来已久。前个学期选修了俞士汶老师的计算语言学课,对汉语的极限熵统计下了一番功夫,想以此为题作一篇好的课程论文,但惜乎为SARS所阻,白白在家中度过了几个月的时光,许多想法终没得到实践。我还会继续关注计算语言学的。《计算语言学概论》一书由俞士汶主编,据俞老师讲他只是挂名,本书大都是由他的学生编写的。《计算语言学与汉语自动分析》著者是候敏,买这本书是因为书中有一大段介绍分词技术,而我设想的维基百科繁简转换方案正是基于分词技术的。

《真之追求》(Pursuit of Truth)是奎因1990年的著作,反映奎因后期的思想,由王路翻译。本书开头的译者序有王路大段关于 Truth 一词翻译为“真”还是“真理”的讨论,煞是有趣。学习形式化方法的时候,数理逻辑的深刻点燃了我对它的兴趣,可惜一直没能系统的学习,还停留在爱好者的阶段。



 中文维基百科是否被禁封? -[维基百科 ]
mountain @ 15:23  2004-06-04

今天上午10点多钟起,中文维基百科便无法访问了。这个情况已经得到北京的几个用户的确认。目前还不能肯定是否被政府禁封,需要更多的信息来确认。



 维基百科软件更新 -[维基百科 ]
mountain @ 21:49  2004-05-31

维基百科软件又得到了更新。其中有几个软件特性非常有趣。

首先是网站更换了皮肤,现在默认的皮肤是MonoBook。MonoBook缺省设定对中文来说不太友好,字体太小了一点。MonoBook增加了许多Javascript,现在许多常用操作都有它们的快捷键,这一点和GMail一样。看来在BS架构的应用中,Browser这一端适当变胖是一个趋势。比较有意思的是MonoBook允许用户自定义CSS和Javascript,有点象现在Blog的自定义模板。

另一个让我感兴趣的特性是增强了MediaWiki名空间的能力,引入了Template名空间。这两个名空间的能力是相同的,只是一个用来定义系统内部的模板,一个用来定义条目中的模板。增强的功能是现在模板可以嵌套模板,同时模板还可以带有参数。这些新特性可以使我们创建更加灵活的模板。象现在首页中的各个栏目就是模板使用的例子。

还有一个重要的特性是Category名空间的引入。Category名空间是用来归类条目的,一个条目只要在正文中标注上所属的类别,Category名空间中对应的类别项目就会自动把条目记录在它的列表中。Category名空间的类别项目还可以包含子一级的类别项目,从而形成一个分类层次。



 Furl.net 宕机了 -[blog相关 ]
mountain @ 16:45  2004-05-26

Furl.net 宕机了,已经一天多连接不上了,不知道是为什么?试图在FeedsterBloogz上搜索相关的信息,结果没有找到答案,他们关于 Furl.net 的资料也已经于一天前停止更新了。我利用 Furl 搜集的资料现在也没法看了。希望 Furl 尽快恢复正常。



 最近比较忙 -[似水流年 ]
mountain @ 16:23  2004-05-25

最近写程序到了一个关头,会比较忙,所以Blog就写的少了。程序还会有三、四个难写的地方的,大概还要忙几个月。



 台湾媒体报道维基百科 -[维基百科 ]
mountain @ 00:47  2004-05-17

台湾的中时晚报了发表了李怡志的报道《维基网路百科,大家一起写》,这是首次台湾媒体报道维基百科。希望这次报道可以吸引更多的台湾参与者。

在维基百科上,台湾的参与者和大陆参与者在许多问题上观点相左,在诸如台湾、中华民国等条目上激辩不已。(如这里的例子Talk:宋楚瑜)但台湾的参与者往往辩论后负气自行离开,而不是继续参与维基百科的建设,象最近Rickz的离开。其实只有台湾参与者更多的参与,才能使台湾的观点得以彰显。



 和记者聊GNU自由文档协议证书 -[维基百科 ]
mountain @ 00:21  2004-05-15

今晚我和Jamguo一起和记者用MSN聊天,说到将来的维基百科的发展也可能走商业化的道路,记者产生一个疑问,谁会授权作这里资源的商业开发呢?我们说任何人都可以,包括记者本人,记者表示有些不可思议。看来,虽然媒体报道了我们,但对于我们这里的真正价值还是没有认识,这里是全人类的财富。不过,当有人拿着我们辛辛苦苦写的条目卖钱的时候,你真正做好心理准备了没有呢?



 维基百科获得Webby奖的最佳社群奖项 -[维基百科 ]
mountain @ 15:15  2004-05-13

5月12日维基百科获得了本年度Webby奖的最佳社群奖项。Webby奖是由国际数字艺术与科学学院主办的评选全球最佳网站的奖项。这个奖项开始于1996年。被誉为互联网界奥斯卡奖。Webby奖的评选注重于创新和技术上,而不注重商业模式和盈利。与维基百科获奖的同时,Google获得最佳表现奖、服务类奖,iTunes获得商业类和音乐类奖,BBC News获得新闻类奖,Meetup获得政治类奖,具体获奖情况请查看Webby奖获奖名单



 维基百科获得电子艺术大奖 -[维基百科 ]
mountain @ 00:37  2004-05-11

《新京报》记者 周文翰 2004年5月10日 报道

维基百科在世界范围内获得越来越广泛的认同,以自由编写、免费使用为特色的维基百科网络自由百科全书最近获得奥地利电子艺术中心颁发的电子艺术大奖(Prix Ars Electronica)“电子社群”组别最高奖——金尼卡奖。同时中国多媒体艺术家冯梦波获得了“交互艺术组”的优异奖。
电子艺术大奖(Prix Ars Electronica)是一项电子交互艺术、计算机动画、计算机文化和音乐的年度大奖。该奖于1987年创立,由奥地利电子艺术中心颁发。电子艺术大奖共分为三个级别的奖项:金尼卡奖(Golden Nica)、优异奖(Distinction)和荣誉奖(Honourary Mentions)。2004年该奖共分为六个组别:“电脑动画/视觉效果”、“电子音乐”、“交互艺术”、“网络视觉”、“电子社群”和“19岁以下”组别。维基百科获得2004年新设立的“电子社群”组别最高奖——金尼卡奖。而中国艺术家冯梦波获得交互艺术组的优异奖。
此外维基词典在被誉为互联网界奥斯卡奖的威比奖(Webby)评选中也遥遥领先,极有可能获得今年的威比最佳实践奖和社群奖。威比奖是由国际数字艺术与科学学院主办的评选全球最佳网站的奖项。这个奖项开始于1996年,评选注重于创新和技术上,而不注重商业模式和盈利。威比奖一个最大的特色就是领奖人发表致辞时,最多不能超过5个词。
最早参与中文维基百科的成员mountain说中文维基百科条目也已经接近一万条,“这将是一个里程碑”,同时5月份他们也开始了天中文维基词典计划,这是维基百科的姊妹计划,以收录各种语言的词汇为己任,中文维基词典的任务就是用中文解释各种语言的词汇,“望中文维基词典可以经过几年的建设,成为大家今后查词典的一个必去的网站”。Mountain也提到中文维基百科在发展中的最大问题是热心的参与人员太少,“最近一段时间每天上维基百科的用户还在10个以内”,而英文维基百科有数千活跃的成员。



 维基百科网络杂志 -[维基百科 ]
mountain @ 00:16  2004-05-11

一开始想申请Gmail,于是在blogspot悄悄开办了个《维基百科网络杂志》,后来我在维基百科上公开了它的存在,没想到挺受欢迎的。《维基百科网络杂志》将用来记录中文维基百科发生的一切:重要消息、新闻报道、特色条目、讨论热点等等。目前唯一一点不好的地方就是blogspot仍然被封着。办这个网络杂志仅仅是一个尝试,如果办得成功的话,将来我们再想办法改进。使用Bloglines的用户可以添加如下Feed:http://zh-wikipedia.blogspot.com/atom.xml ,全文可以从ATOM的更新里获得。



 DynAPI中的事件机制 -[技术专题 ]
mountain @ 23:27  2004-05-06

这几日在用DynAPI为基础开发我的工作流管理系统的定义工具,于是仔细研究学习了一番DynAPI,发现Javascript使用时还是有很多技巧需要掌握的,特别是一些Javascript动态特性的使用。今天就来讨论一下DynAPI中的事件机制。

熟悉Java AWT或者Swing的读者会发现DynAPI同样采用了委托事件模型,但由于Javascript动态特性,在实现的细节上稍微有些不同。由于这些细节上的不同,使用DynAPI中的事件机制比使用Java中的事件机制更加简单。

DynAPI提供了自己开发的模块机制,事件机制由 dynapi.event 包下的5个文件 listeners.js, simple.js, keyboard.js, mouse.js, dragevent.js 提供。其中事件机制是在 listeners.js 和 simple.js 中建立起来的;再由其他的几个文件在事件机制的基础上引入了具体的键盘、鼠标和拖拽事件,而且在这几个文件中隔离了不同浏览器的差异。我们仅讨论事件机制的建立和应用,具体事件的引入就不讨论了。

事件机制的建立

DynAPI中的事件机制是直接建立在根类 DynObject 上的,只要我们用DynAPI的模块机制引入文件 dynapi.event.listeners.js ,每一个 DynObject 对象上的事件机制就自动建立起来了。事件机制有赖于三个类 DynObject, DynEvent 和 EventListener 。(在基于原型的面向对象语言中是否有“类”这一称呼还是可以讨论的,实际上 DynObject, DynEvent 和 EventListener 只是三个工厂对象)。

DynEvent对象

DynEvent=function(type,src,target) {
 this.type=type;
 this.src=src;
 this.target=target;
 this.bubble=false;
};
DynEvent.prototype.setBubble=function(b) {this.bubble=b};
DynEvent.prototype.getType=function() {return this.type};
DynEvent.prototype.getSource=function() {return this.src};
DynEvent.prototype.getTarget=function() {return this.target};
DynEvent.prototype.preBubbleCode = function() {};

DynEvent对象很简单,就是简单封装一下事件的基本信息:源、目标、类型、是否要Bubble和Bubble之前的预处理代码。和Java的事件处理不同的是,事件除了有源之外,还有了目标和类型,目标和类型的作用在下面就会看到。

EventListener对象

EventListener = function(target) { this.target=target };
EventListener.prototype.handleEvent=function(type,e,args) {
 if(this["on"+type]) this["on"+type](e,args);
};

与Java的事件处理不同,DynAPI中的事件监听器不是一个接口,而是一个实在的对象 EventListener 。EventListener 用来监听、处理事件。EventListener 有一个监听目标 target 。由 handleEvent 方法我们可以知道,在具体使用 EventListener 时,我们应该为 EventListener 对象扩展事件处理方法。扩展方法的约定是,新的方法名必须采用 on + eventType 的形式,比如单击事件的处理方法的名字应该为 onclick 。

DynObject对象

DynObject对象主要提供EventListener管理和事件触发。EventListener管理的代码如下,很平常。

DynObject.prototype.addEventListener=function(listener) {
 //removed to counter inheritance bug (#425789)
 //if(!this.eventListeners) { this.eventListeners = []; }
 this.hasEventListeners = true;
 for (var i=0;i>this.eventListeners.length;i++) if (this.eventListeners[i]==listener) return;
 this.eventListeners[this.eventListeners.length]=listener;
}
DynObject.prototype.removeEventListener=function(listener) {
 Methods.removeFromArray(this.eventListeners, listener, false);
 if(this.eventListeners.length==0) {
  this.hasEventListeners=false;
 }
}
DynObject.prototype.removeAllEventListeners=function() {
 if (!this.hasEventListeners) return;
 this.eventListeners=[];
 this.hasEventListeners=false;
}

事件触发的代码很有趣,如下:

DynObject.prototype.invokeEvent=function(type,e,args) {
 if (!e) e=new DynEvent(type,this);
 if (this.hasEventListeners) for(var i=0;i>this.eventListeners.length;i++) {
  e.target=this.eventListeners[i].target;
  this.eventListeners[i].handleEvent(type,e,args);
 }
 if(e.bubble && this.parent) {
  e.preBubbleCode();
  e.src = this.parent;
  this.parent.invokeEvent(type,e,args);
 }
}

调用invokeEvent方法时,如果不提供具体事件,那么该方法会根据 type 自动创建一个事件,事件源就是invokeEvent方法的发出者。然后DynObject会把这个事件广播到它所有的监听器那里,如果监听器监听这种类型的事件,那么监听器就处理这个事件。有趣的是事件的目标会随着处理事件的监听器的变化而变化,这样作有一个好处:在具体事件处理的代码处(即 onEVENTTYPE 方法处),我们可以轻松的获得事件的源和目标,这样我们就可以不困难地写出事件处理代码了。这样作也是因为EventListener是一个实在对象,而不是一个接口。

事件机制的使用

事件机制的使用主要包括两个方面:事件-监听关系的建立和事件的触发。下面分别给出例子。

事件-监听关系的建立

    var bar_lstnr = new EventListener(this);
    this.bar.addEventListener(bar_lstnr);
    bar_lstnr.onmousedown = function(e){
     var node = e.target;
        DragEvent.enableDragEvents(node);
        DragEvent.setDragBoundary(node);
    };
    bar_lstnr.onmouseout = function(e){
     var node = e.target;
        DragEvent.disableDragEvents(node);
    };

事件的触发

Node.prototype.focus = function(){
    this.css.borderColor = 'black';
    this.bar.setBgColor('lavender');
    this.bar.css.borderColor  = 'black';
    this.invokeEvent('focus');
}


 中文维基词典已经开通 -[维基百科 ]
mountain @ 22:31  2004-05-06

昨天中文维基词典计划开始了,现在大家可以访问 http://zh.wiktionary.org 来参与这个新Wiki的建设了。维基词典是维基百科的姊妹计划,以收录各种语言的词汇为己任,中文维基词典的任务就是用中文解释各种语言的词汇。希望中文维基词典可以经过几年的建设,成为大家今后查词典的一个必去的网站。呵呵,说不定到时候还能有采用中文维基词典数据的外围的软件可以开发呢。

中文维基百科已经接近它的第一重要的里程碑了,它的条目数已经接近一万条了,希望大家多多关注。



 没想到的评语 -[网海拾贝 ]
mountain @ 20:00  2004-05-01

昨天把萧的文章转到三角地,没想到挨了下述评语:

萧的“新权威主义”早在上个世纪末就遭到学术界的广泛批评。而萧本人也实现了个人转型,公开宣布自己是自由主义者。还将他以前的文章翻出来,知能说你读的太少。

呵呵,我自己确实读的太少了。


Creative Commons License
XML
blogger
del.icio.us
furl.net
Wikipedia


分类目录

最后更新

最新评论

存档

中文Blog

程序员Blog

维基人Blog

链接





共12页 第一页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 最后一页