<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>新闻信息 - 老赵点滴 - 追求编程之美</title>
    <link>http://blog.zhaojie.me/news/</link>
    <description>先做人，再做技术人员，最后做程序员。打造国内最好的.NET技术博客。</description>
    <language>zh-cn</language>
    <managingEditor>jeffz@live.com (老赵)</managingEditor>
    <webMaster>jeffz@live.com (老赵)</webMaster>
    <pubDate>Wed, 24 Mar 2010 14:44:39 GMT</pubDate>
    <lastBuildDate>Wed, 28 Dec 2011 04:26:31 GMT</lastBuildDate>
    <ttl>60</ttl>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/extension/">项目扩展</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>增强Jscex目标代码可调试性：已包含输入代码</title>
      <link>http://blog.zhaojie.me/2012/02/jscex-debug-improved-target-code-contains-source-now.html</link>
      <guid>http://blog.zhaojie.me/2012/02/jscex-debug-improved-target-code-contains-source-now.html</guid>
      <description>&lt;p&gt;我们先来看一段Jscex生成的目标代码，您能看出其输入代码是什么样的吗？&lt;/p&gt;

&lt;a href="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition-before.png"&gt;&lt;img alt="target code without source" src="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition-before.png" width="450" /&gt; &lt;/a&gt;

&lt;p&gt;其实这段代码的原始输入是&lt;a href="files.zhaojie.me/jscex/samples/async/sorting-animations.html?quick"&gt;排序算法动画&lt;/a&gt;中“快速排序”的Partition方法：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;function &lt;/span&gt;(array, begin, end) {
    &lt;span style="color: blue"&gt;var &lt;/span&gt;i = begin;
    &lt;span style="color: blue"&gt;var &lt;/span&gt;j = end;
    &lt;span style="color: blue"&gt;var &lt;/span&gt;pivot = array[Math.floor((begin + end) / 2)];

    &lt;span style="color: blue"&gt;while &lt;/span&gt;(i &amp;lt;= j) {
        &lt;span style="color: blue"&gt;while &lt;/span&gt;(&lt;span style="color: blue"&gt;true&lt;/span&gt;) {
            &lt;span style="color: blue"&gt;var &lt;/span&gt;r = $await(compareAsync(array[i], pivot));
            &lt;span style="color: blue"&gt;if &lt;/span&gt;(r &amp;lt; 0) { i++; } &lt;span style="color: blue"&gt;else &lt;/span&gt;{ &lt;span style="color: blue"&gt;break&lt;/span&gt;; }
        }

        &lt;span style="color: blue"&gt;while &lt;/span&gt;(&lt;span style="color: blue"&gt;true&lt;/span&gt;) {
            &lt;span style="color: blue"&gt;var &lt;/span&gt;r = $await(compareAsync(array[j], pivot));
            &lt;span style="color: blue"&gt;if &lt;/span&gt;(r &amp;gt; 0) { j--; } &lt;span style="color: blue"&gt;else &lt;/span&gt;{ &lt;span style="color: blue"&gt;break&lt;/span&gt;; }
        }

        &lt;span style="color: blue"&gt;if &lt;/span&gt;(i &amp;lt;= j) {
            $await(swapAsync(array, i, j));
            i++;
            j--;
        }
    }

    &lt;span style="color: blue"&gt;return &lt;/span&gt;i;
}&lt;/pre&gt;

&lt;p&gt;是不是显得比较繁琐？但其实Jscex生成代码的模式很简单，您只要忽视Combine，Delay等辅助方法，剩下的代码几乎都跟原始代码一一对应了。不过用肉眼来识别原始代码多少还是需要些脑力，于是即将发布的0.6.0版Jscex编译器便直接在目标代码的左侧生成对应的原始代码了：&lt;/p&gt;

&lt;a href="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition.png"&gt;&lt;img alt="target code with source" src="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition.png" width="450" /&gt; &lt;/a&gt;

&lt;p&gt;当然左侧原始代码并非与您输入的完全一致，它毕竟也是经过解析和重新生成的结果，并需要与目标代码逐行对应，多少会有些格式上的改变，但此时您想设置断点也好，调试也罢，只要把注意力更多放在左侧的输入代码上，而不用肉眼去识别相对复杂的Monad代码了。&lt;/p&gt;

&lt;p&gt;当然，复杂和简单总是相对的，Jscex的目标代码虽然比输入要复杂许多，但至少还能辨别出原始代码，也能通过肉眼识别给转化回去。如果您观察Jscex的同类产品&lt;a href="https://github.com/Sage/streamlinejs"&gt;streamline.js&lt;/a&gt;的话，就会发现它的目标代码真是如天书一般：&lt;/p&gt;

&lt;a href="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition-streamline.png"&gt;&lt;img alt="streamlined" src="http://img.zhaojie.me/blog/jscex-target-with-src/qsort-partition-streamline.png" width="450" /&gt; &lt;/a&gt;

&lt;p&gt;这是因为streamline.js则使用了传统的状态机展开，Jscex使用的是Monad生成方式，其主要目的之一便是考虑到目标代码的可读性。Jscex是基于成熟理论，并经过精心设计的类库，并没有很多人想象中的那么多问题。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2012/02/jscex-debug-improved-target-code-contains-source-now.html#comments</comments>
      <pubDate>Thu, 16 Feb 2012 15:30:03 GMT</pubDate>
      <lastBuildDate>Thu, 16 Feb 2012 15:32:01 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/extension/">项目扩展</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>Jscex正式发布至npm</title>
      <link>http://blog.zhaojie.me/2011/12/jscex-officially-released-to-npm.html</link>
      <guid>http://blog.zhaojie.me/2011/12/jscex-officially-released-to-npm.html</guid>
      <description>&lt;p&gt;之前一直不敢将&lt;a href="https://github.com/JeffreyZhao/jscex"&gt;Jscex&lt;/a&gt;发布至&lt;a href="http://npmjs.org/"&gt;npm&lt;/a&gt;上，因为有些问题还没有完全拿定主意，例如“取消”任务的模型。一个异步任务一定是需要取消功能，尽管这个模型&lt;a href="http://www.cnblogs.com/iamzhanglei/archive/2011/11/17/2253253.html"&gt;不一定需要直接定义在Jscex里&lt;/a&gt;。但是我还是为Jscex提供了一个统一的标准化的取消模型，一是易于使用，二是提供模型这个之后，API在设计时可以有更多表现力（例如，现在的task的status可能是canceled了）。上周末我实现这个模型（其实也就十几二十行代码），昨天我又修改了模块的加载方式，使其支持&lt;a href="http://www.commonjs.org/"&gt;CommonJS&lt;/a&gt;规范。在发布到npm之后，现在可以说Jscex已经正式对外公开了！&lt;/p&gt;

&lt;p&gt;在加载Jscex代码之后，全局环境里会出现一个Jscex对象，这是所有Jscex功能的入口（根对象）。但对于&lt;a href="http://nodejs.org/"&gt;Node.js&lt;/a&gt;来说，相同的模块（无论版本是否一致）有可能还会被加载多次，因此这种方式并不适合Node.js。昨天的修改主要就是为了迎合Node.js的包管理机制（类似CommonJS），避免对全局环境造成污染。自然，如果脚本执行环境里没有实现CommonJS规范（例如浏览器），则Jscex的行为依然和之前保持不变。&lt;/p&gt;

&lt;p&gt;目前Jscex的核心部分已经发布到npm里，版本为0.5.0，分为两个互不依赖的三个部分：&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;jscex：&lt;/strong&gt;提供了Jscex的基础功能，作为Jscex的根对象。 &lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;jscex-jit：&lt;/strong&gt;提供了Jscex的JIT编译器，以“插件”形式为Jscex根对象进行扩展，一般仅作为开发工具使用。 &lt;/li&gt;

  &lt;li&gt;&lt;strong&gt;jscex-async：&lt;/strong&gt;Jscex的异步支持，以“插件”形式为Jscex根对象进行扩展。在Node.js中一般与JIT编译器同时使用，但理论上可以在AOT编译之后摆脱对JIT编译器的依赖。 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;您可以使用npm安装这三个模块：&lt;/p&gt;

&lt;pre class="code"&gt;$ &lt;strong&gt;npm install jscex jscex-jit jscex-async&lt;/strong&gt;
jscex@0.5.0 ./node_modules/jscex
jscex-jit@0.5.0 ./node_modules/jscex-jit
jscex-async@0.5.0 ./node_modules/jscex-async&lt;/pre&gt;

&lt;p&gt;然后即可在脚本里使用：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color:blue"&gt;var &lt;/span&gt;Jscex = require(&lt;span style="color:maroon"&gt;"jscex"&lt;/span&gt;);
require(&lt;span style="color:maroon"&gt;"jscex-jit"&lt;/span&gt;).init(Jscex);
require(&lt;span style="color:maroon"&gt;"jscex-async"&lt;/span&gt;).init(Jscex);&lt;/pre&gt;

&lt;p&gt;然后便可以像以前那样正常使用Jscex了。请注意，由于Jscex的实现方式所限，一定要在上下文里存在名为Jscex的根对象。此外，目前发布在npm上只有JIT编译器及其异步支持的核心功能，并没有包含如sleep或parallel方法那样的核心类库。这部分代码已经被剥离至jscex-async-powerpack模块内，将在合适的时候发布至npm上。&lt;/p&gt;

&lt;p&gt;目前使用Jscex的人依旧不多，有同学将Jscex配合HTML 5的绘图使用，进行了&lt;a href="http://www.cnblogs.com/iamzhanglei/"&gt;进行了许多尝试&lt;/a&gt;，&lt;a href="http://game.mhtml5.com/game/works/ztTnYEvyFrEbguW6/"&gt;颇为有趣&lt;/a&gt;。如果您对Jscex有什么意见或建议，也请及时告知。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2011/12/jscex-officially-released-to-npm.html#comments</comments>
      <pubDate>Thu, 01 Dec 2011 06:23:00 GMT</pubDate>
      <lastBuildDate>Wed, 28 Dec 2011 04:26:31 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/reading/">阅读相关</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>从今开始远离纸版图书</title>
      <link>http://blog.zhaojie.me/2011/07/get-away-from-paper-books.html</link>
      <guid>http://blog.zhaojie.me/2011/07/get-away-from-paper-books.html</guid>
      <description>&lt;p&gt;纸版图书的历史实在太长了，似乎也已经看得到它被淘汰的那一天。这几天在为去深圳做准备，手边许多技术图书都成了大问题。搬去深圳会大动干戈，况且这些书基本也都只是偶尔翻阅一下，不太可能再认真读起。但如果把它们留在上海，那跟空置也没什么区别。以前我有个习惯，看到经典的书，在看完电子版或国内引进版之后都会买本英文原版的来“收藏”，现在已经“幡然醒悟”，之前也已经转让了一部分。现在除了一部分书，都打算出手了。这里开了个书单，感兴趣的同学可以各取所需。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;《&lt;a href="http://book.douban.com/subject/4058874/"&gt;领域驱动设计与模式实战&lt;/a&gt;》，七成新，20元。&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1229951/"&gt;Computer Networks, 4th Edition&lt;/a&gt;》，原版，几乎全新，经典教科书，80元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/4722708/"&gt;系统程序员成长计划&lt;/a&gt;》，九成新，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1441780/"&gt;游戏之旅：我的编程感悟&lt;/a&gt;》，九成新，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/2977175/"&gt;Concurrent Programming on Windows&lt;/a&gt;》，原版，六成新，100元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/2567634/"&gt;Windows Internals, 5th Edition&lt;/a&gt;》，硬壳原版，全新，100元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/3674988/"&gt;Data Access Patterns: Database Interactions in Object-Oriented Applications&lt;/a&gt;》，硬壳原版（链接是软皮的），全新，60元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1237003/"&gt;Cryptography and Network Security: Principles and Practices, 3rd Edition&lt;/a&gt;》，硬壳原版，全新，80元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1246136/"&gt;.NET Patterns: Architecture, Design and Process&lt;/a&gt;》，原版，全新，50元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;&lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1246134/"&gt;Effective XML: 50 Specific Ways to Improve Your XML&lt;/a&gt;》，原版，全新，40元。&lt;/strike&gt;&lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/3117898/"&gt;Python源码剖析：深度探索动态语言核心技术&lt;/a&gt;》，八成新，20元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/4719230/"&gt;编程之魂：与27位编程语言创始人对话&lt;/a&gt;》，七成新，20元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/5273954/"&gt;Collective Intelligence实战&lt;/a&gt;》，九成新，20元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1205482/"&gt;算法与数据结构（第二版）&lt;/a&gt;》，旧书，好书，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/3651015/"&gt;事务处理：概念与技术（影印版）&lt;/a&gt;》，几乎全新，40元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/3558788/"&gt;卓有成效的程序员&lt;/a&gt;》，八成新，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/4086029/"&gt;架构之美&lt;/a&gt;》，七成新，20元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/4214151/"&gt;并行开发艺术（影印版）&lt;/a&gt;》，几乎全新，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/3590768/"&gt;JavaScript语言精粹&lt;/a&gt;》，作者签名版，九成新，15元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/4736118/"&gt;结网：互联网产品经理改变世界&lt;/a&gt;》，全新，20元。&lt;/strike&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;strike&gt;《&lt;a href="http://book.douban.com/subject/1467587/"&gt;Unix编程艺术&lt;/a&gt;》，八成新，20元。&lt;/strike&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;这些书大约都以三折左右出售（购买多本亦可小刀）。我不送书，并不是想赚钱，而是希望可以让书到达真正想要的人手中，如果卖不掉我也会送给公司图书馆。如果您看上了其中某些书，可以在回复里留下您的联系方式（建议是邮箱或是新浪微博）以及书籍名称，我会与您联系。您可以来我这里现取（地址：上海市浦东新区郭守敬路356号），亦或是选择快递。国内快递的价格大约是每公斤10元，我与您各付一半。您可以在现取时付钱给我，也可以通过支付宝打款。&lt;/p&gt;

&lt;p&gt;接下来我会远离纸版图书，以购买正版电子书为主，也希望国内出版社能尽快跟上时代潮流，发行电子版。如果出版社无法做到的话，我愿意以两倍书价从作者那里购买电子版，保证绝不外泄。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2011/07/get-away-from-paper-books.html#comments</comments>
      <pubDate>Thu, 07 Jul 2011 16:07:09 GMT</pubDate>
      <lastBuildDate>Wed, 13 Jul 2011 14:35:31 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>两则.NET高级技术人员的招聘信息</title>
      <link>http://blog.zhaojie.me/2011/06/two-job-descriptions.html</link>
      <guid>http://blog.zhaojie.me/2011/06/two-job-descriptions.html</guid>
      <description>&lt;p&gt;几小时前我在微博上&lt;a href="http://weibo.com/1560442584/eCyiyZRpjmq"&gt;发布了一条消息&lt;/a&gt;，表示我即将加入一家外企，而且完全是大家耳熟能详的IT公司之一，而且这个公司会让大家感到“意外”。于是大伙有猜微软的，也有猜Google，Apple，Oracle，HP等等，当然也有猜对的童鞋。在此公布答案，它便是传说中的IBM公司，我将在那里继续我的.NET程序员之旅。同时，我也希望可以找到一位同学可以帮助我目前在&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;的&lt;a href="http://note.sdo.com/"&gt;项目&lt;/a&gt;继续良好地发展下去。&lt;/p&gt;

&lt;h1&gt;关于IBM的职位&lt;/h1&gt;

&lt;p&gt;估计大伙会对“在IBM做.NET开发”这点有些疑惑，这里我来解释一下。大约一个月前我收到一封邮件，说IBM目前和&lt;a href="http://www.jpmorgan.com/"&gt;J.P. Morgan&lt;/a&gt;有个合作项目，后者希望建立一个离岸开发中心，由IBM负责招聘员工。这些人员单为J.P Morgan服务（我现场“考察”下来，的确是一个挂着“摩根大通”招牌的独立工作区域），并且会在合同里写明，如果J.P. Morgan满意的话，可以在两年后收编这个团队。那位仁兄说，这个职位主要有三个好处：&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;有机会进入投行，众所周知投行米多。 &lt;/li&gt;

  &lt;li&gt;在IBM可以无视那伟大光荣正确的防火墙。 &lt;/li&gt;

  &lt;li&gt;两年后有机会在香港工作。 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;于是我就被打动了，表示可以尝试一下。经过好几轮笔试电话面现场面，我在两天前拿到了IBM的Offer，也是第一个通过的.NET技术人员。可以想象，如果没有J.P. Morgan，IBM也不会招聘.NET技术人员也不会来联系我；如果不是J.P. Morgan和香港，我也不会去尝试加入IBM，更何况要放弃很多东西，从上海千里迢迢前往深圳。我的目的其实也是希望几年后能够在香港工作，然后那时候也恰好可以生个娃什么的……创新院是个好地方，换工作也是个综合考虑的结果。&lt;/p&gt;

&lt;p&gt;那边也在努力招聘员工，虽然努力但也并没有放松要求，尤其是很难找到令人满意的.NET技术人员，因此他们也希望我可以推荐一些。这份.NET工作主要会用到的框架是WPF、WCF和少量ASP.NET，不过您没有接触过这些也没有关系，因为我也丝毫不懂WCF和WPF。笔试和面试时考察的大都是.NET的基础编程能力（CLR，BCL等等）以及计算机基础（例如操作系统与数据结构），还有便是架构、设计、排错以及解决问题的能力等等。这两天我也会单独成文记录一下这方面的情况。&lt;/p&gt;

&lt;p&gt;还有便是英语方面的要求。笔试都是英文，也有英文测试（可以查字典，但每道题都有时间限制）。电话面试和现场面试也都是从J.P. Morgan来的老外，除了您的名字以外听不到半个中文字。不过其实您也不用特别担心，我觉得只要您不是完全的哑巴英语，这方面应该都不会太大问题——要知道笔试面试都会围绕您最熟悉的技术方面展开。就拿我来说，语言方面的最大问题，是在跟老外HR用英语谈薪资时遇到的……&lt;/p&gt;

&lt;p&gt;这个职位在深圳。如果您对这个职位感兴趣，可以给我写封邮件说明一下您的个人情况，我可以考虑推荐给IBM的HR。&lt;/p&gt;

&lt;h1&gt;关于盛大创新院的职位&lt;/h1&gt;

&lt;p&gt;&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;是个很不错的地方，有丰厚的薪资，优秀的同事，可以说是个很理想的工作环境。如果您对互联网感兴趣，在那里你永远能发现和玩到各种有趣的东西。例如，今天下班前&lt;a href="http://weibo.com/dflyingchen"&gt;陈黎夫&lt;/a&gt;同学随手拍了一个同事的工作区：&lt;/p&gt;
&lt;img src="http://ww2.sinaimg.cn/large/66573789jw1diesk5pqkzj.jpg" /&gt; 

&lt;p&gt;您可以认出其中多少设备？MBP、PC，iMac，iPad 2，Moto Xoom，自然还有iPhone 4和安卓手机——完全没有刻意地收集拍摄，只是突然意识到原来已经有了那么多设备。&lt;/p&gt;

&lt;p&gt;这个工作台的主人和我在一个项目组，“&lt;a href="http://note.sdo.com/"&gt;麦库&lt;/a&gt;”。这个项目是我和其他两位同事从零开始创建的，可以说有着很深的感情。这个项目的发展状况也比较不错，我这次也是花了很长时间才下决心“撤退”。我选择IBM最重要的原因还是“香港”，如果不是这一点，从薪资待遇、工作环境，未来发展来考虑，我几乎不可能离开创新院。更何况去了IBM之后我几乎是转了半个行业，从互联网转向企业应用了。即便离开这个团队，我自然也希望这个项目可以继续良好的发展项目，因此在这里也在临走前为组内找到一个合适的人才。&lt;/p&gt;

&lt;p&gt;我希望您可以有良好的.NET以及ASP.NET编程基础，麦库使用的技术是.NET 4和ASP.NET MVC 3。后台使用CentOS上的MongoDB作为存储，因此也希望您最好有一些Linux和NoSQL方面的经验。在项目的制作过程中，我也总结出了一些开源项目，例如&lt;a href="https://github.com/JeffreyZhao/EasyMongo"&gt;EasyMongo&lt;/a&gt;和&lt;a href="https://github.com/JeffreyZhao/JsonMe"&gt;JsonMe&lt;/a&gt;，我希望您也能够跟我一起完善这些项目，让麦库发展得更好。&lt;/p&gt;

&lt;p&gt;我们在上海工作，如果您对此感兴趣，也请通过邮件联系我。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2011/06/two-job-descriptions.html#comments</comments>
      <pubDate>Tue, 21 Jun 2011 15:25:47 GMT</pubDate>
      <lastBuildDate>Tue, 05 Jul 2011 16:39:17 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/dotnet/">.Net框架</category>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <category domain="http://blog.zhaojie.me/practice/">实践优化</category>
      <category domain="http://blog.zhaojie.me/cutting-edge/">技术尝鲜</category>
      <title>第三届nBazaar技术交流会开始报名</title>
      <link>http://blog.zhaojie.me/2010/12/3rd-nbazaar-meeting-sign-up.html</link>
      <guid>http://blog.zhaojie.me/2010/12/3rd-nbazaar-meeting-sign-up.html</guid>
      <description>&lt;p&gt;为了错开年底密集的技术会议，第三届&lt;a href="http://nbazaar.org/"&gt;nBazaar技术交流会&lt;/a&gt;（即前“盛大创新院赞助的.NET技术交流会”）将于2011年1月15日举行。第三届的交流会将继续以往四场高质量的演讲，这也是确定nBazaar名称之后的第一次活动，希望nBazaar能够真正&lt;a href="http://blog.zhaojie.me/2010/10/status-of-iron-languages-and-nbazaar.html"&gt;成为“集市”般热闹的社区活动&lt;/a&gt;。从现在开始，nBazaar技术沙龙的相关信息将逐渐集中至独立域名中，欢迎关注。&lt;/p&gt;

&lt;h1&gt;志愿者招募&lt;/h1&gt;

&lt;p&gt;为了留下每次的活动资料，我们希望为每场演讲进行拍摄。如果您有这方面的志愿请发邮件至&lt;a href="mailto:jeffz@nbazaar.org"&gt;jeffz@nbazaar.org&lt;/a&gt;与我联系。&lt;/p&gt;

&lt;h1&gt;时间及议程安排&lt;/h1&gt;

&lt;p&gt;本次交流会首次向社区征集议题，我们在回复中挑选了三场：面向iPad平台的网站架构、面向企业应用语言ABAP、基于.NET的轻量级分布式框架，以及在创新院内部分享会上倍受好评的“分布式版本管理”话题。四位演讲者都是业界一线技术高手，四场话题都是他们的实战心得，希望能够让您满意。&lt;/p&gt;

&lt;table style="text-align: center" border="1" cellspacing="0" cellpadding="5"&gt;&lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;时间&lt;/th&gt;

      &lt;th&gt;议程&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;12:30 ~ 13:00&lt;/td&gt;

      &lt;td&gt;签到&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;13:00 ~ 14:00&lt;/td&gt;

      &lt;td&gt;针对iPad平台的高性能网站架构&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;14:00 ~ 14:10&lt;/td&gt;

      &lt;td&gt;短休&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;14:10 ~ 15:10&lt;/td&gt;

      &lt;td&gt;分布式版本管理&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;15:10 ~ 15:40&lt;/td&gt;

      &lt;td&gt;茶歇&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;15:40 ~ 16:40&lt;/td&gt;

      &lt;td&gt;企业开发领域的语言特性&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;16:40 ~ 16:50&lt;/td&gt;

      &lt;td&gt;短休&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;16:50 ~ 17: 50&lt;/td&gt;

      &lt;td&gt;使用.NET构建轻量级分布式框架&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;h1&gt;演讲内容&lt;/h1&gt;

&lt;p&gt;以下为是四场演讲的信息：&lt;/p&gt;
&lt;a href="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/mashijie-450x600.jpg" target="_blank"&gt;&lt;img class="floatRight" src="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/mashijie-450x600.jpg" height="150" /&gt;&lt;/a&gt; 

&lt;h2&gt;针对iPad平台的高性能网站架构&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;讲师：&lt;/strong&gt;马士杰，EF英孚教育，Tech Leader。关注高性能网站架构和前沿技术在线教育领域的应用创新。曾经重点关注的技术领域包括ORM，AOP和SOA。近期的关注重点是针对移动平台的高性能网站架构。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;简介：&lt;/strong&gt;iPad的横空出世，几乎使得2010年成为全球IT领域的平板电脑之年。摩根士丹利发布的《移动互联网报告》认为移动互联网周期是50年来的第5个新技术周期，以Apple的iPad平板电脑和手机上网为代表的移动互联网的增长势头将超过电脑上网。本演讲的目的是和听众分享本人近一年在针对iPad平台的高性能网站架构方面的一些经验，包括兼容不同平台桌面和移动浏览器的表现层设计模式，针对iPad Mobile Safari浏览器的Web页面性能优化和iPad本地程序和在线网站的无缝整合等。&lt;/p&gt;
&lt;a href="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/lijun-400x600.jpg" target="_blank"&gt;&lt;img class="floatRight" src="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/lijun-400x600.jpg" height="150" /&gt;&lt;/a&gt; 

&lt;h2&gt;分布式版本管理&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;讲师：&lt;/strong&gt;李骏，中国第一批J2EE开发者，大中华区第一个中间件和SOA领域的Oracle ACE Director。有着10年以上企业级应用系统咨询/设计/实施以及软件公司管理经验的行业老兵，因为喜欢创造能影响人们日常生活的东西，所以来到盛大创新院，梦想能找到“正确的把软件作成业务”的方法。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;演讲：&lt;/strong&gt;源代码和其它软件工程产物的版本管理，是每个开发者每天都会碰到的问题，经过数十年的发展，CVS、SVN等上一代版本管理系统中的一些问题，催生着新的技术及其应用模式。在过去几年中以Git和Mercurial为代表的分布式版本管理工具有了较大的发展，已经基本具备了普及应用的基础。这里将介绍分布式版本管理欲解决的问题及其关键价值，并以Mercurial为例介绍具体使用的方法和流程。&lt;/p&gt;
&lt;a href="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/shijianzhuo-576x432.jpg" target="_blank"&gt;&lt;img class="floatRight" src="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/shijianzhuo-576x432.jpg" height="150" /&gt;&lt;/a&gt; 

&lt;h2&gt;企业开发领域的语言特性&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;讲师：&lt;/strong&gt;师建茁（Amos Shi），GRC软件工程师，SAP Labs China。中学时代在 286、486 系统上学会了 12个DOS内部命令，若干外部命令；使用QBasic开始程序生涯，半夜起来在图画本上设计流程图。后来跟着谭浩强的C语言课本和Borland的TC 2.0进入 Windows CMD 时代，后来有了 C++、Delphi、Python、.NET、Java，排名不分先后，意识到语言并非那么重要； 直到有一天，遇到了 ABAP，以及 Web Dynpro，意识到，对于优秀的软件，高级语言特性还是有所帮助的。2007年加入SAP Labs China，从事GRC软件产品的研发。日常工作涉及GRC 的多个部分。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;演讲：&lt;/strong&gt;作为一个程序员，在加入SAP之前用过一些各种各样流行的技术来写软件产品，到了Labs之后开始使用一种不广为所知的ABAP语言开发GRC软件产品。在学习和使用ABAP语言的过程中，经常会有类似“啊！对了，以前我就想过应该是这样的”、“是的！就是应该这样集成！”、“本来嘛，已经有足够的信息在那里了，她就是应该自动生成，一行代码都不应该写！”这样的感叹，对很多特性总是有相见恨晚的感觉。回想到以前的产品开发中遇到的种种问题，觉得如果这些特性已经有了的话，可以大大提高效率，降低错误。后来逐渐接触到其后面的NetWeaver平台，和Web Dynpro之后，更觉得这一整套东西为企业应用进行了精心设计。又回想起了“程序员如何在非洲捕捉大象？”这个经典笑话，哈哈哈哈。如果你要开发企业应用的话，确实有很多东西可以从这里借鉴，希望对你能有所裨益。&lt;/p&gt;
&lt;a href="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/qiaojie-400x622.jpg" target="_blank"&gt;&lt;img class="floatRight" src="http://nbazaar.org/_media/%E8%AE%B2%E5%B8%88/qiaojie-400x622.jpg" height="150" /&gt;&lt;/a&gt; 

&lt;h2&gt;使用.NET构建轻量级分布式框架&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;讲师：&lt;/strong&gt;乔捷，瓦格纳比罗舞台系统公司，技术主管。热爱技术，对多种技术领域都有涉猎，目前主要从事剧院舞台控制系统和虚拟舞台系统的设计和研发工作，主要涉及到分布式系统、实时控制系统、虚拟现实系统、3D实时/离线渲染等技术领域。主要的编程语言为C++/C#/JavaScript，喜爱.NET技术，最近比较关注分布式计算和并行计算技术，并已在实际的项目应用中取得了初步的成功。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;演讲：&lt;/strong&gt;分布式系统的设计和构建是一项复杂多变而很具有挑战性的任务，设计的目标包括服务的伸缩性、可靠性、安全性、实时性、性能、容错等多个方面，同时还可能需要面对各种异构平台的集成和整合。目前市面上已有的分布式框架包括.NET提供的Remoting和WCF，都不能很好的满足上述所有的这些需求。因此，打造一套轻量级的、高度可定制的、符合自身项目需求的分布式框架变得很有现实意义。本演讲就来讨论如何应用.NET技术构建这样一套轻量级的分布式框架。&lt;/p&gt;

&lt;h1&gt;地点&lt;/h1&gt;

&lt;p&gt;本次交流会举办地为&lt;strong style="color: red"&gt;上海市浦东新区碧波路888号畅星大厦&lt;/strong&gt;（地铁二号线张江高科站下，步行10分钟可达）3楼会议厅，地图如下：&lt;/p&gt;
&lt;a href="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-map.png"&gt;&lt;img src="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-map.png" width="400" /&gt;&lt;/a&gt; 

&lt;p&gt;鸟瞰图：&lt;/p&gt;
&lt;a href="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-hybrid.jpg"&gt;&lt;img src="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-hybrid.jpg" width="400" /&gt;&lt;/a&gt; 

&lt;p&gt;畅星大厦外观：&lt;/p&gt;
&lt;a href="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-building.jpg"&gt;&lt;img src="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-building.jpg" width="400" /&gt;&lt;/a&gt; 

&lt;p&gt;会场实景照片：&lt;/p&gt;
&lt;a href="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-room.jpg"&gt;&lt;img src="http://img.zhaojie.me/blog/snda-dotnet-conf/changxing-room.jpg" width="400" /&gt;&lt;/a&gt; 

&lt;p&gt;会场容量可以容纳超过200人，希望到时候不会显得太过空旷。:)&lt;/p&gt;

&lt;h1&gt;报名信息&lt;/h1&gt;
&lt;img src="http://img.zhaojie.me/blog/snda-dotnet-conf/sign-up-now.jpg" /&gt; 

&lt;p&gt;本次交流会&lt;a href="http://diaochapai.com/survey518744"&gt;现已开始报名，请填写报名表&lt;/a&gt;。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/12/3rd-nbazaar-meeting-sign-up.html#comments</comments>
      <pubDate>Mon, 20 Dec 2010 16:45:46 GMT</pubDate>
      <lastBuildDate>Mon, 20 Dec 2010 16:45:46 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <category domain="http://blog.zhaojie.me/cutting-edge/">技术尝鲜</category>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <category domain="http://blog.zhaojie.me/parallel/">并行处理</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/language/">语言编程</category>
      <title>关于即将到来的“演出季”以及Jscex类库</title>
      <link>http://blog.zhaojie.me/2010/11/the-coming-talks-and-jscex.html</link>
      <guid>http://blog.zhaojie.me/2010/11/the-coming-talks-and-jscex.html</guid>
      <description>&lt;p&gt;又到了一年一度的“演出季”，接下来将是各式会议扑面而来的一个月。作为“与会爱好者”我自然也进入了繁忙的准备工作。接下来我将在&lt;a href="http://tup.csdn.net/"&gt;TUP&lt;/a&gt;（11月27日）、&lt;a href="http://www.net-china.org/"&gt;2010年第二届.NET技术大会&lt;/a&gt;（12月4~5日）以及&lt;a href="http://sd2china.csdn.net/"&gt;CSDN软件开发2.0大会&lt;/a&gt;（12月9~10日）上与大家分享四场演讲。不过除了一场是关于Windows并发编程的基础以外，其余三场的话题都是围绕“微软在异步编程方面的演变”。在这场演讲中，我还会引入一个与该话题密切相关的JavaScript类库：Jscex。&lt;/p&gt;

&lt;p&gt;并发编程已经成为我们无法回避的一点，但是传统的编程语言在并发、异步等方面的支持非常有限，除了一些面向并发的编程语言（如Erlang），我们只能使用回调的方式，这样代码则被拆得支离破碎。如今的一些新语言，如F#，Scala，Go以及未来的C#都会在这方面有直接的支持。就我个人而言，用过了这些语言之后，就几乎无法回头，因为我实在无法体会到编程的快感。&lt;/p&gt;

&lt;p&gt;如今微软的.NET平台在异步编程领域已经开始发力，从最初十分原始的Begin/End的异步模型和基于事件的异步模型，到后来&lt;a href="http://blog.zhaojie.me/2010/03/async-and-parallel-design-patterns-in-fsharp-1-parallelizing-cpu-and-io-computations.html"&gt;F#中的异步工作流&lt;/a&gt;，.NET 4.0中的&lt;a href="http://blog.zhaojie.me/2010/09/async-programming-and-reactive-framework.html"&gt;Observable及响应式框架&lt;/a&gt;，以及&lt;a href="http://blog.zhaojie.me/2010/10/pdc2010-the-future-of-csharp-and-vb-by-anders-hejlsberg-1.html"&gt;未来C#中将要出现的异步特性&lt;/a&gt;，.NET平台上涌现了各种与并发和异步编程的机制。未来几场演讲的主要话题，便是关于这些异步编程模型的演变。&lt;/p&gt;

&lt;p&gt;只可惜，在某些和异步密切相关的平台上，例如使用JavaScript的浏览器平台，开发人员还是不得不利用最传统的开发模型。响应式框架通过引入一个“推模型”改进了这一点，不过我最欣赏的异步编程支持还是F#上的异步工作流。首先，它是一套“类库”（基于F#中的计算表达式特性）；其次，它让异步编程变得像传统的顺序式开发那样简单。有天我突然意识到，JavaScript其实提供一个很强大的机制：它可以使用toString方法得到一个函数的原始代码，于是我们可以对此解析并生成新的代码，最后使用eval得到新的函数。通过这个手法，JavaScript语言几乎得到了无限的灵活性。&lt;/p&gt;

&lt;p&gt;于是在未来的演讲中，我将会展示一个JavaScript类库的原型：&lt;a href="https://github.com/JeffreyZhao/jscex"&gt;Jscex&lt;/a&gt;（目前还未提交任何代码）。Jscex是&lt;font color="#ff0000"&gt;J&lt;/font&gt;ava&lt;font color="#ff0000"&gt;S&lt;/font&gt;cript &lt;font color="#ff0000"&gt;C&lt;/font&gt;omputation &lt;font color="#ff0000"&gt;Ex&lt;/font&gt;pressions的缩写，即“JavaScript的计算表达式”。计算表达式的原理，便是将一段顺序式的代码，重新编译成另外一个表达式，它便是F#中异步工作流的基础。&lt;/p&gt;

&lt;p&gt;例如，它会将下面这段JavaScript函数：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;function &lt;/span&gt;(urlA, urlB) {
    &lt;span style="color: blue"&gt;var &lt;/span&gt;reqA = &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(Jscex.Async.sendRequest(urlA, &lt;span style="color: maroon"&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;));
    &lt;span style="color: blue"&gt;var &lt;/span&gt;lengthA = reqA.responseText.length;

    &lt;span style="color: blue"&gt;var &lt;/span&gt;reqB = &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(Jscex.Async.sendRequest(urlB, &lt;span style="color: maroon"&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;));
    &lt;span style="color: blue"&gt;var &lt;/span&gt;lengthB = reqB.responseText.length;

    &lt;span style="color: blue"&gt;return &lt;/span&gt;lengthA + lengthB;
}&lt;/pre&gt;

&lt;p&gt;编译成另一段代码：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt; (urlA, urlB) {
    &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Delay(&lt;span style="color: blue"&gt;function&lt;/span&gt;() {
        &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(Jscex.Async.sendRequest(urlA, &lt;span style="color: maroon"&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;), &lt;span style="color: blue"&gt;function&lt;/span&gt;(reqA) {
            &lt;span style="color: blue"&gt;var &lt;/span&gt;lengthA = reqA.responseText.length;
            &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(Jscex.Async.sendRequest(urlB, &lt;span style="color: maroon"&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;), &lt;span style="color: blue"&gt;function&lt;/span&gt;(reqB) {
                &lt;span style="color: blue"&gt;var &lt;/span&gt;lengthB = reqB.responseText.length;
                &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Return(lengthA + lengthB);
            });
        });
    });
};&lt;/pre&gt;

&lt;p&gt;对于$async这个构造器来说，$await便是一个bind函数，在此处则会形成一个回调。此外，Jscex也必须能够正确处理循环操作，例如这个&lt;a href="http://files.zhaojie.me/demos/jscex-prototype/clock.html"&gt;时钟示例&lt;/a&gt;（建议使用IE 9，Chrome或Firefox等支持canvas的浏览器观看）其实是这样实现的：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;var &lt;/span&gt;drawClockAsync = eval(Jscex.compile(&lt;span style="color: maroon"&gt;&amp;quot;$async&amp;quot;&lt;/span&gt;, &lt;span style="color: blue"&gt;function &lt;/span&gt;(interval) {
    &lt;span style="color: blue"&gt;while &lt;/span&gt;(&lt;span style="color: blue"&gt;true&lt;/span&gt;) {
        drawClock(&lt;span style="color: blue"&gt;new &lt;/span&gt;Date());
        &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(Jscex.Async.sleep(interval));
    }
}));

Jscex.Async.start(drawClockAsync(1000));&lt;/pre&gt;

&lt;p&gt;对于时钟来说，我们往往会不断使用window.setTimeout来更新界面。不过有了Jscex，一切都变得“顺其自然”。我们只要写一个“死循环”，在需要“等待”的时候，直接$await一个sleep操作即可。这种看似“阻塞”的代码，其实最终会被重新编译成新的函数：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt;(interval) {
    &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Delay(&lt;span style="color: blue"&gt;function&lt;/span&gt;() {
        &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.While(
            &lt;span style="color: blue"&gt;function&lt;/span&gt;() { &lt;span style="color: blue"&gt;return true&lt;/span&gt;; },
            $async.Delay(&lt;span style="color: blue"&gt;function&lt;/span&gt;() {
                drawClock(&lt;span style="color: blue"&gt;new &lt;/span&gt;Date);
                &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(Jscex.Async.sleep(interval), &lt;span style="color: blue"&gt;function&lt;/span&gt;() {
                    &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Return();
                });
            })
        );
    });
};&lt;/pre&gt;

&lt;p&gt;实际上，它们都是异步的。&lt;/p&gt;

&lt;p&gt;其实在浏览器上有太多的异步场景。例如一个AJAX请求，或者是一段动画效果。这里我还准备了&lt;a href="http://files.zhaojie.me/demos/jscex-prototype/animation.html"&gt;第二个示例&lt;/a&gt;，其中有一段移动元素的方法（将元素e在duration时间内从startPos移动至endPos）是这样编写的：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;var &lt;/span&gt;moveAsync = eval(Jscex.compile(&lt;span style="color: maroon"&gt;&amp;quot;$async&amp;quot;&lt;/span&gt;, &lt;span style="color: blue"&gt;function &lt;/span&gt;(e, startPos, endPos, duration) {
    e.style.left = startPos.x;
    e.style.top = startPos.y;

    &lt;span style="color: blue"&gt;var &lt;/span&gt;time = 0;
    &lt;span style="color: blue"&gt;while &lt;/span&gt;(time &amp;lt; duration) {
        &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(Jscex.Async.sleep(50));
        time = time + 50;
        e.style.left = startPos.x + (endPos.x - startPos.x) * time / duration;
        e.style.top = startPos.y + (endPos.y - startPos.y) * time / duration;
    }
}));

&lt;span style="color: blue"&gt;var &lt;/span&gt;moveBox = document.getElementById(&lt;span style="color: maroon"&gt;&amp;quot;moveBox&amp;quot;&lt;/span&gt;);
Jscex.Async.start(moveAsync(moveBox, { x: 0, y: 0 }, { x: 300, y: 0 }, 1000));&lt;/pre&gt;

&lt;p&gt;没有回调，只有最普通的顺序式编程。甚至我们还可以将moveAsync方法组合到另一个方法中去：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;var &lt;/span&gt;moveSquareAsync = eval(Jscex.compile(&lt;span style="color: maroon"&gt;&amp;quot;$async&amp;quot;&lt;/span&gt;, &lt;span style="color: blue"&gt;function &lt;/span&gt;(e) {
    &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(moveAsync(e, { x: 100, y: 100 }, { x: 400, y: 100 }, 1000));
    &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(moveAsync(e, { x: 400, y: 100 }, { x: 400, y: 400 }, 1000));
    &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(moveAsync(e, { x: 400, y: 400 }, { x: 100, y: 400 }, 1000));
    &lt;font color="#ff0000"&gt;$await&lt;/font&gt;(moveAsync(e, { x: 100, y: 400 }, { x: 100, y: 100 }, 1000));
}));

&lt;span style="color: blue"&gt;var &lt;/span&gt;moveSquareBox = document.getElementById(&lt;span style="color: maroon"&gt;&amp;quot;moveSquareBox&amp;quot;&lt;/span&gt;);
Jscex.Async.start(moveSquareAsync(moveSquareBox));&lt;/pre&gt;

&lt;p&gt;如何让一个元素沿方形移动？“连续执行”四遍moveAsync方法即可。当然，moveSquareAsync方法最终还是由“回调”组成的：&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;function &lt;/span&gt;(e) {
    &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Delay(&lt;span style="color: blue"&gt;function &lt;/span&gt;() {
        &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(moveAsync(e, {...}, {...}, 1000), &lt;span style="color: blue"&gt;function &lt;/span&gt;() {
            &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(moveAsync(e, {...}, {...}, 1000), &lt;span style="color: blue"&gt;function &lt;/span&gt;() {
                &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(moveAsync(e, {...}, {...}, 1000), &lt;span style="color: blue"&gt;function &lt;/span&gt;() {
                    &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Bind(moveAsync(e, {...}, {...}, 1000), &lt;span style="color: blue"&gt;function &lt;/span&gt;() {
                        &lt;span style="color: blue"&gt;return &lt;/span&gt;$async.Return();
                    });
                });
            });
        });
    });
};&lt;/pre&gt;

&lt;p&gt;我以前在许多地方说过，目前浏览器上的开发效率已经受限于JavaScript的语言特性了。不过，正如我刚才所提到的那样，JavaScript语言的灵活性几乎是无穷的。我认为，Jscex会是一个突破。当然，现在您看到的演示只不过是个原型，如果要提供一个完整的解决方案还有太多的路要走。例如现在的Jscex还不支持for，if，try...catch等常见语言特性，代码也丑陋得很。与此对应的Jscex.Async也只是个初步的模型，且只有寥寥无几的辅助方法。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/11/the-coming-talks-and-jscex.html#comments</comments>
      <pubDate>Mon, 22 Nov 2010 12:30:57 GMT</pubDate>
      <lastBuildDate>Mon, 29 Nov 2010 14:28:28 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/discussion/">思考讨论</category>
      <category domain="http://blog.zhaojie.me/essential/">重中之重</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>关于Iron语言的近况及nBazaar交流会</title>
      <link>http://blog.zhaojie.me/2010/10/status-of-iron-languages-and-nbazaar.html</link>
      <guid>http://blog.zhaojie.me/2010/10/status-of-iron-languages-and-nbazaar.html</guid>
      <description>&lt;p&gt;最近Iron语言方面有了一些令人瞩目的动作。我们知道IronPython及IronRuby一直是由微软维护的，不过前段时间微软有消息说要“取消”这两个项目，并直接导致&lt;a href="http://blog.jimmy.schementi.com/"&gt;Jimmy Schementi&lt;/a&gt;和&lt;a href="http://hugunin.net/"&gt;Jim Hugunin&lt;/a&gt;离开微软。于是有人觉得Iron语言要死了。我倒不这么觉得，因为这两个是开源项目，是用的是Apache 2.0协议，它们会死的唯一原因便是社区放弃了它们，这和微软是不是参与维护并没有太大关系。微软固然有其影响力，但社区才是开源软件的核心。&lt;/p&gt;

&lt;p&gt;当然，有些事情还是比较可惜的，例如&lt;a href="http://www.infoq.com/cn/news/2010/10/Jim-Leaves-Microsoft"&gt;Jim Hugunin离开微软加入Google&lt;/a&gt;。Jim是个让我佩服的人，这不是因为他的技术，尽管作为Jython和IronPython之父他的技术水平有目共睹，更重要的是他能够努力维护自己作为纯粹的技术人员的理想。当时一个名为ActiveState的公司实现了一个.NET平台上的Python，但执行效率非常低下，于是他们得出的结论是“.NET不适合托管动态语言”。微软一直遭受FUD，&lt;a href="http://blog.zhaojie.me/2010/03/microsoft-technology-and-the-attitude.html"&gt;很多技术人员提到微软技术就不屑一顾&lt;/a&gt;，我可以想象这样的结论会被无数人引用，欢欣鼓舞，而情况究竟如何，谁又会关心那么多呢？而Jim Hugunin却觉得很奇怪，因为他已经通过Jython证明了动态语言在Java平台上的可行性，于是便着手开发了IronPython的原型，想研究一下CLR的问题究竟出在哪里。他原本是想写一篇“为什么CLR对于动态语言来说是个糟糕的平台”，但结果发现CLR上的Python在许多情况下比CPython要快上不少。这方面更多情况，请参考&lt;a href="http://www.codeplex.com/wikipage?ProjectName=IronPython&amp;amp;title=v1.0%20Release%20Notes"&gt;IronPython 1.0的发布信息&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;后来Jim加入了微软CLR小组，推动CLR成为一个对动态语言更加友好的执行环境，例如当年在.NET 1.0时，动态生成的代码无法被GC回收，这显然会造成内存泄漏，而在.NET 2.0里出现了DynamicMethod，.NET 3.5里出现了Expression Tree，.NET 4.0中甚至集成了DLR。可以说.NET已经成为越来越适合动态语言的执行平台。按照Jim的说法，DLR可谓是他的巅峰之作，包含了他开发IronPython总结出的大量精华，最重要的是它可以让.NET平台上的动态语言轻松地集成交互，例如在IronRuby中调用IronPython中的Python类库。&lt;/p&gt;

&lt;p&gt;更重要的是，Jim在刚加入微软的时候，花了八个月的时间和公司与律师谈判，坚持将IronPython使用MS-PL协议开源，几年后&lt;a href="http://www.opensource.org/licenses/ms-pl.html"&gt;MS-PL&lt;/a&gt;也成为了OSI认证的开源协议，可以说从那时候起IronPython、以及IronRuby和DLR成为了真正的开源项目。不过MS-PL一直没有摆脱个认知度的问题，因此后来这些项目都使用了Apache 2.0这个开源协议。&lt;/p&gt;

&lt;p&gt;在加入微软六年之后，Jim选择加入Google。从他在博客和邮件列表中的说法来看，微软对于开源项目的态度，以及社区对微软的认知度也是令他颇为苦恼的事情，用他的说法是：“开源和微软有些格格不入”，而Google在和开源社区的关系等方面便领先微软许多。对此我很能理解，因为我虽然很喜欢.NET等技术，虽然也看得到微软的进步，但也的确对微软有些做法不满，同时也很羡慕一些开源社区的氛围。我很希望自己的本职工作是为某个受人广泛使用的开源项目作贡献，但这点在国内看来是个奢望，似乎也只听说&lt;a href="http://twitter.com/bluedavy/status/26729058924"&gt;淘宝有这方面的打算&lt;/a&gt;，而其他公司，即便是开源了自己的产品，如果从认知度上面考虑还只能算是小打小闹。当然，理想终归是理想，不能强求。像我现在这样能够有20%自己支配的时间，已经可以说是相当不错的条件了。同时，理想终归是理想，在这方面我还在探索，还在寻找方向。&lt;/p&gt;

&lt;p&gt;如今微软已经&lt;a href="http://blogs.msdn.com/b/jasonz/archive/2010/10/21/new-components-and-contributors-for-ironpython-and-ironruby.aspx"&gt;放开对IronPython和IronRuby的控制&lt;/a&gt;了，这方面已经完全交给&lt;a href="http://tirania.org/blog/"&gt;Miguel de Icaza&lt;/a&gt;及&lt;a href="http://blog.jimmy.schementi.com/"&gt;Jimmy Schementi&lt;/a&gt;等人进行管理。在我看来这是好事，Miguel是Gnome和mono的创建者，可以说是.NET开源界的领军人物，对于mono及开源的发展一直有强烈的决心和信心。而mono在.NET领域也可谓是创新十足，集中了.NET平台下开源爱好者的集体智慧，在平日里给了我很大帮助。而Jimmy Schementi原本就在微软领导IronRuby的开发，在他们的带领下，我觉得&lt;a href="http://tirania.org/blog/archive/2010/Oct-22.html"&gt;IronPython和IronRuby不会停下良性发展的脚步&lt;/a&gt;，例如&lt;a href="http://www.infoq.com/cn/news/2010/10/DLR-Defunded"&gt;IronPython 2.7和IronRuby 1.9的近况&lt;/a&gt;都不错。&lt;/p&gt;

&lt;p&gt;十年前，ESR写下了著名《&lt;a href="http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar"&gt;大教堂与集市&lt;/a&gt;》（&lt;a href="http://man.lupaworld.com/content/other/The_Cathedral_and_the_Bazaar.pdf"&gt;双语版&lt;/a&gt;），阐述了两种不同的自由软件的开发模式。“大教堂（Cathedral）”模式是指由专属团队所掌管的开发模式（如GCC），而“集市（Bazaar）”模式则是交由社区群体共同完成。这恰好对应了IronPython和IronRuby早先与现在的开发方式——尽管它们是开源软件，而不是自由软件。我欣赏集市模式，因为它够热闹，够社区化，够集体智慧，这也是国内.NET社区甚至是技术社区所缺少的东西。&lt;/p&gt;

&lt;p&gt;因此，我决定将我组织的&lt;a href="http://blog.zhaojie.me/tag/nBazaar/"&gt;.NET技术交流会&lt;/a&gt;取名为nBazaar，已经准备nBazaar.org域名，希望籍此机会让这一活动步入正轨。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/10/status-of-iron-languages-and-nbazaar.html#comments</comments>
      <pubDate>Mon, 25 Oct 2010 12:26:48 GMT</pubDate>
      <lastBuildDate>Mon, 25 Oct 2010 12:26:48 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>活动：来自Opera挪威的子斌与上海前端工程师交流HTML5 &amp; CSS3</title>
      <link>http://blog.zhaojie.me/2010/08/html5-css3-talk-in-snda-innovation.html</link>
      <guid>http://blog.zhaojie.me/2010/08/html5-css3-talk-in-snda-innovation.html</guid>
      <description>&lt;p&gt;最近有些忙，疏于写博客，在此先带来一个&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;周末的活动通知，希望感兴趣的朋友可以来参加。地点在创新院，到时候会有专人负责接待。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;内容：&lt;/strong&gt;子斌将会带来一个关于HTML5和CSS3的演讲，介绍HTML5和CSS3的新特性以及一些实用技巧，并且会跟大家就一些关心的问题进行讨论。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;讲师：&lt;/strong&gt;子斌，Web Evangelist（Web传教士），在Opera挪威总部工作，其博客为：&lt;a href="http://zibin.tehais.com/"&gt;http://zibin.tehais.com/&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;时间：&lt;/strong&gt;2010年8月7日（周六）13：00-16：00&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;地点：&lt;/strong&gt;华佗路68号8号楼（盛大创新院）4楼万象报告厅，请提前5分钟入场签到，现场有无线与移动设备电源，咖啡在隔壁，请注意卫生与安全饮水。&lt;/p&gt;

&lt;p&gt;在此邀请各位对于HTML5 &amp;amp; CSS3感兴趣的朋友一起来参加交流探讨。请在以下网址报名：&lt;a href="http://www.51qiangzuo.com/events/235-htm5talk"&gt;http://www.51qiangzuo.com/events/235-htm5talk&lt;/a&gt;&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/08/html5-css3-talk-in-snda-innovation.html#comments</comments>
      <pubDate>Tue, 03 Aug 2010 08:33:19 GMT</pubDate>
      <lastBuildDate>Tue, 03 Aug 2010 08:33:19 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/language/">语言编程</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>在QCon中了解到的一些有关Groovy和F#的内容</title>
      <link>http://blog.zhaojie.me/2010/04/something-about-groovy-and-fsharp-from-qcon.html</link>
      <guid>http://blog.zhaojie.me/2010/04/something-about-groovy-and-fsharp-from-qcon.html</guid>
      <description>&lt;p&gt;今天参加了&lt;a href="http://www.qconbeijing.com/"&gt;QCon Beijing 2010&lt;/a&gt;的活动，第一天采访了Groovy和F#两种语言的技术领袖，在交流的过程中也了解了不少内容，趁着还有一些印象就记点下来吧。Groovy方面这次来的是社区中贡献最多（没有之一）的&lt;a href="http://twitter.com/paulk_asert"&gt;Paul King&lt;/a&gt;，他也是《&lt;a href="http://www.amazon.com/dp/1932394842"&gt;Groovy in Action&lt;/a&gt;》的作者之一。F#方面参加QCon的是&lt;a href="http://blogs.msdn.com/timng/"&gt;Timothy Ng&lt;/a&gt;，年轻高大帅气，生于香港，四岁去加拿大，毕业后加入微软至今，目前是F#开发团队的Senior Dev Lead。与Tim晚餐时聊了许多，最大的收获是……发现我的英语也不是太哑巴嘛。&lt;/p&gt;

&lt;h1 id="groovy"&gt;关于Groovy&lt;/h1&gt;

&lt;p&gt;在和Paul的交流过程中，我主要把关注点集中在Groovy语言本身的特点上。对于JVM平台上的语言来说，我个人最喜欢的是Scala，因为它足够灵活，把生产力交还给了程序员，更重要的是这是一门静态语言。静态这点很关键，因为如果要作为Java语言长期的替代者，它必须要在二进制层面做到和Java的对象模型保持一致。这样，只要能用Java的地方就可以用Scala。但对于JRuby，Jython，Groovy，Clojure等动态语言来说（奇怪，JVM上为什么没有什么静态语言呢？），假设，它的一个“类型”并不一定是个标准的Java类，它的“函数”也并非是标准的方法，更没法定义接口，那么这样对于一些面向Java对象模型的执行环境/框架/平台来说，就不能“打保票”说一定也可以执行了。就好比Android平台开发可以使用Java语言，那么我们便可以“不加思索”地确定它也可以使用Scala进行开发（因为它的对象模型和Java可以完全一致，只是代码表现方式不同），但是对于是否能够使用JRuby，就要进一步考察了（自然也不是一定不行）。&lt;/p&gt;

&lt;p&gt;当然，对象模型和静态还是动态语言并没有绝对必然的联系，不过JVM上的静态语言基本都会使用Java的对象模型。而动态语言，尤其是语言特性并非Java超集的动态语言，必然需要有所折衷，此时就不一定了。&lt;/p&gt;

&lt;p&gt;只是我也不得不承认，相对于Scala来说，Java程序员可能更容易接受Groovy。在Paul看来，Groovy本身便是一门更容易使用，有更多高级特性，且没有那么多“语法噪音”的Java语言。就基本语法来说，一段Java程序可能只需要稍作修改便可以变成一段合法的Groovy代码了。然后，再把Java的各类信息，如类型申明等等一点点删除，便成为了一段更“标准”的Groovy程序。看的出来，从Java语言过渡时学习难度也是Groovy语言设计中思考的一部分。在今天的“&lt;a href="http://www.qconbeijing.com/shownews.aspx?id=5"&gt;Groovy Power Features&lt;/a&gt;”中，一开始Paul就开始拿一段Java代码出来进行简化，巨大的差距便一点点体现出来了。&lt;/p&gt;

&lt;p&gt;但是对于Groovy毕竟还是一门动态类型的语言，它在编译的二进制形式上，静态检查及性能等方面还是不如Java或Scala。Paul告诉我，其实Groovy本身也还在不断改进，例如在未来的Groovy 1.8和2.0中，其中一个方面便是在Groovy中加入“静态”的特性，例如通过一些强制指定的类型标识或参数，这样便可以获得一部分静态语言的特性，例如编译期的检查及执行性能。对于Groovy来说，对自身的不断演变也是非常重视的，这是我认为一门富有活力的语言所必需的特性。对于Java语言的评价，Paul也认为说Java好比是JVM平台上的汇编语言，&lt;a href="http://blog.zhaojie.me/2010/04/why-java-sucks-and-csharp-rocks-slides-final-version.html"&gt;这和我的观点一致&lt;/a&gt;。&lt;/p&gt;

&lt;h1 id="fsharp"&gt;关于F#&lt;/h1&gt;

&lt;p&gt;关于F#，我主要关注它的历史和文化，倒并非语言本身的特性。例如F#为什么叫作F#——因为F表示“Fun”。F#的创始人是微软剑桥研究院的&lt;a href="http://en.wikipedia.org/wiki/Don_Syme"&gt;Don Syme&lt;/a&gt;。Don是函数式编程的支持者，因为他认为函数式编程语言可以用简单的方法解决复杂的问题。Don的主要研究目标是&lt;a href="http://en.wikipedia.org/wiki/ML_%28programming_language%29"&gt;ML&lt;/a&gt;，直到现在它也是学术界的宠儿之一。早在微软.NET平台发布时，Don便希望在.NET平台上实现一个ML语言。后来在实现上发现没有运行时上的泛型支持实在是不便，因此他又将主要精力放在了CLR的泛型支持上，因此他也是CLR泛型功能的主要设计者之一。而CLR 2.0发布之后，他实现一个.NET平台上的OCaml语言也是顺理成章的事情了。选用&lt;a href="http://en.wikipedia.org/wiki/OCaml"&gt;OCaml&lt;/a&gt;作为F#语言的“基础”的主要原因，主要在于Don认为OCaml的语言表现力更强，更为简单，也是一种静态语言，且带有面向对象的特性……那么还有比它更适合CLR的语言吗？Tim说，由于Don参与了CLR的设计，因此对于CLR本身能力十分了解，因此F#可以生成非常高效的IL代码。&lt;/p&gt;

&lt;p&gt;F#的第一个编译器是用OCaml语言实现的，猜猜看这是为什么？这是因为，在使用了OCaml实现了F#编译器之后，便可以使用这个编译器重新编译“编译器自身”——F#可以识得OCaml代码。于是在接下来的改进中，直到现在，F#语言的编译器是用F#自身编写的。F#的编译器和核心库的代码可以在微软研究院的网站上获得，使用&lt;a href="http://download.microsoft.com/download/a/0/2/a02725c2-4eb7-45e1-8e13-24d3c1141115/LICENSE-fsharp.txt"&gt;MSR-SSLA&lt;/a&gt;协议发布，简单地说便是种只能看不能碰的协议。Tim说他们的目标是将F#以MS-PL协议发布，也就是真正的开源。目前&lt;a href="http://fsharppowerpack.codeplex.com/"&gt;F# PowerPack&lt;/a&gt;增强包的源代码已经开源了，托管在CodePlex网站上。&lt;/p&gt;

&lt;p&gt;Tim说，其实微软内部也知道一些问题。例如微软也明白，在许多高校里的教授并不喜欢微软，主要是因为不开源。教授的工作是研究，而不开源就难以深入研究，自然就不受欢迎了。而教授的研究内容往往也会影响其讲课内容的选择，因此这对于微软技术的发展也是不利的。为了设法改变这一点，微软也采取了一些行动，例如主动联系高校，赞助一些学术研究，并邀请教授们参与微软的学术交流，并向部分高校开放一部分源代码——如Windows内核，允许学生们进行改写与尝试。还有便是慢慢变得开放，例如F#，争取成为一个真正开源的语言。现在就有一些类似于这样的情况，因为不开源的缘故，教授会拒绝使用C#或VB.NET教学，但是不少人也表示出对F#的兴趣。&lt;/p&gt;

&lt;p&gt;F#其实在微软内部已经进行了一定程度的使用和推广，我们可以发现如今随VS 2010发布的F#是2.0版，那么1.0版呢？其实都是微软内部在交流与尝试。后来微软发现，.NET平台上缺少一门成熟的函数式编程语言，而函数式编程，尤其是F#自身，对于如今不少领域，如金融，数据处理，异步编程等方面的确有许多帮助，因此决定将其真正产品化。有趣的是，F#团队正在招聘&lt;a href="http://blogs.msdn.com/dsyme/archive/2010/03/10/contract-position-in-the-f-team-compiler-and-visual-tools-software-engineer-for-cross-platform-f.aspx"&gt;跨平台的F#开发人员&lt;/a&gt;，这个职位最主要的工作便是提高F#在非Windows平台上的运行质量。Tim说，其实说白了就是改进mono，使其能够更好地作为F#的运行环境。这意味着微软官方已经开始对mono进行了一定的支持，事实上这才是最令我感到高兴的事情。&lt;/p&gt;

&lt;p&gt;关于Groovy和F#就先记录这么多吧，如果回忆起新的内容我再进行补充。至于对Paul和Tim的采访，我想&lt;a href="http://www.infoq.com/cn"&gt;InfoQ中文站&lt;/a&gt;也会尽快发表，欢迎大家保持关注。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/04/something-about-groovy-and-fsharp-from-qcon.html#comments</comments>
      <pubDate>Fri, 23 Apr 2010 17:39:43 GMT</pubDate>
      <lastBuildDate>Fri, 23 Apr 2010 17:39:43 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/essential/">重中之重</category>
      <title>为什么我要反对北大青鸟</title>
      <link>http://blog.zhaojie.me/2010/04/why-i-say-no-to-aptech.html</link>
      <guid>http://blog.zhaojie.me/2010/04/why-i-say-no-to-aptech.html</guid>
      <description>&lt;p&gt;您是否知道最近北大青鸟有什么新闻吗？嗯，最近的电脑报发表了“中国IT培训现状大调查之二”一篇题为“北大青鸟高薪就业迷雾”的文章，描述了北大青鸟的种种问题。我这里不想用“揭露”、“黑幕”等激烈的词汇，但我会全文转载这篇文章，大家可以自己阅读，自行评价。客观地说，这篇报道的内容是否属实我不敢打保票，但是我愿意相信其中的说法，因为北大青鸟及其他一些培训机构的学生于我的感觉，真的不敢恭维。&lt;/p&gt;

&lt;p&gt;加入&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;前，我在一个小公司做事，算是创业吧。在小公司里需要亲自进行许多面试，自然接触了大量北大青鸟等培训机构毕业的学生。可以这么说，我没有遇到一个可以令我满意的学员。真的不是我要求高，我的要求原本可能很高，但是随着时间的推移，我的标准已经一再放低，但是如果一个学习程序开发两三年的学生，不能写代码把一个数组反转，这能够令人接受吗？&lt;/p&gt;

&lt;p&gt;我发现，让那些学员写简单的程序是非常困难的事情。一段程序，我们可能会在其中使用顺序，条件，循环。但是，如果一段程序需要同时用到循环和条件判断，这个程序基本上就没法写出了。这是什么原因？我不知道，我只想说这种编程能力，和没有进行过编程学习有什么区别？随便找个高中毕业生培训一个月都不止这点水平。那么花那么多钱读北大青鸟是用来做什么的？&lt;/p&gt;

&lt;p&gt;每次我反对北大青鸟，都会有人提出不同意见，其中大部分人是在读的学员。我能理解你们的心情，毕竟北大青鸟的声誉会影响到你们未来的发展。但是，我想说，其实你们才是北大青鸟最大的受害者。你们维护北大青鸟，最终的结果可能只能麻痹你们自己。&lt;/p&gt;

&lt;p&gt;有人说，北大青鸟还是有高水平学生的，而且这东西主要看人。我说，那是自然，但什么东西不是看人的？一个优秀的人，不去青鸟那儿读书，都能很成功，但他为什么要去花那冤枉钱？北大青鸟收了钱，就应该负责把一个普通的学生教好。但是现在，大部分人花了一两万，最后毕业还找不到一个三千块每月的工作，他不吃不喝多少年才能赚得回来？更可恶的是，北大青鸟从招生开始便使用大量虚假广告。薪资高于211本科毕业生？包就业？去你妈的。&lt;/p&gt;

&lt;p&gt;更严重的问题是，北大青鸟将一张张白纸污染得不成样子。原本可能怀带着理想的学员，原本可能有潜力的学员，就这样被糟蹋了。如果一个初学者从一开始就被灌输一些错误的观念，这是一件多么严重的事情。有的学员会这样回答我：“我是做测试的，不是专业做开发的”，“我能写应用程序，这种纯算法题不是很擅长”。大哥大姐，这只是反转一个数组啊！&lt;/p&gt;

&lt;p&gt;此外，从一些原来北大青鸟的老师那里也可以知道，在北大青鸟内部规定教材和教学方式，严禁教师改良教材内容，这算是什么样的规定？我相信北大青鸟能有优秀的老师，但是这又能起到多少作用？&lt;/p&gt;

&lt;p&gt;剩下的内容，各位就自己看文章吧。这篇文章前两天被大量转载，但是在北大青鸟开始公关之后，许多地方已经将文章删除了。现在如果您在Google里搜索“北大青鸟高薪就业迷雾”，就会发现许多无法打开的链接。幸好这次百度立功了，我们还可以在&lt;a href="http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece763104687270e54f7226690864822c3933fc239045c033db4fe6178505380936b6776ed131efdf142346c5537b6edcb824fdfbc972c3bcd7a742613913111c469acdc3623d654914de8df0e96bfe74591b9a3d5c82050dd52756df0fa9c2c7403bc6de76447f4a7e95f652807cb9b2713ff4e072e882230a136f8f7446810f081ca2b3a&amp;p=906dda5685cc43ff57e88e3e4e&amp;user=baidu"&gt;百度快照里看到一些内容&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;以下便是全文内容转载。&lt;/p&gt;

&lt;h1&gt;北大青鸟高薪就业迷雾&lt;/h1&gt;

&lt;p&gt;铺天盖地、无处不在的广告，“学IT，好工作，就读北大青鸟”的广告词，构成了大多数人对北大青鸟这家号称“中国第一IT培训机构”的初始印象。&lt;/p&gt;

&lt;p&gt;这其中，不难看出北大青鸟主攻的人群：对IT行业向往已久的“门外汉”。极具诱惑的关键词：高薪、零基础、速成、工作推介。花上14800元和半年时间，高中生就能摇身一变成为白领“网络工程师”？职业技能培训市场隐藏着怎样的敛财黑幕？&lt;/p&gt;

&lt;p&gt;（黄枪调查）&lt;/p&gt;

&lt;h1&gt;国内最贵的职业中介？&lt;/h1&gt;

&lt;p&gt;“就业推荐？倒是推荐了，不过是影视后期”。在北大青鸟学了2个学期Java，交了17000元学费的张敏哭笑不得。 &lt;/p&gt;

&lt;p&gt;“上学时在无锡电视台实习过，会一些影视采编基础操作”，根据这样的“特长”，培训结束后张敏被北大青鸟推荐到一家广告公司和一家网络开发公司，职位都是“影视后期”，与心中的IT工程师毫无关系。“我这还算是好的，好歹还是技术活。那一期班上同学还有被推荐去做销售的，最辛苦的是游戏地推（地面推广人员），还真是‘切合企业需求’”。 &lt;/p&gt;

&lt;p&gt;一年时间过去了，张敏始终没有成为梦想中的“工程师”，他现在在一家民营企业做文案，Java已经“丢得差不多了”。和一些“师兄”交流后才知道，所谓的 “就业推荐”，不过是根据学员特长，由培训中心代发简历给用人单位，争取一些面试机会罢了。&lt;/p&gt;

&lt;p&gt;“北大青鸟是不是国内第一IT培训机构暂且不说，但它一定是国内最贵的职业中介——花了我一万七就投了几份简历还不管你面试成不成功。”张敏对黄枪无奈笑称。 &lt;/p&gt;

&lt;p&gt;张敏当初投身北大青鸟，是被“人才奇缺+高薪就业”的行业前景迷惑，“当时很出名的宣传语是100%就业，高中生海外高薪就业，听着就让人心动啊”。再加上咨询师的巧舌如簧和ACCP、OSTA、ORACLE一大堆金牌证书的诱惑，想不“入瓮”都难。&lt;/p&gt;

&lt;p&gt;“参加培训班，我们主要是受了广告的影响。”小陈向记者展示了一份份的广告复印件。一则广告显示：北大青鸟ACCP软件工程师，国家劳动部+北京大学+印度APTECH，100%就业保障。颁发证书：国际——北大青鸟APTECH，国内——国家劳动部。另一则广告显示：助你进“名企”，拿“高薪”。联想、方正、清华同方、诺基亚、IBM……北大青鸟与1000多家名企签约等醒目字眼。 &lt;/p&gt;

&lt;p&gt;实际上，在“不上名牌大学，只读北大青鸟”的广告宣传下，对许多学员和家长而言，北大青鸟给人留下的第一印象往往是，只要学了ACCP，不仅能解决就业问题，还能成为高收入者。 &lt;/p&gt;

&lt;p&gt;根据黄枪调查，空头承诺一直是各类IT培训机构的惯用伎俩，这种情况在北大青鸟依然普遍存在。 &lt;/p&gt;

&lt;p&gt;4月中旬，黄枪以学员身份联系到了北大青鸟西苑中心，一位彭姓老师称，如不考虑就业方向，考试合格后，“就业率一定是100%”；该中心往届学员的平均工资水平为“试用期2500元以上，转正后增加800~1500元，还不算其他的福利补贴”。黄枪查阅了该中心首页，发现他们列出的明星学员的薪资颇具吸引力并且不忘强调：“即使在金融危机肆虐的2008年，西苑中心软件开发毕业学员薪资水平一直持续高于211本科毕业生的平均水平。” &lt;/p&gt;

&lt;p&gt;然而，对“100%就业率”、转正后超4000元月薪的承诺能否写入合同，彭姓老师一口拒绝，称总部规定各培训中心要使用“标准合同”，不可以私自更改。&lt;/p&gt;

&lt;h1&gt;“定向委培”子虚乌有？&lt;/h1&gt;

&lt;p&gt;那么，北大青鸟的100%就业率如何保证？彭姓老师称：“我们和很多企业都是定向委培关系，长期向他们输送人才。”对社会培训机构来说，“定向委培”确实是一块金字招牌——这几乎意味着“铁饭碗”和就业捷径，但北大青鸟真和那么多的企业签订了长期“定向委培”吗？黄枪发现，虽然极少数培训中心确实承接了一些短期的委培指标，但“委培”的效果无疑被极大夸大了，对于绝大多数学员而言，那不过是幻想。 &lt;/p&gt;

&lt;p&gt;知情人士称，各地北大青鸟在就业宣传上往往是“字斟句酌”，希望通过“创意措辞”吸引更多学员的关注，于是“不上名牌大学，只读北大青鸟”、“名企征招”、 “100%就业”等诱人词汇格外醒目，让苦于就业无门的广大学员看后“怦然心动”。 &lt;/p&gt;

&lt;p&gt;林林总总的诱人词汇中，“定向委培”最具吸引力，因为“定向委培”无疑在昭示其就业率为100%，这就使很多学员义无反顾地交上高额学费，并憧憬着不久将得到一份高薪工作。因此，各地北大青鸟在宣传中，无不强调与几十乃至几百家企业签定了“定向委培”计划。 &lt;/p&gt;

&lt;p&gt;问题是，事实真如北大青鸟宣称的么？ &lt;/p&gt;

&lt;p&gt;位于重庆高新区的北大青鸟，号称重庆西永IT企业定向培养总校，西永为重庆电子信息产业专业化园区。此前有媒体报道称，包括高新区在内的北大青鸟重庆两个中心出台了“西永IT企业定向就业计划”，工程借助中、美、印三国专家资源，定向培养实现100%的优良就业率。 &lt;/p&gt;

&lt;p&gt;4月中旬，黄枪调查时，该中心“企业定向班”正在热招，宣称主要招收西永IT企业定向就业班，受大企业委托培养IT高端人才，经北大青鸟培训后，让高中生也能进名企，直接输送到西永IT就业，月薪平均4000元——耐人寻味的是，根据重庆市统计局公布的数字，重庆市人均工资为2580元。 &lt;/p&gt;

&lt;p&gt;“主要是进入哪些企业呢？能否写入就业协议中？”黄枪问。“只要完成了三个阶段的学习并毕业后，学员将有机会进入惠普、华为、微软、博恩、艾尔卡特等知名IT企业工作，也有机会进入重庆移动、电信、自来水厂等事业单位就职。”该中心一位廖姓咨询师说。 &lt;/p&gt;

&lt;p&gt;“按照你的说法，是不是指惠普、微软、华为通过你们定向培养就业人才？”“关键是要看你自己的能力了，我们总不能把一些技术不强的人也输送过去吧。”廖姓咨询师说。 &lt;/p&gt;

&lt;p&gt;“这和你们宣传的定向委培不是一回事吧？你能否明确告诉我，惠普、微软这些企业是不是和你们有这个定向委培计划？”黄枪反复追问。 &lt;/p&gt;

&lt;p&gt;出人意料的是，在黄枪反复追问“定向委培”具体细节时，含糊其词转移话题的廖姓咨询师却将对话转移给了另一位曹姓咨询师。当黄枪再次追问“惠普是否和北大青鸟有定向委培计划”时，曹姓咨询师和廖姓咨询师一样含糊其词转移了话题，最后对黄枪置之不理。 &lt;/p&gt;

&lt;p&gt;黄枪查询发现，该中心宣称的IT名企艾尔卡特公司子虚乌有，而按照该中心列出的“委培名单”，黄枪与其中的微软、惠普等几家企业取得了联系，在听到黄枪的表述后，这些企业感到非常诧异，不假思索断然否定。“我们从来没有采用‘定向委培’方式招聘人才，更没有委托社会培训机构进行人才培养，因为公司招人有自己严格的程序和招聘方法，并有自己成熟的培养体系，培训机构培养出的学员不可能完全符合公司用人要求。”&lt;/p&gt;

&lt;h1&gt;与劳动部合作的“猫腻”&lt;/h1&gt;

&lt;p&gt;与此同时，为了“实现”推荐就业的承诺，北大青鸟不惜上演双簧闹剧。 &lt;/p&gt;

&lt;p&gt;一位四川学员曾参加过北大青鸟的培训，2007年初培训结束后，被推荐到一家网络公司，“感觉只是走过场，问了几个很简单的问题就没有下文了”。另一个同学虽然被录用（实习期每月800元），但实习期一过就被辞退，换了新人。“就是利用实习期的廉价劳动力。不少小公司和培训机构都有协议，每接收一个学员收取中心500～1000元赞助费，这就是所谓的合作。” &lt;/p&gt;

&lt;p&gt;对广大学员而言，北大青鸟与劳动部（现整合为人力资源和社会保障部）的“合作”无疑让证书含金量极高。按照北大青鸟西苑中心彭姓老师的说法，“毕业后会获得两个证书，一个是北大青鸟的高级职业技能证书（ACCP），一个是劳动部颁发的证书（OSTA），相当于国家中级技能资格水平”。 &lt;/p&gt;

&lt;p&gt;目前有据可查的是，2010年1月，人力资源和社会保障部职业技能鉴定中心与北大青鸟签署了《与北大青鸟合作认证项目服务》，开始对北大青鸟BTEST课程培训内容体系和管理体系的认证。 &lt;/p&gt;

&lt;p&gt;电话中，人力资源和社会保障部综合处严处长表示，“职业技能鉴定中心是人力资源和社会保障部直属机构，承担对全国职业培训机构的技术指导、课程研究和标准评定，对所有培训机构一视同仁。北大青鸟方面，主要是标准的审核，谈不上合作”。也就是说，劳动部并不存在与北大青鸟“合作培养人才”一说。 &lt;/p&gt;

&lt;p&gt;然而，在街头灯箱广告、网站、报纸等铺天盖地的广告宣传中，多家北大青鸟却重点描述着与劳动部的“合作”关系——劳动部专家视察、联合认证等等，如“北大青鸟ACCP软件工程师。国家劳动部+北京大学+印度APTECH”、“国家劳动部、北大青鸟联合打造软件白领”…… &lt;/p&gt;

&lt;p&gt;OSTA则是北大青鸟和劳动部“合作”的另一条纽带。官方资料介绍，OSTA是一个反映计算机操作水平的基础性职业资格证书。与全国计算机等级考试（NCRE）不同，OSTA更侧重于一些办公软件、系统应用的初级考核，作为一些部门招聘的基础条件。对此，多家软件公司HR经理私底下对黄枪表示，对准备进入IT圈成为软件工程师的培训学员而言，这种证书含金量极低。而ACCP，只是北大青鸟的企业认证书而已，并不具备权威性。 &lt;/p&gt;

&lt;p&gt;对劳动部和北大青鸟的“合作”，一位熟悉标准评定工作的内部人士称，每个培训机构推出自己的课程体系和标准都需要职业技能鉴定中心做出指导和审核，这就好比厂家的产品要送去质监局、工商局一样，“你能说这个是和工商局合作生产的罐头吗？笑话！”&lt;/p&gt;

&lt;h1&gt;“军事标准化”的北大青鸟&lt;/h1&gt;

&lt;p&gt;对学员“高中生、零基础”要求的北大青鸟而言，极少数能力出众的学员就业前景确实不错，但多数低学历的普通学员却困难重重：北大青鸟的ACCP认证多数企业似乎并不认账，一些企业甚至为了筛掉培训学员筑起了学历门槛。深圳系统集成开发公司的一位HR对黄枪表示，“培训学员没有项目经验不说，基础比较差，学习能力不行。再说现在本科生这么廉价，谁还用培训的？” &lt;/p&gt;

&lt;p&gt;“另外一个很重要的原因是，学员创造力不强，这对软件开发是致命的。”据该HR介绍，最近一两年内，深圳不少软件开发型企业都将招聘门槛提高至本科以上，“主要就是想过滤掉这些培训学员”。 &lt;/p&gt;

&lt;p&gt;说起招聘工程师的经历，一位HR一脸无奈。有一次他所在的公司欲招聘一名网络工程师，结果应征者同时来了4名。怎样判断这4名拿了认证的网络工程师谁更符合公司需要呢？他想了一个办法：把公司网络运行中出现的问题拿出来，谁能解决就要谁。结果，4名拿着网络工程师证书的应聘者全都无法解决。 &lt;/p&gt;

&lt;p&gt;黄枪调查发现，出现上述情况，与北大青鸟的标准化教育理念有关，北大青鸟CEO杨明曾公开表示，培养“软件蓝领”，不需要太多创造力，主要是听话、肯干。 &lt;/p&gt;

&lt;p&gt;一位曾在北大青鸟工作过的知情人士透露，北大青鸟有一套标准化的咨询师手册，上面详细记录了一个咨询师应该做的事情和怎么去做这些事情。比如如何接电话、如何说第一句话、如何回答学员的咨询等。如果你想问某些问题（比如学费），保证你得不到答案。 &lt;/p&gt;

&lt;p&gt;黄枪曾多次询问北大青鸟学费，然而，接受黄枪咨询的北大青鸟咨询师均无一例外地采用了“标准化”答案：“看你的计算机基础和你选择的课程来决定，建议留个联系方式，我请我们专业老师跟你详细分析和讲解课程内容。”由始至终，除了极力邀请黄枪去进行入学测试外，最多笼统表示学费为“几千到上万元不等”，对具体学费避而不谈。 &lt;/p&gt;

&lt;h1&gt;餐馆老板也可成北大青鸟“校长”&lt;/h1&gt;

&lt;p&gt;2009年9月5日，是北大青鸟安徽蚌埠睿智中心100多名学员的“黑色周末”。在没有任何征兆的情况下，学员们发现培训中心大门紧锁，张贴了一张告示，“北大青鸟蚌埠睿智中心现出现严重的经营困难，无法运转，所有学员转学事宜，请致电北大青鸟总部”。该中心2009年7月20日开始授课，每名学员缴纳了8000～10000元不等的学费，两个月不到，人去楼空。 &lt;/p&gt;

&lt;p&gt;“北大青鸟总部让我们和合肥的培训中心联系。我们已经在蚌埠交了学费，人家没钱赚，根本不接收我们”，一位朱姓学员表示，他们至今未得到解决方案。 &lt;/p&gt;

&lt;p&gt;各方推诿的背后，与北大青鸟加盟模式有关——蚌埠这家培训中心，在工商局注册的是“睿智电脑培训学校”，后加盟北大青鸟，更名为北大青鸟蚌埠睿智中心。 &lt;/p&gt;

&lt;p&gt;为了跟上快速扩张的步伐，北大青鸟采取了加盟代理的形式。据了解，北大青鸟总部并不授课，所有分校对外都称为中心，中心分为两种情况，北大青鸟总部投资的中心称为直属中心，其他人投资的称为加盟中心，加盟中心负责人则称为“校长”。 &lt;/p&gt;

&lt;p&gt;根据北大青鸟官方资料，目前北大青鸟在国内90多个城市有200多个特许加盟伙伴，开办培训机构240余家，2008年全体系收入21.4亿元，这也导致学员无法分清各式北大青鸟网站和宣传广告，甚至根本不知道总部不会授课。 &lt;/p&gt;

&lt;p&gt;“当初加盟费是30万元，后来涨到80万元。”一位从餐饮转行成为北大青鸟“校长”的人士透露， 加上其他硬件设备采购和前期装修等，总共投资了150万元，而现在随着房租等上涨，经营一家北大青鸟培训中心大概需要220万元。 &lt;/p&gt;

&lt;p&gt;北大青鸟总部官网资料显示，加盟北大青鸟项目资金为200万元，包括场地租金、项目相关教学设备的购置、特许经营加盟费等等。加盟最重要的条件，是对北大青鸟品牌的认可，这一点北大青鸟多次反复提及——值得注意的是，黄枪反复查阅其加盟资料，并未发现对加盟伙伴有教育或培训的资质要求。 &lt;/p&gt;

&lt;p&gt;北大青鸟品牌管理部给黄枪回复的邮件中明确说明，“加盟并不需要保证金，总部会定期公开检查和暗访调查”。也就是说，各加盟店与总部关系仅是授权“挂牌经营”而已，出了事情，总部并没有保证金用以赔付。 &lt;/p&gt;

&lt;p&gt;那么，一家IT培训机构到底是怎么经营并产生盈利的？一家培训中心的营业收入按年计算较为科学，因为学员课程一般10个月一周期。按每人1.5万～1.7万元计算，满24人开班，一年有15～20个的开班频次，总营业收入在540万～720万元间。 &lt;/p&gt;

&lt;p&gt;既然以盈利为主要目的，市场主体又各不相同，北大青鸟加盟培训中心上演了一出又一出的“拉生意”好戏，触角伸到社会各个角落。安徽涡阳中学的一位高中教师称，他曾接到北大青鸟某中心发来的招生协议书，明确规定了拉学员的奖励标准 ——“1～2人1000元/人，3～4人1200元/人，5人以上1500元/人”，“身边不少老师都拿这个当买卖做，自然也帮他们说了不少好话”。 &lt;/p&gt;

&lt;p&gt;培训体制内，“拉生意”的事情也屡见不鲜。南宁状元廊中心一位吕姓学员称，学生拉一个人进来培训有300元拿。“一个同学自己都觉得没学到东西，临走还拉了两个人进来”。“拉生意”并不是孤本，而是全国“通行”，且适当“照顾”了不同地区的经济水平差异——在北京北航中心，这一标准被提升至1000元/人。 &lt;/p&gt;

&lt;p&gt;加盟模式和广告宣传放在首位，也让各中心教员队伍质量难以得到保证。黄枪曾询问多家北大青鸟中心师资问题，这些中心只是笼统表示“总部派下来的人”。 &lt;/p&gt;

&lt;p&gt;按照北大青鸟的说法，北大青鸟总部将对各中心教员进行“标准化的统一培训”，但多位北大青鸟教员透露，教员素质参差不齐，计算机水平好的老师有，但太少，很多教员都是刚毕业的学生，号称有多少年的开发经验大多是忽悠，甚至缺乏能够作为相关学科老师的教学资本。也有一些教员是大学中出来走穴的老师，走穴教学毕竟是副业，不能够占据这些老师的主要精力，因此也会大打折扣。 &lt;/p&gt;

&lt;p&gt;教员也是在“标准化”模式下，按照他们开发出来的课本教材ACCP、BENET、BTEST按部就班地讲课就行了。一位不愿透露姓名的北大青鸟教员表示，对他们而言，唯一关心的是如何让学生尽可能多地拿到相关培训的证书，学生们拿到了证书，他们也就完成了任务。问题是，现在许多考试都是电脑自动出题，题库中问题大多固定，只是打乱顺序，因此让学生背题库就成为取得好成绩拿证书的法宝。&lt;/p&gt;

&lt;h1&gt;相关链接 &gt;&gt; 北大青鸟涉嫌非法宣传？&lt;/h1&gt;

&lt;p&gt;调查中，黄枪发现，北大青鸟往往喜欢自封为“最大、最强、最久”的办学机构。比如北大青鸟重庆南岸学府江田培训中心，在百度搜索上就自封为“北大青鸟——中国最大IT职业教育品牌。” &lt;/p&gt;

&lt;p&gt;工商局人士表示，《广告法》第二章第七条规定，广告不得使用国家级、最高级、最佳等用语，北大青鸟许多中心宣称的“最大品牌”以及“100％高薪就业”，都违反这一规定，涉嫌虚假宣传。 经营者如果毫无根据地自我标榜“最大品牌”，则其行为容易使消费者对其提供的商品质量或服务产生误解，在不适当地抬高自己的同时，客观上贬低了其他同业经营者的商品及服务。这样的行为不仅违反了广告法，同时构成了不正当竞争。 &lt;/p&gt;

&lt;p&gt;此外，《广告法》中同样也规定，在商业广告中，企业不得以任何形式利用国家机关及其工作人员名义做广告，无论上述机关、工作人员是否同意，否则将构成广告违法。所以，“国家人力资源和社会保障部、北大青鸟联手打造软件英才”一说，有违法之嫌。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/04/why-i-say-no-to-aptech.html#comments</comments>
      <pubDate>Wed, 21 Apr 2010 16:20:07 GMT</pubDate>
      <lastBuildDate>Wed, 21 Apr 2010 16:20:07 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/language/">语言编程</category>
      <category domain="http://blog.zhaojie.me/discussion/">思考讨论</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>演讲预告：Why Java Sucks and C# Rocks</title>
      <link>http://blog.zhaojie.me/2010/04/speech-why-java-sucks-and-csharp-rocks.html</link>
      <guid>http://blog.zhaojie.me/2010/04/speech-why-java-sucks-and-csharp-rocks.html</guid>
      <description>&lt;p&gt;怎么样，这个标题是不是足够吸引眼球？嗯，我下个星期便打算在&lt;a href="http://www.5173.com/"&gt;5173&lt;/a&gt;和&lt;a href="http://www.cnblogs.com/"&gt;博客园&lt;/a&gt;举办的&lt;a href="http://www.cnblogs.com/cmt/archive/2010/04/09/1708073.html"&gt;技术交流会&lt;/a&gt;上讨论一下这个话题。&lt;/p&gt;  &lt;p&gt;产生这个话题的缘由，是因为大约在一个月前，&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;里有位同事开始分享Android开发方面的体会——Android开发主要使用的是Java语言，大家也应该知道我对Java语言的感受。因此在交流会后，我和他在这方面有过一些讨论。我的主要观点就是，Java这门语言的的发展过于滞后，与如今流行的其他高级语言相比其生产力已经落后太多。对方的看法是，如果认为Java的生产力不足，一般是对于Java语言不太了解的缘故。&lt;/p&gt;  &lt;p&gt;您一定可以猜到，后来话题逐渐演变成C#与Java的比较。我一直强调如今的C#已经超越Java太多，恰好那位同事当年也使用过一段时间的C#。于是，他问我有什么事情是C#可以做到而Java做不好的。其实这样的例子有很多，因此他不一会儿便改变了对C#的看法，同时对目前C#的发展现状也产生了比较浓厚的兴趣。后来他建议我不妨详细准备一下这个话题，然后可以在创新院内部的分享交流会上详细讨论一下这方面的话题。&lt;/p&gt;  &lt;p&gt;几乎是第一时间我便想出了这样的一个标题：Why Java Sucks and C# Rocks。选择这个标题的主要原因还是足够吸引眼球，而且也正好可以充分表达我对Java语言的看法。在推特上一吹，响应者还真不少。&lt;/p&gt;  &lt;p&gt;在准备过程中，博客园的弟兄也找到我，说即将和5173共同举办一个技术交流会，邀请我主讲一个话题。5173？没错，就是那个5173，其中既有Java团队主要又是由.NET构建的电子商务平台，5173。很显然，他们使用的语言是Java和C#，那么还有比那儿更适合比较Java和C#的地方吗？因此几乎是第一时间我就确定了演讲主题。要知道，创新院内部使用Java的人实在太少，我还嫌不够过瘾呢。&lt;/p&gt;  &lt;p&gt;在创新院分享会上的“预演”效果不错，同事们大都可以认同C#是一门在各方面超越Java的语言。如果您对这个内容感兴趣，就不妨来参加下周的活动咯。&lt;/p&gt; &lt;img src="http://pic002.cnblogs.com/img/cmt/201004/2010040910263056.jpg" /&gt;   &lt;p&gt;以下是这次话题内容的简单描述：&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Java语言的流行毋庸置疑，在TIOBE语言排行榜上遥遥领先，并占据了榜首位置长达数年时间。然而，从目前的眼光看来，Java语言的生产力已经严重落后于行业中其他流行的语言，C#便是其中的一个典型。自诞生起，C#似乎便和Java有些纠缠不清，因为在当时看来，无论是语言层面还是它们所处平台的目标都十分相似。不过经过了将近10年的发展，如今C#的生产力已经大大领先于Java语言，甚至在近几年的变革中已经成为了Java模仿的对象。本次交流会将回顾Java及C#语言的发展历程，基于它们的最新进展（C# 4.0和Java 7）对比两者在生产力上的差距，并演示C#领先于Java语言的一些常见编程模式。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;直到现在，还有许多朋友认为，Java语言和C#的区别并不大，也有人认为C#只是语法糖比较多，没有什么特别的——而我现在便打算详细阐述&lt;font color="#ff0000"&gt;C#是如何改变开发人员编程理念及思维方式，并在生产力上大大超越Java语言&lt;/font&gt;。这是个大话题，在创新院分享会上耗时1小时40分钟，而在下周更是准备2个小时的时间（在这里感谢主办方的支持）。当然，如果只是这么一次演讲，其效果和影响力还是非常有限的。因此，我也打算在会后将这个内容详细地总结成一系列文章，除了发表在博客上，还会转载去一些Java开发社区，看看那儿的弟兄们对这个话题会怎么看。&lt;/p&gt;  &lt;p&gt;啥，您说我是去砸场的？不不不，到时候您就知道我的目的了。&lt;/p&gt;  &lt;p&gt;因此，我现在也希望您可以帮老赵个忙，例如告诉我国内比较著名的Java社区是哪些。目前我已经确定的有&lt;a href="http://www.javaeye.com/"&gt;JavaEye&lt;/a&gt;，不过有人告诉我其实那里最活跃的其实是Ruby社区。&lt;a href="http://www.csdn.net/"&gt;CSDN&lt;/a&gt;也是个不错的地方，毕竟那里是国内最大的程序员基地。&lt;/p&gt;  &lt;p&gt;哦，对了，还有一件事情请您帮忙：如果要将“Why Java Sucks and C# Rocks”翻译为中文，哪种译法会比较妥当呢？我目前还没有想出既有气势又不粗俗的翻译。我想这一系列文章的标题还是用中文比较合适。&lt;/p&gt;

&lt;h1&gt;相关文章&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/04/why-java-sucks-and-csharp-rocks-slides-final-version.html"&gt;幻灯片：Why Java Sucks and C# Rocks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/04/why-java-sucks-and-csharp-rocks-1-thoughts-and-goals.html"&gt;Why Java Sucks and C# Rocks（1）：比较的意义与目的&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <comments>http://blog.zhaojie.me/2010/04/speech-why-java-sucks-and-csharp-rocks.html#comments</comments>
      <pubDate>Sun, 11 Apr 2010 08:49:57 GMT</pubDate>
      <lastBuildDate>Sun, 11 Apr 2010 08:49:57 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/dotnet/">.Net框架</category>
      <title>盛大创新院赞助.NET技术会议意见征询</title>
      <link>http://blog.zhaojie.me/2010/03/snda-dotnet-conference-advices.html</link>
      <guid>http://blog.zhaojie.me/2010/03/snda-dotnet-conference-advices.html</guid>
      <description>&lt;p&gt;各位可能已经知道，我于不久前加入了&lt;a href="http://blog.zhaojie.me/2010/01/1651772.html"&gt;盛大创新院&lt;/a&gt;。最近我了解到，创新院这边对于社区开展技术会议的活动也是相当支持的，并且对每个社区的会议会有资金和人员上的支持。这几天我和副院长聊了一下，他表示只要组织得当，创新院也支持把技术交流会办成一个有规律的活动，定期举行。事实上，创新院已经赞助过多次Flash及产品设计方面的技术会议，我也与创新院内部的组织者简单聊过了，组织一个技术会议并不成问题。当然，会议的目的是进行技术交流，对观众自然是完全免费的。&lt;/p&gt;  &lt;p&gt;因此，我打算在5月或6月份在上海举办一次.NET技术会议。时间定为某个周末的下午，完整的半天时间（如1点至6点）。议程还是典型的“演讲”，视每场时间长短，可能会安排4-8场演讲。当然，如果您有更好的想法，也请尽管提出，如果合适的话也可以在会议上开展一些“分组讨论”等活动。至于最重要的，自然是“话题”相关的建议。目前我打算在会上讲一场关于“F#异步及并行编程”的内容，而其他场次的话题则还没有确定。&lt;/p&gt;  &lt;p&gt;我计划会成立一个组委会，主要由盛大内部人员构成，负责会议内容制定，讲师联系，会议管理等各项事宜。同时，我也会邀请少量社区内对这个活动比较感兴趣，或是比较有影响力的人来一起加入。此外微软最近在搞一个“社区精英计划”，我自然也不会放过。&lt;/p&gt;  &lt;p&gt;而现在，除了公布这个消息之外，我也希望能够得到您的建议：&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;除了由专家进行演讲之外，您对于会议的议程有哪些建议？&lt;/li&gt;    &lt;li&gt;您是希望听到更多内容（如6至8场30分钟的演讲），还是更具体的内容（如4场一小时左右的演讲）？&lt;/li&gt;    &lt;li&gt;您感兴趣的话题是什么？&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;对您的支持与参与表示感谢。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/03/snda-dotnet-conference-advices.html#comments</comments>
      <pubDate>Fri, 26 Mar 2010 07:31:07 GMT</pubDate>
      <lastBuildDate>Fri, 26 Mar 2010 07:31:07 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>博客评论使用方式介绍</title>
      <link>http://blog.zhaojie.me/2010/03/comment-markup-help.html</link>
      <guid>http://blog.zhaojie.me/2010/03/comment-markup-help.html</guid>
      <description>&lt;p&gt;新博客终于上线了，与旧博客不同的是，我在评论方面花了许多精力，希望可以提供一个优秀的评论方法。我对优秀的定义是“格式丰富，使用简单”，再加上由于是技术博客，因此对于代码片段也要有较好的支持。最终，我选择使用&lt;a href="http://en.wikipedia.org/wiki/Markdown"&gt;Markdown&lt;/a&gt;作为评论的输入标记。Markdown是一个轻量的标记规则，但对于评论应用来说也已经足够丰富了。Markdown的运用非常广泛，例如著名的编程网站&lt;a href="http://stackoverflow.com"&gt;Stack Overflow&lt;/a&gt;也使用了这种标记语言。事实上，我这篇评论使用方式的介绍也有相当部分是翻译自&lt;a href="http://stackoverflow.com/editing-help"&gt;Stack Overflow编辑器的帮助&lt;/a&gt;，自然还有部分自定义的内容（主要是对于代码片段的支持）。&lt;/p&gt;  &lt;p&gt;本文内容分为以下几个部分：&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="#content-headers-hr"&gt;标题及分割符&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-paragraphs-br"&gt;换行及分段&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-italics-bold"&gt;斜体及加粗&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-list"&gt;列表&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-anchor"&gt;链接&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-image"&gt;图片&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-blockquote"&gt;块状引用&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-code-snippet"&gt;代码片段&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-html"&gt;HTML标签&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="#content-more"&gt;补充&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;我建议您在查阅这份文档时，可以将示例片段粘贴至评论框中查看实时预览效果。我在客户端和服务器端各自实现了一套完全相同的处理方法，并且尽力保证预览和最终发布的效果完全一致，希望可以令您满意。&lt;/p&gt;  &lt;h1 id="content-headers-hr"&gt;标题及分割符&lt;/h1&gt;  &lt;p&gt;在评论中支持3级标题（即&amp;lt;h1&amp;gt;、&amp;lt;h2&amp;gt;和&amp;lt;h3&amp;gt;），例如您只需要（尾部的井号可以省略）：&lt;/p&gt;  &lt;pre class="code"&gt;# 一级标题 #
## 二级标题 ##
### 三级标题 ###&lt;/pre&gt;

&lt;p&gt;而前两级标题也可以使用在文字下方使用连续的“=”与“-”：&lt;/p&gt;

&lt;pre class="code"&gt;一级标题
====

二级标题
-----&lt;/pre&gt;

&lt;p&gt;分割符（&amp;lt;hr /&amp;gt;）形式比较多样，以下几种方式都可以：&lt;/p&gt;

&lt;pre class="code"&gt;Rule #1
- - -
Rule #2
****
Rule #3
___&lt;/pre&gt;

&lt;h1 id="content-paragraphs-br"&gt;换行及分段&lt;/h1&gt;

&lt;p&gt;使用Markdown编辑正文非常容易，只需要像输入普通文本那样即可。值得注意的是，Markdown中的换行只会成为一个空格，而只有连续两个及以上的换行才会出现新的段落（即出现&amp;lt;p&amp;gt;标签）：&lt;/p&gt;

&lt;pre class="code"&gt;单个换行
只能形成空格。

两个及以上的换行才是分段。&lt;/pre&gt;

&lt;p&gt;如果您需要换行而不是分段，则可以输入&amp;lt;br/&amp;gt;进行分行：&lt;/p&gt;

&lt;pre class="code"&gt;这样便可以&amp;lt;br /&amp;gt;
进行换行。&lt;/pre&gt;

&lt;h1 id="content-italics-bold"&gt;斜体及加粗&lt;/h1&gt;

&lt;p&gt;如果您需要斜体字（Italics），则可以使用下划线（即“_”）或是星号（即“*”）置于斜体内容的左右：&lt;/p&gt;

&lt;pre class="code"&gt;这是_斜体_，或者*这样也可以*&lt;/pre&gt;

&lt;p&gt;对于粗体，则可以使用连续两个下划线或是星号置于斜体内容左右：&lt;/p&gt;

&lt;pre class="code"&gt;这是__粗体__，或者**这样也可以**&lt;/pre&gt;

&lt;p&gt;当然，您也可以同时使用粗体或斜体，例如：&lt;/p&gt;

&lt;pre class="code"&gt;_**这样**_，或是__*这样*__，也可以___这样___及***这样***等等&lt;/pre&gt;

&lt;p&gt;当然您也可以发现，中文的斜体字非常难看，因此我&lt;font color="#ff0000"&gt;不建议&lt;/font&gt;您使用中文的斜体。置于加粗，虽然不是很合适（因为其实中文也没有粗体），但个人认为问题不大。&lt;/p&gt;

&lt;h1 id="content-list"&gt;列表&lt;/h1&gt;

&lt;p&gt;列表分两种：有序列表及无序列表。对于无序列表，只需要在文字前面加上星号（即“*”，也可以使用“-”或“+”）及空格即可：&lt;/p&gt;

&lt;pre class="code"&gt;* Item A
* Item B
* Item C&lt;/pre&gt;

&lt;p&gt;对于有序列表，则使用数字（不代表最终的编号）和点再加上一个空格：&lt;/p&gt;

&lt;pre class="code"&gt;1. Item A
2. Item B
3. Item C&lt;/pre&gt;

&lt;p&gt;自然，列表之间可以进行嵌套，其中的级别按照实际的缩进位置确定：&lt;/p&gt;

&lt;pre class="code"&gt;* Item A
* Item B
   1. Item 1
   2. Item 2
         * Item P
         * Item Q
   3. Item 3
* Item C&lt;/pre&gt;

&lt;h1 id="content-anchor"&gt;链接&lt;/h1&gt;

&lt;p&gt;在评论的标记中，即使出现了URL形式的文字，也不会自动生成链接（主要是由于很难精确识别），如果您需要生成链接，可以使用左右尖括号（即“&amp;lt;”和“&amp;gt;”）来包含链接内容：&lt;/p&gt;

&lt;pre class="code"&gt;这不会有链接：http://zhaojie.me/

这便会加上链接：&amp;lt;http://zhaojie.me/&amp;gt;&lt;/pre&gt;

&lt;p&gt;此外，以下的几种方式都会生成链接：&lt;/p&gt;

&lt;pre class="code"&gt;可以使用内联的方式添加链接：[老赵](http://zhaojie.me/)。
也可以使用在内容尾部添加引用的方式添加链接：[老赵][1].
在添加引用时，可以指定一个可读性强的名字：[老赵][zhaojie].

[1]: http://zhaojie.me/
[zhaojie]: http://zhaojie.me/&lt;/pre&gt;

&lt;p&gt;显然，使用引用的方式建立链接，可以更好的标记的可读性，此外链接的复用性也会更好一些。值得一提的是，引用的名称是不区分大小写的，这意味着[ZHAOJIE]和[zhaojie]是等价的。此外，由于链接有title属性，我们指定了这个属性之后，便可以在鼠标悬停在链接上时获得文字提示：&lt;/p&gt;

&lt;pre class="code"&gt;可以使用内联的方式添加链接：[老赵](http://zhaojie.me/ &amp;quot;赵劼&amp;quot;)。
也可以使用在内容尾部添加引用的方式添加链接：[老赵][1].
在添加引用时，可以指定一个可读性强的名字：[老赵][zhaojie].

[1]: http://zhaojie.me/ (洋名Jeffrey Zhao)
[zhaojie]: http://zhaojie.me/ (洋名Jeffrey Zhao)&lt;/pre&gt;

&lt;p&gt;当然，如果您愿意的话，也可以直接内嵌HTML的&amp;lt;a&amp;gt;标记：&lt;/p&gt;

&lt;pre class="code"&gt;&amp;lt;a href=&amp;quot;http://zhaojie.me&amp;quot; title=&amp;quot;赵劼&amp;quot;&amp;gt;老赵&amp;lt;/a&amp;gt;&lt;/pre&gt;

&lt;h1 id="content-image"&gt;图片&lt;/h1&gt;

&lt;p&gt;图片和链接的标记比较类似，不过之前需要加上感叹号：&lt;/p&gt;

&lt;pre class="code"&gt;![谷歌的波斯新年LOGO](http://www.google.com/logos/persiannewyear10-hp.gif)
![谷歌的韦瓦尔第LOGO][google-vivaldi]
![Google Hungarian National LOGO][google-national]

[google-vivaldi]: http://www.google.com/logos/vivaldi10-hp.gif
[google-national]: http://www.google.com/logos/hungariannational10-hp.gif &amp;quot;谷歌的匈牙利国庆节LOGO&amp;quot;&lt;/pre&gt;

&lt;p&gt;方括号内部是图片的alt属性的值，当图片加载失败后便会显示这个文字。图片也可以使用引用的方式进行。而在引用中，URL后的字符串是图片的title属性，即鼠标悬停在图片上方时显示的提示文字。&lt;/p&gt;

&lt;p&gt;如果您需要的话，也可以直接使用&amp;lt;img&amp;gt;标记来插入图片——假如您需要指定图片的显示尺寸，也必须使用这种方式：&lt;/p&gt;

&lt;pre class="code"&gt;&amp;lt;img src=&amp;quot;http://example.com/sample.png&amp;quot; width=&amp;quot;100&amp;quot; /&amp;gt;&lt;/pre&gt;

&lt;h1 id="content-blockquote"&gt;块状引用&lt;/h1&gt;

&lt;p&gt;在评论时，我们可能需要引用别人的一段话（如进行有针对性地回复或评论），此时便可以使用块状引用。添加块状引用，只需要在文字前增加一个右尖括号（即“&amp;gt;”）和空格即可：&lt;/p&gt;

&lt;pre class="code"&gt;&amp;gt; 空行中的右尖括号可以省略
&amp;gt; 
&amp;gt; 但是为了增强可读性，建议保留。&lt;/pre&gt;

&lt;p&gt;块状引用间也可以进行嵌套：&lt;/p&gt;

&lt;pre class="code"&gt;&amp;gt; 一级嵌套
&amp;gt; &amp;gt; 嵌套中的嵌套
&amp;gt; &amp;gt; &amp;gt; 嵌套任意级都可，但会变得很不好看，建议保留**一至二层**即可&lt;/pre&gt;

&lt;p&gt;在块状引用中，您可以使用各种其他标记，包括链接、列表、甚至代码片断。&lt;/p&gt;

&lt;h1 id="content-code-snippet"&gt;代码片段&lt;/h1&gt;

&lt;p&gt;如果我们需要在正文的文字中内联一些代码片段或是关键字，那么便可以使用backtick字符（即“`”，也就是键盘左上角的那个键，数字1的左边）在评论中生成一个&amp;lt;code&amp;gt;标签：&lt;/p&gt;

&lt;pre class="code"&gt;Press the `&amp;lt;Tab&amp;gt;` key, then type a `$`.&lt;/pre&gt;

&lt;p&gt;值得注意的是，在内联的代码片断中，所有的尖括号等特殊字符都会被原原本本地显示出来。&lt;/p&gt;

&lt;p&gt;在需要插入独立的代码片断时，您也可以通过在行首添加tab或是4个空格的方式来粘贴代码：&lt;/p&gt;

&lt;pre class="code"&gt;    public string RemoveTags(string html)
    {
        return Regex.Replace(html, @&amp;quot;&amp;lt;[^&amp;gt;]*&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);
    }&lt;/pre&gt;

&lt;p&gt;不过上面这段代码是没有着色效果的，如果要添加着色，则可以在第一行添加配置信息：&lt;/p&gt;

&lt;pre class="code"&gt;    [config] brush:csharp; first-line:10; highlight:[11,12]
    public string RemoveTags(string html)
    {
        return Regex.Replace(html, @&amp;quot;&amp;lt;[^&amp;gt;]*&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);
    }&lt;/pre&gt;

&lt;p&gt;第一行[config]代码仅仅是告诉着色器应该如何处理代码，在实际显示时会被省略。在这里我使用的是&lt;a href="http://alexgorbatchev.com/wiki/SyntaxHighlighter"&gt;Syntax Highlighter&lt;/a&gt;客户端着色插件，因此可以使用它的各种配置，如起始行数（first-line）及高亮行号（highlight）等等。关于brush的种类，我支持Syntax Highlighter官方提供的各种语言。我以后也会提供更多着色支持，并为粘贴代码片段提供必要的辅助功能。&lt;/p&gt;

&lt;p&gt;您也可以在块状引用内部添加代码：&lt;/p&gt;

&lt;pre class="code"&gt;&amp;gt;     [config] brush:csharp; first-line:10; highlight:[11,12]
&amp;gt;     public string RemoveTags(string html)
&amp;gt;     {
&amp;gt;         return Regex.Replace(html, @&amp;quot;&amp;lt;[^&amp;gt;]*&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);
&amp;gt;     }&lt;/pre&gt;

&lt;p&gt;不过，由于样式有问题，在块状引用中的代码片段就不作着色处理了（您可以在即时预览里进行实验）。等有更好的着色方案时我会对此进行改进。&lt;/p&gt;

&lt;h1 id="content-html"&gt;HTML标记&lt;/h1&gt;

&lt;p&gt;在评论中您也可以直接插入HTML标记，例如您如果要添加删除线：&lt;/p&gt;

&lt;pre class="code"&gt;今天天气不错，挺风和日丽的，&amp;lt;strike&amp;gt;我们下午没有课，这的确挺爽的&amp;lt;/strike&amp;gt;。&lt;/pre&gt;

&lt;p&gt;不过为了避免&lt;a href="http://en.wikipedia.org/wiki/Cross-site_scripting"&gt;XSS&lt;/a&gt;，评论中只支持部分HTML标记：&amp;lt;a&amp;gt;、&amp;lt;b&amp;gt;、&amp;lt;blockquote&amp;gt;、&amp;lt;code&amp;gt;、&amp;lt;del&amp;gt;、&amp;lt;dd&amp;gt;、&amp;lt;dl&amp;gt;、&amp;lt;dt&amp;gt;、&amp;lt;em&amp;gt;、&amp;lt;h1&amp;gt;、&amp;lt;h2&amp;gt;、&amp;lt;h3&amp;gt;、&amp;lt;i&amp;gt;、&amp;lt;img&amp;gt;、&amp;lt;kbd&amp;gt;、&amp;lt;li&amp;gt;、&amp;lt;ol&amp;gt;、&amp;lt;p&amp;gt;、&amp;lt;pre&amp;gt;、&amp;lt;s&amp;gt;、&amp;lt;sup&amp;gt;、&amp;lt;sub&amp;gt;、&amp;lt;strong&amp;gt;、&amp;lt;strike&amp;gt;、&amp;lt;ul&amp;gt;、&amp;lt;br/&amp;gt;、&amp;lt;hr/&amp;gt;。此外，对于&amp;lt;a&amp;gt;标记只支持src和title属性，而&amp;lt;img&amp;gt;标记只支持src、title、alt、width和height属性，且width和height必须小于1000。&lt;/p&gt;

&lt;h1 id="content-more"&gt;补充&lt;/h1&gt;

&lt;p&gt;有关更多信息，您可以参考官方的&lt;a href="http://daringfireball.net/projects/markdown/syntax"&gt;Markdown语法规则&lt;/a&gt;。在使用时，您也可以在检查评论的实时预览效果以后再点击提交。如果您的格式较为混乱，我也可能会动手对格式进行一些修改。&lt;/p&gt;

&lt;p&gt;祝评论愉快！&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/03/comment-markup-help.html#comments</comments>
      <pubDate>Wed, 24 Mar 2010 14:44:39 GMT</pubDate>
      <lastBuildDate>Wed, 24 Mar 2010 14:44:39 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>今日入职盛大创新院</title>
      <link>http://blog.zhaojie.me/2010/01/1651772.html</link>
      <guid>http://blog.zhaojie.me/2010/01/1651772.html</guid>
      <description>&lt;p&gt;在&lt;a href="http://blog.zhaojie.me/2009/12/summary-2009.html"&gt;去年年底的总结&lt;/a&gt;中，我谈到放弃所谓的创业，想要加入一家国内的大公司安心发展技术，正所谓“打怪升级”。不过，其实在写完文章不久之后（大约数个小时吧），我就收到了盛大创新院给我的offer。在家休息了整整两周时间后，今天我终于正式入职了，因此我现在终于有了个颇为响亮的头衔。好吧，当然这不是关键，不过这终究还是让我梦想中“搞研究”的心理小小地满足了一把。&lt;/p&gt;  &lt;p&gt;盛大的主营业务是做网络游戏的，我本身对于游戏，尤其是网络游戏并没有什么爱好。不过在接触了创新院之后，我发现除了游戏之外，有趣的项目也不少。而且，有一点就是我不断强调的，似乎比较适合发挥个人的创造力。我加入盛大创新院，而不是其他公司或部门的主要原因也在于此。此外，我认识的许多牛人都陆续加入了创新院，对我来说一个牛窝的吸引力是巨大的，尤其是跟着他们学习。想了想，在创新院里似乎完全不会遇到所谓“30岁门槛”，在这里大家都是热爱技术的老程序员，编程经验十几年的比比皆是。&lt;/p&gt;  &lt;p&gt;之前在家的两周呆的我“身心俱疲”，估计我是天生劳碌命，轻松几天还好，一旦松懈了太久就浑身不自在。现在终于等到了重新上班的日子，反而舒服了不少。更重要的是，没有事做的时候我往往也会缺乏思路和灵感，因此这几天也没有太多想写的话题——加上懒惰，也没有再“待写列表”中提取素材了。希望今后的工作可以给我更多灵感。&lt;/p&gt;  &lt;p&gt;公司离以前的学校很近，能回到张江，重新成为张江男，目前来说感觉良好——只是又体会了一把大公司里繁琐地入职过程，填完一大堆表格，有些累。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/01/1651772.html#comments</comments>
      <pubDate>Tue, 19 Jan 2010 11:07:00 GMT</pubDate>
      <lastBuildDate>Tue, 19 Jan 2010 11:07:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>京沪两地Scrum实战营（免费，上海1月23日，北京1月30日）</title>
      <link>http://blog.zhaojie.me/2010/01/1646783.html</link>
      <guid>http://blog.zhaojie.me/2010/01/1646783.html</guid>
      <description>&lt;p&gt;原文信息：&lt;a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=822"&gt;http://www.infoq.com/cn/vendorcontent/show.action?vcr=822&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;自从Ken Schwaber和Jeff Sutherland 提出Scrum方法以来，在短短的几年中，它已经作为敏捷开发方法中重要的一个分支，在许多公司中得到应用，包括在中国的大中小公司，比如华为、腾讯、淘宝网、爱立信、谷歌等。自InfoQ中文站2008年7月发布《硝烟中的Scrum和XP》以来，这本书也已经有近16,000的下载量，这还不包括私下传播的数量。在2009年4月份由InfoQ中文站举办的QCon全球企业开发大会（北京站）上《硝烟中的Scrum和XP》作者Henrik Kniberg的讲座饱受欢迎，9月份由InfoQ中文站参与主办的敏捷中国大会2009上，关于Scrum的讲座也参与者甚重，且讨论热烈。&lt;/p&gt;  &lt;p&gt;种种迹象表明，Scrum已经在很多公司得到实施。同时，不争的事实是很多开发人员和团队在实施过程中也遇到了各种各样的问题，包括对Scrum方法本身的认识、辅助实施工具的使用等等。有关Scrum应用和实施的各种问题也在InfoQ网站和其他网站上被广泛讨论和争论。等等这些，组成了我们要举办这次Scrum实战营的基础。我们希望通过这次活动帮助正在进行敏捷实施、Scrum实施的团队更加清晰地理解Scrum，并将其他人的有效经验借鉴到自己的团队中来。&lt;/p&gt;  &lt;p&gt;本次活动由InfoQ中文站、雅各布森软件（北京）有限公司、微软中国有限公司共同举办，我们期待您的参与！&lt;/p&gt;  &lt;h1&gt;活动时间&lt;/h1&gt;  &lt;p&gt;&lt;b&gt;上海专场：&lt;/b&gt;2010年01月23日（周六）9:00 ～ 17:00&lt;/p&gt;  &lt;p&gt;&lt;b&gt;北京专场：&lt;/b&gt;2010年01月30日（周六）9:00 ～ 17:00&lt;/p&gt;  &lt;p&gt;&lt;b&gt;费用：&lt;/b&gt;免费&lt;/p&gt;  &lt;h1&gt;特别嘉宾以及演讲主题&lt;/h1&gt;  &lt;p&gt;&lt;b&gt;嘉宾简介&lt;/b&gt;：吴穹&lt;/p&gt;  &lt;p&gt;吴穹博士是一个拥有10年软件工程经验和深厚理论基础的软件工程专家。他在国内参与了许多大规模的软件工程改进工作，积累了丰富的软件工程实施和组织变革经验。同时，他在IBM Rational研发总部工作期间，对软件工程技术在全球的应用实践也有了非常深入的了解。他98年毕业于北京大学，师从中国软件工程的奠基人-杨芙清院士，参与了青鸟III等国家重点项目，打下了坚实的理论基础。 吴穹博士目前任IJI中国公司董事总经理。雅各布森国际股份有限公司（IJI）是现代软件过程开发的全球领导者，提供服务帮助客户交付高质量软件。IJI在北美、英国、新加坡、澳洲、中国、斯堪的纳维亚和韩国成立有分公司，并且在全球有众多的合作伙伴在那些没有分公司的国家协助运营。IJI是由Ivar Jacobson博士创立的，Ivar Jacobson博士被公认是深刻影响并改变着整个软件工业开发模式的世界级大师，同时也是一位引领软件行业伟大的思想家和成功的实践者。Ivar是统一过程的创始人，他的团队正通过第三代软件开发核心统一过程及其应用框架 (EssUP &amp;amp; EssWork) 推动软件行业的发展，帮助客户获得更大的成功。&lt;/p&gt;  &lt;p&gt;&lt;b&gt;分享题目：敏捷软件开发之Scrum实践&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;内容简介：敏捷已成为最近IT行业最流行的词汇之一。有些人支持它，有些人质疑他，但很多人其实并不真正清楚敏捷的内涵。在这门课程中，我们将会统一对敏捷的理解，学习敏捷和精益软件开发的基本原则，并了解敏捷在实际项目中应用的实践和经验。&lt;/p&gt;  &lt;p&gt;&lt;b&gt;基础知识&lt;/b&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“这一节将介绍有关敏捷的基础知识，同时也将介绍敏捷和精益中的一个关键概念-浪费。敏捷和精益的一个重要目标就是通过减少浪费来提高效率” &lt;/li&gt;    &lt;li&gt;介绍敏捷的概念和历史 &lt;/li&gt;    &lt;li&gt;澄清大家对敏捷的常见误解 &lt;/li&gt;    &lt;li&gt;介绍敏捷宣言和敏捷的十二个基本原则 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;b&gt;SCRUM实践&lt;/b&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“SCRUM是特性团队的运作方式” &lt;/li&gt;    &lt;li&gt;介绍特性团队的基本概念 &lt;/li&gt;    &lt;li&gt;介绍SCRUM的基本概念和流程 &lt;/li&gt;    &lt;li&gt;介绍SCRUM中参与的三类角色 &lt;/li&gt;    &lt;li&gt;介绍保证SCRUM有效实施的要素 &lt;/li&gt;    &lt;li&gt;什么是用户故事？如何找到用户故事 &lt;/li&gt;    &lt;li&gt;计划SCRUM项目（Backlog计划） &lt;/li&gt;    &lt;li&gt;SCRUM的质量保证手段-TDD和CI &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;b&gt;嘉宾简介&lt;/b&gt;：王然&lt;/p&gt;  &lt;p&gt;微软开发类金牌认证讲师，拥有丰富的项目开发与授课经验。目前在北京中达金桥技术服务有限公司担任微软开发方向的讲师，主讲SQL Server、BI开发、.NET、Visual Studio Team System等相关课程，曾多次为中石化、中海油、卫生部等大型企业客户讲授相关课程，并为许多企业客户进行VSTS的课程讲授、技术支持与部署实施等工作，拥有丰富的VSTS相关技术经验。&lt;/p&gt;  &lt;p&gt;&lt;b&gt;分享题目：基于Visual Studio 2010进行大型敏捷项目开发&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;内容简介：Agile开发方法与实践是目前软件工程最热门的议题，围绕这个话题有很多理论，实践以及工具来帮助我们敏捷。同时也有不少疑问，怎样在实际工作中实践敏捷开发？怀疑敏捷是否能在大型团队中实施等等。本课程将带您学习即将上市的Microsoft Visual Studio 2010如何搭配MSF for Agile Scrum的流程模版，助力您的团队进行Agile项目的开发工作，您还可以了解微软的Visual Studio研发团队怎样将敏捷方法具体应用于实际的软件开发，并且带来巨大效益。&lt;/p&gt;  &lt;h1&gt;活动地点&lt;/h1&gt;  &lt;p&gt;&lt;strong&gt;上海专场：&lt;/strong&gt;上海闵行区东川路555号紫竹科技园，微软（中国）上海科技园区&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;北京专场：&lt;/strong&gt;北京朝阳区望京街8号利星行广场，微软大厦&lt;/p&gt;  &lt;h1&gt;参加对象&lt;/h1&gt;  &lt;p&gt;架构师、项目经理、高级软件开发人员和对Scrum感兴趣的朋友&lt;/p&gt;  &lt;h1&gt;活动议程&lt;/h1&gt;  &lt;p&gt;上午&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;8:30 ～ 9:00：签到 &lt;/li&gt;    &lt;li&gt;9:00 ～ 10:30：敏捷软件开发之Scrum实践（上） &lt;/li&gt;    &lt;li&gt;10:30 ～ 10:45：短休 &lt;/li&gt;    &lt;li&gt;10:45 ～ 11:45：敏捷软件开发之Scrum实践（下） &lt;/li&gt;    &lt;li&gt;11:45 ～ 12:00：Q&amp;amp;A &lt;/li&gt;    &lt;li&gt;12:00-13:30：午餐&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;下午&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;13:00 ～ 14:30：基于Visual Studio 2010进行大型敏捷项目开发（上） &lt;/li&gt;    &lt;li&gt;14:30 ～ 14:45：短休 &lt;/li&gt;    &lt;li&gt;14:45 ～ 16:00：基于Visual Studio 2010进行大型敏捷项目开发（下） &lt;/li&gt;    &lt;li&gt;16:00 ～ 16:15：Q&amp;amp;A &lt;/li&gt;    &lt;li&gt;16:15 ～ 17:00：自由分享&lt;/li&gt; &lt;/ul&gt;  &lt;h1&gt;活动报名&lt;/h1&gt;  &lt;p&gt;为确保您的参会，将会有会务人员会通过电话和您联系，请务必在下面的“电话信息”栏填写准确信息。您所下载的文件内容为本次活动的详细信息，供参考！如有任何问题，请邮件联系此次活动的负责人&lt;a href="mailto:selina&amp;#64;c4media.com"&gt;Selina&lt;/a&gt;。&lt;/p&gt;  &lt;h1&gt;注意事项&lt;/h1&gt;  &lt;ol&gt;   &lt;li&gt;为体验更好的实训效果，建议您携带电脑，并请在会前安装好下列虚拟机器。 &lt;/li&gt;    &lt;li&gt;Visual Studio 2010及Team Foundation Server 2010 Beta2动手实验室虚拟机器下载：     &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=426cdffc-53b5-46a5-89d3-e2ecd23570c6"&gt;Visual Studio 2010 Beta 2 (Hyper-V)&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=27d91e63-e33b-4cef-a331-f20d343da9de"&gt;Visual Studio 2010 Beta 2 (Windows [7] Virtual PC)&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=540777b0-cbd7-485e-bde5-23a1d4f442e0"&gt;Visual Studio 2010 Beta 2 (Virtual PC 2007 SP1)&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://cid-8c96cc4d0756cacb.skydrive.live.com/browse.aspx/Public/Blog%20Attachments/2010%20Beta%202%20Labs?uc=3"&gt;动手实验室操作手册（英文）&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Visual Studio 2010工具下载（安装档），&lt;a href="http://clk.atdmt.com/MCH/go/192829996/direct/01/"&gt;请点击这里&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;在填写报名信息时，请选择参加北京专场或者是上海专场，以便我们做相应安排。&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;如果您想参与本次会议，请访问以下链接提交报名表单：&lt;a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=822"&gt;http://www.infoq.com/cn/vendorcontent/show.action?vcr=822&lt;/a&gt;&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2010/01/1646783.html#comments</comments>
      <pubDate>Wed, 13 Jan 2010 10:26:00 GMT</pubDate>
      <lastBuildDate>Wed, 13 Jan 2010 10:26:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>推荐内容索引</title>
      <link>http://blog.zhaojie.me/2009/12/valuable-posts-index.html</link>
      <guid>http://blog.zhaojie.me/2009/12/valuable-posts-index.html</guid>
      <description>&lt;p&gt;写了不少文章，其中有不少比较用心的系列。积累了那么久，我在博客上也已经讨论过了各种问题。许多人提问的时候，我会说我写过某某文章，可以搜一下，但得到的反馈经常是找不到。其中一个原因是那些弟兄还不太会用搜索引擎——或是懒，但也有可能是以前的文章的确是“沉没”了。无论是博客园还是独立博客，对于内容的组织和管理还做得不够好，所以在这方面有所突破之前，还是通过手动整理的方式来保留重点内容吧。&lt;/p&gt;
&lt;p&gt;以下是一些我个人认为比较用心，比较值得推荐的内容。这些内容大都以“系列”的方式构成。过些时候我也会把这些索引放在博客右侧的列表中，如果您需要也可以从那里进行访问。&lt;/p&gt;

&lt;a name="my-view-of-il"&gt;&lt;/a&gt;
&lt;h1&gt;老赵谈IL&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/06/my-view-of-il-1-il-and-asm.html"&gt;
	老赵谈IL（1）：IL是什么，它又不是什么？那么汇编呢？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/06/my-view-of-il-2-il-shows-little-about-clr.html"&gt;
	老赵谈IL（2）：CLR内部有太多太多IL看不到的东西，包括您平时必须了解的那些&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/06/my-view-of-il-3-use-c-sharp-instead-of-il.html"&gt;
	老赵谈IL（3）：IL可以看到的东西，其实大都也可以用C#来发现&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/my-view-of-il-4-how-to-learn-il.html"&gt;
	老赵谈IL（4）：什么时候应该学IL，该怎么学IL&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="string-concat-perf"&gt;&lt;/a&gt;
&lt;h1&gt;重谈字符串连接性能&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/string-concat-perf-1-benchmark.html"&gt;
	重谈字符串连接性能（上）：性能评测&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/string-concat-perf-2-stringbuilder-implementations.html"&gt;
	重谈字符串连接性能（中）：细节实现&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/string-concat-perf-3-profiling-analysis.html"&gt;
	重谈字符串连接性能（下）：分析优化&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="book-recommendation"&gt;&lt;/a&gt;
&lt;h1&gt;老赵书托&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/05/recommended-reading-1.html"&gt;
	老赵书托（1）：写在前面&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/07/recommended-reading-2-sicp.html"&gt;
	老赵书托（2）：计算机程序的构造与解释&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/recommended-reading-3-csapp.html"&gt;
	老赵书托（3）：深入理解计算机系统&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="array-linq-sort-perf"&gt;&lt;/a&gt;
&lt;h1&gt;数组排序方法的性能比较&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2010/01/sort-array-linq-1-notes-and-benchmark.html"&gt;
	数组排序方法的性能比较（1）：注意事项及试验&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2010/01/sort-array-linq-2-array-sort.html"&gt;
	数组排序方法的性能比较（2）：Array.Sort&amp;lt;T&amp;gt;实现分析&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2010/01/sort-array-linq-3-linq-sort.html"&gt;
	数组排序方法的性能比较（3）：LINQ排序实现分析&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2010/01/sort-array-linq-4-linq-style-array-sort.html"&gt;
	数组排序方法的性能比较（4）：LINQ方式的Array排序&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2010/01/sort-array-linq-5-object-size-and-performance.html"&gt;
	数组排序方法的性能比较（5）：对象大小与排序性能&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="from-delegate-to-others"&gt;&lt;/a&gt;
&lt;h1&gt;从.NET中委托写法的演变谈开去&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/08/from-delegate-to-others.html"&gt;
	从.NET中委托写法的演变谈开去（上）：委托与匿名方法&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/08/from-delegate-to-others-2.html"&gt;
	从.NET中委托写法的演变谈开去（中）：Lambda表达式及其优势&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/08/from-delegate-to-others-3.html"&gt;
	从.NET中委托写法的演变谈开去（下）：性能相关&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="prog-lang-trend"&gt;&lt;/a&gt;
&lt;h1&gt;编程语言的发展趋势及未来方向&lt;/h1&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/04/trends-and-future-directions-in-programming-languages-by-anders-1-history-and-trends.html"&gt;编程语言的发展趋势及未来方向（1）：历史回顾及趋势概述&lt;/a&gt; &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/04/trends-and-future-directions-in-programming-languages-by-anders-2-declarative-programming-and-dsl.html"&gt;编程语言的发展趋势及未来方向（2）：声明式编程与DSL&lt;/a&gt; &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/05/trends-and-future-directions-in-programming-languages-by-anders-3-functional-programming-and-fsharp.html"&gt;编程语言的发展趋势及未来方向（3）：函数式编程&lt;/a&gt; &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/05/trends-and-future-directions-in-programming-languages-by-anders-4-dynamic-languages.html"&gt;编程语言的发展趋势及未来方向（4）：动态语言&lt;/a&gt; &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/05/trends-and-future-directions-in-programming-languages-by-anders-5-meta-programming.html"&gt;编程语言的发展趋势及未来方向（5）：元编程&lt;/a&gt; &lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/05/trends-and-future-directions-in-programming-languages-by-anders-6-concurrency.html"&gt;编程语言的发展趋势及未来方向（6）：并发&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/06/trends-and-future-directions-in-programming-languages-by-anders-7-conclusion.html"&gt;编程语言的发展趋势及未来方向（7）：总结&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;a name="expression-tree-reflection"&gt;&lt;/a&gt;
&lt;h1&gt;表达式树与反射调用&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/11/invoke-method-by-lambda-expression.html"&gt;
	方法的直接调用，反射调用与……Lambda表达式调用&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/01/dynamicpropertyaccessor-and-fasteval.html"&gt;
	这下没理由嫌Eval的性能差了吧？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/02/fast-reflection-library.html"&gt;
	Fast Reflection Library&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/general-add-operation.html"&gt;
	“表达式树”配合“泛型参数字典”定义通用操作&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="fsharp-async-parallel-patterns"&gt;&lt;/a&gt;
&lt;h1&gt;F#中的异步及并行模式&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/03/async-and-parallel-design-patterns-in-fsharp-1-parallelizing-cpu-and-io-computations.html"&gt;F#中的异步及并行模式（1）：并行CPU及I/O计算&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/03/async-and-parallel-design-patterns-in-fsharp-2-reporting-progress-with-events.html"&gt;F#中的异步及并行模式（2）：反馈进度的事件（包含Twitter示例）&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/03/async-and-parallel-design-patterns-in-fsharp-3-agents.html"&gt;F#中的异步及并行模式（3 - 上）：代理的基本使用&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/03/async-and-parallel-design-patterns-in-fsharp-3-more-agents.html"&gt;F#中的异步及并行模式（3 - 下）：代理的进一步使用&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;a name="url-rewrite"&gt;&lt;/a&gt;
&lt;h1&gt;重提URL Rewrite&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/01/url-rewrite-1.html"&gt;
	重提URL Rewrite（1）：IIS与ASP.NET&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/01/url-rewrite-2.html"&gt;
	重提URL Rewrite（2）：使用已有组件进行URL Rewrite&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/01/url-rewrite-3.html"&gt;
	重提URL Rewrite（3）：在URL Rewrite后保持PostBack地址&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/01/url-rewrite-4.html"&gt;
	重提URL Rewrite（4）：不同级别URL Rewrite的一些细节与特点&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/aspnet-mvc-iis-level-url-rewrite.html"&gt;
	在ASP.NET MVC中使用IIS级别的URL Rewrite&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="thread-pool"&gt;&lt;/a&gt;
&lt;h1&gt;浅谈线程池&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/07/thread-pool-1-the-goal-and-the-clr-thread-pool.html"&gt;
	浅谈线程池（上）：线程池的作用及CLR线程池&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/07/thread-pool-2-dedicate-pool-and-io-pool.html"&gt;
	浅谈线程池（中）：独立线程池的作用及IO线程池&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/thread-pool-3-lab.html"&gt;
	浅谈线程池（下）：相关试验及注意事项&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="concurrent-cache-perf"&gt;&lt;/a&gt;
&lt;h1&gt;并发环境下的缓存容器性能优化&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/concurrent-cache-performance-improvement-1-immutable-hash-table.html"&gt;
	并发环境下的缓存容器性能优化（上）：不可变的哈希表&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/concurrent-cache-performance-improvement-2-benchmark.html"&gt;
	并发环境下的缓存容器性能优化（下）：性能测试&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="dotnet-basic-perf"&gt;&lt;/a&gt;
&lt;h1&gt;基础性能相关&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/05/generic-performance-test.html"&gt;
	泛型真的会降低性能吗？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/05/generics-performance-via-asm.html"&gt;
	从汇编入手，探究泛型的性能问题&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/01/system-architecture-and-program-performance.html"&gt;
	计算机体系结构与程序性能&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/codetimer.html"&gt;
	一个简单的性能计数器：CodeTimer&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/recursive-lambda-expressions-benchmark.html"&gt;
	使用Lambda表达式编写递归函数（性能测试）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/cache-and-object-creation-benchmark.html"&gt;
	缓存方式与对象创建的性能比较&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/fsharp-codetimer.html"&gt;
	F#版本的CodeTimer&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/attribute-performance-improvement.html"&gt;
	Attribute操作的性能优化方式&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/more-on-attribute-cci.html"&gt;
	再谈Attribute性能优化方式：使用CCI Metadata&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/array-copy-benchmark.html"&gt;
	各种数组元素复制方式的性能比较&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/profiler-sampling.html"&gt;
	使用Profiler分析程序性能&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="talk-about-code-performance"&gt;&lt;/a&gt;
&lt;h1&gt;浅谈代码的执行效率&lt;/h1&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/01/short-code-is-not-always-fast-1-algorithms.html"&gt;浅谈代码的执行效率（1）：算法是关键&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/01/talk-about-code-performance-2-compiler.html"&gt;浅谈代码的执行效率（2）：编译器的威力&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/01/talk-about-code-performance-3-locality.html"&gt;浅谈代码的执行效率（3）：缓存与局部性&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://blog.zhaojie.me/2010/01/talk-about-code-performance-4-asm-optimization.html"&gt;浅谈代码的执行效率（4）：汇编优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;a name="code-for-fun"&gt;&lt;/a&gt;
&lt;h1&gt;趣味编程&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/08/functinal-list-quick-sort.html"&gt;
	趣味编程：函数式链表的快速排序&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/functinal-list-quick-sort-answer.html"&gt;
	趣味编程：函数式链表的快速排序（参考答案）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/more-on-event-as-object.html"&gt;
	将事件视为对象&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/on-event-as-object-practice-answer.html"&gt;
	将事件视为对象（参考答案）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/build-the-first-ievent-by-delegateevent.html"&gt;
	基于DelegateEvent创建第一个IEvent对象&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/functional-reactive-programming-for-csharp.html"&gt;
	Functional Reactive Programming&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/functional-reactive-programming-for-csharp-answer.html"&gt;
	Functional Reactive Programming（参考答案）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/specification-pattern-in-csharp-practice.html"&gt;
	C#中Specification模式的实现&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/specification-pattern-in-csharp-practice-answer-1.html"&gt;
	C#中Specification模式的实现（参考答案 - 上）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/specification-pattern-in-csharp-practice-answer-2.html"&gt;
	C#中Specification模式的实现（参考答案 - 下）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/code-for-fun-tokenizer.html"&gt;
	从字符串中提取信息&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/code-for-fun-tokenizer-answer-1.html"&gt;
	从字符串中提取信息（参考答案 - 上）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/code-for-fun-tokenizer-answer-2-fsharp.html"&gt;
	从字符串中提取信息（参考答案 - 下）&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="expression-tree-cache"&gt;&lt;/a&gt;
&lt;h1&gt;谈表达式树的缓存&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/expression-cache-1.html"&gt;
	谈表达式树的缓存（1）：引言&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/expression-cache-2-simple-key-cache.html"&gt;
	谈表达式树的缓存（2）：由表达式树生成字符串&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/expression-cache-3-prefix-tree-cache.html"&gt;
	谈表达式树的缓存（3）：使用前缀树&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/expression-cache-4-binary-search-tree-cache.html"&gt;
	谈表达式树的缓存（4）：使用二叉搜索树（AVL树）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/expression-cache-5-hash-based-cache.html"&gt;
	谈表达式树的缓存（5）：引入散列值&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/05/expression-cache-6-perf-test.html"&gt;
	谈表达式树的缓存（6）：五种缓存方式的性能比较&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/05/expression-cache-7-optimization.html"&gt;
	谈表达式树的缓存（7）：五种缓存方式的总体分析及改进方案&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="page-static"&gt;&lt;/a&gt;
&lt;h1&gt;谈网页静态化&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/07/talk-about-page-statilization.html"&gt;
	谈*静态页*（或网页*静态化*）的时候，请区分一些概念&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/07/more-on-page-statilization-and-seo.html"&gt;
	关于网页*静态化*及SEO问题的一些补充&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="url-gen-by-route"&gt;&lt;/a&gt;
&lt;h1&gt;基于ASP.NET Routing的URL生成方式&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/several-ways-of-generating-url.html"&gt;
	浅谈URL生成方式的演变&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/several-ways-of-generating-url-benchmark.html"&gt;
	各种URL生成方式的性能对比&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/several-ways-of-generating-url-benchmark-result.html"&gt;
	各种URL生成方式的性能对比（结论及分析）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/fluent-interface-for-url-generation.html"&gt;
	为URL生成设计流畅接口（Fluent Interface）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/url-generation-performance-improvement-result.html"&gt;
	URL生成方式性能优化结果&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/12/route-getvirtualpath-optimization.html"&gt;
	Route组件GetVirtualPath方法性能优化结果&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="tail-recursion"&gt;&lt;/a&gt;
&lt;h1&gt;浅谈尾递归&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/03/tail-recursion-and-continuation.html"&gt;
	尾递归与Continuation&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/04/tail-recursion-explanation.html"&gt;
	浅谈尾递归的优化方式&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="page-static"&gt;&lt;/a&gt;
&lt;h1&gt;HTML内容生成&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/12/usercontrol-as-an-template.html"&gt;
	技巧：使用User Control做HTML生成&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/07/user-control-rendering.html"&gt;
	方案改进：直接通过User Control生成HTML&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;a name="asp-net-routing"&gt;&lt;/a&gt;
&lt;h1&gt;ASP.NET Routing相关&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/08/url-routing-with-domain.html"&gt;
	配合域名作URL Routing&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/aspnet-routing-request-processing.html"&gt;
	ASP.NET Routing对请求的处理方式&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/things-about-aspnet-routing.html"&gt;
	关于ASP.NET Routing的几点内容&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/aspnet-routing-design-ideas-and-patterns.html"&gt;
	浅谈Route组件的设计思考与模式&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/simplify-domain-route-configuration.html"&gt;
	简化DomainRoute的配置&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="fragment-cache"&gt;&lt;/a&gt;
&lt;h1&gt;视图片断缓存&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2008/07/cachepanel.html"&gt;
	输出缓存与CachePanel&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/aspnet-mvc-fragment-cache-1.html"&gt;
	适合ASP.NET MVC的视图片断缓存方式（上）：起步&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/aspnet-mvc-fragment-cache-2-more-friendly-api.html"&gt;
	适合ASP.NET MVC的视图片断缓存方式（中）：更实用的API&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/aspnet-mvc-fragment-cache-3-rendering-principle.html"&gt;
	适合ASP.NET MVC的视图片断缓存方式（下）：页面输出原则&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/how-to-use-fragment-cache-lazy-load-and-library-eazy.html"&gt;
	片段缓存的实际应用、延迟加载及Eazy类库&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="testability-driven-development"&gt;&lt;/a&gt;
&lt;h1&gt;我的TDD实践：可测试性驱动开发&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/testability-driven-development-1.html"&gt;
	我的TDD实践：可测试性驱动开发（上）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/testability-driven-development-2.html"&gt;
	我的TDD实践：可测试性驱动开发（下）&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="trouble-shooting"&gt;&lt;/a&gt;
&lt;h1&gt;排错&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/double-check-failure.html"&gt;
	您能看出这个Double Check里的问题吗？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/double-check-failure-answer.html"&gt;
	您能看出这个Double Check里的问题吗？（解答）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/i-made-a-mistake-can-you-figure-it-out.html"&gt;
	我犯了一个错误，您能指出吗？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/i-made-a-mistake-can-you-figure-it-out-answer.html"&gt;
	我犯了一个错误，您能指出吗？（结论）&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/about-debugging.html"&gt;
	关于排错：专注思考，细心观察，步步为营&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/problem-of-generating-thumbnail-image.html"&gt;
	您能看出这个生成缩略图的方法有什么问题吗？&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/11/precision-of-float-point-calculation.html"&gt;
	关于浮点数计算时的精度问题&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="nhibernate-custom-collection"&gt;&lt;/a&gt;
&lt;h1&gt;NHibernate自定义集合类型&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/nhibernate-custom-collection-1-basics.html"&gt;
	NHibernate自定义集合类型（上）：基本实现方式&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/nhibernate-custom-collection-2-general-implementations.html"&gt;
	NHibernate自定义集合类型（中）：通用实现方式&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/nhibernate-custom-collection-3-bidirectional-relation.html"&gt;
	NHibernate自定义集合类型（下）：自动维护双向关系&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="my-view-of-hibernate"&gt;&lt;/a&gt;
&lt;h1&gt;我对NHibernate的感受&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/my-view-of-nhibernate-1-lazy-loading.html"&gt;
	我对NHibernate的感受（1）：对延迟加载方式的误解&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/09/my-view-of-nhibernate-2-virtually-everything.html"&gt;
	我对NHibernate的感受（2）：何必到处都virtual&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/my-view-of-nhibernate-3-collection-support.html"&gt;
	我对NHibernate的感受（3）：有些尴尬的集合支持&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2009/10/my-view-of-nhibernate-4-interceptor.html"&gt;
	我对NHibernate的感受（4）：令人欣喜的Interceptor机制&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;a name="break-the-browsers-restrictions"&gt;&lt;/a&gt;
&lt;h1&gt;挣脱浏览器的束缚&lt;/h1&gt;
&lt;ul&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/01/break-the-browsers-restrictions-1.html"&gt;
	挣脱浏览器的束缚（1） - 前言&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/01/break-the-browsers-restrictions-2.html"&gt;
	挣脱浏览器的束缚（2） - 别让脚本引入坏了事&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/01/break-the-browsers-restrictions-3.html"&gt;
	挣脱浏览器的束缚（3） - 两个连接还不够“并行”&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/01/break-the-browsers-restrictions-4.html"&gt;
	挣脱浏览器的束缚（4） - 王道！动态添加script元素&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/01/break-the-browsers-restrictions-5.html"&gt;
	挣脱浏览器的束缚（5） - 哭笑不得的IE Bug&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/02/break-the-browsers-restrictions-6.html"&gt;
	挣脱浏览器的束缚（6） - AJAX也跨域名&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;
	&lt;a href="http://blog.zhaojie.me/2007/02/break-the-browsers-restrictions-7.html"&gt;
	挣脱浏览器的束缚（7） – CrossSubDomainExecutor&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;</description>
      <comments>http://blog.zhaojie.me/2009/12/valuable-posts-index.html#comments</comments>
      <pubDate>Sun, 27 Dec 2009 09:30:00 GMT</pubDate>
      <lastBuildDate>Sun, 27 Dec 2009 09:30:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/reading/">阅读相关</category>
      <title>最受欢迎中国技术博客评选（PB50）结果公布</title>
      <link>http://blog.zhaojie.me/2009/10/popblogger50.html</link>
      <guid>http://blog.zhaojie.me/2009/10/popblogger50.html</guid>
      <description>&lt;p&gt;国外有博客评选榜单，记得之前也有人提议国内也做一下类似的评选。这不，&lt;a href="http://blog.zdnet.com.cn/html/25/413425-2881994.html"&gt;ZDNET搞了一个&lt;/a&gt;：&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;PoPblogger50(PB 50) 评选是中国技术博客受网友关注度的一个风向标。该评选由ZDNet等国内主流技术社区共同举办。PB 50 评选跟踪的博客主要来自软件、网络、安全、存储、服务器、企业管理信息化等6大技术领域。有独立博客，也有来自BSP的博客。PB 50 数据每个2个月更新一次。数据依据，网友推荐打分，国内主流BSP推荐，业内专家推荐，博客访问量、博客评论、博客文章量、博客更新频率等几十项主、因素的综合考量。虽然PB 50 不是中国技术博客的绝对排行榜，但可以给关注中国技术博客的用户一个参考。&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;现在结果终于揭晓了，看看有几位是您已经知道并订阅了呢？&lt;/p&gt; &lt;table&gt; &lt;tbody&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第1名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/495.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/Terrylee/"&gt;李会军&lt;/a&gt;&lt;/td&gt; &lt;td&gt;软件公司的项目经理。擅长基于.NET平台的Web开发，ASP.NET 、AJAX、Silverlight等技术。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第2名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/486.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/JeffreyZhao/"&gt;赵劼&lt;/a&gt;&lt;/td&gt; &lt;td&gt;赵劼，网名老赵，洋名Jeffrey Zhao。目前担任上海柏盛网络技术有限公司架构师（兼程序员）。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第3名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/500.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://aimingoo.spaces.live.com/"&gt;周爱民&lt;/a&gt;&lt;/td&gt; &lt;td&gt;有十余年的软件开发、项目管理、团队建设的经验。曾任多家软件公司高级程序设计师、项目经理、部门经理、区域总经理等职，现任 alipay（&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第4名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/497.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/david_lv"&gt;吕建伟&lt;/a&gt;&lt;/td&gt; &lt;td&gt;客户细分 客户获取 客户转换 客户保持-创新应用-盈利模式-开发组织-业务架构-计算平台 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第5名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/513.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://coolshell.cn/"&gt;陈皓&lt;/a&gt;&lt;/td&gt; &lt;td&gt;芝兰生于深谷，不以无人而不芳；君子修道立德，不为困穷而改节。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第6名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/492.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.eygle.com/blog/"&gt;盖国强&lt;/a&gt;&lt;/td&gt; &lt;td&gt;eygle的Oracle Blog，提供Oracle技术研究及深入探讨，同时记录个人爱好及生活历程。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第7名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/494.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.javafox.org/"&gt;胡长城&lt;/a&gt;&lt;/td&gt; &lt;td&gt;工作流，BPM，SOA，Java，J2EE、Flex；个人主页http://www.javafox.org；普元BPS业务流程平台 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第8名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/490.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://chinese.catchen.biz/"&gt;陈广琛&lt;/a&gt;&lt;/td&gt; &lt;td&gt;Web开发工程师，微软最有价值专家，精通ASP.NET(C#)与ASP(VBScript)，熟悉HTML与CSS以及其它Web标准，熟练设计符合Web标准的网站&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第9名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/493.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.zdnet.com.cn/?uid-419061"&gt;张大志&lt;/a&gt;&lt;/td&gt; &lt;td&gt;张大志(leo) 即将出版：《程序员羊皮卷》 zhaopinpro创始人从事研发人员考核的培训与咨询&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第10名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/468.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/jhzyz"&gt;冯强&lt;/a&gt;&lt;/td&gt; &lt;td&gt;信息化咨询/IT行业研究&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第11名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/499.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.zdnet.com.cn/html/25/380725-type-index.html"&gt;叶开&lt;/a&gt;&lt;/td&gt; &lt;td&gt;长期从事企业财务、ERP（用友、Oracle）、CRM（Siebel、SalesLogix、MSCRM、PowerCRM）等管理软件系统的定制、实施与咨询服务，有丰富的&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第12名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/508.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://sery.blog.51cto.com/"&gt;田逸&lt;/a&gt;&lt;/td&gt; &lt;td&gt;资深系统管理员，精通linux/unix，多年系统管理经验，擅长并热衷于大规模的网络运维。 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第13名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/479.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.gaoang.com/"&gt;高昂&lt;/a&gt;&lt;/td&gt; &lt;td&gt;有了理想 就不要寻找放弃的理由&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第14名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/501.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.zdnet.com.cn/html/70/398870-type-index.html"&gt;董海涛 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;董海涛，PMP，“2006中国制造业优秀CIO”获得者，长期从事制造业信息化工作。2004年主持实施的FOURTH SHIFT ERP项目，被评为“四班亚太&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第15名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/465.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/supper3000/"&gt;苏鹏&lt;/a&gt;&lt;/td&gt; &lt;td&gt;在中国某知名电信企业任技术主管 微软最有价值专家, 微软“十大杰出IT英雄” MSDN特邀讲师 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第16名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/475.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.zdnet.com.cn/html/41/396241-type-index.html"&gt;曾建根&lt;/a&gt;&lt;/td&gt; &lt;td&gt;职场四气论：锐气藏于胸，和气浮于脸，才气现于事，义气示于人。 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第17名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/473.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://yulimin.javaeye.com/"&gt;俞黎敏&lt;/a&gt;&lt;/td&gt; &lt;td&gt;俞黎敏,国际商业机器全球服务(中国)限公司广州分公司软件部高级工程师现任国际商业机器全球服务(中国)限公司广州分公司软件部高级工程师&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第18名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/512.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.dbanotes.net/"&gt;冯大辉&lt;/a&gt;&lt;/td&gt; &lt;td&gt;在 IT 行业的这几年基本上是做 Oracle 数据库相关的技术工作，对 Oracle 数据库的管理与性能优化有一点研究，是一名Oracle ACE 技术杂家&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第19名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/487.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.codingnow.com/"&gt;云风&lt;/a&gt;&lt;/td&gt; &lt;td&gt;思绪来的快去的也快，偶尔会在这里停留&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第20名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/482.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/callwangxiang/"&gt;王翔&lt;/a&gt;&lt;/td&gt; &lt;td&gt;软件架构师，主要方向为XML技术、.NET平台开发与集成、领域设计和公钥基础环境应用。近年主要参与数据交换系统、自订制业务领域语言平台&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第21名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/502.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://mindhacks.cn/"&gt;刘未鹏&lt;/a&gt;&lt;/td&gt; &lt;td&gt;思维改变生活&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第22名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/477.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/calvinxiu/"&gt;肖桦 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;网名为“江南白衣”，Java领域专家，开源JavaEE项目SpringSide发起人，现任广州电信研究院亿迅科技有限公司任设计中心设计主管。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第23名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/503.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/absurd"&gt;李先静&lt;/a&gt;&lt;/td&gt; &lt;td&gt;致力于基于linux的嵌入式系统的学习和研究，包括内核、驱动、GUI、MMI、软件设计方法和软件优化等方面。欢迎交换友情链接。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第24名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/489.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.awflasher.com/blog/"&gt;郭启睿 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;关注互联网行业、RIA、视频应用与移动通信业前景，专注于互联网相关产品的用户体验设计与实现，尤其是视频应用方向。&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第25名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/469.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.anysql.net/"&gt;楼方鑫 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;楼方鑫,98-99年致力于电力企业的MIS系统开发,98年主要用Developer 2000/99年主要用PB在Oracle上发. 00-01年在南京一培训机构当SQL Serv&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第26名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/461.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/dl88250"&gt;丁亮&lt;/a&gt;&lt;/td&gt; &lt;td&gt;讨论软件制造过程中的艺术与工程，软件哲学&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第27名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/466.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.blogjava.net/BlueDavy"&gt;林昊&lt;/a&gt;&lt;/td&gt; &lt;td&gt;China OSGi User Group Director，淘宝网平台架构部架构师。从2006年来开始在实际的商业产品中使用OSGi，根据自己的经验先后编写了《OS&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第28名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/496.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://hi.baidu.com/litiejun"&gt;李铁军&lt;/a&gt;&lt;/td&gt; &lt;td&gt;安全是管理，杀毒软件只是帮手 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第29名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/460.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.nona.name/"&gt;李默&lt;/a&gt;&lt;/td&gt; &lt;td&gt;ThoughtWorks公司高级咨询师、业务分析师，敏捷过程教练，BJUG创始人。目前主要专注于互联网产品需求管理与市场营销的合作、产品交互设&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第30名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/472.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://iamsujie.com/"&gt;苏杰&lt;/a&gt;&lt;/td&gt; &lt;td&gt;阿里巴巴集团产品经理，现在主要负责产品的商业架构、业务规划、数据分析、用户体验等等。2008年春夏开始，与团队一起撰写产品相关的专&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第31名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/484.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/aawolf/"&gt;马宁&lt;/a&gt;&lt;/td&gt; &lt;td&gt;梦想一个移动的未来 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第32名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/470.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.ningoo.net/"&gt;宁海元&lt;/a&gt;&lt;/td&gt; &lt;td&gt;宁海元，湘人，善吃辣，混迹于网络，常出没于Itpub。现栖身于人间天堂，隐迹于淘宝网，以Oracle DBA为生，痴迷于数据库技术。 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第33名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/510.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://erlang-china.org/"&gt;赵东炜&lt;/a&gt;&lt;/td&gt; &lt;td&gt;网名 jackyz，创建了 erlang-china.org 网站。是《Ajax实战》和《Erlang程序设计》的主要译者。从业 12 年，对"架构高负载/大并发的系统&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第34名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/488.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.chedong.com/blog/"&gt;车东&lt;/a&gt;&lt;/td&gt; &lt;td&gt;良好引用，良好结构，良好导航 Well referenced and well organized, with easy navigation&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第35名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/463.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.chinaunix.net/u1/37091/"&gt;寇柱&lt;/a&gt;&lt;/td&gt; &lt;td&gt;寇柱的虚拟化BLOG &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第36名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/464.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.sansky.net/"&gt;冯凯&lt;/a&gt;&lt;/td&gt; &lt;td&gt;1998年毕业于西安理工大学，2000年前负责中国三峡水电站的设计和实施，2002年加入sobey，曾负责多项重大全台网系统的设计和实施。2005年&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第37名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/471.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://hi.baidu.com/teyqiu"&gt;崔衍渠&lt;/a&gt;&lt;/td&gt; &lt;td&gt;崔衍渠|KingZoo计算机安全咨询中心|百度反病毒知识专家 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第38名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/498.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.zdnet.com.cn/?421625"&gt;项有建&lt;/a&gt;&lt;/td&gt; &lt;td&gt;深度分析通信、IT相关的技术、产品与趋势&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第39名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/504.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://winda.blog.51cto.com/"&gt;王达&lt;/a&gt;&lt;/td&gt; &lt;td&gt;十余年笔耕不辍，发表过千余篇以技术专题为主的文章，出版过多本以网络为主的图书。多家媒体的专栏作者。所著《网管员必读》系列是网络&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第40名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/476.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.cnblogs.com/thinhunan/"&gt;谭振林&lt;/a&gt;&lt;/td&gt; &lt;td&gt;THINK-事繁勿慌，事闲勿荒，取象于钱，外圆内方 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第41名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/478.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.csdn.net/KerryZhu"&gt;朱少民 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;测试.质量.管理之最佳实践&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第42名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/507.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://yuelei.blog.51cto.com/"&gt;岳雷&lt;/a&gt;&lt;/td&gt; &lt;td&gt;教育部ITAT项目组金牌讲师，教育部ITATPRO项目组专家组组长。微软最有价值专家（MVP），51CTO版主，多家IT媒体特约撰稿人。专注网络、虚&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第43名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/481.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blogs.itecn.net/blogs/ahpeng/"&gt;彭爱华 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;独立的虚拟化解决方案顾问 六届 微软最有价值专家（国内唯一的虚拟化MVP）/VMware认证工程师/微软高级讲师/Microsoft Press签约作者/IT&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第44名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/483.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.jianzhaoyang.com/"&gt;简朝阳 &lt;/a&gt;&lt;/td&gt; &lt;td&gt;简朝阳 (Sky Jian) MySQL &amp;amp; Oracle DBA 目前就职于阿里巴巴 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第45名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/485.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://fairyfish.net/"&gt;Denis &lt;/a&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第46名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/462.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.click2earth.com/"&gt;老蒋&lt;/a&gt;&lt;/td&gt; &lt;td&gt;讨论存储技术，IP存储， 数据库容灾等&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第47名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/467.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.blogjava.net/xyz98"&gt;郑晖&lt;/a&gt;&lt;/td&gt; &lt;td&gt;冒号专栏 机器灵魂工程师的blog&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第48名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/491.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://imysql.cn/"&gt;叶金荣&lt;/a&gt;&lt;/td&gt; &lt;td&gt;多年从事MySQL管理、优化，LAMP开发等工作。有丰富的LAMP，尤其是MySQL方面的经验。业余时间兼职做独立MySQL咨询师。 &lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第49名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/505.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://www.junchenwu.com/"&gt;吴隽辰&lt;/a&gt;&lt;/td&gt; &lt;td&gt;设计师，Blogger，UCDChina发起人，WaSP ILG 成员&lt;/td&gt;&lt;/tr&gt; &lt;tr class="catch_it"&gt; &lt;td width="50"&gt;第50名&lt;/td&gt; &lt;td width="100"&gt;&lt;img src="http://img.zdnet.com.cn/moudlepic/134_module_images/509.jpg" width="80" ?&gt;&lt;/td&gt; &lt;td width="50"&gt;&lt;a href="http://blog.delphij.net/"&gt;李欣&lt;/a&gt;&lt;/td&gt; &lt;td&gt;FreeBSD fans，大学期间做过一些 Windows 应用和少量驱动程序的开发，大学毕业以后一直在做开源平台上的开发和系统管理工作。我目前在美&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;不过，我还是感觉大部分的博客更新的实在不够频繁，这和人家世界级的榜单差太远了啊，兄弟们还得努力才是。&lt;/p&gt; &lt;p&gt;呃……好像这篇文章技术方面的内容少了一点，最后补充一点吧。其实上面这张列表&lt;a href="http://blog.zdnet.com.cn/popblogger50.shtml"&gt;出自这里&lt;/a&gt;。但是如果要整理成适合博客的HTML实在……有些麻烦。那么，就动用正则表达式吧。我们可以用这个：&lt;/p&gt;&lt;pre class="code"&gt;&amp;lt;img style="padding-left:3px; padding-top:2px;"src="(?&amp;lt;img&amp;gt;&lt;a href="http://[^&amp;quot;]*&amp;quot;)"&gt;http://[^"]*")&lt;/a&gt; height=76 width=76 /&amp;gt;[\s\S]*?&amp;lt;p class="STYLE5"&amp;gt;(?&amp;lt;rank&amp;gt;第\d+名)&amp;lt;/p&amp;gt;[\s\S]*?&amp;lt;a href="(?&amp;lt;url&amp;gt;&lt;a href="http://[^&amp;quot;]*)&amp;quot;"&gt;http://[^"]*)"&lt;/a&gt; class="STYLE4"&amp;gt;(?&amp;lt;name&amp;gt;[^&amp;lt;]+)&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;\s+&amp;lt;/tr&amp;gt;\s+&amp;lt;tr&amp;gt;\s+&amp;lt;td[^&amp;gt;]*&amp;gt;(?&amp;lt;detail&amp;gt;[^&amp;lt;]*)&amp;lt;/td&amp;gt;&lt;/pre&gt;
&lt;p&gt;替换成：&lt;/p&gt;
&lt;pre class="code"&gt;&amp;lt;tr class="catch_it"&amp;gt;&lt;br&gt;&amp;lt;td width="50px"&amp;gt;${rank}&amp;lt;/td&amp;gt;&lt;br&gt;&amp;lt;td width="100px"&amp;gt;&amp;lt;img src="${img}" width="80px" /&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;lt;td width="50px"&amp;gt;&amp;lt;a href="${url}"&amp;gt;${name}&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&amp;lt;td&amp;gt;${detail}&amp;lt;/td&amp;gt;&lt;br&gt;&amp;lt;/tr&amp;gt;&lt;/pre&gt; 
&lt;p&gt;啊哈，这下看起来终于有些技术气息了，不是吗？正则表达式是开发人员手中有力的武器，无论您是搞哪个方面的，我想还是多少了解一些吧。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/10/popblogger50.html#comments</comments>
      <pubDate>Fri, 09 Oct 2009 10:36:00 GMT</pubDate>
      <lastBuildDate>Fri, 09 Oct 2009 10:36:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/asp-net/">ASP.NET</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <title>Get Ready for Real World ASP.NET MVC</title>
      <link>http://blog.zhaojie.me/2009/09/get-ready-for-real-world-aspnet-mvc-at-teched-2009.html</link>
      <guid>http://blog.zhaojie.me/2009/09/get-ready-for-real-world-aspnet-mvc-at-teched-2009.html</guid>
      <description>&lt;p&gt;&lt;a href="http://www.microsoft.com/china/teched/2009/"&gt;2009年的TechED大会即将在北京举行&lt;/a&gt;（11/5 - 11/7），其中有我的一个Session，我将其命名为“Real World ASP.NET MVC”，希望可以分享一下自己在ASP.NET MVC方面的使用体会。&lt;/p&gt; &lt;p&gt;最近我一直在总结ASP.NET MVC使用的方方面面，将我之前提出的一些“最佳实践”给具体化，此外我也在构建&lt;a href="http://MvcPatch.codeplex.com"&gt;MvcPatch&lt;/a&gt;这样的“补丁”、“扩展”及“示例”。有些朋友提出，我写的这一系列文章过于松散，话题之间关联不大。其实刚好相反，每个话题之间都是有联系的，我是把我解决问题过程中的思路细节表现出来。等一个阶段过后，我会整理一下我的思维脉络，把这些话题完整的串联起来。也算是对近期工作的一个总结。&lt;/p&gt; &lt;p&gt;此外，我还打算分享一下在进行ASP.NET MVC开发时的一些周边支持，它可能并不是在使用ASP.NET MVC框架，但是可以让系统构建过程更为“敏捷”，在TechED上的Session也主要是朝这个方向前进的。&lt;/p&gt; &lt;p&gt;而现在，希望大家可以给我一点帮助。例如，您在使用ASP.NET MVC开发Web应用程序时有没有遇到什么困难？您认为ASP.NET MVC哪方面还无法让人满意？各个方面都可以。&lt;/p&gt; &lt;p&gt;我会选择合适的话题来补充TechED的内容，也可以用其他方式（主要是博客）来谈下自己的感想。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/09/get-ready-for-real-world-aspnet-mvc-at-teched-2009.html#comments</comments>
      <pubDate>Wed, 16 Sep 2009 05:37:00 GMT</pubDate>
      <lastBuildDate>Wed, 16 Sep 2009 05:37:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <title>Kent Beck确认参加敏捷中国大会2009，讲述其35年架构设计心得</title>
      <link>http://blog.zhaojie.me/2009/08/kent-beck-is-coming-agile-china-2009.html</link>
      <guid>http://blog.zhaojie.me/2009/08/kent-beck-is-coming-agile-china-2009.html</guid>
      <description>&lt;p&gt;尘埃落定，Kent Beck终于确定他的行程，将于敏捷中国大会（9月11日~12日）前两天来京参会，并以大讲堂的形式分享其在架构设计方面的心得，在大会当天会做"实效的理想主义"的演讲，和另一位敏捷宣传创始人Dave Thomas一同为大会开幕。另外，这也是KB首次来中国，欢迎一起观瞻这个有点传奇色彩的极限编程创始人、敏捷宣言创始人。&lt;/p&gt; &lt;p&gt;在InfoQ总编辑和Kent Beck的电话沟通中，他稍有激动地告诉说，最近终于搞明白设计是怎么一回事了，有点醍醐灌顶的感觉。这也是其35年来的精华总结，据他自己说，如果将这次的讲座做个比喻的话，你就想想十几年前听我讲极限编程的那一小撮人现在的感受吧，Don't miss it。也是基于此，为了让更多人分享Kent Beck的这个心得，和KB商定后，InfoQ中文站将原本定在2,500的票价调整到普通票680元，特惠票480元，学生票280元。&lt;/p&gt; &lt;p&gt;Anyway，希望大家能够捧场，也希望这次名师讲堂对大家理解架构设计有帮助。&lt;/p&gt; &lt;p&gt;&lt;b&gt;相关链接：&lt;/b&gt;&lt;a href="http://www.infoq.com/cn/news/2009/08/kent-beck-responsive-design"&gt;名师讲堂之Kent Beck----响应式设计，现接受报名&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;相关信息：&lt;/b&gt;主题演讲：实效的理想主义。&lt;/p&gt; &lt;p&gt;“实效”这个词本身是表示说妥协，或者说以一种非最好的方式做事情，但是确实能帮助解决问题。而另一方面，"理想主义"却带有不切实际，或者说理论多于实践的含义。将这两个方面放在一起，看起来非常矛盾，但是什么时候理想主义能成为最实效的方法呢？&lt;/p&gt; &lt;p&gt;名师讲堂：响应式设计----何时做，如何做，以及做什么？&lt;/p&gt; &lt;p&gt;当软件需求发生了变化、开发人员对技术的理解更深、或技术平台发生进步的时候，软件的设计也需要相应的发展和变化。掌握及管理这种变化的过程是软件开发人员一种非常重要的技能。好的设计能够实现更容易的测试、更低的成本、更快的开发速度、更少的缺陷，以及更高的客户满意度。本次培训将讨论如何实现一次只设计一小块软件，如何安全有效的进行修改，以及如何理解软件设计的内部结构并将其应用于日常工作。本讲堂将仅面向有经验的开发人员。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/08/kent-beck-is-coming-agile-china-2009.html#comments</comments>
      <pubDate>Sun, 23 Aug 2009 15:47:00 GMT</pubDate>
      <lastBuildDate>Sun, 23 Aug 2009 15:47:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>Agile China 2009大会报名信息</title>
      <link>http://blog.zhaojie.me/2009/08/agile-china-2009.html</link>
      <guid>http://blog.zhaojie.me/2009/08/agile-china-2009.html</guid>
      <description>&lt;p&gt;在敏捷领域最具有影响力的技术社区&lt;a href="http://www.infoq.com/cn"&gt;InfoQ中文站&lt;/a&gt;、敏捷方法论的领导厂商&lt;a href="http://www.thoughtworks.com.cn"&gt;ThoughtWorks&lt;/a&gt;共同主办的&lt;a href="http://www.agilechina.net"&gt;敏捷中国技术大会&lt;/a&gt;（Agile China 2009），将于9月11日~12日（周五、周六）在北京举行。届时将有超过400位来自电信、金融、互联网、教育等行业在内的高级软件开发人员、项目管理人员等参加。  &lt;p&gt;本次大会已特别邀请敏捷开发权威人士、敏捷宣言的创始人之一&lt;a href="http://www.agilechina.net/Speaker.aspx?Id=4"&gt;Dave Thomas&lt;/a&gt;，超过30多年IT从业经历的敏捷实践者&lt;a href="http://www.agilechina.net/Speaker.aspx?Id=35"&gt;Dave Nicolette&lt;/a&gt;，敏捷领域大师级专家、咨询师、有近40年行业经验的&lt;a href="http://www.agilechina.net/Speaker.aspx?Id=36"&gt;Fred George&lt;/a&gt;等国际敏捷领域专家，以及在团队中成功应用敏捷的上海贝尔、赛门铁克、诺基亚-西门子、eBay、腾讯等公司的项目负责人参与此次大会并分享他们的心得。  &lt;p&gt;敏捷中国大会是国内敏捷技术领域最高水平的大会。今年的敏捷中国大会（AgileChina 2009），以&lt;a href="http://www.agilechina.net"&gt;Pragmatic Agile为主题&lt;/a&gt;，将一改往年的风格，参会者以高端开发者和技术管理者为主，融合管理和工程实践，推广全面敏捷之路。  &lt;p&gt;票价如下：&lt;/p&gt;&lt;a href="http://www.agilechina.net/images/ticket.jpg" target="blank"&gt;&lt;img width="450px" src="http://www.agilechina.net/images/ticket.jpg"&gt;&lt;/a&gt;  &lt;p&gt;&lt;strong&gt;优惠信息：&lt;/strong&gt;2009年8月15前报名&lt;a href="http://www.agilechina.net/ticketinfo.html"&gt;可以享受8.8折优惠&lt;/a&gt;，原价1,600元人民币，现价1,400元。&lt;/p&gt; &lt;p&gt;&lt;strong&gt;特别提示：&lt;/strong&gt;如需购票，请给我留言，我会通知主办方与您联系。如果您通过我购买A票，那么可在现价1,400元的基础上优惠100元，即1,300元。您也可以直接发邮件至&lt;a href="mailto:agilechina&amp;#64;cn.infoq.com"&gt;agilechina&amp;#64;cn.infoq.com&lt;/a&gt;购票，注明“老赵博客”同样可以获得优惠。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/08/agile-china-2009.html#comments</comments>
      <pubDate>Sat, 01 Aug 2009 11:57:00 GMT</pubDate>
      <lastBuildDate>Sat, 01 Aug 2009 11:57:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/reading/">阅读相关</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>收到了《博客园精华集Web分册》</title>
      <link>http://blog.zhaojie.me/2009/07/1535646.html</link>
      <guid>http://blog.zhaojie.me/2009/07/1535646.html</guid>
      <description>&lt;a title="web expert" href="http://img.zhaojie.me/blog/168980/o_web-expert-1.jpg" target="_blank"&gt;&lt;img src="http://img.zhaojie.me/blog/168980/o_web-expert-1.jpg" width="150px" alt="web expert" class="floatRight" /&gt;&lt;/a&gt;
&lt;p&gt;没想到快递8点45就来了——还好我今天不知所云地8点半到公司。&lt;/p&gt; &lt;p&gt;这本书其实没我什么事情，因为我不是负责Web分册的，对《精华集》这种形式的书籍也没什么好感（这是实话），认为这代表不了博客园的水平，里面选择的文章也难有太高价值——最多也就值的放在互联网上作为资源“库”的填充吧。还有一个原因，就是“时间”问题，这些文章是2007年及之前的文章，两年后的今天，基本上也有些过时了。做“精华集”是劳民伤财，得不偿失的事情。&lt;/p&gt; &lt;p&gt;不过翻看过后，不觉对我的想法感到羞耻。我太小看这些文章了，这些文章的确是精华——不论其他分册，目前我单指《Web分册》，甚至单指第一第二部分：HTML、CSS与标准。&lt;/p&gt; &lt;p&gt;我一直认为，要写一篇好的文章很难。首先，最重要的标准是说明自己的体会——不能是其他文件的拼接，不能是翻译。其次，必须把问题说清楚，不能纠缠于所谓的“道”、“悟”。随手翻看，立即吸引我的是&lt;a href="http://www.cnblogs.com/cathsfz/"&gt;CatChen&lt;/a&gt;、&lt;a href="http://www.cnblogs.com/yuntian/"&gt;爆牙齿&lt;/a&gt;和&lt;a href="http://www.cnblogs.com/JustinYoung/"&gt;杨正祎&lt;/a&gt;的文章。语言流畅，条理分明，叙述清楚。这些文章授我以“渔”而不是“鱼”，这才是有价值的文章！我现在正巴不得立即将这本书塞到公司的前台开发人员手中，让其一周看完，并写下读后感。&lt;/p&gt; &lt;p&gt;当然，后面的内容，如JavaScript就令人有些遗憾了——“鱼”多于“渔”，不够深入，详细和延伸。也有可能是我对JavaScript过于了解的缘故，并没有看出多少新意——包括我的文章《挣脱浏览器束缚》系列，看则看过，了解便了解了，其价值不值得进入精华集。但是我想，就前版本书的内容，应该也值这本书的价钱了吧（定价35，一般书店可打75折）——比太多书有价值多了。&lt;/p&gt; &lt;p&gt;订阅这些作者的博客吧，比看首页强多了。&lt;/p&gt; &lt;p&gt;最后，我认为有个现象值得反思：博客园的确不愧国内.NET第一社区，但是为什么我印象中这两年来就缺少如此高质量的内容呢？还有，不知道是不是我的错觉，因为我在筛选ASP.NET文章真没有发现那么好的文章，难道还是我对ASP.NET太过了解的缘故？&lt;/p&gt; &lt;p&gt;《Web分册》开了个令人赞叹的头，后续的分册还跟的上吗？&lt;/p&gt; &lt;p&gt;我忐忑，我语无伦次了。&lt;/p&gt;&lt;p&gt;为Web分册编委们鼓掌。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/07/1535646.html#comments</comments>
      <pubDate>Fri, 31 Jul 2009 01:36:00 GMT</pubDate>
      <lastBuildDate>Fri, 31 Jul 2009 01:36:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>IT168转载问题解决情况，以及本人博客转载方式</title>
      <link>http://blog.zhaojie.me/2009/07/it168-thief.html</link>
      <guid>http://blog.zhaojie.me/2009/07/it168-thief.html</guid>
      <description>&lt;p&gt;与IT168编辑联系之后，目前文章已添加原文链接，并且答应以后的各类转载都会符合协议。这个结局比较令人满意。此外，我想在这里详细谈一下这方面的一些做法。&lt;/p&gt;
&lt;h1&gt;转载方式简介&lt;/h1&gt;
&lt;p&gt;首先，请注意每篇文章下方都有一个Licence链接，如下：&lt;/p&gt; &lt;img src="http://img.zhaojie.me/blog/168980/o_license-0.png" /&gt; &lt;p&gt;点击上面的图标或链接“共享 2.5 中国大陆”，将会进入如下的页面（点击查看大图）：&lt;/p&gt; &lt;a href="http://img.zhaojie.me/blog/168980/o_license-2.png" target="_blank"&gt;&lt;img width="400px" src="http://img.zhaojie.me/blog/168980/o_license-2.png" /&gt;&lt;/a&gt; &lt;p&gt;看到上面这个文本框了吗？里面就是授权协议使用的HTML，直接加入转载文章的&lt;font color="#ff0000"&gt;显要位置&lt;/font&gt;（如文章顶部）即可。如果您无法在一个页面中完整显示全文内容（如分段），那么请将这段HTML放置在&lt;font color="#ff0000"&gt;每个部分&lt;/font&gt;的显要位置。&lt;/p&gt; &lt;p&gt;需要注意的是，上面这个链接从不同文章点过去时，所生成的HTML是不同的。因此，如果您要手动编辑这段HTML的话，则需要替换一下其中的一些部分。例如，如果您转载文章的地址是（如果无法获得之前的HTML，也可以直接使用下方的HTML代码，不过还请注意替换对应的URL）：&lt;a title="http://blog.zhaojie.me/2009/07/embarrassed-mvp.html" href="http://blog.zhaojie.me/2009/07/embarrassed-mvp.html"&gt;http://blog.zhaojie.me/2009/07/embarrassed-mvp.html&lt;/a&gt;，则所需的代码便是：&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;div xmlns&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: red"&gt;cc&lt;/span&gt;&lt;span style="color: blue"&gt;="http://creativecommons.org/ns#" &lt;/span&gt;&lt;span style="color: red"&gt;about&lt;/span&gt;&lt;span style="color: blue"&gt;="http://blog.zhaojie.me/2009/07/embarrassed-mvp.html"&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;a &lt;/span&gt;&lt;span style="color: red"&gt;rel&lt;/span&gt;&lt;span style="color: blue"&gt;="cc:attributionURL" &lt;/span&gt;&lt;span style="color: red"&gt;property&lt;/span&gt;&lt;span style="color: blue"&gt;="cc:attributionName" &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="http://zhaojie.me"&amp;gt;&lt;/span&gt;赵劼&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;a&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt; &lt;/span&gt;/ &lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;a &lt;/span&gt;&lt;span style="color: red"&gt;rel&lt;/span&gt;&lt;span style="color: blue"&gt;="license" &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="http://creativecommons.org/licenses/by/2.5/cn/"&amp;gt;&lt;/span&gt;CC BY 2.5&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;a&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;希望这篇文章能给您在转载老赵的文章时提供一定指引，避免发生一些不愉快的事情。更完整的协议内容，还请参考&lt;a href="http://creativecommons.org/licenses/by/2.5/cn/" title="Creative Commons Attribution 2.5 China Mainland License"&gt;署名 2.5 中国大陆&lt;/a&gt;许可协议。&lt;/p&gt;
&lt;p style="color:red"&gt;注：本文关闭所有评论。&lt;/p&gt;

&lt;style type="text/css"&gt;
h3#comments, div.feedbacknoitems, ol#commentList, div#comment1_toppager, div#comment_form, a.addcomment
{
    display:none;
}
&lt;/style&gt;

&lt;div class="jeffz_seo"&gt;
&lt;p&gt;IT168其实就是一个小偷，从各地窃取文章作为自己的“技术资源”。真佩服勤劳勇敢的编辑们，还真做的下去，你们不觉得惭愧吗？我刚才花了10分钟左右找出了我的部分文章（基本上只是6、7月份发布的），全部没有注明来源，有的使用cnbolg（请注意拼错的不是我）有的算是使用我的真名了，但是从来没有任何链接。&lt;/p&gt;&lt;!--p&gt;　　IT168的编辑们请注意了：别人的文章我暂时不关心，我为其他网站写的文章我也暂时不关心，但是请先把以下这些我在六、七月份写在博客上的文章注明来源，亦或是从你们的技术资源库中删除——其他文章我有空再去发掘。&lt;/p--&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612148.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612148.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612145.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612145.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612139.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612139.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612132.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612132.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612124.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612124.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612058.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612058.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612048.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612048.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612029.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612029.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612024.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612024.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0724/612/000000612020.shtml"&gt;http://tech.it168.com/a2009/0724/612/000000612020.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0723/611/000000611313.shtml"&gt;http://tech.it168.com/a2009/0723/611/000000611313.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0723/611/000000611310.shtml"&gt;http://tech.it168.com/a2009/0723/611/000000611310.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0723/611/000000611289.shtml"&gt;http://tech.it168.com/a2009/0723/611/000000611289.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0723/611/000000611276.shtml"&gt;http://tech.it168.com/a2009/0723/611/000000611276.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0720/608/000000608913.shtml"&gt;http://tech.it168.com/a2009/0720/608/000000608913.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0720/608/000000608904.shtml"&gt;http://tech.it168.com/a2009/0720/608/000000608904.shtml&lt;/a&gt; 
&lt;li&gt;&lt;a href="http://tech.it168.com/a2009/0720/608/000000608886.shtml"&gt;http://tech.it168.com/a2009/0720/608/000000608886.shtml&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a title="sicp" href="http://img.zhaojie.me/blog/168980/o_it168-hym.jpg" target="_blank"&gt;&lt;img class="floatRight" alt="sicp" src="http://img.zhaojie.me/blog/168980/o_it168-hym.jpg" width="150"&gt;&lt;/a&gt; 
&lt;p&gt;以上这些文章的链接接摘录自&lt;a href="http://archive.it168.com/user/%ba%fa%c3%fa%e6%ab/"&gt;某编辑的个人聚合页面&lt;/a&gt;（如右侧截图），部分链接似乎由于技术问题而暂时无法打开（现已正常），但是可以从搜索引擎（如Google，Bing）中搜索到。据说IT168如果被被人转载都会起诉的，哪怕别人留了出处，它自己转载别的就不吭声了（而且在剽窃的文章后面，居然还写着“本文版权属于it168，转载请注明出处”）。照这样看来，似乎值得玩一次真的。&lt;/p&gt;
&lt;p&gt;而且，从截图中也可以看到，他们转载的文章远不止这些。兄弟们是否值得一起来打场官司？如果有这方面经验过建议的朋友，也请留下您的看法。&lt;/p&gt;
&lt;/div&gt;</description>
      <comments>http://blog.zhaojie.me/2009/07/it168-thief.html#comments</comments>
      <pubDate>Sat, 25 Jul 2009 10:22:00 GMT</pubDate>
      <lastBuildDate>Sat, 25 Jul 2009 10:22:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/discussion/">思考讨论</category>
      <title>龙芯一二事（转载）</title>
      <link>http://blog.zhaojie.me/2009/06/1513077.html</link>
      <guid>http://blog.zhaojie.me/2009/06/1513077.html</guid>
      <description>&lt;p&gt;我不知道龙芯是否真是一个笑话。不过我也从一些在中科院计算所搞龙芯相关的朋友那里获得了一些信息（不是耳闻，而是一手信息）。这年头真假太难辨别，由于大伙儿对于例如gov或某些机构的某些做法的不满，导致即使是真的事情也变假了。龙芯从一开始其实就伴随着负面评价，从一开始的技术上的质疑，在技术上不知如何下手后，到政治方向上的反对等等。有时候我也不明白，&lt;font color="#ff0000"&gt;对于一个错误的东西，使用错误的方式去反对它，这种做法是否正确&lt;/font&gt;。&lt;/p&gt; &lt;p&gt;还是回到龙芯上吧，这次我转载的一些东西很显然是在做“解释”。可能某些朋友会说我五毛，但五毛就五毛吧。就当我只是把东西列举出来，大家一起判断。说实话，我也不知道究竟是正确不正确。在一个信息不对称的环境中，作为一个旁观者，我们究竟可以做出什么样的评价。说它好，理由何在？说它坏，难道也只是随口说说就可以了吗？&lt;/p&gt; &lt;h1&gt;为什么要购买MIPS的Architecture的License&lt;/h1&gt; &lt;p&gt;&lt;a href="http://www.newsmth.net/bbscon.php?bid=272&amp;amp;id=40516"&gt;http://www.newsmth.net/bbscon.php?bid=272&amp;amp;id=40516&lt;/a&gt;&lt;/p&gt; &lt;p&gt;龙芯系列处理器的整体结构设计，逻辑设计，RTL代码的编写，物理设计以及测试验证都是龙芯课题组多年的积累，自主完成。  &lt;p&gt;龙芯处理器采用MIPS指令系统。选择MIPS指令系统的重要的原因是出于市场考虑。MIPS公司不同于Intel、SUN和IBM，它不是IDM公司，自己并不生产销售芯片，而是以卖License和服务为营业范围，它不但不像Intel公司那样反对别人做兼容芯片，而是支持其他厂家做MIPS兼容芯片。世界上许多大公司，如生产路由器的CISCO、生产游戏机的SONY等都采用MIPS指令系统。MIPS芯片不仅用于SGI公司做高档工作站与服务器，而且是主流的高档嵌入式CPU，每年MIPS芯片销售量超过7000万片。包括Linux、Vxworks以及WinCE在内的操作系统都支持MIPS指令系统，MIPS的应用软件也非常丰富。  &lt;p&gt;MIPS的License授权是为数不多成功的处理器授权之一，目前包括AMD、ATI、NEC、LSI、IDT和ITE等在内的很多公司都购买了MIPS的License。MIPS的License分为Core和Architecture两个部分。Core的License主要是指由MIPS公司设计的MIPS兼容的处理器核，分为软核和硬核，购买这种IP一般授权费为几十万美元。购买Architecture的License主要是为了使用MIPS兼容的品牌以及通过加入MIPS兼容联盟使用该联盟中所有成员的专利（同时承诺自己的与MIPS相关的专利给该联盟成员免费使用），购买Architecture的License的费用一般在xxx美元左右。  &lt;p&gt;计算所已经完成对MIPS指令系统的专利分析，实现MIPS指令系统不侵犯MIPS公司的专利。但如果得不到MIPS公司的授权，龙芯处理器产品就不能使用“MIPS兼容（MIPS Compatible）”的标志，不利于龙芯处理器的推广。计算所的战略合作伙伴意法半导体公司已经购买MIPS的体系结构授权，计算所已经与意法半导体公司签署协议，龙芯处理器只要在意法半导体生产就可以使用MIPS兼容标志。但如果在别的厂家流片，仍然存在MIPS授权问题，购买MIPS公司的体系结构授权，可以彻底解决龙芯处理器的指令系统兼容问题。 &lt;h1&gt;看来很有必要科普，发一篇有关龙芯架构的深度分析&lt;/h1&gt; &lt;p&gt;&lt;a href="http://bbs.fudan.edu.cn/cgi-bin/bbs/bbstcon?board=Unix&amp;amp;file=M.1245400254.11BF5"&gt;http://bbs.fudan.edu.cn/cgi-bin/bbs/bbstcon?board=Unix&amp;amp;file=M.1245400254.11BF5&lt;/a&gt;&lt;/p&gt; &lt;p&gt;居然现在还有人在怀疑龙芯的真实性，只能惊讶于现在舆论的鼓吹能力和所谓爱国愤青的网络能量。看来十分有必要科普，技术上做得好不好是一回事，是不是在按照科学规律搞研发，且积累技术力量和经验是另一回事，在我看来龙芯至少走在一条正确的路上，或许走得很慢路很崎岖，但大方向是对的。特此转一篇深度分析龙芯2架构的文章。&lt;/p&gt; &lt;p&gt;（文章实在太长，不好转载，贴一个链接吧：&lt;a href="http://server.it168.com/a2009/0521/369/000000369202.shtml"&gt;http://server.it168.com/a2009/0521/369/000000369202.shtml&lt;/a&gt;）&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/06/1513077.html#comments</comments>
      <pubDate>Mon, 29 Jun 2009 03:58:00 GMT</pubDate>
      <lastBuildDate>Mon, 29 Jun 2009 03:58:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <title>正在构建一个新的版式</title>
      <link>http://blog.zhaojie.me/2009/05/new-template-minyx2-lite.html</link>
      <guid>http://blog.zhaojie.me/2009/05/new-template-minyx2-lite.html</guid>
      <description>&lt;p&gt;老赵对目前博客园中的模板都不太满意：样式单调，元素不够丰富，不容易Hack，不够“标准”，不够充分利用屏幕横向距离等等。因此和dudu商量后，准备为博客园新增一个模板。新模板以&lt;a href="http://themepreview.amazingwordpressthemes.com/"&gt;Minyx 2.0 Lite&lt;/a&gt;为蓝本进行一些调整，如把固定宽度修改为右边固定，左边自适应的满屏宽度，还有把字体设为更适合中文的样式等等。经过几个小时努力，结果如下图：&lt;/p&gt; &lt;h3&gt;&lt;/h3&gt; &lt;p&gt;&lt;a href="http://img.zhaojie.me/blog/168980/o_detai.png"&gt;&lt;img alt="新版式" src="http://img.zhaojie.me/blog/168980/r_detai.png"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;这个版式可以保证在1024宽度下没有横向滚动条，最佳浏览宽度为1280至1650，基本上适合目前主流显示器分辨率。此外定义了各种标准元素，如各级标题，图片嵌入，代码样式，列表，引用等等。左侧为文章主体，可以让读者打开后直接阅读。右侧分一大栏和两小栏，充分利用屏幕宽度展示更多内容。&lt;/p&gt; &lt;p&gt;看过老赵blog的朋友一定发现老赵对于博客的修改还是较为投入的，例如调整模块顺序，集成“相关文章”和Twitter等内容，不过使用起来还是觉得不够顺手。因此这个版式更重要的特点便是易于Hack，可以有充足及优雅的方式让用户调整自己的博客。具体方式还在思考，最终老赵也会以“教程”的方式来介绍这个版式的使用方法。&lt;/p&gt; &lt;p&gt;最后便是要移植到博客园的版式上了，希望会顺利——老赵对Minyx 2.0 Lite进行了较大幅度的修改，精简了许多HTML与样式，集成起来应该没有问题。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/05/new-template-minyx2-lite.html#comments</comments>
      <pubDate>Wed, 20 May 2009 12:55:00 GMT</pubDate>
      <lastBuildDate>Wed, 20 May 2009 12:55:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>令人失望的智器Smart Q5</title>
      <link>http://blog.zhaojie.me/2009/05/1447656.html</link>
      <guid>http://blog.zhaojie.me/2009/05/1447656.html</guid>
      <description>&lt;p&gt;前一段时间看到有人提到了“智器Smart Q5（以下简称Q5）”这个手持上网设备，从网上的介绍来看，几乎可以用“划时代”来形容了：4.3寸屏幕，1600万色，800*480分辨率，内置MS Office兼容的编辑器、电子书阅读器（支持pdf，chm等常用格式）和媒体播放器（支持rmvb，mp3，mp4，ape，flac等各种媒体格式），并且可以使用wifi，兰牙，并可外接edge网卡——而且只要900元！感兴趣的朋友们也可以去搜一下，相信您也会被吸引的。&lt;/p&gt; &lt;p&gt;老赵一直希望有一个手持设备可以随意自由地上网，以及在任何时间任何地点阅读电子书（能听音乐看电影自然更好了），因此Q5简直就是为老赵量身定做的设备嘛！于是周一兴匆匆地在淘宝上付款，预定——没有，直到周三晚才出货，于是今天（周五）老赵终于拿到了日思夜想的机器。&lt;/p&gt; &lt;p&gt;打开一看，颜色果然漂亮，分辨率高的惊人，不过……这个点击似乎有些困难，必须用力（自然是相对普通手机等触摸设备）才有反应——好吧，累就累点。那么就来看上网吧，连接wifi，连啊连……终于连上了，但是为什么信号那么差？始终就只有20-30%。当然我承认，如果紧靠路由器的话，的确也可以到90-100%，可惜只要距离10米左右信号质量就大幅度下降了，虽然这时候笔记本的的连接还是完美至极。打开浏览器，上百度，算是全中国最小也该顺畅的网站了吧，可惜一个字“慢”。这个慢不仅仅是网络原因，浏览器也非常慢，系统也一样。浏览器窗口在短短十几分钟内多次提示“无响应”，无论是放大/缩小字体，还是拖动滚动条都非常缓慢，几乎都赶上一桢一桢的显示了。老赵耐心地等，耐心地等……wifi终于断了。后来老赵又尝试了博客园、谷歌地图、Gmail，结果都是类似，想浏览一封邮件几乎是不可能完成的任务。这样的体验只能让老赵想到在泥塘里跌跌撞撞的感觉，这咋能叫做“冲浪”涅？&lt;/p&gt; &lt;p&gt;其实最大的还是运算能力和系统资源占用的问题。老赵发现，一开机之后，CPU就在90-100%。什么都不做，就看着任务管理器上的数字从来没有低于90过。当然，128M内存也已经占用大半了，开一个浏览器打开一个网站就更不用说了，你想多开几个Tab？老赵尝试过，还“全屏”了一下，可惜最终以Reset键首场。&lt;/p&gt; &lt;p&gt;好了，上网不行，那么看电子书吧，能接最大32G的SD卡这点很不错。考了一些pdf和chm进去，有普通的电子书，论文（即两栏式的），还有幻灯片。打开倒也正常，但还是很慢，很多页面要Loading好半天。然后最后又发现，4.3寸屏幕依旧太小，普通电子书在完整宽度的情况下勉强可以看清，但是如果是两栏的论文就根本无法接受了。那么好，放大一下，我们一栏一栏看——不过滚动条怎么不好使？这时候的确发现这个需要“用力”点击的触摸屏碍事了，每一次调整都要费尽，而且因为运算不过来，每个操作都需要1秒以上才有反馈，这怎能让人受得了？再者，例如一本500页的电子书，一屏只能看小半页，但是你又如何可以向下滚动一部分呢？我想除非有人能够在几厘米的高度里，把滚动条的拖动精确控制到“半个像素”，否则还真难以正常浏览电子书了。您可能会说，滚动条难道没有向下箭头吗？是啊，的确有，“用力”单击是会有一些滚动，但是如果你想要连续滚动因此按住不放的话，你会发现3秒钟后滚动条就到了整个的最底部了……最后尝试在pcmanfm中直接打开chm……很好，系统崩溃了——屡试屡崩，奇爽无比。&lt;/p&gt; &lt;p&gt;不过，我承认，看幻灯片的感觉还是不错的，一页一页，比较大，很清晰，而且色彩真的很漂亮。&lt;/p&gt; &lt;p&gt;Q5的操作系统是Ubuntu，GUI装的是Gnome，还能打开Terminal，到处看了看还真是非常标准的Linux操作系统，这点看来倒是非常诱人的。只可惜这个可用性实在太差，几乎差到了接近零的状况，让人不得不怀疑到底有谁会对这个机器感到满意。想想网上天花乱坠的介绍，反差还真是无比强烈。更惊奇的是，如果插着电源就无法关闭系统了，每次关闭后都会自动打开&lt;/p&gt; &lt;p&gt;还好老赵在淘宝上选择了7天退换，休息过后就去退了。&lt;/p&gt; &lt;p&gt;看来，老赵的需求在目前看来还是一个梦，有谁能帮老赵实现这个梦想吗？至少……我想看随时看电子书……&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/05/1447656.html#comments</comments>
      <pubDate>Fri, 01 May 2009 17:42:00 GMT</pubDate>
      <lastBuildDate>Fri, 01 May 2009 17:42:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/translation/">翻译引进</category>
      <category domain="http://blog.zhaojie.me/essential/">重中之重</category>
      <title>所有程序员都应该至少读上两遍的十篇论文</title>
      <link>http://blog.zhaojie.me/2009/03/1401259.html</link>
      <guid>http://blog.zhaojie.me/2009/03/1401259.html</guid>
      <description>&lt;p&gt;转载自刘江老师的博文《&lt;a href="http://blog.csdn.net/turingbook/archive/2009/03/01/3946421.aspx"&gt;所有程序员都应该至少读上两遍的十篇论文&lt;/a&gt;》。关于读论文的重要性我不多作解释，事实上我也解释不清，但是可以确定的是，论文让我感受到技术之美，是一件很惬意的事情。当然，我们不一定要读“前沿”的内容，但是一些经典的论文是不能错过的。&lt;/p&gt; &lt;hr&gt;  &lt;p&gt;今天（噢，应该是昨天了）图灵在北京搞了一次Ajax群英会，盛况空前。（会议实况下周整理一下，贴过来吧。）其间&lt;a href="http://www.turingbook.com/Books/ShowBook-332.aspx"&gt;《Erlang程序设计》&lt;/a&gt;的&lt;a href="http://erlang-china.org/"&gt;赵东炜&lt;/a&gt;说到读论文的重要性。我还附和说，其实许多名家在讲治学的时候都会讲到，要读自己领域里最经典的和最重要的论文。  &lt;p&gt;很巧，刚才从&lt;a href="http://www.reddit.com/r/programming/"&gt;Reddit&lt;/a&gt;上看到了题为“10 Papers Every Programmer Should Read (At Least Twice) ”的文章，打开&lt;a href="http://blog.objectmentor.com/articles/2009/02/26/10-papers-every-programmer-should-read-at-least-twice"&gt;链接&lt;/a&gt;一看，是我们&lt;a href="http://www.turingbook.com/Books/ShowBook-196.aspx"&gt;《修改代码的艺术》&lt;/a&gt;一书的作者Michael Feathers写的。他的那本书被称为&lt;a href="http://blog.csdn.net/turingbook/archive/2007/07/13/1688703.aspx"&gt;“近十年来最有影响的计算机图书”&lt;/a&gt;之一，可是在国内的关注并不太够，这是为什么呢？  &lt;p&gt;言归正传，看看是哪10篇论文入了Feathers大师的法眼吧：  &lt;ol&gt; &lt;li&gt;&lt;a href="http://sunnyday.mit.edu/16.355/parnas-criteria.html"&gt;On the criteria to be used in decomposing systems into modules&lt;/a&gt; – David Parnas  &lt;li&gt;&lt;a href="http://research.sun.com/techrep/1994/abstract-29.html"&gt;A Note On Distributed Computing&lt;/a&gt; – Jim Waldo, Geoff Wyant, Ann Wollrath, Sam Kendall  &lt;li&gt;&lt;a href="http://portal.acm.org/citation.cfm?id=365257"&gt;The Next 700 Programming Languages&lt;/a&gt; – P. J. Landin  &lt;li&gt;&lt;a href="http://portal.acm.org/citation.cfm?id=359579"&gt;Can Programming Be Liberated from the von Neumann Style?&lt;/a&gt; – John Backus  &lt;li&gt;&lt;a href="http://cm.bell-labs.com/who/ken/trust.html"&gt;Reflections on Trusting Trust&lt;/a&gt; – Ken Thompson  &lt;li&gt;&lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.6083"&gt;Lisp: Good News, Bad News, How to Win Big&lt;/a&gt; – Richard Gabriel  &lt;li&gt;&lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.29.363"&gt;An experimental evaluation of the assumption of independence in multiversion programming&lt;/a&gt; – John Knight and Nancy Leveson  &lt;li&gt;&lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.7565"&gt;Arguments and Results&lt;/a&gt; – James Noble  &lt;li&gt;&lt;a href="http://c2.com/doc/oopsla89/paper.html"&gt;A Laboratory For Teaching Object-Oriented Thinking&lt;/a&gt; – Kent Beck, Ward Cunningham  &lt;li&gt;&lt;a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.31.562"&gt;Programming as an Experience: the inspiration for Self&lt;/a&gt; – David Ungar, Randall B. Smith &lt;/li&gt;&lt;/ol&gt; &lt;p&gt;这里面文章的作者大牛如云啊，图灵奖得主、IEEE和ACM的Fellow。当然，还有Beck和Cunningham这样的实干家（没有听说过？面壁十天。XP、设计模式、重构、JUnit甚至Wiki都是他们搞出来的啊。）  &lt;p&gt;Feathers的文章里还有这些论文的摘要，等有时间我把它们都翻译出来。  &lt;p&gt;这里链接有的不能直接访问，因为它们都是学术杂志文章，不开放的。是不是因为这个，Reddit上最热的文章变成了&lt;a href="http://www.reddit.com/r/programming/comments/80zae/httpportalacmorg_should_be_free/"&gt;http://portal.acm.org Should be free&lt;/a&gt;呢？  &lt;p&gt;Feathers的文章显然成了这几天网上的热门话题，我们另外一本已经获得版权的书《SOA Patterns》（Manning，2009）的作者Arnon Rotem-Gal-Oz受他启发，写了&lt;a href="http://www.rgoarchitects.com/nblog/2009/02/27/10PapersEverySoftwareArchitectShouldReadAtLeastTwice.aspx"&gt;“所有架构师都应该至少读上两遍的十篇论文”&lt;/a&gt;：  &lt;p&gt;1. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fresearch.microsoft.com%2fen-us%2fum%2fpeople%2flamport%2fpubs%2fbyz.pdf"&gt;The Byzantine Generals Problem&lt;/a&gt; (1982) by Leslie Lamport, Robert Shostak and Marshall Pease&lt;br&gt;2. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fwww.u.arizona.edu%2f%257Erubinson%2fcopyright_violations%2fGo_To_Considered_Harmful.html"&gt;Go To statements considered harmfull&lt;/a&gt; (1968) - by Edsger W. Dijkstra &lt;br&gt;3.&lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fresearch.sun.com%2ftechrep%2f1994%2fabstract-29.html"&gt; A Note on Distributed Computing&lt;/a&gt; (1994) - by Samuel C. Kendall, Jim Waldo, Ann Wollrath and Geoff Wyant &lt;br&gt;4. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fwww.laputan.org%2fmud%2f"&gt;Big Ball of Mud&lt;/a&gt; (1999) - Brian Foote and Joseph Yoder &lt;a href="http://www.rgoarchitects.com/nblog/2007/11/28/BigBallOfMudAndOtherArchitecturalDisastersNot.aspx"&gt;&lt;br&gt;&lt;/a&gt;5. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fwww.lips.utexas.edu%2fee382c-15005%2fReadings%2fReadings1%2f05-Broo87.pdf"&gt;No Silver Bullet Essence and Accidents of Software Engineering&lt;/a&gt; (1987) - Frederick P. Brooks &lt;br&gt;6. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fwww.objectmentor.com%2fresources%2farticles%2focp.pdf"&gt;The Open Closed Principle&lt;/a&gt; (1996) - Robert C. Martin (Uncle Bob) &lt;br&gt;7. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fstandards.ieee.org%2freading%2fieee%2fstd_public%2fdescription%2fse%2f1471-2000_desc.html"&gt;IEEE1471-2000 A recommended practice for architectural description of software intensive systems&lt;/a&gt; (2000) &lt;br&gt;8. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fciteseerx.ist.psu.edu%2fviewdoc%2fsummary%3fdoi%3d10.1.1.33.411"&gt;Harvest, Yield, and Scalable Tolerant Systems&lt;/a&gt; (1999) Armando Fox, Eric A. Brewer &lt;br&gt;9. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fwww.cs.cmu.edu%2fafs%2fcs%2fproject%2fvit%2fftp%2fpdf%2fintro_softarch.pdf"&gt;An Introduction to Software Architecture&lt;/a&gt; (1993) - David Garlan and Mary Shaw &lt;br&gt;10. &lt;a href="http://www.rgoarchitects.com/nblog/ct.ashx?id=ee9b28a4-7f61-4d7b-8796-b82420097c96&amp;amp;url=http%3a%2f%2fmartinfowler.com%2fieeeSoftware%2fwhoNeedsArchitect.pdf"&gt;Who Needs an Architect?&lt;/a&gt; (2003) Martin Fowler  &lt;p&gt;注意到了吗，其中的第3篇是Feathers也推荐的。  &lt;p&gt;更有意思的是，我们大家熟悉的Robert Martin大叔 [也是我们图灵的作者呵呵，&lt;a href="http://www.turingbook.com/Books/ShowBook-220.aspx"&gt;《敏捷软件开发》（C#版）&lt;/a&gt;，什么，你搞.NET的居然没有读过？面壁十天。] 也因此写了&lt;a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings"&gt;blog&lt;/a&gt;。原来有位叫David的同学在Feathers的blog下说了几句不靠谱的话，把一向脾气很好的Bob大叔也激怒了。David小子说：“你咋不直接给出PDF呢？要是这些文章真的重要，应该免费读到不是？瞧你那口气，牛X得不行，真让人不爽。得了您吧。” 说实话，这口气咋让我觉得像是咱同胞呢……瀑布汗啊。  &lt;p&gt;Bob大叔的回复发人深省。他说，你们知道这篇文章以及其中提到的论文有多重要吗？Feathers同学读了成百上千篇论文，然后向你介绍其中最好的10篇！&lt;strong&gt;人家把金砖放在你眼前，你却说太重了，我拿不动。&lt;/strong&gt;笨蛋啊，蠢材啊！  &lt;p&gt;他接着说：“我们是自食其力而且为自己的职业负责的技术人员呢，还是指望爹妈来擦屁股的小屁孩？是你，而不是别人，要为你自己的职业负责。你的老板可没有责任管这些。提升自己的职业水平不应该指望老板。你不能指望老板给你买书（如果他们真能这样当然好，但是这不是他们的义务）。老板不买，你自己买啊！老板没有责任教你学习新语言。如果他们能送你去培训当然好，但是如果他们不送，你要自己学啊！  &lt;p&gt;“我非常忧虑，我们的福利文化已经制造出一大批喜欢哭兮兮娘娘腔的程序员，他们居然认为必须为有版权的文章花钱是不公平的。（什么？还要我出钱？那是老板的事儿！那是我老师的事儿！那是Michael Feathers的事儿！他们要想我成为好的程序员，可别指望我出钱去读那些文章，也别指望我在Google里搜索文章，他们最好到我的办公室格子里来，哦，上午9点到10点吧，一边轻捋我的头发，一边把文章读给我听！）  &lt;p&gt;“请记住，这世界可不欠你的。老板也不欠你。Michael Feathers更不欠你。”  &lt;p&gt;（沉思十分钟……）&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/03/1401259.html#comments</comments>
      <pubDate>Mon, 02 Mar 2009 02:29:00 GMT</pubDate>
      <lastBuildDate>Mon, 02 Mar 2009 02:29:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <title>QCon北京大会，3月15日前购票享受7.5折优惠</title>
      <link>http://blog.zhaojie.me/2009/02/1393836.html</link>
      <guid>http://blog.zhaojie.me/2009/02/1393836.html</guid>
      <description>&lt;p&gt;&lt;strong style="color:red;"&gt;如果有朋友个人或团体需要的话可以联系我。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;距离&lt;a href="http://www.qconbeijing.com"&gt;QCon全球企业开发大会北京站&lt;/a&gt;（4月7~9日）还有2个月的时间，这次的会议包括6大主题和30多位知名讲师，为你提供一场丰富的培训和绝佳的学习机会。&lt;b&gt;&lt;a href="http://www.qconbeijing.com/Reg.aspx"&gt;现在报名&lt;/a&gt;即可享受7.5折优惠，节省700元。&lt;/b&gt; &lt;p&gt;&lt;a href="http://qcon.infoq.com"&gt;QCon大会&lt;/a&gt;的目标是为企业软件开发领域提供技术架构、团队领导和项目管理等深入技术内容的会议。这也意味着会议的内容并不局限在商业和流行技术上，同时它会提供最佳实践和相关经验，为你当前和未来的项目提供直接的帮助。今年&lt;a href="http://www.qconbeijing.com"&gt;QCon北京站大会&lt;/a&gt;包含了6个专题，比如： &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=19"&gt;Java：企业级Java开发&lt;/a&gt;&lt;/b&gt;——毛新生主持&lt;br&gt;本主题将主要讨论Java语言和平台在企业级软件开发中的应用，包括服务器端、客户端等，以及Java语言的最新发展趋势，比如JRuby等。 &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=20"&gt;Agile：敏捷，在路上&lt;/a&gt;&lt;/b&gt;——李剑主持&lt;br&gt;在本主题中，来自各领域有多年实践经验的项目管理人士将与大家一起讨论他们的最佳实践。 &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=21"&gt;Cloud Computing：云计算，下一代架构&lt;/a&gt;&lt;/b&gt;——孟岩主持&lt;br&gt;与过去市面上所出现的许多热门名词不同，云计算在一出现就获得了厂商和开发人员的认可，比如Amazon的EC2和S3，比如Salesforce的在线CRM，比如阿里巴巴的商务云等，还比如InfoQ自己的视频就是用的Amazon的云服务等。 &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=22"&gt;Case Studies：网站架构案例分析&lt;/a&gt;&lt;/b&gt;——冯大辉主持&lt;br&gt;你一定想知道那些知名网站背后的架构师是如何设计和构建这些产品的，比如eBay、支付宝、51.com、搜狐、豆瓣等。 &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=23"&gt;Architect：设计优良的架构&lt;/a&gt;&lt;/b&gt;——周爱民主持&lt;br&gt;你如何带领团队实现健壮和可扩展的架构？我们一起来聆听这些架构领域领导者在设计架构和成为优秀架构师之路上的经验分享吧。 &lt;p&gt;&lt;b&gt;&lt;a href="http://www.qconbeijing.com/ShowNews.aspx?id=24"&gt;RIA：炫富互联网应用&lt;/a&gt;&lt;/b&gt;——吕德维主持&lt;br&gt;Dojo Toolkit的作者Dylan Shiemann、具有丰富的RIA实践经验的群硕公司技术总监邵荣、以及Cynergy系统公司执行总监和台湾Macromedia用户组发起人吕德维是如何理解RIA技术的？ &lt;p&gt;7.5折的优惠期截止到3月15日，&lt;a href="http://www.qconbeijing.com/Reg.aspx"&gt;价格为2,100元&lt;/a&gt;。如果你想团购门票，请直接邮件至&lt;a href="mailto:qcon&amp;#64;cn.infoq.com"&gt;qcon&amp;#64;cn.infoq.com&lt;/a&gt;或者电话010-51385937。更多关于QCon过往大会的信息，可以访问&lt;a href="http://www.infoq.com/cn/qcon"&gt;QCon大会特别专题&lt;/a&gt;。 &lt;p&gt;本次&lt;a href="http://www.qconbeijing.com"&gt;QCon北京站大会&lt;/a&gt;的讲师包括： &lt;ul&gt; &lt;li&gt;Rod Johnson——Spring创始人，Java和Java EE开发领域世界级权威  &lt;li&gt;Martin Fowler——&lt;a href="http://www.china-pub.com/34707"&gt;《分析模式》&lt;/a&gt;和&lt;a href="http://www.china-pub.com/12901"&gt;《重构》&lt;/a&gt;等书的作者，敏捷宣言缔造者，ThoughtWorks首席科学家  &lt;li&gt;Randy Shoup——&lt;a href="http://www.ebay.com/"&gt;eBay&lt;/a&gt;高级架构师  &lt;li&gt;Jeff Bar——&lt;a href="http://www.amazon.com/"&gt;Amazon&lt;/a&gt;公司云计算战略师  &lt;li&gt;Dylan Shiemann——&lt;a href="http://www.dojotoolkit.org/"&gt;Dojo Tookit&lt;/a&gt;创始人  &lt;li&gt;Henrik Kniberg——&lt;a href="http://www.infoq.com/cn/minibooks/scrum-xp-from-the-trenches"&gt;《硝烟中的Scrum和XP》&lt;/a&gt;作者  &lt;li&gt;Floyd Marinescu——《EJB模式设计》作者、&lt;a href="http://www.infoq.com"&gt;InfoQ&lt;/a&gt;和&lt;a href="http://www.theserverside.com"&gt;TheServerSide&lt;/a&gt;创始人  &lt;li&gt;毛新生——IBM中国开发中心Web 2.0首席架构师  &lt;li&gt;李伟——西门子中国研究院软件与工程中心首席系统架构咨询顾问  &lt;li&gt;周爱民——&lt;a href="http://www.china-pub.com/34356"&gt;《大道至简》&lt;/a&gt;和JS语言精粹等图书作者，盛大前高级架构师  &lt;li&gt;高焕堂——台湾软件架构设计大师，“台湾OO技术教父级代表人物”  &lt;li&gt;洪强宁——&lt;a href="http://www.douban.com"&gt;豆瓣网&lt;/a&gt;技术总监  &lt;li&gt;等等…… &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;如果你是厂商，有意支持本次大会，请邮件至&lt;a href="mailto:sponsor&amp;#64;cn.infoq.com"&gt;sponsor&amp;#64;cn.infoq.com&lt;/a&gt;或者电话010-51385937；如果你是媒体或者技术社区，有意参与本次大会的报道，请邮件至&lt;a href="mailto:media&amp;#64;cn.infoq.com"&gt;media&amp;#64;cn.infoq.com&lt;/a&gt;或者电话010-89880682；如果你是学生，有意成为本次大会的志愿者，或者有任何和QCon北京站大会相关的问题，请邮件至&lt;a href="mailto:qcon&amp;#64;cn.infoq.com"&gt;qcon&amp;#64;cn.infoq.com&lt;/a&gt;。我们期待你的参与，近距离分享国际技术专家的观点和经验。 &lt;p&gt;&amp;nbsp; &lt;p&gt;广告时间，好东西。 &lt;p&gt;&lt;a title="http://www.infoq.com/cn/news/2009/02/qcon-beijing-second" href="http://www.infoq.com/cn/news/2009/02/qcon-beijing-second"&gt;http://www.infoq.com/cn/news/2009/02/qcon-beijing-second&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="color:red;"&gt;如果有朋友个人或团体需要的话可以联系我。&lt;/strong&gt;&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/02/1393836.html#comments</comments>
      <pubDate>Thu, 19 Feb 2009 04:27:00 GMT</pubDate>
      <lastBuildDate>Thu, 19 Feb 2009 04:27:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <title>媒体的春秋笔法</title>
      <link>http://blog.zhaojie.me/2009/01/1380542.html</link>
      <guid>http://blog.zhaojie.me/2009/01/1380542.html</guid>
      <description>&lt;p&gt;刚才看了博客园的新闻，发现了一点非常有趣的东西。两篇新闻分别描述分析了微软和谷歌两个公司去年第四季度的财报。老赵仔细对比了两者的内容，稍微做了一点归纳：&lt;/p&gt; &lt;ul&gt; &lt;li&gt;微软：季营收166.3亿美元，同比增长2%；净利润41.7亿美元，同比下滑11%。&lt;/li&gt; &lt;li&gt;谷歌：季营收57亿美元，同比增长18%，远不及以往50%的增长率；净利润为3.82亿，净利润同比下降。&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;从这些数字上看，谁的“效益”比较好？我是看不出来，评价为“各有千秋”该不为过。不过我们再来瞧瞧两者的标题：&lt;/p&gt; &lt;ul&gt; &lt;li&gt;微软：&lt;a href="http://news.cnblogs.com/n/44537/"&gt;微软第二财季净利润同比下滑11%&lt;/a&gt;&lt;/li&gt; &lt;li&gt;谷歌：&lt;a href="http://news.cnblogs.com/n/44535/"&gt;谷歌第四季度盈利超分析师预期&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;一直说谷歌是媒体的宠儿，果不其然。&lt;/p&gt; &lt;p&gt;一直说微软擅使FUD，我倒觉微软一直在遭受FUD。&lt;/p&gt; &lt;p&gt;大家口水起来吧。大过年的，热闹点才是。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2009/01/1380542.html#comments</comments>
      <pubDate>Fri, 23 Jan 2009 12:08:00 GMT</pubDate>
      <lastBuildDate>Fri, 23 Jan 2009 12:08:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/discussion/">思考讨论</category>
      <title>我们到底该怎么做精华集</title>
      <link>http://blog.zhaojie.me/2008/05/1204424.html</link>
      <guid>http://blog.zhaojie.me/2008/05/1204424.html</guid>
      <description>&lt;p&gt;博客园要做精华集，老赵觉得很有意思。老赵被分配到的工作是ASP.NET AJAX和ASP.NET MVC。不过事实上老赵想搞得东西很多，还有ASP.NET、.NET 3.5也想参一腿等等。不过这篇文章想和大家讨论的并不是计划，因为有些东西老赵还没有确定，所以现在只是来谈谈一些想法。&lt;/p&gt; &lt;ul&gt; &lt;li&gt;博客园为什么要推精华集？自然是为了总结博客园的资源，扩大博客园的影响力。&lt;/li&gt; &lt;li&gt;读者为什么要买这本精华集？收藏——那么只能是自家博友，数量有限。普通的读者买书的目的，自然是为了获得价值。&lt;/li&gt; &lt;li&gt;价值哪里来？自然是博客里来。&lt;/li&gt; &lt;li&gt;为什么读者选择我们的精华集，而不是其他书？因为我们的精华集有其他书比不上的优势。&lt;/li&gt; &lt;li&gt;我们有什么优势？我们是社区，我们的优势就是社区的优势。&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;最近老赵思维混乱，其实我就想强调一点，那就是我们应该“依靠社区优势，体现社区特点，作一本社区的精华集”。“符合社区特色”必须是入选精华集的文章的首要条件。否则比系统地由潜入深，很难超越市面上那些“从入门到精通”的书，读者为什么要买？社区的特色就是“杂”，“全”，“超脱”，“标新立异”，“个人风格”以及“思想碰撞”等等。在我看来，能被收入精华集的必须有作者个人的观点，脱离官方介绍和文档之外，注重技术的延伸与解决问题的分析或高级技巧。注重作者对于问题的理解，文章内容不一定能让所有人同意，但是要能够引起读者思考。&lt;/p&gt; &lt;p&gt;博客园的有大量的ASP.NET文章，但是如果按照这个标准筛选，能入选的内容感觉也非常有限。这个原因是自然是多方面的。例如首先大量的翻译、推荐、介绍等内容自然被排除再外。其次，大量的成为系列的内容我觉得不适合录入“精华集”——即使的确写的不错。例如一些朋友的控件开发系列，我觉得并没有超越市场上已有的书籍。而如果绝对是系列的精品，则更适合独立成书。再者，一些的确有思想和作者风格的文章，由于在写博文时比较随意，因此虽然内容不错，值得深入，但是也不适合收入“精品集”。&lt;/p&gt; &lt;p&gt;说道这点，其实我很羡慕博客园设计模式类文章，几大高人原创文章泛滥，思想碰撞激烈，你往我来，不亦乐乎。而在ASP.NET领域则似乎困难许多，可能是技术的特点吧。&lt;/p&gt; &lt;p&gt;其实有一些书能够作为我们的范例，例如著名的《&lt;a href="http://www.amazon.com/Joel-Software-Occasionally-Developers-Designers/dp/1590593898/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1211385786&amp;amp;sr=8-1"&gt;Joel on Software&lt;/a&gt;》（《&lt;a href="http://www.amazon.com/More-Joel-Software-Pro-Spolsky/dp/1430209879/ref=pd_bbs_sr_5?ie=UTF8&amp;amp;s=books&amp;amp;qid=1211385786&amp;amp;sr=8-5"&gt;More from Joel on Software&lt;/a&gt;》也即将出版）。其文章来源就是作者的博客，对于他的每个观点都有同意的和不同意的人，但是它的文章内容几乎完全满足我上面提到的所有要求：有个人风格，能引发人们思考。类似的还有国内的洪波（即Keso）。如果说Joel on Software与技术的并不十分密切的话，则《&lt;a href="http://www.amazon.com/ASP-NET-2-0-Hacks-David-Yack/dp/0764597663/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1211369552&amp;amp;sr=8-1"&gt;ASP.NET 2.0 MVP Hacks&lt;/a&gt;》就是一本典型的技术类书籍，感兴趣的朋友可以去看看目录什么的，里面的文章在当年看起来也是比较不错的。&lt;/p&gt; &lt;p&gt;大家给老赵点建议吧，我们该怎么做精华集。&lt;/p&gt;&lt;div class="blog_topic"&gt;所属话题：&lt;a href="http://www.cnblogs.com/topic/16/" target="_blank"&gt;博客园精华集&lt;/a&gt;&lt;/div&gt;</description>
      <comments>http://blog.zhaojie.me/2008/05/1204424.html#comments</comments>
      <pubDate>Thu, 22 May 2008 01:35:00 GMT</pubDate>
      <lastBuildDate>Thu, 22 May 2008 01:35:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/discussion/">思考讨论</category>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <title>推荐一篇文章：火星人的耳机</title>
      <link>http://blog.zhaojie.me/2008/03/martian-headsets.html</link>
      <guid>http://blog.zhaojie.me/2008/03/martian-headsets.html</guid>
      <description>&lt;P&gt;大名鼎鼎的Joel Spolsky最近写了一篇很有趣的文章《Martian Headsets》。写这篇文章的起因是IE8的推出，这让Joel忽然有兴趣从各个角度讨论Web标准之争的各个方面，比如缘由，现状，以及用户的反应等等。非常值得一看。&lt;/P&gt;
&lt;P&gt;原文链接：&lt;A title=http://www.joelonsoftware.com/items/2008/03/17.html href="http://www.joelonsoftware.com/items/2008/03/17.html"&gt;http://www.joelonsoftware.com/items/2008/03/17.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;翻译链接：&lt;A title=http://luoshengblog.cn/archives/martian-headsets href="http://luoshengblog.cn/archives/martian-headsets"&gt;http://luoshengblog.cn/archives/martian-headsets&lt;/A&gt;&lt;/P&gt;</description>
      <comments>http://blog.zhaojie.me/2008/03/martian-headsets.html#comments</comments>
      <pubDate>Sun, 23 Mar 2008 15:12:00 GMT</pubDate>
      <lastBuildDate>Sun, 23 Mar 2008 15:12:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <category domain="http://blog.zhaojie.me/asp-net/">ASP.NET</category>
      <title>MIX 2008与ASP.NET MVC框架的Road-Map</title>
      <link>http://blog.zhaojie.me/2008/02/mix08-asp-net-mvc-framework-road-map-update.html</link>
      <guid>http://blog.zhaojie.me/2008/02/mix08-asp-net-mvc-framework-road-map-update.html</guid>
      <description>&lt;P&gt;ScottGu同学最近在Blog上发布了一些有关&lt;A href="http://visitmix.com/2008/default.aspx" target=_blank mce_href="http://visitmix.com/2008/default.aspx"&gt;MIX 2008&lt;/A&gt;和ASP.NET MVC框架的消息。&lt;/P&gt;
&lt;P&gt;话说2007的视频我还没有看多少，2008又要出来了。在每年的MIX大会上总有一些东西被微软力推，比如06年的ASP.NET AJAX（当时还是Atlas，如果没有记错的话），07年的Silverlight，那么在08年的MIX大会中又会重视什么呢？Scott在&lt;A href="http://weblogs.asp.net/scottgu/archive/2008/01/31/mix08.aspx" target=_blank mce_href="http://weblogs.asp.net/scottgu/archive/2008/01/31/mix08.aspx"&gt;这篇文章&lt;/A&gt;中给了我们一些选项：&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IE 8 &lt;/LI&gt;
&lt;LI&gt;IIS 7.0 &lt;/LI&gt;
&lt;LI&gt;ASP.NET (including ASP.NET 3.5, ASP.NET AJAX, ASP.NET MVC, and ASP.NET Dynamic Data)&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;VS 2008 and Expression Studio &lt;/LI&gt;
&lt;LI&gt;WPF &lt;/LI&gt;
&lt;LI&gt;Silverlight 2 &lt;/LI&gt;
&lt;LI&gt;And much more....&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;按照过去的经验，我估计最受关注的应该还是ASP.NET系列的内容。微软的ASP.NET团队目前手中的任务其实不少，有许许多多大大小小的框架/组件需要去开发和完善——不过只要有一个东西获得成功并受到业界广泛使用，那么他们的目的就达到了。微软那么多牛人毕竟不是吃干饭的。&lt;/P&gt;
&lt;P&gt;在ASP.NET系列中最受社区（或者还是微软）重视的应该就是ASP.NET MVC框架了，它是ASP.NET系列内容中唯一能够被称为框架的新玩意儿——ASP.NET AJAX已经不新了。Scott也在不久前发布了&lt;A href="http://weblogs.asp.net/scottgu/archive/2008/02/12/asp-net-mvc-framework-road-map-update.aspx" target=_blank mce_href="http://weblogs.asp.net/scottgu/archive/2008/02/12/asp-net-mvc-framework-road-map-update.aspx"&gt;有关ASP.NET MVC框架的最新消息&lt;/A&gt;，其主要内容就是谈到了APS.NET MVC会为几周后的MIX08发布一个“ASP.NET MVC Framework MIX 08 Edition”——呵呵，这名字是我乱取的，其实应该叫做“ASP.NET MVC MIX Preview Release”，从文章内容上看改动不小，而且似乎价值颇大：&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;STRONG&gt;ASP.NET MVC Framework能够在Partial Trust级别中运行了：&lt;/STRONG&gt;还记得ASP.NET AJAX遭遇虚拟主机时的状况吗？ASP.NET AJAX由于必须在Full Trust级别下才能运行，所以只能让虚拟主机服务器商在服务器上安装ASP.NET AJAX了。ASP.NET MVC Framework能够在Partial Trust级别中运行，这意味着我们只需要将相关dll复制到bin目录下去即可。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;对于URL Routing等基础设施有了极大的增强：&lt;/STRONG&gt;文章中仅提到了能够更好地支持RESTful的URL。我有时候在想，ASP.NET MVC的URL Routing其实体现的是“约定胜于配置”，如果要“强大”的功能，是不是又需要相当程度的配置了呢？由于没有谈到更详细的内容，我们只能拭目以待了。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;增强VS 2008的支持：&lt;/STRONG&gt;Visual Studio其实是个平台，扩展性极强，微软为了吸引更多开发人员，让自己的东西更有竞争力自然需要借助于强大工具的支持。说起来创建项目时的模板也已经是一种支持了，从文章内容看来，至少还会出现一个Test Project的模版，不过似乎UI简陋了些——还好，毕竟只是个Preview。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;去除了ControllerAction自定义属性：&lt;/STRONG&gt;在上一个CTP中，Controller的Action需要使用ControllerActionAttribute这个自定义属性进行标记，而今后则不需要这个东西了。这个改变据说是因为社区的反馈，不过我倒并不介意这个。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Filter Attribute&lt;/STRONG&gt;&lt;STRONG&gt;：&lt;/STRONG&gt;新功能。自定义属性是.NET中非常强大的一个特性，代码实现可以非常漂亮。例如按照文章的说法，ASP.NET MVC将会使Controller和Action支持可扩展Filter机制，而框架本身也会通过这个机制实现一些常用的功能，比如文章中提到的缓存和身份验证——不得不说，这个真的很强。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;内建HTML Helpers：&lt;/STRONG&gt;其实就是把原本在MVC Toolkit里的类库集成到嫡系框架中了。当然，肯定还会增加新的Helper类和方法。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;大量重构和设计上的改进：&lt;/STRONG&gt;这无疑会使ASP.NET MVC框架变成一个很好的学习材料——以及很多技术作家写作的素材。刚才搜了一下有关ASP.NET 3.5的书籍，发现已经有不少了，不过还缺少几个重要的系列，例如Wrox的Professional系列和O'Reilly的Essential XXX和Programming XXX等。每项技术出现之后的百家争鸣总归是不会少的，不过那么多书总让我无从下手，所以我现在一般只看MSDN和社区里的文章。&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;ASP.NET MVC框架将会公布源代码，可供调试、编译和修补：&lt;/STRONG&gt;其实我更关心的是ASP.NET MVC的实现，例如它是如何在Partial Trust级别下运行的。公布源代码之后直接解决了看代码的问题，当然调试也不在话下。至于修补，按照Scott的说法，微软肯定不会允许第三方将ASP.NET MVC修改后再发布，因此真正的Patch也只会由微软进行。公布源代码的目的是方便用户发现问题之后能够自行修补，或者有啥需要自行扩展——“悄悄的进村，打枪的不要”。&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;就先总结到这里吧。&lt;/P&gt;
&lt;P&gt;不过我比较奇怪，为什么没有提到.NET并行库，莫非还“拿不出手”？其实我很喜欢那个东西……&lt;/P&gt;</description>
      <comments>http://blog.zhaojie.me/2008/02/mix08-asp-net-mvc-framework-road-map-update.html#comments</comments>
      <pubDate>Wed, 13 Feb 2008 09:38:00 GMT</pubDate>
      <lastBuildDate>Wed, 13 Feb 2008 09:38:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <title>编写兼容多浏览器的JavaScript代码——微软JScript团队JScript Deviations from ES3草案</title>
      <link>http://blog.zhaojie.me/2007/11/947511.html</link>
      <guid>http://blog.zhaojie.me/2007/11/947511.html</guid>
      <description>&lt;P&gt;实话说，常见的JavaScript在不同浏览器的区别并非那么难以处理，只要有一定JavaScript开发经验就会大体知道该如何“回避”某些问题。不过这份文档还是仔细比对了ECMAScript 3标准以及JavaScript在IE、FireFox、Safari、Opera四款浏览器中的实现，希望能够对JavaScript开发人员有帮助——区别的确很大，之前还真的没有想到这些。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/jscript/archive/2007/10/29/ecmascript-3-and-beyond.aspx"&gt;http://blogs.msdn.com/jscript/archive/2007/10/29/ecmascript-3-and-beyond.aspx&lt;/A&gt;&lt;/P&gt;</description>
      <comments>http://blog.zhaojie.me/2007/11/947511.html#comments</comments>
      <pubDate>Fri, 02 Nov 2007 14:45:00 GMT</pubDate>
      <lastBuildDate>Fri, 02 Nov 2007 14:45:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <title>意外得到了一个免费的HttpWatch Professional的License</title>
      <link>http://blog.zhaojie.me/2007/07/815964.html</link>
      <guid>http://blog.zhaojie.me/2007/07/815964.html</guid>
      <description>&lt;p&gt;不久前在&lt;a href="http://www.codeproject.com" target="_blank"&gt;Code Project&lt;/a&gt;上写了一篇文章《&lt;a href="http://www.codeproject.com/useritems/ScriptMethodClientCache.asp" target="_blank"&gt;Client-side caching for script methods access in ASP.NET AJAX&lt;/a&gt;》，提到了&lt;a href="http://www.httpwatch.com/" target="_blank"&gt;HttpWatch&lt;/a&gt; &lt;a href="http://www.httpwatch.com/editions.htm" target="_blank"&gt;Basic Edition&lt;/a&gt;的使用。没想到今天HttpWatch开发公司的一个员工写了封邮件给我，说对于我在文章里提到HttpWatch表示感谢，并且如果愿意给我一个免费的HttpWatch Professional Edition的License。License不一会儿就寄来了，同时他告诉我，HttpWatch 5.0将在8月6日发布，我的License同样适用。&lt;/p&gt; &lt;p&gt;虽然已经有了免费的Fiddler，但是HttpWatch在某些时候还是真的很方便。而且查了一下，这个License价值249美金，真是天上掉下来的馅饼啊，呵呵。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2007/07/815964.html#comments</comments>
      <pubDate>Thu, 12 Jul 2007 12:43:00 GMT</pubDate>
      <lastBuildDate>Thu, 12 Jul 2007 12:43:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/translation/">翻译引进</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>第17届Jolt Award终于出炉了</title>
      <link>http://blog.zhaojie.me/2007/03/jolt-2007.html</link>
      <guid>http://blog.zhaojie.me/2007/03/jolt-2007.html</guid>
      <description>&lt;p style="font-size: 10pt; font-family: verdana"&gt;第17届Jolt Award终于&lt;a href="http://www.joltawards.com/2007"&gt;出炉&lt;/a&gt;了，再这之前，我们再来回顾一下&lt;a href="http://blog.zhaojie.me/2007/01/627575.html"&gt;候选选手们&lt;/a&gt;。&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;每一届Jolt Award都是重要的参考，其中的每个奖项都可以是过去一年中的顶级作品，而对于我这种嗜书如命的“书痴”自然不会放过Jolt大奖中评选出来的好书，每年的Jolt Winner和部分Productivity Winner的书我都会从国外购买原版，手不释卷，心情也会相当愉快。不过我在想，放眼望去Jolt Award中尽是美国货，不论书籍或是别的产品。什么时候能够出现中国人的身影呢？&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;与去年相比，微软公司推出的产品收获少了很多——不过，其实应该这么说，Jolt 2006中微软实在太过风光了。&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 15pt; font-family: verdana; text-align: center"&gt;&lt;u&gt;&lt;strong&gt;BOOKS GENERAL&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt; &lt;p style="font-size: 11pt; font-family: verdana; text-align: center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Jolt Winner&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana; text-align: center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Agile Software Development: The Cooperative Game&lt;/strong&gt;&amp;nbsp;by Alistair Cockburn (Addison-Wesley Professional)&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana; text-align: center"&gt;&lt;img alt="1" src="http://img.zhaojie.me/blog/Jolt2007/1.jpg"&gt;&lt;br&gt;&lt;b&gt;Agile Software Development&lt;/b&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 11pt; font-family: verdana; text-align: center"&gt;&lt;strong&gt;Productivity Winners&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Catastrophe Disentanglement&lt;/strong&gt; by E. M. Bennatan (Addison-Wesley Professional) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Practices of an Agile Developer&lt;/strong&gt; by V. Subramaniam and A. Hunt (Pragmatic Bookshelf) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Software Estimation Demystifying&lt;/strong&gt; the Black Art by Steve McConnell (Microsoft Press)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt; &lt;table cellspacing="5" width="95%"&gt; &lt;tbody align="middle"&gt; &lt;tr&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/2.jpg"&gt; &lt;/td&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/3.jpg"&gt; &lt;/td&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/4.jpg"&gt; &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Catastrophe Disentanglement&lt;/strong&gt; &lt;/td&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Practices of an Agile Developer&lt;/strong&gt; &lt;/td&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Software Estimation Demystifying&lt;/strong&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 15pt; font-family: verdana; text-align: center"&gt;&lt;u&gt;&lt;strong&gt;BOOKS TECHNICAL&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt; &lt;p style="font-size: 11pt; font-family: verdana; text-align: center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Jolt Winner&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana; text-align: center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Head First Object-Oriented Analysis &amp;amp; Design&lt;/strong&gt; by B. McLaughlin, G. Pollice, and D. West (O'Reilly Media)&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana; text-align: center"&gt;&lt;img alt="5" src="http://img.zhaojie.me/blog/Jolt2007/5.jpg"&gt;&lt;br&gt;&lt;b&gt;Head First Object-Oriented Analysis &amp;amp; Design&lt;/b&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 11pt; font-family: verdana; text-align: center"&gt;&lt;strong&gt;Productivity Winners&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Code Quality: The Open Source Perspective&lt;/strong&gt;&amp;nbsp;by Diomidis Spinellis (Addison-Wesley Professional) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Refactoring Databases: Evolutionary Database Design&lt;/strong&gt;&amp;nbsp;by Scott W. Ambler and P. J. Sadalage (Addison-Wesley Professional) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;CSS: The Missing Manual&lt;/strong&gt; by David Sawyer McFarland (O'Reilly Media)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt; &lt;table cellspacing="5" width="95%"&gt; &lt;tbody align="middle"&gt; &lt;tr&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/6.jpg"&gt; &lt;/td&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/7.jpg"&gt; &lt;/td&gt; &lt;td align="middle" width="30%"&gt;&lt;img src="http://img.zhaojie.me/blog/Jolt2007/8.jpg"&gt; &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Code Quality: The Open Source Perspective&lt;/strong&gt; &lt;/td&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;Refactoring Databases: Evolutionary Database Design&lt;/strong&gt; &lt;/td&gt; &lt;td style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;CSS: The Missing Manual&lt;/strong&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 15pt; font-family: verdana; text-align: center"&gt;&lt;u&gt;&lt;strong&gt;HALL OF FAME&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt; &lt;p style="font-size: 12pt; font-family: verdana; text-align: center"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;IBM DeveloperWorks (IBM)&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Change and Configuration Management&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;AccuRev 4.5 with AccuWorkflow (AccuRev)&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;AnthillPro3 (Urbancode)&lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Perforce SCM (Perforce) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Team Foundation Server (Microsoft)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Collaboration Tools&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Confluence (Atlassian Software Systems) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Adobe Acrobat Connect Professional (Adobe Systems) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;NetBeans IDE (Sun Microsystems) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;TeamCity (JetBrains)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Database Engines and Data Tools&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Visual Studio 2005 Team Edition for Database Professionals (Microsoft) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Coral8 Engine (Coral8) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Dbdeploy (ThoughtWorks) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;SQL Refactor (Red Gate Software)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Design and Modeling Tools&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;stpBA Storyboarding (stpsoft) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Corticon Business Rules Modeling Studio (Corticon) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;MagicDraw UML (No Magic) &lt;/div&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Stylus Studio 2007 XML Enterprise Suite (DataDirect Technologies)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Development Environments&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;NetBeans IDE (Sun Microsystems) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;IntelliJ IDEA (JetBrains)&lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;IronPython (Microsoft)&lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Wolfram Workbench (Wolfram Research)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Enterprise Tools&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Cape Clear ESB Platform (Cape Clear Software) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Liferay Portal (Liferay) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Appistry EAF (Appistry) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Pentaho Open BI Suite (Pentaho)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Libraries, Frameworks and Components&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;NetAdvantage for .NET (Infragistics) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;JViews (ILOG) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;.NET Framework 3.0 (Microsoft) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Intel Threading Building Blocks (Intel)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Mobile Development Tools&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Carbide .c++ Professional Edition (Nokia) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Crossfire (AppForge) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;NetBeans Mobility Pack and Sun Java Wireless Tookit (Sun Microsystems) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Qtopia (Trolltech)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Project Management&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Rally Enterprise (Rally Software) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;6th Sense Analytics (6th Sense Analytics) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Teamwork (Open Lab) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;V1: Agile Enterprise (VersionOne) &lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Security&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;AppScan (Watchfire) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;DevInspect (SPI Dynamics) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Fortify Source Code Analysis (Fortify) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Metasploit Framework (Metasploit) &lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Testing&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;AgitarOne (Agitar Software) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Mindreef SOAPscope (Mindreef) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Parasoft SOAtest (Parasoft) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;TestComplete (AutomatedQA)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Bug and Defect Tracking&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;TestTrack Studio (Seapine Software) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;JIRA (Atlassian Software Systems) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;OnTime 2007 (Axosoft) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Software Planner Professional (Pragmatic Software)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Utilities&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;VMware Lab Manager (VMware) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Adobe Captivate 2 (Adobe) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;ElectricCommander (Electric Cloud) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Textmate (MacroMates)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Web Development&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt; &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Adobe Flex 2 (Adobe Systems) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;IntelliJ IDEA (JetBrains) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Mindreef SOAPscope Server (Mindreef) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;NetBeans Visual Web Pack 5.5 (Sun Microsystems) &lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;strong&gt;&lt;u&gt;Websites and Developer Networks &lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Jolt Winner:&lt;/font&gt;&lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;Sun Developer Network (Sun Microsystems) &lt;/p&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;font color="#ff0000"&gt;Productivity Winners:&lt;/font&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;CM Crossroads (CMC Media) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Koders.com (Koders) &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div style="font-size: 10pt; font-family: verdana"&gt;Krugle (Krugle)&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-size: 10pt; font-family: verdana"&gt;&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2007/03/jolt-2007.html#comments</comments>
      <pubDate>Thu, 22 Mar 2007 20:13:00 GMT</pubDate>
      <lastBuildDate>Thu, 22 Mar 2007 20:13:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/reading/">阅读相关</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>Jolt Awards提名已经出来了</title>
      <link>http://blog.zhaojie.me/2007/01/627575.html</link>
      <guid>http://blog.zhaojie.me/2007/01/627575.html</guid>
      <description>&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;其实按照&lt;a href="http://www.joltawards.com/faq.html;jsessionid=CBPU3XMXVIBJEQSNDLPCKH0CJUNN2JVN"&gt;Schedule&lt;/a&gt;已经出来一周了吧：&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&lt;strong&gt;SCHEDULE&lt;/strong&gt;&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;Nominations open October 2006&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;Nominations close December 15, 2006&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;Finalists announced January 15, 2007&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;Winners announced at SD West 2007 on March 21, 2007&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;Jolt Awards年年关注，现在也只会买一下那些得奖的书了。不过Jolt Awards不仅仅是书，从这次的提名来看，微软的几个产品在开发环境或开发框架类别中榜上有名，它们是：&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&lt;a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython"&gt;IronPython&lt;/a&gt; &amp;#8211; Development Environments&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&lt;a href="http://www.netfx3.com/"&gt;.NET Framework 3.0 &lt;/a&gt;- Frameworks&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&lt;a href="http://msdn.microsoft.com/directx/xna/gse/"&gt;Microsoft XNA Game Studio Express&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/directx/XNA/default.aspx"&gt;XNA Framework&lt;/a&gt; &amp;#8211; Development Environments and Frameworks&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;以下是完整的提名：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Books (Practical/General Developer Interest)&lt;/strong&gt;
&lt;blockquote&gt;&lt;em&gt;Agile Software Development: The Cooperative Game&lt;/em&gt; (Addison-Wesley) by Alistair Cockburn&lt;br&gt;&lt;em&gt;Catastrophe Disentanglement&lt;/em&gt; (Addison-Wesley) by E. M. Bennatan&lt;br&gt;&lt;em&gt;Eric Sink on the Business of Software&lt;/em&gt; (Apress) by Eric Sink&lt;br&gt;&lt;em&gt;Practices of an Agile Developer&lt;/em&gt; (Pragmatic Bookshelf) by Venkat Subramaniam and Andy Hunt&lt;br&gt;&lt;em&gt;Software Creativity 2.0&lt;/em&gt; (DeveloperDotStar) by Robert L. Glass&lt;br&gt;&lt;em&gt;Software Estimation: Demystifying the Black Art&lt;/em&gt; (Microsoft Press) by Steve McConnell&lt;br&gt;&lt;em&gt;Weinberg on Writing: The Fieldstone Method&lt;/em&gt; (Dorset House) by Gerald M. Weinberg&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Books (Technical)&lt;/strong&gt;
&lt;blockquote&gt;&lt;em&gt;Code Quality&lt;/em&gt; (Addison-Wesley) by Diomidis Spinellis&lt;br&gt;&lt;em&gt;How to Break Web Software&lt;/em&gt; (Addison-Wesley) by M. Andrews, J. Whittaker&lt;br&gt;&lt;em&gt;Java Concurrency in Practice&lt;/em&gt; (Addison-Wesley) by Brian Goetz et al &lt;br&gt;&lt;em&gt;Rails Recipes&lt;/em&gt; (Pragmatic Bookshelf) by Chad Fowler&lt;br&gt;&lt;em&gt;Refactoring Databases&lt;/em&gt; (Addison-Wesley) by Scott W. Ambler and P. J. Sadalage&lt;br&gt;&lt;em&gt;Head First Object-Oriented Analysis and Design&lt;/em&gt; (O'Reilly) by B. McLaughlin, G. Pollice and D. West&lt;br&gt;&lt;em&gt;Ruby Cookbook&lt;/em&gt; (O'Reilly) by Lucas Carlson and Leonard Richardson&lt;br&gt;&lt;em&gt;CSS: The Missing Manual&lt;/em&gt; (O'Reilly) by David Sawyer McFarland&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Change and Configuration Management&lt;/strong&gt;
&lt;blockquote&gt;AccuRev 4.5 with AccuWorkflow (Accurev)&lt;br&gt;AnthillPro3 (Urbancode)&lt;br&gt;Automated Build Studio (AutomatedQA)&lt;br&gt;FLEXnet Connect (Macrovision)&lt;br&gt;Perforce SCM (Perforce)&lt;br&gt;Team Foundation Server (Microsoft Corporation)&lt;br&gt;CA Wily Introscope ChangeDetector (CA / Wily Technology)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Collaboration Tools&lt;/strong&gt;
&lt;blockquote&gt;Adobe Acrobat Connect Professional (Adobe Systems)&lt;br&gt;Code Collaborator (Smart Bear Software)&lt;br&gt;Confluence (Atlassian Software Systems)&lt;br&gt;NetBeans IDE (Sun Microsystems) &lt;br&gt;Sugar Professional (SugarCRM)&lt;br&gt;TeamCity (JetBrains)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Database Engines and Data Tools&lt;/strong&gt;
&lt;blockquote&gt;Coral8 Engine (Coral8)&lt;br&gt;dbdeploy (ThoughtWorks)&lt;br&gt;MarkLogic Server (Mark Logic)&lt;br&gt;SQL Anywhere (Sybase iAnywhere)&lt;br&gt;SQL Refactor (Red Gate Software)&lt;br&gt;Visual Studio 2005 Team Edition for Database Professionals (Microsoft)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Design and Modeling&lt;/strong&gt;
&lt;blockquote&gt;Compuware OptimalJ (Compuware)&lt;br&gt;Corticon Business Rules Modeling Studio (Corticon Technologies)&lt;br&gt;MagicDraw UML (No Magic)&lt;br&gt;RAVEN (Ravenflow)&lt;br&gt;stpBA Storyboarding for Microsoft Visual Studio 2005 Team System (stpsoft ltd.)&lt;br&gt;Stylus Studio 2007 XML Enterprise Suite (DataDirect Technologies)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Development Environments&lt;/strong&gt;
&lt;blockquote&gt;EiffelStudio Open Source Edition (Eiffel Software)&lt;br&gt;IntelliJ IDEA (JetBrains)&lt;br&gt;IronPython (Microsoft)&lt;br&gt;Microsoft XNA Game Studio Express, XNA Framework (Microsoft)&lt;br&gt;NetBeans IDE (Sun Microsystems)&lt;br&gt;Wolfram Workbench (Wolfram Research)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Enterprise Tools&lt;/strong&gt;
&lt;blockquote&gt;Cape Clear ESB Platform (Cape Clear Software)&lt;br&gt;Liferay Portal (Liferay)&lt;br&gt;Mule (MuleSource)&lt;br&gt;Appistry EAF (Appistry)&lt;br&gt;Pentaho Open BI Suite (Pentaho)&lt;br&gt;TeamCity (JetBrains)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Libraries, Frameworks and Components&lt;/strong&gt;
&lt;blockquote&gt;JViews (ILOG)&lt;br&gt;NetAdvantage for .NET (Infragistics)&lt;br&gt;telerik r.a.d.controls for WinForms (Telerik)&lt;br&gt;.NET Framework 3.0 (Microsoft)&lt;br&gt;Intel Threading Building Blocks (Intel)&lt;br&gt;Microsoft XNA Game Studio Express, XNA Framework (Microsoft)&lt;br&gt;The Mono Project (Novell)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Mobile Development&lt;/strong&gt;
&lt;blockquote&gt;AccuSPEECH (Vangard Voice Systems)&lt;br&gt;Carbide .c++ Professional Edition (Nokia)&lt;br&gt;Crossfire (AppForge)&lt;br&gt;Qtopia Greenphone (Trolltech)&lt;br&gt;NetBeans Mobility Pack 5.5 and Sun Java Wireless Tookit 2.2 (Sun Microsystems)&lt;br&gt;Qtopia (Trolltech)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Project Mangement Tools&lt;/strong&gt;
&lt;blockquote&gt;6th Sense Analytics (6th Sense Analytics)&lt;br&gt;DevPlan (TechExcel)&lt;br&gt;Rally Enterprise (Rally Software)&lt;br&gt;TargetProcess (TargetProcess)&lt;br&gt;Teamwork (Open Lab)&lt;br&gt;V1: Agile Enterprise (VersionOne)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;
&lt;blockquote&gt;AppScan (Watchfire)&lt;br&gt;beSTORM (Beyond Security)&lt;br&gt;DevInspect (S.P.I. Dynamics)&lt;br&gt;Fortify Defender (Fortify Software)&lt;br&gt;Fortify Source Code Analysis (SCA) (Fortify Software)&lt;br&gt;Metasploit Framework (Metasploit)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Automated Testing Tools&lt;/strong&gt;
&lt;blockquote&gt;AgitarOne (Agitar Software)&lt;br&gt;CodePro AnalytiX (Instantiations)&lt;br&gt;Mindreef SOAPscope (Mindreef)&lt;br&gt;Parasoft Jtest (Parasoft)&lt;br&gt;Parasoft SOAtest (Parasoft)&lt;br&gt;TestComplete (AutomatedQA)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Bug and Defect Tracking Tools&lt;/strong&gt;
&lt;blockquote&gt;JIRA (Atlassian Software Systems)&lt;br&gt;OnTime 2007 Hosted (Axosoft)&lt;br&gt;Software Planner Professional (Pragmatic Software Co.)&lt;br&gt;TestTrack Studio (Seapine Software)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Utilities&lt;/strong&gt;
&lt;blockquote&gt;Adobe Captivate 2 (Adobe Systems)&lt;br&gt;AutoPatch (Tacit Knowledge)&lt;br&gt;ElectricCommander (Electric Cloud)&lt;br&gt;TEKchecker and StyleWriter (ClearSpecs Enterprises)&lt;br&gt;TextMate (MacroMates)&lt;br&gt;VMware Lab Manager (VMware)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Web Development&lt;/strong&gt;
&lt;blockquote&gt;Adobe Flex 2 (Adobe Systems)&lt;br&gt;IntelliJ IDEA (JetBrains)&lt;br&gt;Kapow Mashup Server (Kapow Technologies)&lt;br&gt;LignUp Communications Application Server (LignUp)&lt;br&gt;Mindreef SOAPscope Server (Mindreef)&lt;br&gt;NetBeans Visual Web Pack (Sun Microsystems)&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Web Sites/Developer Networks&lt;/strong&gt;
&lt;blockquote&gt;CM Crossroads (CMC Media)&lt;br&gt;IBM developerWorks (IBM)&lt;br&gt;Sun Developer Network (Sun Microsystems)&lt;br&gt;Koders.com (Koders)&lt;br&gt;Krugle (Krugle)&lt;br&gt;Makezine.com (O'Reilly)&lt;br&gt;The Code Project (The Code Project)&lt;/blockquote&gt;</description>
      <comments>http://blog.zhaojie.me/2007/01/627575.html#comments</comments>
      <pubDate>Tue, 23 Jan 2007 01:44:00 GMT</pubDate>
      <lastBuildDate>Tue, 23 Jan 2007 01:44:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>在2006年的最后一天，我做出了一个决定</title>
      <link>http://blog.zhaojie.me/2006/12/decision-at-the-last-day-of-2006.html</link>
      <guid>http://blog.zhaojie.me/2006/12/decision-at-the-last-day-of-2006.html</guid>
      <description>&lt;p&gt;在2006年的最后一天，我做出了一个决定。今天我决定离开现在的单位——Windows Live China——寻求更好的发展。&lt;/p&gt;
&lt;p&gt;在一年半前，由于希望早点&amp;#8220;接触世面&amp;#8221;，当时还是个大二学生的我，和毕业班的学生们一起开始了&amp;#8220;找工作&amp;#8221;的旅程，幸运的是在&amp;#8220;第一站&amp;#8221;就被微软录取了，自然是以实习生的身份，当时的WLC还叫做MSN CDC。&lt;/p&gt;
&lt;p&gt;进了微软之后，似乎我也过了一段&amp;#8220;不思进取&amp;#8221;的生活，想想等毕业后留在微软也应该不成问题了。但是当我熟悉了工作中的一切，慢慢地就对这样枯燥的工作产生了厌倦。虽然在微软的大环境里，但是等级观念依旧比较森严，我作为一个实习生依旧没有多大的地位（可能只是我组内的状况），只是简单的按部就班的工作，每天没有创造性的劳动，我并没有得到我想象中工作的激情，我做的只是&amp;#8220;无差别劳动&amp;#8221;，能够替代我的人很多，我有相当程度的能力没有被释放出来——可能也是因为我原本太理想了。&lt;/p&gt;
&lt;p&gt;于是在一年半后的今天，我决定离开这里，即使我可以在毕业后拿到正式员工的Offer。我决定到别处去尝试，而不是呆在某个大公司做一个普通员工，简简单单的过日子。年轻么，就想去闯闯，最多过几年再回来。:)&lt;/p&gt;
&lt;p&gt;我现在最舍不得的，就是公司里的伙伴，和庞大的资源宝库，尤其是各种Mail List，能够和世界各地的微软员工尽情交流。&lt;/p&gt;
&lt;p&gt;虽然离开了，但是微软依旧是我最喜欢的公司。&lt;/p&gt;
&lt;p&gt;最后，希望我和大家在2007年都会有更好的发展。:)&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2006/12/decision-at-the-last-day-of-2006.html#comments</comments>
      <pubDate>Sun, 31 Dec 2006 07:26:00 GMT</pubDate>
      <lastBuildDate>Sun, 31 Dec 2006 07:26:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/speech/">培训演讲</category>
      <category domain="http://blog.zhaojie.me/translation/">翻译引进</category>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <title>推荐：体验TechEd 2006 Europe Edition</title>
      <link>http://blog.zhaojie.me/2006/11/teched-2006-europe-edition.html</link>
      <guid>http://blog.zhaojie.me/2006/11/teched-2006-europe-edition.html</guid>
      <description>&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=145 src="http://img.zhaojie.me/blog/WindowsLiveWriter/TechEd2006EuropeEdition_121EF/fourdays_right2%5B8%5D.jpg" width=499 border=0&gt;&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;TechEd 2006 China不久刚落下帷幕，TechEd 2006 Europe Edition又在西班牙巴塞罗那风风火火地开始了。微软为这次盛会专门准备一个网站来介绍它的一切。在这个站点里您能够看到此次盛会的大量相关信息，当然也有Virtual Side，不过最重要的就是其中有部分讲座的视频！这些都是优秀的资源。&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;这次盛会的内容自然相当丰富，不过比较吸引我的就是在TechEd 2006 Europe Edition中也包含了ASP.NET AJAX的内容，ASP.NET AJAX Beta 2的到来也使人们对于ASP.NET AJAX的真正发布翘首以盼。似乎此次的Beta 2和正式版的区别也不是很大了。&lt;/p&gt;
&lt;iframe style="DISPLAY: none; VISIBILITY: hidden" src="http://blog.zhaojie.me/2006/11/558960.html" width=0 height=0&gt;&lt;/iframe&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;TechEd 2006 Europe Edition的日期是11月6日-10日，和11月13日到17日，这个站点上的内容应该也会进行不断地更新。&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;这里推荐一下TechEd 2006 Europe Edition - Developers的网站：&lt;a href="http://www.mseventseurope.com/TechEd/06/pre/defaultDev.aspx"&gt;http://www.mseventseurope.com/TechEd/06/pre/defaultDev.aspx&lt;/a&gt;。还有它的Virtual Side：&lt;a href="http://www.mseventseurope.com/TechEd/06/pre/Live/DefaultDev.aspx"&gt;http://www.mseventseurope.com/TechEd/06/pre/Live/DefaultDev.aspx&lt;/a&gt;。&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;另外，还需要推荐一下Virtual Pressroom：&lt;a href="http://www.microsoft.com/emea/presscentre/teched/default.mspx"&gt;http://www.microsoft.com/emea/presscentre/teched/default.mspx&lt;/a&gt;。&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;如果您对于ASP.NET AJAX有兴趣的话，那么可能下面两个视频您可能就不应该错过了，它们都是在这次TechEd Europe上的演讲：&lt;/p&gt;
&lt;ol style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;
    &lt;li&gt;&lt;a href="http://www.microsoft.com/emea/msdnshowtime/sessionl.aspx?videoid=320" target=_blank&gt;ASP.NET AJAX Control Toolkit Unleashed: Creating Rich Client-Side Controls and Components&lt;/a&gt; by Shawn Burke - Development manager at Microsoft's Windows Forms team
    &lt;li&gt;&lt;a href="http://www.microsoft.com/emea/msdnshowtime/sessionh.aspx?videoid=331" target=_blank&gt;AJAX Patterns with the Microsoft AJAX Library&lt;/a&gt; by Jeff Prosise - Co-founder of Wintellect and Microsoft .NET programmer &lt;/li&gt;
&lt;/ol&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;这些都是MSDN's Showtime的视频，有兴趣的朋友也可以看看上面的其他资源。以后我也会将我认为比较有价值的视频推荐给大家。:)&lt;/p&gt;
&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: verdana"&gt;不过似乎上面的视频都需要再现观看，这对于网络质量有着一定的要求，而且对于这些英语的演讲，有些朋友可能会比较难以接受。因此我想，我会在接下来的时间里，会将一些我觉得比较有价值的部分为大家介绍一下，尤其会着重对于它的演示代码进行Step by Step地演示和分析。这些大会上的代码都非常优秀，也有很高的参考价值，例如早在Atlas CTP阶段，在Mix06上的示例大都成为了Atlas官方示例了。另外，如果这些代码比较难以部署和使用的话，我也会在文章进行一些讲解。这样大家就能在示例代码上进行修改和学习了。&lt;/p&gt;</description>
      <comments>http://blog.zhaojie.me/2006/11/teched-2006-europe-edition.html#comments</comments>
      <pubDate>Tue, 14 Nov 2006 12:37:00 GMT</pubDate>
      <lastBuildDate>Tue, 14 Nov 2006 12:37:00 GMT</lastBuildDate>
    </item>
    <item>
      <author>jeffz@live.com (老赵)</author>
      <category domain="http://blog.zhaojie.me/news/">新闻信息</category>
      <category domain="http://blog.zhaojie.me/life/">生活心情</category>
      <category domain="http://blog.zhaojie.me/asp-net/">ASP.NET</category>
      <category domain="http://blog.zhaojie.me/front-end/">前端表现</category>
      <title>Microsoft ASP.NET AJAX的RTM Release在一定程度上更像是一个晴天霹雳</title>
      <link>http://blog.zhaojie.me/2006/10/what-the-hell-the-change-is.html</link>
      <guid>http://blog.zhaojie.me/2006/10/what-the-hell-the-change-is.html</guid>
      <description>&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;　　即使我已经将Atlas的代码看了大半，即使我已经准备好了后面几片&amp;#8220;深入Atlas系列&amp;#8221;的文章，但是不得不承认，它们几乎没有什么用了。粗粗看了一遍客户端代码和一半左右的文档，它已经不是我所认识的Atlas了。它对于我来说又成了一个陌生的东西。&lt;br&gt;&lt;br&gt;这次的Release，我认为，从一个根本的角度改变了原来的Atlas，从客户端的对象构造的基础（closure变成了prototype），到服务器端的控件。它将Atlas拆成了Core（客户端的面向对象支持，客户端Behavior和服务器端的ExtenderControl基础等）和Value-Added（具体的各种Behavior，Extender等）两部分。&lt;br&gt;&lt;br&gt;当然改变远远大于这些，否则我也不会激动如斯了。当重新打开Client Library，看着原本熟悉的代码变的满屏陌生，这个心那个凉啊&amp;#8230;&amp;#8230;&lt;br&gt;&lt;br&gt;从现在这一分钟起，我会和大家一起学习新的Atlas，不对，是Microsoft ASP.NET AJAX。&lt;br&gt;&lt;br&gt;Right here，Right now。&lt;br&gt;&lt;/span&gt;</description>
      <comments>http://blog.zhaojie.me/2006/10/what-the-hell-the-change-is.html#comments</comments>
      <pubDate>Fri, 20 Oct 2006 11:25:00 GMT</pubDate>
      <lastBuildDate>Fri, 20 Oct 2006 11:25:00 GMT</lastBuildDate>
    </item>
  </channel>
</rss>
