<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>JavaEye新闻</title>
    <description>JavaEye每日IT新闻 - Java, Ruby, AJAX, Agile, 互联网, 软件行业新闻</description>
    <link>http://www.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>Starling：Ruby持久化队列服务器支持MemCahce协议</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://405329829-qq-com.javaeye.com">╱/罒呍唲</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2987" style="color:red;">http://www.javaeye.com/news/2987</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <img src="http://www.rubyinside.com/wp-content/uploads/2008/07/starling.jpg" /><br /><br /><a href="   http://rubyforge.org/projects/starling/" target="_blank">Starling</a>(燕八哥)发布了一段时间了，Starling是一个支持MemCahce协议的轻量级持久化服务器。Starling是让创建网络访问队列或者多个队列异常简单，也就是说多点和多台机器间的异步工作进程。它是著名微博客网站Twitter开发用来处理大量的队列消息，以及保持服务的响应。Starling已经在生产环境中使用，不仅是Twitter在使用，FiveRuns同样在使用。<a href="http://www.mikeperham.com/2008/05/29/starling-and-a-reliable-memcached-client/" target="_blank">FiveRuns</a>  甚至还根据<a href="  http://github.com/fiveruns/starling/tree/master" target="_blank">自己的应用</a>做了改进 ，他们认为网站速度快了很多。<br /><br />为什么突然对Starling感兴趣？因为 Glenn Gillen在RubyPond.com上写了如何设置Starling的一个<a href="http://rubypond.com/articles/2008/07/17/the-complete-guide-to-setting-up-starling/" target="_blank">优秀介绍指南</a> 。他全面介绍了Starling的安装和使用，包括Workling(一个Rails插件让Starling使用更简单)。<br /><br />在Glenn的文章中还介绍了<a href="http://github.com/matthewrudy/rudeq/tree/master" target="_blank">RudeQ</a>  －可以替代Starling。 RudeQ与Starling使用相同的API，但它以ActiveRecord /database 为基础，意味着不需要额外的程序进行监测。我觉得它的速度很快，但是如果您想要轻松的监测另一个持久化的进程，或不需要有一个持久化的进程，RudeQ也是值得一试的。
          <br/><br/><span>来自：<a href='http://www.rubyinside.com/starling-and-rudeq-persistent-ruby-queues-958.html' target='_blank'>www.rubyinside.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2987#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 17:11:21 +0800</pubDate>
        <link>http://www.javaeye.com/news/2987</link>
        <guid>http://www.javaeye.com/news/2987</guid>
      </item>
      <item>
        <title>SpringSource Enterprise 已经开放 </title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://qqbyte.javaeye.com">QQbyte</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2986" style="color:red;">http://www.javaeye.com/news/2986</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          SpringSource，Spring背后的公司宣布SpringSource Enterprise开放。SpringSource Enterprise是一个大型项目的商业支持，包括软件，服务和技术支持，稳定的QA测试，安全和性能保障，企业级类特性等，让基于Spring的企业级别应用更加安全，高效，运行更长时间。<br /><br />SpringSource副总裁说道，商业应用在变化，我们将SpringSource Enterprise发布出来，更能让市场看到Sring是企业项目的最好解决方案。<br /><br /><img src="http://www.springsource.com/files/u1/enterprise.png" /><br /><br />开放内容包括：<br /><br />1。SpringSource Application Management Suite,管理套件<br /><br />2。the SpringSource Tool Suite, 工具包<br /><br />3。the SpringSource Advanced Pack for Oracle Database。整合Oracle高级包<br /><br />从这里下载：<a href="http://www.springsource.com/products/enterprise" target="_blank">http://www.springsource.com/products/enterprise</a><br /><br /><img src="http://www.springframework.org/files/logo.jpg" />
          <br/><br/><span>来自：<a href='http://www.springsource.com/products/enterprise' target='_blank'>springsource.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2986#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 16:45:29 +0800</pubDate>
        <link>http://www.javaeye.com/news/2986</link>
        <guid>http://www.javaeye.com/news/2986</guid>
      </item>
      <item>
        <title>Firefox Video SVG效果</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://qqbyte.javaeye.com">QQbyte</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2984" style="color:red;">http://www.javaeye.com/news/2984</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <a href="http://www.bluishcoder.co.nz/2008/07/video-and-audio-element-patch-has.html" target="_blank">Mozilla软件工程师Chris Double 最近宣布Firefox即将完成支持视频和音频的新组件</a>，相关的前台代码已经可以check out，后台视频译码器接近完成。<br /><br />下面是关于Firefox Video SVG效果展示，很酷。<br /><br /><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="425" height="344"><param name="movie" value="http://www.youtube.com/v/vvtdkxCIKC8" /><param name="quality" value="high" /><param name="menu" value="false" /><param name="wmode" value="" /><embed src="http://www.youtube.com/v/vvtdkxCIKC8" wmode="" quality="high" menu="false" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="425" height="344"></embed></object>
          <br/><br/><span>来自：<a href='http://ajaxian.com/archives/neat-firefox-video-svg-tricks' target='_blank'>ajaxian.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2984#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 11:44:28 +0800</pubDate>
        <link>http://www.javaeye.com/news/2984</link>
        <guid>http://www.javaeye.com/news/2984</guid>
      </item>
      <item>
        <title>Apache Archiva 1.1发布</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://qqbyte.javaeye.com">QQbyte</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2983" style="color:red;">http://www.javaeye.com/news/2983</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <p><a href="http://archiva.apache.org/docs/1.1/release-notes.html">Apache Archiva 1.1发布</a>,&nbsp; Archiva是一个管理一个和多个远程存储的软件，包括管理，浏览，搜索等功能。</p>
<p><br />Archiva 1.1 下载地址： <a href="http://archiva.apache.org/download.html"> available for download from the web site</a></p>
<p>&nbsp;</p>
<p>如果希望获得详细信息点击：</p>
<p>&nbsp;</p>
<ul>
<li>官网: <a href="http://archiva.apache.org/">http://archiva.apache.org/</a></li>
<li>使用者邮件列表: <a href="http://archiva.apache.org/mail-lists.html">http://archiva.apache.org/mail-lists.html</a></li>
</ul>
<p>&nbsp;</p>
<p><img src="http://archiva.apache.org/images/archiva.png" height="69" alt="" width="188" /></p>
          <br/><br/><span>来自：<a href='http://archiva.apache.org/docs/1.1/release-notes.html' target='_blank'>archiva.apache.org</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2983#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 11:25:31 +0800</pubDate>
        <link>http://www.javaeye.com/news/2983</link>
        <guid>http://www.javaeye.com/news/2983</guid>
      </item>
      <item>
        <title>一个国内的开源Java缓存系统</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xinbo.javaeye.com">xinbo.tang</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2982" style="color:red;">http://www.javaeye.com/news/2982</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
          <p>题记：刚才发现一个这样的链接&ldquo;<a href="http://groups.csdn.net/shedewang_db_cache" target="_blank">1亿pv/天高效数据库缓存解决方案首次开源</a>&rdquo;，进去一看应该是个 java实现的高性能缓存系统，作者将这个系统开源了，国内很少有开源的精神，所以发了过来让大家共享一下。</p>
<p>&nbsp;</p>
<p><span style="font-family: 宋体;"><span style="font-size: medium;"><span style="font-size: small;">系统主要是构建在</span></span></span><span><span style="font-family: &quot;Times New Roman&quot;;"><span style="font-size: medium;"><span style="font-size: small;">hibernate</span></span></span></span><span style="font-family: 宋体;"><span style="font-size: medium;"><span style="font-size: small;">之上的高效数据库缓存系统，其中包含了分布式解决方案，该系统已经应用在作者的网站舍得网上，据说是没有发现大问题。</span></span></span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: 宋体;">代码是作者多年互联网web开发经验的总结。系统简洁易用，主程序</span><span><span style="font-family: &quot;Times New Roman&quot;;">BaseManager.java</span></span><span style="font-family: 宋体;">不到</span><span><span style="font-family: &quot;Times New Roman&quot;;">1000</span></span><span style="font-family: 宋体;">行代码，用&ldquo;精悍&rdquo;来形容绝对不为过，</span><span><span style="font-family: &quot;Times New Roman&quot;;">1000</span></span><span style="font-family: 宋体;">行代码却包含了数据库对象的缓存、列表和长度的缓存、按字段散列缓存、</span><span><span style="font-family: &quot;Times New Roman&quot;;">update</span></span><span style="font-family: 宋体;">延时更新、自动清除列表缓存等功能，用它来实现像论坛、博客、校友录、交友社区等绝大部分应用网站都足够了。</span></span></p>
<p>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span style="font-family: 宋体;">作者在理想状态下做了压力测试，在没有数据库操作的</span><span><span style="font-family: &quot;Times New Roman&quot;;">jsp</span></span><span style="font-family: 宋体;">页面</span><span><span style="font-family: &quot;Times New Roman&quot;;">(</span></span><span style="font-family: 宋体;"><a href="http://www.shedewang.com">舍得网</a>新首页</span><span><span style="font-family: &quot;Times New Roman&quot;;">)</span></span><span style="font-family: 宋体;">里可以完成</span><span><span style="font-family: &quot;Times New Roman&quot;;">2000</span></span><span style="font-family: 宋体;">多</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests</span></span><span style="font-family: 宋体;">每秒（正常情况可能有</span><span><span style="font-family: &quot;Times New Roman&quot;;">1/1000</span></span><span style="font-family: 宋体;">的</span><span><span style="font-family: &quot;Times New Roman&quot;;">request</span></span><span style="font-family: 宋体;">有数据库查询，其余</span><span><span style="font-family: &quot;Times New Roman&quot;;">999/1000</span></span><span style="font-family: 宋体;">都是直接从缓存里读取），物品详情页每秒可完成</span><span><span style="font-family: &quot;Times New Roman&quot;;">3000</span></span><span style="font-family: 宋体;">多</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests</span></span><span style="font-family: 宋体;">，纯静态</span><span><span style="font-family: &quot;Times New Roman&quot;;">html</span></span><span style="font-family: 宋体;">页面也只能完成</span><span><span style="font-family: &quot;Times New Roman&quot;;">7000</span></span><span style="font-family: 宋体;">多</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests/</span></span><span style="font-family: 宋体;">秒，作者对首页进行了三个小时的压力测试，完成了</span><span><span style="font-family: &quot;Times New Roman&quot;;">24850800</span></span><span style="font-family: 宋体;">个</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests</span></span><span style="font-family: 宋体;">，</span><span><span style="font-family: &quot;Times New Roman&quot;;">java</span></span><span style="font-family: 宋体;">一点事都没有，内存没有上涨。按照</span><span><span style="font-family: &quot;Times New Roman&quot;;">2000</span></span><span style="font-family: 宋体;">个</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests/</span></span><span style="font-family: 宋体;">秒算，一天按</span><span><span style="font-family: &quot;Times New Roman&quot;;">15</span></span><span style="font-family: 宋体;">小时计算，那么每天能完成</span><span><span style="font-family: &quot;Times New Roman&quot;;">3600*15*2000=1</span></span><span style="font-family: 宋体;">亿零</span><span><span style="font-family: &quot;Times New Roman&quot;;">8</span></span><span style="font-family: 宋体;">百万</span><span><span style="font-family: &quot;Times New Roman&quot;;">requests</span></span><span style="font-family: 宋体;">，当然这是理想状态，实际状态就算打一折，还能完成</span><span><span style="font-family: &quot;Times New Roman&quot;;">1000</span></span><span style="font-family: 宋体;">万</span><span><span style="font-family: &quot;Times New Roman&quot;;">pv/</span></span><span style="font-family: 宋体;">天，要知道，这只是一个普通</span><span><span style="font-family: &quot;Times New Roman&quot;;">1</span></span><span style="font-family: 宋体;">万</span><span><span style="font-family: &quot;Times New Roman&quot;;">3</span></span><span style="font-family: 宋体;">千块钱买的服务器，内存</span><span><span style="font-family: &quot;Times New Roman&quot;;">4G</span></span><span style="font-family: 宋体;">，</span><span><span style="font-family: &quot;Times New Roman&quot;;">CPU2</span></span><span style="font-family: 宋体;">个，</span><span><span style="font-family: &quot;Times New Roman&quot;;">LinuxAS4</span></span><span style="font-family: 宋体;">系统，</span><span><span style="font-family: &quot;Times New Roman&quot;;">apache2.0.63/resin2.1.17/jdk6.0</span></span><span style="font-family: 宋体;">的环境。</span></span></p>
<p>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;">作者所做网站：<a href="http://www.shedewang.com" title="http://www.shedewang.com">http://www.shedewang.com</a></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;">下载地点：<a href="http://shedewang.com/akaladocs/api/com/akala/dbcache/core/BaseManager.html" title="http://shedewang.com/akaladocs/api/com/akala/dbcache/core/BaseManager.html">http://shedewang.com/akaladocs/api/com/akala/dbcache/core/BaseManager.html</a></p>
          
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2982#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 11:14:46 +0800</pubDate>
        <link>http://www.javaeye.com/news/2982</link>
        <guid>http://www.javaeye.com/news/2982</guid>
      </item>
      <item>
        <title>Django 1.0 alpha 发布</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://qqbyte.javaeye.com">QQbyte</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2981" style="color:red;">http://www.javaeye.com/news/2981</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <p>James Bennett说道：根据Django 1.0开发计划，今天晚上，我们已经发布了Django 1.0 alpha版本。新版本包括所有将出现在最终版Django 1.0中主要特性，第一个beta版本将计划在8月5日发布。<br /><br />这里是下载页面：<a href="http://www.djangoproject.com/download/">the Django downloads page</a>  和   <a href="http://www.djangoproject.com/documentation/release_notes_1.0_alpha/">the release notes</a>.</p>
<p>&nbsp;</p>
<p>关于Django的完整开发计划，可以看这里：<a href="../2572">Django 1.0 的路线图 和时间表 发布</a></p>
<p>&nbsp;</p>
<p><img src="http://media.djangoproject.com/img/site/hdr_logo.gif" height="41" alt="" width="117" /></p>
<p>&nbsp;</p>
          <br/><br/><span>来自：<a href='http://www.djangoproject.com/weblog/2008/jul/21/10-alpha/' target='_blank'>djangoproject.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2981#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 10:13:17 +0800</pubDate>
        <link>http://www.javaeye.com/news/2981</link>
        <guid>http://www.javaeye.com/news/2981</guid>
      </item>
      <item>
        <title>58同城网再获软银注资分类广告前途光明</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://hualala.javaeye.com">hualala</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2980" style="color:red;">http://www.javaeye.com/news/2980</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
          <a href="http://www.58.com/" target="_blank">58同城网</a>昨日宣布再次获得软银赛富的巨额投资，并计划着力拓展国内的分类信息市场；同时，将重点推广上海市场。<br /><br />据了解，作为典型的web2.0应用，58同城网搭建了资源丰富的城市分类信息平台，提供免费租房、二手等个人信息发布服务。<br /><br />随着分类信息网站不断完善诚信机制、提高服务质量、降低交易风险，将有越来越多的企业试水网络营销。软银赛富副总裁徐哲表示：“传统的分类广告无论在中国还是美国都是一个很大的市场，互联网是传递分类广告非常好的工具。搭建一个分类广告的平台，解决老百姓实实在在的生活需要，这不是凭空创造出来的需求，中间有很多的机会。另外，很多中小企业是没有钱做广告的，但是他们依然有宣传推广的需求，大街上的小广告就说明这种需求很旺盛，可见分类广告的前途很光明。”　 <br /><br /><img src="http://pic2.58.com/images/logo.gif" />
          <br/><br/><span>来自：<a href='http://media.people.com.cn/GB/40641/7547370.html' target='_blank'>people.com.cn</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2980#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 10:13:11 +0800</pubDate>
        <link>http://www.javaeye.com/news/2980</link>
        <guid>http://www.javaeye.com/news/2980</guid>
      </item>
      <item>
        <title>23日科技名博节选:Google或以2亿美元收购Digg</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://hualala.javaeye.com">hualala</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2979" style="color:red;">http://www.javaeye.com/news/2979</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
          <p>　　<a href="http://blogs.zdnet.com/BTL/?p=9407" class="articleLink" target="_blank">Between The Lines：并购战花费雅虎2200万美元</a></p>
<p>　　雅虎周二公布的二季度业绩未达预期，伊坎发起的代理权之争及微软雅虎并购战使雅虎偏离了正轨，雅虎为此花费的咨询费用达到2200万美元。</p>
<p>&nbsp;</p>
<p>　　<a href="http://www.techcrunch.com/2008/07/22/chad-dickerson-to-leave-yahoo-for-etsy/" class="articleLink" target="_blank">TechCrunch：雅虎Brickhouse主管离职</a></p>
<p>　　日前有消息称，雅虎Brickhouse主管Chad
Dickerson即将离职，担任一家手工艺品买卖网站Etsy的首席技术官。Dickerson也成为最新离职的雅虎高管，许多雅虎管理层人员都对于高层领导能力心存不满。　　</p>
<p>&nbsp;</p>
<p>　　<a href="http://www.techcrunch.com/2008/07/22/google-in-final-negotiations-to-acquire-digg-for-around-200-million/" class="articleLink" target="_blank">TechCrunch：Google或以2亿美元收购Digg</a></p>
<p>　　来自Google内部的消息人士表示，过去6周中，Google断断续续在与新闻分享网站Digg进行收购谈判。Google即将完成对
Digg的收购，收购价将在2亿美元左右。Google收购Digg的传言早在3月份就已经出现，不过该传言被Digg首席执行官Jay
Adelso否认。消息人士称，双方已经走到谈判的最终阶段，或许还需数周就可完成。</p>
<p>&nbsp;</p>
<p>　　<a href="http://www.macdailynews.com/index.php/weblog/comments/rumor_apples_secret_product_is_macbook_touch/" class="articleLink" target="_blank">MacDailyNews：传苹果新产品将是MacBook touch</a></p>
<p>　　苹果日前在财报电话会议中表示，将于第四财季进行产品转型，苹果推出什么样的新产品引发业内猜测。有消息人士表示，苹果的新产品将会是新款笔记
本&ldquo;MacBook touch&rdquo;。该笔记本拥有类似iPhone的多点触控屏幕，支持手势操作，拥有完整版的Mac OS
X操作系统。而苹果此前收购PA
Semi正是为推出这样一款产品做准备。该笔记本还将拥有加速度传感器、GPS等功能，并将与刚刚推出的应用程序商店兼容。</p>
<p>&nbsp;</p>
<p>　　<a href="http://www.readwriteweb.com/archives/take_a_walk_with_google_maps.php" class="articleLink" target="_blank">ReadWriteWeb：Google地图正式加入步行向导功能</a></p>
<p>　　Google周二在Google地图中加入步行向导功能。这一向导与驾车向导有所不同，不会考虑单行线，并且尽量给出最短距离。Google承
认，目前的数据库中对于人行道、过街天桥及道路拥挤程度的信息还不够，未来还将在地图服务中增强这些方面的内容。该功能仍在Beta测试中，Google
地图是目前唯一一个提供步行向导的地图服务。（金童）</p>
          <br/><br/><span>来自：<a href='http://it.sohu.com/20080723/n258315862.shtml' target='_blank'>it.sohu.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2979#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 09:57:09 +0800</pubDate>
        <link>http://www.javaeye.com/news/2979</link>
        <guid>http://www.javaeye.com/news/2979</guid>
      </item>
      <item>
        <title>《Maven权威指南》前五章完整出炉</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://juvenshun.javaeye.com">juvenshun</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2978" style="color:red;">http://www.javaeye.com/news/2978</a>&nbsp;
          发表时间: 2008年07月23日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <p>详细内容请点击：<a href="http://www.sonatype.com/book/reference_zh/public-book.html" target="_blank">http://www.sonatype.com/book/reference_zh/public-book.html#</a>
</p>
<p>&nbsp;</p>
<p>这里是详细的目录列表：</p>
<p>&nbsp;</p>
<dl><dt><span class="chapter"><a href="http://www.sonatype.com/book/reference_zh/introduction.html">1. 介绍 Apache Maven</a>
</span>
</dt>
<dd>
                        <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#section-whatIsMaven">1.1. Maven... 它是什么?</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#section-conventionConfiguration">1.2. 约定优于配置（Convention Over Configuration）</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#d0e363">1.3. 一个一般的接口</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#d0e391">1.4. 基于Maven插件的全局性重用</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#d0e412">1.5. 一个&ldquo;项目&rdquo;的概念模型</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#section-mavenAlternativeAnt">1.6. Maven是Ant的另一种选择么？</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#sect-compare-ant-maven">1.7. 比较Maven和Ant</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/introduction.html#section-introSummary">1.8. 总结</a>
</span>
</dt>
</dl>
                     </dd>
<dt><span class="chapter"><a href="http://www.sonatype.com/book/reference_zh/installation.html">2. 安装和运行Maven</a>
</span>
</dt>
<dd>
                        <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-java">2.1. 验证你的Java安装</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-maven-download">2.2. 下载Maven</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-maven-install">2.3. 安装Maven</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-maven-osx">2.3.1. 在Mac OSX上安装Maven</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#d0e833">2.3.2. 在Microsoft Windows上安装Maven</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-maven-linux">2.3.3. 在Linux上安装Maven</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#d0e867">2.3.4. 在FreeBSD或OpenBSD上安装Maven</a>
</span>
</dt>
</dl>
                           </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-test-install">2.4. 验证Maven安装</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-details">2.5. Maven安装细节</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-user">2.5.1. 用户相关配置和仓库</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-upgrade">2.5.2. 升级Maven</a>
</span>
</dt>
</dl>
                           </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#d0e1026">2.6. 获得Maven帮助</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#sect-help-plugin-install">2.7. 使用Maven Help插件</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#d0e1120">2.7.1. 描述一个Maven插件</a>
</span>
</dt>
</dl>
                           </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/installation.html#section-installation-license">2.8. 关于Apache软件许可证</a>
</span>
</dt>
</dl>
                     </dd>
<dt><span class="part"><a href="http://www.sonatype.com/book/reference_zh/part-example.html">I. Maven实战</a>
</span>
</dt>
<dd>
                        <dl><dt><span class="chapter"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html">3. 一个简单的Maven项目</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#simple-intro">3.1. 简介</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e1294">3.1.1. 下载本章的例子</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#sect-create-simple">3.2. 创建一个简单的项目</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e1405">3.3. 构建一个简单的项目</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e1428">3.4. 简单的项目对象模型 (Project Object Model)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#section-simple-core">3.5. 核心概念</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e1520">3.5.1. Maven插件和目标 (Plugins and Goals)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e1648">3.5.2. Maven生命周期 (Lifecycle)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#sect-maven-coordinates">3.5.3. Maven坐标 (Coordinates)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#section-simple-repo">3.5.4. Maven仓库(Repositories)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e2075">3.5.5. Maven依赖管理 (Dependency Management)</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e2215">3.5.6. 站点生成和报告 (Site Generation and Reporting)</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/simple-project.html#d0e2263">3.6. 小结</a>
</span>
</dt>
</dl>
                           </dd>
<dt><span class="chapter"><a href="http://www.sonatype.com/book/reference_zh/ch04.html">4. 定制一个Maven项目</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2274">4.1. 介绍</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2279">4.1.1. 下载本章样例</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2305">4.2. 定义Simple Weather项目</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2319">4.2.1. Yahoo! Weather RSS</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2335">4.3. 创建Simple Weather项目</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2382">4.4. 定制项目信息</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2422">4.5. 添加新的依赖</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2485">4.6. Simple Weather源码</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2785">4.7. 添加资源</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2875">4.8. 运行Simple Weather项目</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2902">4.8.1. Maven Exec 插件</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2924">4.8.2. 浏览你的项目依赖</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e2988">4.9. 编写单元测试</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e3147">4.10. 添加测试范围依赖</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#sect-custom-test-resource">4.11. 添加单元测试资源</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#section-custom-exec">4.12. 执行单元测试</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e3347">4.12.1. 忽略测试失败</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#d0e3385">4.12.2. 跳过单元测试</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/ch04.html#section-custom-packaged">4.13. 构建一个打包好的命令行应用程序</a>
</span>
</dt>
</dl>
                           </dd>
<dt><span class="chapter"><a href="http://www.sonatype.com/book/reference_zh/web.html">5. 一个简单的Web应用</a>
</span>
</dt>
<dd>
                              <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#web-intro">5.1. 介绍</a>
</span>
</dt>
<dd>
                                    <dl><dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3511">5.1.1. 下载本章样例</a>
</span>
</dt>
</dl>
                                 </dd>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3537">5.2. 定义这个简单的Web应用</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3552">5.3. 创建这个简单的Web应用</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3651">5.4. 配置Jetty插件</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3723">5.5. 添加一个简单的Servlet</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3809">5.6. 添加J2EE依赖</a>
</span>
</dt>
<dt><span class="section"><a href="http://www.sonatype.com/book/reference_zh/web.html#d0e3974">5.7. 小结</a>
</span>
</dt>
</dl>
                           </dd>
</dl>
</dd>
</dl>
<p>请大家不要吝啬您的<strong><span style="color: #ff0000;">意见或建议</span>
</strong>
。</p>
<p>按计划，<a href="http://www.sonatype.com/book/reference_zh/eclipse.html">Maven and Eclipse: m2eclipse</a>
 和 <a href="http://www.sonatype.com/book/reference_zh/repository-manager.html">Repository Manager</a>
 将在一个月内翻译完成并发布。</p>
<p>（<img src="../../images/smiles/icon_wink.gif" alt="" />
）</p>
          <br/><br/><span>来自：<a href='http://juvenshun.javaeye.com/blog/218395' target='_blank'>juvenshun.javaeye.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2978#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Jul 2008 09:46:18 +0800</pubDate>
        <link>http://www.javaeye.com/news/2978</link>
        <guid>http://www.javaeye.com/news/2978</guid>
      </item>
      <item>
        <title>Facebook起诉德国社交网站StudiVZ创意抄袭</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://withyou.javaeye.com">withyou</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2977" style="color:red;">http://www.javaeye.com/news/2977</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
          近日Facebook的律师起草了一份起诉书，状告德国的社交网站StudiVZ抄袭其网站设计创意，并声称这家德国网站的用户界面与Facebook的几乎一模一样。StudiVZ是德国知名度最高的社交网站，其拥有超过1000万的用户。尽管Facebook也有其德语版网站，但相比StudiVZ, 其在德国的用户群就显得相当有限。而反观其英文网站的全球用户却达到了8000万。<br /><br />Facebook宣称这家德国网站只是将其网站页面中特有的蓝色改成了红色，这点改变并不能掩盖其抄袭的做法。同时，诉讼书中提到这家德国站点还对其墙纸、用户组、,个人信息聚合服务及一些其它的网页设计元素进行了抄袭。粗略的浏览这家德国网站确实能够发　　现，除了一些颜色的改变，其几乎与 Facebook的英文版完全雷同，即便是注册页面都一模一样。<br /><br />　　针对可能的侵权行为，Facebook还将继续动用法律手段，至少有九家涉嫌克隆Facebook网站创意的站点面临倒闭，而中国有名的“校内网”也可能成为Facebook的下一攻击目标。
          <br/><br/><span>来自：<a href='http://news.pconline.com.cn/nw/0807/1360512.html' target='_blank'>pconline.com.cn</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2977#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 15:48:05 +0800</pubDate>
        <link>http://www.javaeye.com/news/2977</link>
        <guid>http://www.javaeye.com/news/2977</guid>
      </item>
      <item>
        <title>版本管理： Envers 1.0.0.GA 下载</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://405329829-qq-com.javaeye.com">╱/罒呍唲</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2975" style="color:red;">http://www.javaeye.com/news/2975</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <a href=" http://www.jboss.org/envers/" target="_blank">Envers</a>是一个提供基于Hibernate的JPA 实体版本化库。使用此库只需要用@Versioned注释您的实体。然后，您所做的任何变更都会在自动生成的版本表中记录下来。<br /><br /><img src="http://www.jboss.org/envers/code1.png" /><br /><br />   简单的属性和关系都可以被版本跟踪，当一个交易成功，一个新的修订就此产生。使用这个机制，我们可以从数据库中创建一个视图，存储某一个特定的时间进行修改数据。<br />   <br />   检索历史数据也很容易—通过一个简单而直接的API。您还可以使用HIbernate的标准页面来查询<a href="http://www.jboss.org/envers/queries.html" target="_blank">历史数据</a>。<br /><br />   一些使用案例，包括<a href=" http://www.warski.org/blog/?p=14" target="_blank">bi-temporal</a>版和数据库的审计，您可以在每个修订中存储更多的<a href="http://www.jboss.org/envers/revision_log.html" target="_blank">数据</a>（例如用户名称的变化）。<br /><br />   欢迎你进行尝试！评论，错误报告，创意和贡献代码都是非常欢迎的。<br /><br />网址： <a href="http://www.jboss.org/envers/" target="_blank">http://www.jboss.org/envers/</a> <br />下载：<a href=" http://www.jboss.org/envers/downloads/" target="_blank"> http://www.jboss.org/envers/downloads/</a>
          <br/><br/><span>来自：<a href='http://www.theserverside.com/news/thread.tss?thread_id=50094' target='_blank'>www.theserverside.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2975#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 15:25:53 +0800</pubDate>
        <link>http://www.javaeye.com/news/2975</link>
        <guid>http://www.javaeye.com/news/2975</guid>
      </item>
      <item>
        <title>推荐：45个优秀的免费web模板</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://qqbyte.javaeye.com">QQbyte</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2976" style="color:red;">http://www.javaeye.com/news/2976</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <p>推荐45个优秀的免费web模板，点击下面的download可以下载模板代码。建议收藏～</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong></strong>
</p>
<p><a href="http://www.opensourcetemplates.org/templates/preview/1408223945/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/2.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opensourcetemplates.org/templates/preview/1408223945/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opensourcetemplates.org/templates/preview/1361070670/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/3.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opensourcetemplates.org/templates/preview/1361070670/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1433" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/4.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1433" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.oswd.org/design/preview/id/3401" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/5.jpg" height="360" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px;" width="462" /></a><br />
<a href="http://www.oswd.org/design/preview/id/3401" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/temper/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/6.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/temper/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=661" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/7.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=661" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page6/beauty-secrets/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/8.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page6/beauty-secrets/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.styleshout.com/templates/preview/Colourise1-0/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/9.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.styleshout.com/templates/preview/Colourise1-0/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=625" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/10.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=625" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/facing/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/10-1.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/facing/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=681" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/11.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.ex-designz.net/template/tempdetail.asp?temp_id=681" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.ex-designz.net');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/redish/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/12.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/redish/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/business_events/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/13.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/business_events/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/flash_web/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/14.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/flash_web/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.styleshout.com/templates/preview/UrbanArtist1-0/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/15.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.styleshout.com/templates/preview/UrbanArtist1-0/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1611" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/16-1.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1611" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1238" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/17.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1238" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page6/cool-web/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/18.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page6/cool-web/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page6/my-family/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/19.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page6/my-family/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page5/colourworld/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/20.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page5/colourworld/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page17/autumn/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/21.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page17/autumn/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page19/redbusiness/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/22.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page19/redbusiness/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.free-css.com/assets/files/free-templates/preview/page24/artnouveau/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/23.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.free-css.com/assets/files/free-templates/preview/page24/artnouveau/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.free-css.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.freecsstemplates.org/preview/puzzled" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freecsstemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/24.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.freecsstemplates.org/preview/puzzled" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freecsstemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.freelayouts.com/templates/Imagination?preview=true" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freelayouts.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/25.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.freelayouts.com/templates/Imagination?preview=true" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freelayouts.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateyes.com/html-templates/045.htm" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateyes.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/26.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateyes.com/html-templates/045.htm" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateyes.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/trial_impact/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/27.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/trial_impact/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateyes.com/html-templates/015.htm" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateyes.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/28.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateyes.com/html-templates/015.htm" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateyes.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/new_rise/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/29.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/new_rise/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.oswd.org/design/preview/id/2687" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/30.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.oswd.org/design/preview/id/2687" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.oswd.org/design/preview/id/3630" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/31.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.oswd.org/design/preview/id/3630" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/g_consultant/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/32.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/g_consultant/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.sixshootermedia.com/ostemplates/home/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/33.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.sixshootermedia.com/ostemplates/home/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.sixshootermedia.com/ostemplates/the_old_forest/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/34.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px;" width="462" /></a><br />
<a href="http://www.sixshootermedia.com/ostemplates/the_old_forest/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1657" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/35.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1657" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1631" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/36.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1631" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1633" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/37.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1633" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.freelayouts.com/templates/Yoghourt?preview=true" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freelayouts.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/38.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.freelayouts.com/templates/Yoghourt?preview=true" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.freelayouts.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.templateworld.com/zero/in_action/individual/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/39.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.templateworld.com/zero/in_action/individual/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.templateworld.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1637" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/40.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1637" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opendesigns.org/preview/?template=1635" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/41.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opendesigns.org/preview/?template=1635" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opendesigns.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.opensourcetemplates.org/templates/preview/1405294387/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/42.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.opensourcetemplates.org/templates/preview/1405294387/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.opensourcetemplates.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.oswd.org/design/preview/id/3434" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/43.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.oswd.org/design/preview/id/3434" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.oswd.org');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.styleshout.com/templates/preview/PixelGreen1-2/index.html" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/44.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.styleshout.com/free-templates.php?page=4" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.styleshout.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p><a href="http://www.sixshootermedia.com/ostemplates/motion/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/45.jpg" height="407" alt="45 Excellent free web templates" style="border: 0pt none; margin: 0px; vertical-align: middle;" width="462" /></a><br />
<a href="http://www.sixshootermedia.com/ostemplates/motion/" title="45 excellent free web templates" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.sixshootermedia.com');" target="_blank"><img src="http://dzineblog.com/wp-content/uploads/2008/07/temp/pd.jpg" height="34" alt="" style="border: 0pt none; margin: 0px;" width="170" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
          <br/><br/><span>来自：<a href='http://dzineblog.com/2008/07/45-excellent-free-web-templates.html' target='_blank'>dzineblog.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2976#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 15:24:01 +0800</pubDate>
        <link>http://www.javaeye.com/news/2976</link>
        <guid>http://www.javaeye.com/news/2976</guid>
      </item>
      <item>
        <title>[听译大师说话]python 创始人访谈录2: python 的起源 特点和未来</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://koalant.javaeye.com">koalant</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2973" style="color:red;">http://www.javaeye.com/news/2973</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <img src="http://www.tbray.org/ongoing/When/200x/2004/12/08/IMG_3061.png" alt="" /><br /><br /><br />perl 创始人和 python 创始人<br /><br /><br />听译这东西的确很累人，一次翻译太多也很疲惫。 我尽量想在一篇博客中包含尽量多的内容，结果最终搞的自己兴趣全无了，下次看来还是应该一点一点的来。 我的听力还是不好，有一些东西没听出来我就不翻译了，大体意思上应该不会差很多的，希望大家见谅。<br /><br />主持人: Chris DiBona （Google 开源网站负责人） and Leo Laporte （Twit 网站创始人）<br /><br />被采访人：<br />Guido van Rossum （python 创始人）<br /><br />Chris DiBona: 非常高兴 Guido 让我为这次采访做安排<br />Leo Laporte: 我们这里需要说明一下，Guido van Rossum 十六年前创建 python 语言，他现在在 google 工作。<br />Chris DiBona 是的，他已经在那里工作了一段时间了。<br />Leo Laporte: Google 是 python 的一个大用户。首先，我要问一个问题，guido , 是关于 python 起源的，如果我说错了，请你更正一下。就我所知，最初 python 的设计是为了教学的目的，你想创建一个用于学习和编程的语言，这么说对吗？<br />Guido van Rossum: 恩，很多人都这么认为，这个问题问的好，因为它让我可以追溯一下 python 的背景。python 从一个叫 ABC 的语言继承了很多东西，而 ABC 这种语言在设计的时候就特别考虑到用于教学。那是在上世纪七十年代晚期和八十年代早期，我在 abc 语言的实现小组，在那里我融入到语言设计讨论，语言实现，脑力激荡中，相当的令人兴奋。在八十年代末期，８９年的时候，我觉得自己有必要创建一门新语言，我借鉴了 abc 语言中我所喜欢的特点，并将其中我不喜欢的东西用自己创新的或一些借鉴自别处的想法取而代之。我的目标要要建立一个为专业程序员使用的脚本语言，而这些专业程序员主要使用 C 语言和 borne shell 脚本语言作为他们的主要开发语言。 python 的位置大概是介于 C 和 Shell 语言二者之间的，所以我创建 python 并没有明确的教学目的.<br />Leo Laporte: 这很有趣<br />Guido van Rossum: 因为我从ABC语言中借鉴了那么多，而 abc 本身又有教学的目的在其中，所以我建立的语言也就很适合做教学语言。<br />Leo Laporte: 人们问我很多次，每次我都向他们推荐 python 。 因为它是免费的，而且是跨平台的。它的解释器，使用它来教学编程很简单，你可以立刻尝试用解释器来学习语言。<br />Guido van Rossum: 没错，这是我从ABC 借鉴来的，ABC 也具有这些特点。<br />Chris DiBona 那么 ABC 是不是也有严格的空白格式要求吗？<br />Guido van Rossum: ABC 也有强制缩进的要求。<br />Leo Laporte: 我想这也是很多人一直抱怨的地方，我并不在意这个。你是否意识到这个问题？<br />Guido van Rossum: 我并不确定你说的这个一直是个问题，我也不认同你说的有这种抱怨。大多数情况下，这是人们自己不打算学习 python 所采用的一种很方便的借口。如果人们忽略这点，会发现这种缩进要求是愉悦的。<br />Leo Laporte: 你能写出优美的源码，而且很容易书写。你为什么这么设计。<br />Guido van Rossum: 这点我是借鉴自 ABC 的，而且我非常喜欢这个特点。他们这么设计可能是出于创新，他们有很多 algo 和algo 60 语言风格的经验， begin , end 语句 相当的麻烦，当缩进并不和程序结构相匹配，光靠关键字也会导致各种理解上的错误，<br />Chris DiBona begin begin begin end end end.<br />Guido van Rossum: 是啊，begin 和 end 的个数还可能不相同。<br />Leo Laporte: 使用空白代替 begin end 的好处在于迫使程序员大量使用缩进，这样可以让程序员看到代码后立刻清楚程序结构。<br />Guido van Rossum: 在很长的一段时间里，大家都有这么一个认识：任何一个自律的程序员可以任意地使用缩进。这就意味着任何一个人当他看代码的时候，看缩进是为了了解整个程序的结构，而实际上他是在数大括号。<br />Leo Laporte: 就像 perl 程序员那样，我不该这么说<br />Chris DiBona 你在挑起战火<br />Leo Laporte: 我不是要挑起战火，呵呵，我错了，我收回我说的话，我道歉<br />Guido van Rossum: 这很好。<br />Chris DiBona 我发现一件事情，无论从项目，公司角度来看，python 都更容易维护，从一个人到另外一个人， 你同意这点吗？<br />Guido van Rossum: 是啊，我完全同意。这其实不是我专门设计语言的目的，很难说我这么设计的目的。我们印在一些 T Shirt 上文字实际上是一些玩笑，我们有一个口号，叫做"There is only one way to do it"(做一件事情只有一个方法)<br />Leo Laporte: 和 perl 的 "There is moer than one way to do it"(做一件事情有很多种方法)相反<br />Guido van Rossum: 对，你可能会争论这点，这的确对可维护性很重要。如果做一件事情有很多种方法，如果你把一个任务给两个不同的程序员，他们可能给出两个完全不同的解决方案。<br />Leo Laporte: 我想程序员喜欢这样吧。<br />Guido van Rossum: 恩，如果你把一个任务交给两个程序员，他们给出两个解决方案，这也没问题。但是如果 A 程序员在某个时刻要维护 B 程序员的代码，他很可能重写代码而不是维护这段代码，因为这不是 A 程序员选择的解决方案。<br />Chris DiBona 值得一提的是，有很多很基本的程序计算任务。<br />Leo Laporte: 是啊，冒泡排序，二分法排序<br />Chris DiBona 它们太基础了，在这种情况下，显然就不成立了。<br />Guido van Rossum: 正如我说过的，T Shirt 上印的是一些玩笑。<br />Chris DiBona 说到 T shirt 的事情，很有趣。比如 Simple is better than complex ，还有其他一些<br />Guido van Rossum: 我想你说的这个是另外一件 T shirt 上印的口号。 我们有一个称为 Zen of Python 的东西，与其说它是技术信息，还不如说是诗歌。它包含了好几条。<br />Leo Laporte: 我把 python 当作一个非常优美的语言，它让我联想起来 C ，不过比 C 更清晰，更简单, 有很多库函数支持，开发很高效，运行很快。<br />Guido van Rossum: 你现在正在学它吗？<br />Leo Laporte: 是啊，它很容易学习。<br />Guido van Rossum: 很有趣，你将它和C 比较，实际上它和C 差别很大，你可以说它更象 lisp 而不是 C<br />Leo Laporte: 但是从表面上看，它看上很象。。。<br />Guido van Rossum: 对，你说的完全没错，从语法表面上来看，它是很像C ， 我一直在从 C 上借鉴经验，C 语言是我设计python 的参考点之一。我的脑海中一直考虑的是那些和我一样的程序员，用 C 写代码，用 Shell 写代码，这是８０年代程序员的典型程序模块。<br /><br />Leo Laporte: 我们还是回到 C lisp 的事情，它看上去象 C ,实际上它的底层更象 lisp。 真正的程序员都喜欢 Lisp ，告诉我这是为什么？<br />Guido van Rossum: Python 和 Lisp 的联系是很有限的，因为尽管 python 内部有很多 lisp 风格的东西，但是在我开始创建 python 的时候，我一点都不懂 lisp, 我现在基本上还是不懂 lisp ，我没有用lisp 写过任何一个，哪怕是很小的项目。<br />Leo Laporte: 你用 C 写的 python 吧？<br />Guido van Rossum: 是的， Python 的主要实现是用 C<br />Leo Laporte: 有 lisp 实现的 python 吗？<br />Guido van Rossum: 就我所知没有。<br />Leo Laporte: 肯定有 java 实现吧。<br />Guido van Rossum: Jython 是用 java 编写，编译为 java 字节码，建立 jython 的那个人实际上最近又建立了 Iron Python 项目，它运行在 .net 上，用 C# 编写。<br />Leo Laporte: 那么 Python 的 lisp 风格是怎么回事？Python 在结构上是如何解决 lisp 处理的那些问题？<br />Guido van Rossum: Lisp 和 Python 的主要相似之处在于：任何东西在运行时都是动态的。类似 lisp，python 的分析器，编译器并不清楚程序中发生了什么。 python 的分析器至少知道 if 语句，模块，函数的定义，但是它不知道你在程序中要操作的任何数值的类型。 如果你显示地在python 程序中写了 x + y ，x 和 y 可以是任何类型。你可以在其他语言中做运算符重载，比如 C++ ，编译器总是很清楚地知道 a 和 b 属于那个模块，哪个类，而在python中 ，编译器不知道也不在乎这些，他们产生相同的python字节码, 这些字节码可以作用于任何支持 +  加法运算符重载的任何对象。<br />Guido van Rossum: 它使得你可以以一种探索式的方式编写程序成为可能。你可以在实际开始编程之前不用明确选择类型，类，接口<br />Chris DiBona 不管类型是否正确<br />Guido van Rossum: 这样做的好处之一是：如果你写错了，假如你用 Java 写程序，你可能要重构你的项目，改变某些参数的类型，而用 python ，你的代码可能需要的改动会非常少，因为在程序中很多信息并没有明显的声明，也没有那么多的重复。 在java 中你会很多次地声明类型，每个方法都有某些类型的声明，某个参数的声明。 C++ 有同样的问题，C 当然也不例外，基本上静态类型语言都有相同的问题。当你的想法变了，你的程序要修改很多，某个类型到底是什么，它如何工作，怎么被使用，而在python 中，所有的信息都是在运行时中获得的，你只需要改变原始的变量的源头，所有的变化就在程序中自动传递了。<br />Leo Laporte: 我要好好想想你说的了 (哈哈)， Eric Ramond ６年前写了一篇很有名的文章。他说在开始的时候他不太喜欢 python ,而现在他确信这是他需要的语言，他现在还用 python 编程吗？<br />Guido van Rossum: 我不知道，这你应该问他，我希望他还在使用 python , 他可能在享受作为一个著名开源倡导者和受人好评的作家的生活。<br />Leo Laporte: 你呢？ 你现在还在编程吗？<br />Guido van Rossum: 我总是在编程，我在google 工作，我不做 python 传播工作的时候，我给google 写应用程序服务于 google 的开发团体，我所开发的东西不会触及 google 的用户，而是针对 google 公司自己的工程师。<br />Leo Laporte: 你还在做 python 进程方面的工作吗？<br />Guido van Rossum: 现在嘛，我已经尽可能地把大部分python 2 相关的工作委托可信任的人，我很高兴看着他们工作，从来不去干预。我并没有停止开发 python ，我更关注的是下一个 Python版本，我们称之为 python 3000 ，你也可以把它看作 python 3.0<br />Chris DiBona 是啊， 这个新版本号，呵呵。<br />Guido van Rossum: 是啊，我们想出这个名字，来源于六年前微软如此激进地宣传自己的 windows ，我想我们可以做的更好一点。<br />Leo Laporte: 可以比它好1000点，呵呵<br />Guido van Rossum: 呵呵，这意味着我们不会有发行时间上的问题，这样它就可以稍微迟一些发行。<br />Chris DiBona 那么 python 3000 是否五年前就考虑的吗？<br />Guido van Rossum: 不，长期以来它一直是一个神秘的未来版本。最近半年时间里，我做了很多工作让它走上正轨。我写了一些演示，阐明了整个开发过程和python 3000 一些特点，至于发布时间，我希望在明年，也就是07年早期发布一个 alpha 版本，python 3.0 将一年后（2008）可以向广大 python 社区用户发行。但这并不意味着用户需要马上切换到新版本上。因为新旧版本存在不兼容的问题，这也是为什么我们称之为 python 3000 的原因。 这对我是一个机会，可以修正我在90年代早期作为一个程序语言设计新手所犯下的一些设计错误。<br />Chris DiBona 什么错误？<br />Guido van Rossum: 恩，时间太短，很难说的很清楚。 我对异常处理的不对，对用户定义类型的设计，整数类型的范围的设计，整数的精度有一些错误，还有一些不太重要的语法上不方便的地方。我们尽可能的修复所有的错误而不失去向后不兼容性，对不起，是不失去向后兼容性。但是在某些时候，你很难既修复错误又保持向后兼容性。所以，与其在每个新版本， 2.0, 2.3, 2.4, 2.5 中保留一些微小却令人不舒服的不兼容性。 我们选择把这些步骤省下来，就保留一个不兼容的版本， python 3<br />Leo Laporte: 有些人期待技术上的更新，比如多处理器系统，我知道 python 的多线程支持很好，也许我们应该。。。<br />Guido van Rossum: 多线程支持并不是我现在打算着手处理的，我把它看作是实现质量上的问题，而不是语言规范的问题。而我们期待和着手处理的是用一个更好方式来支持 unicode,  基本上所有的字符都将是 unicode, 我们将包含一个独立的数据类型代表非字符类型<br />Chris DiBona 我想 unicode 这方面， java 处理的非常好<br />Guido van Rossum: 这方面我们当然是借鉴 java 的<br />Chris DiBona 这真是一个不错的想法<br />Guido van Rossum: python 在从其他语言上借鉴好想法这一点上是相当开放的，我从来也不羞于承认 python 的哪些特点是从哪里来的，你可以说 python 的最大缺点大概就是它是由我发明的<br /><br /><br /><a href="http://www.javaeye.com/news/2971" target="_blank">[听大师说话4]ＰＨＰ创始人　Rasmus Lerdorf　访谈1 </a><br /><br /><br /><a href="http://www.javaeye.com/news/2972" target="_blank">[听译大师说话]python 创始人访谈录 ： 关于 django 和 ruby </a><br /><br /><br /><a href="http://www.javaeye.com/news/2973" target="_blank">[听译大师说话]python 创始人访谈录2: python 的起源 特点和未来 </a>
          
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2973#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 11:48:17 +0800</pubDate>
        <link>http://www.javaeye.com/news/2973</link>
        <guid>http://www.javaeye.com/news/2973</guid>
      </item>
      <item>
        <title>[听译大师说话]python 创始人访谈录 ： 关于 django 和 ruby</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://koalant.javaeye.com">koalant</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2972" style="color:red;">http://www.javaeye.com/news/2972</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          【听译大师说话】是我最近打算搞的一个系列。我以前觉得看这些大师访谈并没有什么意思，他们的想法大多在书本和网站都有所介绍，他们本人也接受了很多访谈，估计说的也都是些套话，所以没必要看。最近听了两个访谈，一个是采访 python 创始人 Guido van Rossum 的，另外一个是采访 php 创始人 Rasmus Lerdorf， 让我感触很深，很多以前的一些困惑得以解释。我想这些访谈节目应该让更多的人知道，所以我觉得应该把这个系列搞下去，一是锻炼自己的听力，二是更好的学习技术。 我的英语水平不算太好，好在我也算是一个程序员，相信做此类访谈的翻译要比英语专业的人要更准确一点，而且我听译的内容大多是我喜欢的，也有兴趣做下去。我不是干这个事情的最合适的人，但是很多比我更合适的人却不愿意做它，所以大家只能凑合看了。我尽量做到不翻译错，如果有那些地方说的不对，希望大家指正。<br /><br />下面是这个【听译大师说话】系列的第一篇的第一节《  python 创始人访谈录 1： 关于 django 和 ruby  》<br /><br /><br /><br /><br /><img src="http://blog.codingnow.com/mengyan/python.jpg" alt="" width="533" height="400" /><br /><br /><br /><br /><br />主持人: Chris DiBona （Google 开源网站负责人） and Leo Laporte （Twit 网站创始人）<br /><br />被采访人：<br />Guido van Rossum （python 创始人）<br /><br /><br />Leo ： Python 缺少一些本地的 gui 库吧，只有 tk 什么的， 你觉得这是不是一个问题呢？<br />Guido： 现在这越来越不成为一个问题了，因为越来越多的人使用 web 来做任何事情。<br />Leo ：web 就是界面了<br />Guido： 但是的确也不解决什么问题，正如我说的：&ldquo; python 的 web 框架比语言中的关键字还多&rdquo; ， 我个人最喜欢的一个，也是我长期的选择框架是 django<br />Leo ：我正打算问你 django 的事情， 最近有人写了一篇文章，我想是在 rails 网站上最先介绍的，它测试了，django , rails 和 perl 的 web 框架，django 的速度是最快的，远远超过其他。<br />Guido： 这很有趣，我没听说过这个。<br />C：你怎么测试一个 web 框架啊？<br />Leo ：他们设置一些 web 测试应用程序，建立一系列的事务测试案例来测试事务操作， django 的速度相当的快，相当的快。 跟我们讲讲 django 吧<br />Guido：我是一个对 django 非常满意的用户，并在项目中使用了一些 django 。我将 django 称为&ldquo;第二代&rdquo; python web 框架， 第一代是指 zope 和 twisted， django 是由两个在堪萨斯新闻报社工作的小伙开发的，并非是一个很有名气的地方。<br />Chris：很奇怪，Zope, plone 也是来自报纸网站的<br />Leo ：他们要流程化他们的工作流，这对他们可是很重要的事情。<br />Guido：也许是这个原因吧，堪萨斯的这家报社希望建立一个给当地人提供信息的本地网站，该网站必须对读者的响应非常及时，必须很快地发布内容，并不是简单把文章发布到网站上这样谁都可以做的事情，它必须很容易更换整个网站的外观，添加一些新的创意，一些新功能，增加一些新的应用。例如，发布本地体育赛事新闻，提供关于球队链接和照片等各种感兴趣的信息，他们希望这东西能很快运作。我想他们做这个有两年了吧，这两个小伙子和一群编辑在一起工作，编辑为他们提供内容。在工作的同时，他们觉得有必要做一个框架，他们从他们的第一个网站应用中提取了框架。  通过编辑对他们不断提出的对网站修改需求，他们对框架增加更好的灵活性，后来他们决定说&ldquo;我们开源吧&rdquo;，他们的想法得到了报社的支持。然后有趣的事情就发生了。我想现在报社还在部分地使用 django 吧，这两个小伙可能也不再在报社工作了，他们开始了 django 开源项目。我觉得最棒的一点是，我跟这两个人谈过好几次，看了他们的演示，了解他们是如何工作的，他们的确做到了开源。他们有很好的许可证协议，就我而言，最重要的是，整个过程，他们运作用户社区的方式，他们的做法，他们寻求在混乱，民主之间的平衡，让许多用户添加功能，提供想法，但是又不失去原有的想法和框架的灵活性，我觉得做的非常的棒，使得 django 成为一个越来越好的产品， 这已经远远超过当时堪萨斯报社所需要的。<br />Leo ：那个测试是在 ruby on rails 的 wiki 网站上的<br />Guido： 现在能访问吗，我想看看<br />Chris：ruby on rails 的 wiki 无法访问了吧<br />Leo ：不，就在那里，文章是 framework performance, django 网站关于这篇文章的链接是坏的，他们测试了 symfony, 不是 perl 的框架，是一个 php 的 web 框架，以及 rails, django ，django 相当的快，几十倍的。<br />Guido： 哇，我知道 django 开发组的确花费了相当的时间使得他们的模板机制运行的相当流畅<br />Leo ：他们当然使用了 modpython 以获得更好的性能。<br />Chris： modpython 是一个 apache 的 python 模块，使得 python 的运行更加快速<br />Leo ：我要看看 django ，的确令人印象深刻<br />Guido：当然，我强力推荐它<br />Leo ：我也看过 turbogear ， 我经常上的一个网站&ldquo;doggdot&rdquo; （ http：//doggdot.us/ ） 是用 turbogear 做的<br />Guido：什么名字？这名字太难听了<br />Leo ：doggdot.us 结合了digg, slashdot, del.icio.us into , 它是用  turbogear 写的，这也是另外一个 python web 框架，看来还有许多其他的 python web 框架吧。<br />Guido：哦，看来 turbogear 和 django 现在正在竞争 web 开发的市场份额<br />Leo ：我喜欢 ruby on rails , 我喜欢 ruby 的一个原因是，它从很多方面很像 python<br />Guido： 的确，它看上去很像 python<br />Leo ：当然了，不过它的面向对象是从头做起的，任何东西都是对象（everyting is object ）<br />Guido： 在pyton中任何东西也都是对象（everyting is object ），但是并不是任何东西都是类（everyting is class ），因为这是我喜欢的方式。<br />Leo ：跟我们讲讲这个吧，为什么你喜欢这样<br />Guido：因为不是任何编程都会自然而然的采用面向对象的方式，比如一个很极端的例子，很不幸，在 java 中写一个 helloworld 程序要六七行的代码，你无法避免声明类 , 因为方法要定义在类中，这就要输入很多。<br />Leo ：在 ruby ，数字也是对象<br />Guido：在 python ， 也是这样的<br />Leo ：是吗？在 ruby 中很容易重载一些函数，使得面向对象的做法很干净，也很简洁<br />Guido： ruby 和 python 的不同在于， 在 ruby 中，你总是在类中定义函数，如果你不明确指出函数属于哪个类，那么你可能在一个默认的类中定义函数，在 python 中，所有的数据对象都是类，但你可以在类以外定义函数，比如 module （模块），作为函数的名字空间，函数是对象，模块是对象，但是它们并不像类那样工作。 这么实现跟 ruby 只是不同的选择而已<br />Leo ：你这么做肯定有你的理由吧<br />Guido：最近我听到一些对于 ruby 的抱怨，的确有点让我吃惊，ruby 的执行速度比python 慢很多，我想这的确影响到你刚才提到的一些性能测试的结果<br />Leo ：而且ruby 的线程也不是本地化的，这的确是个大问题<br />Guido：哦，天哪。<br /><br /><br /><br />参考系列其他文章：<br /><br /><br /><a href="http://www.javaeye.com/news/2971" target="_blank">[听大师说话4]ＰＨＰ创始人　Rasmus Lerdorf　访谈1 </a><br /><br /><br /><a href="http://www.javaeye.com/news/2972" target="_blank">[听译大师说话]python 创始人访谈录 ： 关于 django 和 ruby </a><br /><br /><br /><a href="http://www.javaeye.com/news/2973" target="_blank">[听译大师说话]python 创始人访谈录2: python 的起源 特点和未来 </a>
          
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2972#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 11:41:38 +0800</pubDate>
        <link>http://www.javaeye.com/news/2972</link>
        <guid>http://www.javaeye.com/news/2972</guid>
      </item>
      <item>
        <title>[听大师说话4] PHP 创始人　Rasmus Lerdorf　访谈1</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://koalant.javaeye.com">koalant</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2971" style="color:red;">http://www.javaeye.com/news/2971</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          <img src="http://p.blog.csdn.net/images/p_blog_csdn_net/koalant/EntryImages/20080721/2007101318162505.jpg" /><br /><br /><br />刚刚听译完 1/3 ,凑合看吧, 还有点意思.后面的部分可能更精彩一些, 关于 php6 支持 utf16 , php 的性能扩展问题, 安全性问题等等. 感觉 Rasmus Lerdorf 这个人说话比较实在.<br /><br />听译文如下:<br />-----------------------------------------------------------------------<br /><br />Leo Laporte：今天我们这里有一位非常重要的嘉宾， 事实上对他的到来，我真是太兴奋了， 我采用他的代码比任何人都多。<br />Chris DiBona ：的确是这样的<br />Leo Laporte：Rasmus Lerdorf ， php 的作者<br />Chris DiBona ：php 的作者兼创始人<br />Leo Laporte：这是一门编程语言，并且在许多方面都是因特网动力的源泉。<br />Chris DiBona ：是啊， 那么咱们开始吧。<br />Leo Laporte：php 的起源对于一个编程语言来说有点不同寻常，我说的对吧? 它最初叫做 Personal Home Page<br />Rasmus Lerdorf : 是啊， 它开始于十一二年前，它就是一些放在个人的主页上的工具,帮助人们管理自己网站的工具，<br />让他们知道谁访问了他们的网站，有一些日志的工具，还有一些标签，可以放在主页的底部，主页被访问了多少次，最后一个访问者是谁，他的IP是多少，域名是什么，等等。<br />Leo Laporte：那么说，它不是一门语言<br />Rasmus Lerdorf ：是的，它不是，它就是一些工具，虽然在底层它有一个框架来建立这些工具，我最初的想法是：作为工具应该很有趣，它们是作为一些工具来发布的。当人们开始使用这些工具的时候， 他们开始向我询问，是否可以拥有其他的工具。我实际上只有五到七个工具，他们要更多的工具。 我又写了一些，并告诉他们底层实现这些工具并不复杂， 你可以自己写，但是少数人接受了我的建议，但是大多数人让我给他们写。 我开始意识到写这些组件放到主页上事实上很有趣，为别人写一些组件也很有趣的。我还有一个工具，称为 Form Interpreter（FI ）， 我也把它引入了。 并开玩笑起了个名字 ， 既然有 TCP/IP， 那我有 PHP/FI<br />Leo Laporte： 哈哈<br />Rasmus Lerdorf ： 到第二版php 的时候，我把注意力从那些工具组件转向更关注于实现组件的后台技术。 那些工具还在那里，工具的确很有趣，不过它们渐渐淡出了舞台，仅仅作为一些小例子来演示。<br />Chris DiBona ： 当时你哪里呢？（创建php的时候）<br />Rasmus Lerdorf ： 我在多伦多做咨询工作<br />Chris DiBona : 是吗<br />Rasmus Lerdorf ： 我当时在给一个巴西的公司 nutec 工作， NUTEC ， 这是一个巴西的公司，位于巴西南部，做一些 Unix 开发， 他们需要一个说英语懂得北美市场的人，所以它派我去帮助他们成立美国分公司，我最后成了产品经理，销售人员，而不光是做技术这方面本应该是我做的事情 。后来 web 逐渐露头了。这是 93 ， 94 年的事情， 看来 web 要变得越来越大了。<br />Leo Laporte： 在 93 ，94 年的时候，我们还在使用 Mosaic, Netscape 才刚刚出来 ， 真是互联网的早期啊。<br />Rasmus Lerdorf ： 的确是很早<br />Leo Laporte： 你写了这个解释器就是为了这些小构件吗？<br />Rasmus Lerdorf ：是的，最初是为了这些工具，我称之为工具，你可以把这些放在主页上。 有人说第一版的php是用 perl 写的， 这不太正确。我的确做了一些这方面的探索，问题是 perl 后台是通过 cgi 方式运行的， cgi 的基本上是产生(fork)第二个服务器进程来处理。<br />Leo Laporte： 效率非常低<br />Rasmus Lerdorf ：实在是太慢了， 追溯到 93，94 年， perl 是比 shell 语言小一些，但是如果每个访问请求都产生一个新的进程的话，还是会完全占据服务器的进程。 存放我程序的 ISP 很不喜欢我的程序占据整个服务器进程。所以我必须找到一个更轻量级的方法来执行我的工具。基于 perl 的版本很快就消失了，我甚至在发布 Php 前都没有发布任何 perl 单独版本的php。我自己写了一些代码，它不能称为语言，只是从 html 的 中提取一些 tag，并将它们和 c 代码关联 。<br />Leo Laporte： 它是给 apache 写的模块吗<br />Rasmus Lerdorf ： 不，它最初是给 NCSA Web server 写的一些补丁, apache 服务器也正是起源于 NCSA 服务器的。<br />Leo Laporte：也就是说你给 NCSA 写了补丁。 也许这就是 PHP 成功的秘密，它嵌入 html, 当执行它的时候，解释器会说， 哦，这是 php ，让我们调 c 来执行它。<br />Rasmus Lerdorf ： 是的。 通过一些钩子代码， 没有 if else 条件判断 ，它不是语言， 仅仅是一些标签，解释器看见这些标签，很快地交由 C 代码来执行<br />Leo Laporte： PHP 的确很重要， 你可以看到 twit.tv 就是建立在drupal 之上的， drupal 也是用 Php 写的， 模板引擎也是用 Php 写的。 你可以不用它， 可以用 perl 模板， 但是用 php 更合理一些。<br />Rasmus Lerdorf ： 其实现在很多东西你可以用任何语言来实现<br />Leo Laporte： 是的<br />Rasmus Lerdorf ： 它不再那么独一无二了。 当 Apache 出来之前， 有一个 module 称为 include 的<br />Chris DiBona ： server side include<br />Rasmus Lerdorf : 对 ， server side include 也要追溯到 NCSA， 它们最先有的这个概念。 当 apache 出来后，它们提供了 API , 人们可以和 apache 的人站在一个起跑线上， 参看 API 并扩展它为 mod_php ， 从这时起， php 开始加速了发展<br />Leo Laporte： 现在的 php 是如何工作的<br />Rasmus Lerdorf ： 老样子， 没有变化。 你可以以几种方式工作 .<br />Chris DiBona : $符号是怎么来的？<br />Rasmus Lerdorf ： $符号最初是为了方便实现，状态机实现起来容易一些，变量名和函数名区分开， 而且人们比较熟悉它， Perl 很强大， 94 ，95年的时候每个人都在使用 perl ,它现在仍在被使用。 我并不打算做一个新的，奇怪和革命性的编程语言， 而是基于人们已经知道的东西来建立<br />Leo Laporte： 这很实用<br />Rasmus Lerdorf ： 是的，非常实用， 要搞清楚人们期望什么，像我这样的人，有一些使用 C的背景， perl 的背景， 用过 awk, sed 和 或许还懂得一些Shell 编程。 他们希望如何调用， 他们希望的语言是什么样子， 这是 php 的起源 。<br />Leo Laporte： 我不想这么说， 但是对于我来说，php 对网站开发来说是非常强大的语言，虽然有一些强有力的竞争者，但是 php 很强大。<br />Rasmus Lerdorf : 这很难说<br />Leo Laporte： 我全靠它了<br />Rasmus Lerdorf : 流行总是伴随着批评的<br />Leo Laporte： 呵呵<br />Rasmus Lerdorf ： 这通常很有趣，它确实很强大，虽然现在的批评不断，很难平息。人们不断地在他们的博客上批评 Php ， 而他们的博客又是用 Php 写的<br />Leo Laporte： 呵呵， wordpress 是用 Php 写的， drupal 也是用 Php 写的， 很多东西都是用 php 写的。<br />Chris DiBona ： ＰＨＰ这个名字代表什么？<br />Rasmus Lerdorf ：　PHP是 ， 恩 。 Hypertext Preprocessor ， 这名字很蠢， 就是 Php。 Zee v 与 Andi 是97年中加入进来的， 他们当时使用 php/fi， 在用到深度嵌套中碰到一些问题， 他们都是计算机专业的， 知道如何写解析器 ， 不像我是通过 hack 状态机这种方式来实现的 ， 我想他们在看到我的程序的时候，一定对它竟然能工作感到惊奇吧<br />Chris DiBona ： 呵呵，竟然可以工作<br />Rasmus Lerdorf ： 他们当时是自愿做这些工作的， 当时我有点太累了，感觉自己像是在给半个因特网写程序， 人们不是给我发补丁来修补程序，而是。。。<br />Leo Laporte： 这是我的程序， 把 bug 给改了吧。<br />Rasmus Lerdorf ： 是的 ， 改了 Bug, 给我写个程序做这个，我跟他们说做实现这个很容易，只要这么做， 他们说： 好吧，这是最麻烦的， 那剩下那些bug呢<br />Chris DiBona ：赶紧把 bug 修复了吧<br />Rasmus Lerdorf : 我当时的确很郁闷， 简直要把我掏空了。 当时感觉要么我就快要死了，否则我得把它移交到一个更大的 team 来做<br />Leo Laporte： 等等， 在我们继续谈论前，我觉得这是一个很有趣的事情， 我觉得这在开源社区并非罕见的情况，这种事情常常发生， 人们在说：“我管理不了这个社区了，我不干了，简直让我发疯了”， chris 你肯定经历过很多这种情形， 这对于开源社区是不是个问题<br />Chris DiBona ： 是的，实际上我跟Rasmus探讨过这个问题， 每隔五个月，就有人公开在社区挑起这种事端， “这是开源的终结， 有人离开开源社区了”。 你知道的， 其实有人进入，有人离开这是很正常的。<br />Leo Laporte：事实上这事最近发生在 Zend 框架社区了<br />Chris DiBona ：是啊，让我们来谈谈吧，Rasmus  <br />Rasmus Lerdorf : Zend 框架是一个分离的项目，实话说，我也不是很清楚 ，你得问问他们，我也不清楚原因。<br />Chris DiBona ： 从某一方面来说，实际上这也没有什么，我不愿意这么说，对大多数社区而言，某些人悄悄地离开了<br />Leo Laporte： 对于我们用户而言，我们有时候的确不太满意我们所得到的东西<br />Rasmus Lerdorf ：直到 php 3 ，实际上只有我一个人在做，当某人给我发了一个对 php 的补丁，我一定会重新写一遍，因为这是我的产品<br />Leo Laporte： 看来你不擅长移交工作<br />Rasmus Lerdorf ：我也不清楚开源的理论，当时也没什么开源的东西，我自己也是后来才想清楚了这些。没过多久，我在多伦多大学找了份工作， 建立一个对话访问系统。我想那大概是 97 年吧，哦是 96年，偶尔我还能收到一些关于 php 的补丁，有些 bug 我从来没碰到过，  我碰到一些困难， 有一个在日本的家伙给我发了一些补丁，非常酷，有一些在日本的朋友帮我做了咨询方面的工作，但是并不是经常性的。  一年之后我想通了 ， 我的确需要鼓励这种贡献，人们提交了 patch， 我不能接管然后自己再重写， 我应该接收它， 放弃控制。给他人以权力随心所欲的做自己想做的事情。对于大多数开源的开发者来说，这很难，即便在现在，开源项目是他们孩子， 他们应该控制它，但是对于发展来说， 你应该放手， 让其他贡献者做他们要做的事情 ， 你不能做太多限制。<br />Leo Laporte： 看来，我们作为用户来说应该更激进一些，呵呵<br />Rasmus Lerdorf ： 这没关系， 你应该意识到这点，这些人大部分也都是在家里做开源开发的，百分之九十的开源开发者不管他们是做什么。他们把孩子哄上床，为开源项目献出两个小时，然后他们打开自己的邮件程序，发现一大堆愤怒的信息，都是"这里有 Bug, 另外这里还有 Bug， 这个 bug 使得我们上百万的电子商务操作无法进行" ， 他们只能说：“好吧，我已经在晚上贡献了2个小时， 这确实不是我应该太过在乎的事情（你的上百万电子商务程序）"。 所以说，人们应该对这些开源的开发者给予一些尊重。<br />Leo Laporte： 开源是如此繁荣，我想说你们这些人才是开源社区的原动力，我们所能做的就是给予你们以应得的尊重<br />Chris DiBona ： 恩， 我发现 Rasmus 的车子有点脏了,呵呵<br />Leo Laporte： 呵呵,我愿意为他擦洗车子，我欠他的太多了，我在服务器上运行了那么的 php 程序 ，从日志跟踪程序到 drupal .<br />Rasmus Lerdorf : 你不欠我什么，不欠我任何东西，我们 php 项目现在有 1100个开发人员<br />Chris DiBona ： 看来你现在已经把移交工作做的很好了<br /><br /><br />(未完待续)<br /><br /><br /><a href="http://www.javaeye.com/news/2971" target="_blank">[听大师说话4]ＰＨＰ创始人　Rasmus Lerdorf　访谈1 </a><br /><br /><br /><a href="http://www.javaeye.com/news/2972" target="_blank">[听译大师说话]python 创始人访谈录 ： 关于 django 和 ruby </a><br /><br /><br /><a href="http://www.javaeye.com/news/2973" target="_blank">[听译大师说话]python 创始人访谈录2: python 的起源 特点和未来 </a>
          
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2971#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 11:30:36 +0800</pubDate>
        <link>http://www.javaeye.com/news/2971</link>
        <guid>http://www.javaeye.com/news/2971</guid>
      </item>
      <item>
        <title>Rails/Ruby 新闻-资源-教程</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://405329829-qq-com.javaeye.com">╱/罒呍唲</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2970" style="color:red;">http://www.javaeye.com/news/2970</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
            声明：本文系JavaEye网站发布的原创新闻，严禁任何网站转载本文，否则必将追究法律责任！
            <br/><br/>
          pelegri说道，提供一些近期Ruby/Rails/JRuby相关新闻：  <br /><br />   两个新的NetBeans 6.1 Ruby指南：<a href="http://www.netbeans.org" target="_blank">Ruby，Rails</a>的入门和在Rails应用中<a href="http://www.netbeans.org/kb/61/ruby/java-ruby.html" target="_blank">使用java库</a>，后面一篇是介绍JRuby的优点的文章之一。其中一个例子就是<a href="http://lptf.blogspot.com/2008/07/jruby-element-of-surprise.html " target="_blank">Calling into Sun's SSO </a> ，另一个就是显示 引用<a href="http://blogs.sun.com/jenniferb/entry/server_side_image_processing_with" target="_blank">Java 2D图形</a> 的教程。<br /><br />   接下来是 CSI 使用JRuby 建立 <a href="http://www.infoq.com/news/2008/05/csi-disease-management-jruby" target="_blank">传染疾病报告</a>和管理项目。<a href="http://blog.nicksieger.com/articles/2008/07/06/this-blog-powered-by-glassfish-jruby-and-jruby-rack" target="_blank">Nick的博客</a>现在也采用GlasFish和JRuby架构。<br />  <br />   整体而言，JRuby/Rails正在迅速的发展。我最后发布一条正式新闻：GlassFish Gem 0.3.0/0.3.1 发布（<a href="http://weblogs.java.net/blog/vivekp/archive/2008/06/glassfish_jruby.html" target="_blank">公布</a>和<a href="http://weblogs.java.net/blog/vivekp/archive/2008/06/quick_update_to.html" target="_blank">更新</a>） ，以及JRuby Module和JRuby 1.1.1 核心一起更新。这些都证明Ruby/Rails/JRuby正在逐步的被推广，开始对它们提供商业项目应该很有前途？<br /><br /><img src="http://blogs.sun.com/theaquarium/resource/RubyLogo-106_119px.gif" />
          <br/><br/><span>来自：<a href='http://blogs.sun.com/theaquarium/entry/updated_jruby_support_for_glassfish' target='_blank'>blogs.sun.com</a></span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://www.javaeye.com/news/2970#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 22 Jul 2008 11:28:38 +0800</pubDate>
        <link>http://www.javaeye.com/news/2970</link>
        <guid>http://www.javaeye.com/news/2970</guid>
      </item>
      <item>
        <title>22日科技博客节选：苹果业绩超预期但股价大跌</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://hualala.javaeye.com">hualala</a>&nbsp;
          链接：<a href="http://www.javaeye.com/news/2969" style="color:red;">http://www.javaeye.com/news/2969</a>&nbsp;
          发表时间: 2008年07月22日
          <br/>
          <p><strong>entureBeat：苹果业绩超预期 股价盘后跳水</strong>
</p>