让媳妇值得炫耀之处

这一年来,媳妇成天对我“太胖”、“腿粗”喋喋不休,还四处宣扬。我们的朋友圈交集太大,真不是件好事情。

前两天她出差去上海,见到了我们俩的一个高中同学,是她上学时的好朋友。这位同学也是结婚不长时间的小媳妇。当然也见到了她老公。我媳妇就添油加醋地描述我现在有多胖,搞得那个同学在网上问我:“都一百八了!该减肥了”。没面子。

媳妇回家之后,又跟我讲那个同学的老公,有多么多么瘦。什么“只看见裤管看不见腿在哪”等等一类描述,我还以为是在刺激我。正心烦之际,突然媳妇说,“你越来越胖,她老公那么瘦,我还真觉得很有面子…”

有人扒我的网站

呵呵,比较欣慰,说明我做出来的东西不是完全的垃圾。其实标题更想这样写:“终于有人扒我的网站了”。

ClearCase的merge算法

几个同事一起工作,我要负责code的merge和build release的工作。最麻烦的莫过于每日比较代码了。不过一段时间下来,还是感觉这样枯燥乏味的事情,对人的锻炼也是很大的。其实严谨认真不仅是一种态度,更是一种能力。

ClearCase的merge manager提供了自动merge的功能,但有时候并不可靠。比较感兴趣的是,这个工具凭什么可以自动merge代码呢,其中肯定有道理和依据。

基本思想并不复杂。同一个文件,有两个人都做过修改,就要回溯找到这两个修改版本的共同基础,下面图中称之为Base contributor的版本。之后作三方的比较,就能得出比较可靠的结果了。

参考资料:


  • Working On a Team
  • Lucene for Information Retrieval kicked off

    Why Lucene

    手头有一个项目,要做一些文本信息分析的工作。咨询了我心中的AI专家阿飞,告诉我要先从这些文本所属领域的关键词的识别开始。而且提到了了Lucene这个全文检索系统。甚善。

    Lucene本身也是一个框架。而我要做的事情,在结构上和全文检索是基本一致的。都是要在一些资料(文档)中按照Query分析出相关的资料,甚至对资料中的这些信息作进一步的分析。其中要针对专业领域信息的特点,建立独特的索引结构,来辅助分析。总之,这个框架有很大的借鉴意义。

    Lucene应用结构和实现结构

    应用结构图

    Lucene系统实现结构图

     

    我要做的事情,就是使用Lucene这个框架,对我所关心的资料,进行索引和查询。

    结合已有的领域知识词典,修改analyzer,用以生成特殊的索引结构。

    修改queryPaser和search模块,将资料的信息索引中生成目标信息,希望能得到值钱的结果。查询的功能不是目标,被动或者主动将信息索引生成用户需要的结果,都是同一个道理。

    Analyzer

    在 一个文档被索引之前,首先需要对文档内容进行分词处理,这部分工作就是由 Analyzer 来做的。Analyzer 类是一个抽象类,它有多个实现。针对不同的语言和应用需要选择适合的 Analyzer。Analyzer 把分词后的内容交给 IndexWriter 来建立索引。

    开始

    第一个困难,不懂java。好在有一些文章可以参考,于是有一点简单的认识。
    .jar的文件是已经编译好的java程序。把这个.jar文件路径加入系统变量CLASSPATH就可以在控制台运行这个java程序了。
    C:\>java org.apache.lucene.demo.SearchFiles
    当然前提是安装了java环境。

    写其他java程序也可以通过类似的namespace直接引用Lucene提供的API了。

    运行了一下,收集阅读了不少入门资料,就算是个开始吧。正如阿飞的建议,理论方法不是最重要的,重要的在于立即着手去尝试。

    参考资料

    对Lucene的介绍和安装

    模型, 理论

    Programming with Lucene

    Random posts

  • 李哥的婚礼
  • 搭建了一个免费电子书下载搜索引擎
  • 西雅图星巴克总店宣传画
  • 最长的一年
  • selectSingleNode/ selectNodes in MSXml 4.0