<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>skandhas</title>
    <link>https://ruby-china.org/skandhas</link>
    <description>看吧，看吧。俺继续睡 z z Z Z</description>
    <language>en-us</language>
    <item>
      <title>想问一下，Kindle Paperwhite 的显示效果如何？尤其是对 PDF 文件</title>
      <description>&lt;p&gt;看到 &lt;strong&gt;Kindle Paperwhite&lt;/strong&gt; 在国内有行货了。
所以想问一下坛子里各位，&lt;strong&gt;Kindle Paperwhite&lt;/strong&gt;  对 PDF 的效果如何？尤其是 技术类 的英文 PDF ?（不包括扫描 PDF)
有用过的朋友可以说一下显示效果吗？&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Fri, 07 Jun 2013 20:30:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/11573</link>
      <guid>https://ruby-china.org/topics/11573</guid>
    </item>
    <item>
      <title>推荐一款老牌经典小游戏：洞窟物语</title>
      <description>&lt;h2 id="洞窟物语"&gt;洞窟物语&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;洞窟物语 (洞窟物語，Doukutsu Monogatari, Cave Story) 是程序员 Pixel 花了自己 5 年的业余时间独立开发的免费的 2D 平台游戏。后被翻译成多种语言和移植到多个平台上，在全世界掀起了一股热潮。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;这是一个老游戏啦，但是由于动作操作流畅，画面清新的像素风，并且是多支线结局，所以很耐玩。以前通关过。最近手痒，又要开始被虐的旅程了 O_o&lt;/p&gt;

&lt;p&gt;洞窟物语的&lt;a href="http://pawism.com/sp/doukutsu" rel="nofollow" target="_blank" title=""&gt;中文页面&lt;/a&gt;
游戏爱好者还建立了社区：&lt;a href="http://www.cavestory.org/" rel="nofollow" target="_blank" title=""&gt;www.cavestory.org&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/8631447e2381b517b974e7abe24a878d.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/2670c47cff47083c917961c942991886.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Fri, 24 May 2013 14:07:43 +0800</pubDate>
      <link>https://ruby-china.org/topics/11210</link>
      <guid>https://ruby-china.org/topics/11210</guid>
    </item>
    <item>
      <title>用 Ruby 实现一个简易的粒子系统</title>
      <description>&lt;h2 id="说明"&gt;说明&lt;/h2&gt;
&lt;p&gt;用 Ruby 重新写了 &lt;a href="/miloyip" class="user-mention" title="@miloyip"&gt;&lt;i&gt;@&lt;/i&gt;miloyip&lt;/a&gt; 写的 Javascript 实现的一个 &lt;strong&gt;简易&lt;/strong&gt; 的粒子系统，演示程序是可以随着鼠标的移动发射粒子。Javascript 版的在&lt;a href="http://www.cnblogs.com/miloyip/archive/2010/06/14/Kinematics_ParticleSystem.html" rel="nofollow" target="_blank" title=""&gt;这里&lt;/a&gt;，既有代码又有说明。&lt;/p&gt;
&lt;h2 id="运行依赖"&gt;运行依赖&lt;/h2&gt;&lt;h3 id="1. ruby-sdl-ffi"&gt;1. ruby-sdl-ffi&lt;/h3&gt;&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;gem&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;ruby&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;sdl&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;ffi&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="2. SDL 库 及 SDL_gfx库"&gt;2. SDL 库 及 SDL_gfx 库&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Mac OS 下的安装
&lt;code&gt;
brew install sdl
brew install sdl_gfx
&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Windows 下的安装&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SDL:  去 SDL 的&lt;a href="http://www.libsdl.org/download-1.2.php" rel="nofollow" target="_blank" title=""&gt;官网&lt;/a&gt;下载 Runtime Libraries 即可。然后把 SDL.dll 直接扔到系统目录 (我是直接放在了 C:\windows\system32 下) 或是 另放其他地方，然后修改一下系统环境变量。&lt;/li&gt;
&lt;li&gt;SDL_gfx: 去 SDL_gfx 的官网下载最新的 SDL_gfx 源码包，当前是 &lt;a href="http://www.ferzkopp.net/Software/SDL_gfx-2.0/SDL_gfx-2.0.24.tar.gz" rel="nofollow" target="_blank" title=""&gt;SDL_gfx-2.0.24.tar.gz&lt;/a&gt;，然后编译，最后把编译好的 SDL_gfx.dll 放到系统目录。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="代码"&gt;代码&lt;/h2&gt;
&lt;p&gt;代码已经放在了 &lt;a href="https://github.com/skandhas/ruby-gfx-demo" rel="nofollow" target="_blank" title=""&gt;GitHub&lt;/a&gt; 上了&lt;/p&gt;
&lt;h2 id="效果"&gt;效果&lt;/h2&gt;
&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/55454ca9941520578eca368b56480135.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Wed, 22 May 2013 23:15:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/11165</link>
      <guid>https://ruby-china.org/topics/11165</guid>
    </item>
    <item>
      <title>ScmRb 2 : Scheme Interpreter In Ruby</title>
      <description>&lt;p&gt;ScmRb 2  是这篇&lt;a href="http://ruby-china.org/topics/10106" title=""&gt;帖子&lt;/a&gt;的续集，之所以有续集，是因为 Lispy 的 作者，也给 Lispy 也做了续集 :&lt;a href="http://norvig.com/lispy2.html" rel="nofollow" target="_blank" title=""&gt;Lispy 2&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;ScmRb 2 是 Lispy 2 的 Ruby 实现，代码结构与 Lispy 2 保持一致。也因与此，ScmRb2 代码中少了一些 Ruby-Style，还请多包涵。&lt;/p&gt;

&lt;p&gt;说明：&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;ScmRb  和 Lispy 一样，都不是一个完全的 Scheme 解释器。&lt;/li&gt;
&lt;li&gt;ScmRb 并没有实现 Lispy 中的 &lt;em&gt;open-input-file&lt;/em&gt;, &lt;em&gt;close-input-port&lt;/em&gt;， ... 等 procedure，做为一个 Demo 程序来说觉得没必要。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;代码在 &lt;a href="https://github.com/skandhas/scmrb" rel="nofollow" target="_blank" title=""&gt;GitHub&lt;/a&gt; .&lt;/p&gt;
&lt;pre class="highlight scheme"&gt;&lt;code&gt;&lt;span class="nv"&gt;ruby&lt;/span&gt; &lt;span class="nv"&gt;scmrb&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nv"&gt;rb&lt;/span&gt;
&lt;span class="nv"&gt;ScmRb&lt;/span&gt; &lt;span class="nv"&gt;version&lt;/span&gt; &lt;span class="mf"&gt;2.0&lt;/span&gt;
&lt;span class="nv"&gt;scmrb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;define&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;times&lt;/span&gt; &lt;span class="nv"&gt;x&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;lambda&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;y&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;x&lt;/span&gt; &lt;span class="nv"&gt;y&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;span class="nv"&gt;scmrb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nf"&gt;times&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="mi"&gt;6&lt;/span&gt;
&lt;span class="nv"&gt;scmrb&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>skandhas</author>
      <pubDate>Thu, 18 Apr 2013 17:31:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/10311</link>
      <guid>https://ruby-china.org/topics/10311</guid>
    </item>
    <item>
      <title>ScmRb : Scheme Interpreter In Ruby</title>
      <description>&lt;p&gt;看了 &lt;a href="/chenge" class="user-mention" title="@chenge"&gt;&lt;i&gt;@&lt;/i&gt;chenge&lt;/a&gt; 发的&lt;a href="http://ruby-china.org/topics/10037" title=""&gt;帖子&lt;/a&gt; , 于是就用 Ruby 实现了一份。程序结构与原来的 Lispy 保持一致，主要是为了按作者的思路来实现，写的仓促，请见谅！Orz。
说明在 &lt;a href="http://skandhas.writings.io/articles/dc26249d" rel="nofollow" target="_blank" title=""&gt;这里&lt;/a&gt;.
代码在 &lt;a href="https://github.com/skandhas/scmrb" rel="nofollow" target="_blank" title=""&gt;GitHub&lt;/a&gt; .&lt;/p&gt;
&lt;pre class="highlight common_lisp"&gt;&lt;code&gt;&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;append&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;begin&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;define&lt;/span&gt; &lt;span class="nv"&gt;r&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;3.141592653&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;r&lt;/span&gt; &lt;span class="nv"&gt;r&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;span class="mf"&gt;28.274333877&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;define&lt;/span&gt; &lt;span class="nv"&gt;fact&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;lambda&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="nv"&gt;n&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;n&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;fact&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;-&lt;/span&gt; &lt;span class="nv"&gt;n&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;))))))&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;define&lt;/span&gt; &lt;span class="nv"&gt;area&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;lambda&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;r&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;3.141592653&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;r&lt;/span&gt; &lt;span class="nv"&gt;r&lt;/span&gt;&lt;span class="p"&gt;))))&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;area&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="mf"&gt;28.274333877&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;fact&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="mi"&gt;3628800&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;fact&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="mi"&gt;9332621544394415268169923885626670049071596826438162146859296389521759999322991560894146397615651828625369792082722375825118521091686400000000000000000000000&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;length&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;list&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="mi"&gt;5&lt;/span&gt;
&lt;span class="nv"&gt;scm.rb&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>skandhas</author>
      <pubDate>Thu, 11 Apr 2013 16:19:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/10106</link>
      <guid>https://ruby-china.org/topics/10106</guid>
    </item>
    <item>
      <title>要提出目标，但不可盲目追随它。</title>
      <description>&lt;p&gt;从 &lt;em&gt;图拉鼎&lt;/em&gt; 的微博上看到的，越看越逗。只图一乐，无他意 ;)&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;「听好儿子，要提出目标，但不可盲目追随它」
「我明白了爸爸，就像 Python 那样提出『只采用唯一正确的方法』那样的目标，实际上却存在 2、3 版本的不兼容」
「住口！」
「urllib 和 urllib2」
「住口！！！」&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Thu, 07 Mar 2013 11:39:39 +0800</pubDate>
      <link>https://ruby-china.org/topics/9208</link>
      <guid>https://ruby-china.org/topics/9208</guid>
    </item>
    <item>
      <title>[AI 练习] 根据教程的练习之作</title>
      <description>&lt;p&gt;对线条的控制能力不行，只能选一些简单图形的教程练习了 O_o&lt;/p&gt;

&lt;p&gt;老外的教程很详细，跟着教程练下来，能熟悉和巩固 AI 的相关操作，但是只能学其形，而学不到其神，还得继续积累。&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;img src="http://image.zcool.com.cn/img3/4/26/1343828193594.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Wed, 01 Aug 2012 21:46:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/4684</link>
      <guid>https://ruby-china.org/topics/4684</guid>
    </item>
    <item>
      <title>一只蜻蜓 (AI 练习)</title>
      <description>&lt;p&gt;原本计划画苍蝇，昨天照着一个高清无码的苍蝇参考图，结果不到 20 分钟，坚持不下去了，苍蝇实在是太恶心了，还是画蜻蜓吧。当初应该听 &lt;a href="/Rei" class="user-mention" title="@Rei"&gt;&lt;i&gt;@&lt;/i&gt;Rei&lt;/a&gt; 的 :)&lt;/p&gt;

&lt;p&gt;练习的重点还是放在了基本图形的使用以及 AI 这个软件本身的使用。&lt;/p&gt;

&lt;p&gt;一只蜻蜓 (线稿) &lt;a href="http://www.chinaui.com/Space/skandhas/20120726/201207261601515764012.png" rel="nofollow" target="_blank" title=""&gt;原图见这里&lt;/a&gt;
&lt;img src="http://www.chinaui.com/Space/skandhas/20120726/201207261601515764012.png" title="" alt=""&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;一只蜻蜓 &lt;a href="http://www.chinaui.com/Space/skandhas/20120726/201207261602567474335.png" rel="nofollow" target="_blank" title=""&gt;原图见这里&lt;/a&gt;
&lt;img src="http://www.chinaui.com/Space/skandhas/20120726/201207261602567474335.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Thu, 26 Jul 2012 16:14:32 +0800</pubDate>
      <link>https://ruby-china.org/topics/4567</link>
      <guid>https://ruby-china.org/topics/4567</guid>
    </item>
    <item>
      <title>给插画节点凑个数 (AI 练手习作)</title>
      <description>&lt;p&gt;前几天看到 &lt;a href="/Saito" class="user-mention" title="@Saito"&gt;&lt;i&gt;@&lt;/i&gt;Saito&lt;/a&gt; 的&lt;a href="http://ruby-china.org/topics/4165" title=""&gt;帖子&lt;/a&gt; 之后，从上周开始使用 AI，还是超级菜鸟一枚 :(&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;img src="http://www.chinaui.com/Space/skandhas/20120725/201207251022405097510.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Wed, 25 Jul 2012 10:31:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/4538</link>
      <guid>https://ruby-china.org/topics/4538</guid>
    </item>
    <item>
      <title>Windows 下编译 Native Gem 的一些经验</title>
      <description>&lt;p&gt;过去，现在，估计将来也会有同学问 Windows 下编译 Native Gem 的问题，干脆整理了一篇 Wiki 放在了&lt;a href="http://ruby-china.org/wiki/win32-gem" title=""&gt;这里&lt;/a&gt; 。&lt;/p&gt;

&lt;p&gt;既然咱们无法替对方选择一个 OS，那咱只能分享一下经验，让 Windows 下的同学方便一些；）&lt;/p&gt;

&lt;p&gt;有时候，即使在 Mac OS 下，也经常会遇到编译某些 Gem 不过的情况。倒腾编译环境的技能应该是必须的，目的呢，就是要解决问题啦  ;)  &lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Mon, 04 Jun 2012 17:25:53 +0800</pubDate>
      <link>https://ruby-china.org/topics/3657</link>
      <guid>https://ruby-china.org/topics/3657</guid>
    </item>
    <item>
      <title>节日快乐！！</title>
      <description>&lt;p&gt;我们心中的那份纯真，从未因我们的成长而离去。祝大家节日快乐！&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/5683d77afc6870bdecb3f3be3ade94bd.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Fri, 01 Jun 2012 08:21:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/3589</link>
      <guid>https://ruby-china.org/topics/3589</guid>
    </item>
    <item>
      <title>Ruby China 节点的主题数统计</title>
      <description>&lt;p&gt;统计了一下 Ruby China 节点的主题数 (2012-05-21)。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;瞎扯淡&lt;/strong&gt; 节点的主题个数高居第 2 名：493
Rails 节点:760
Ruby 节点:337&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;瞎扯淡&lt;/strong&gt; 是不是也太高了点？O_o
(本帖也为 &lt;strong&gt;瞎扯淡&lt;/strong&gt; 贡献了一票，但没计入在内)&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/5ac2287fd9a65e57d4c355ad18723bd0.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Mon, 21 May 2012 09:46:10 +0800</pubDate>
      <link>https://ruby-china.org/topics/3392</link>
      <guid>https://ruby-china.org/topics/3392</guid>
    </item>
    <item>
      <title>问一下，ITeye 的 night_stalker 在咱们这个坛子里吗？</title>
      <description>&lt;p&gt;以前经常去 night_stalker 的博客上看帖子。现在发现他的博客删除了，&lt;a href="http://night-stalker-deleted.iteye.com/" rel="nofollow" target="_blank"&gt;http://night-stalker-deleted.iteye.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;大家知道 night_stalker 现在的博客吗？或是知道他在这个坛子里吗？
我记得 night_stalker 是淘宝的。&lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt;  &lt;a href="/Saito" class="user-mention" title="@Saito"&gt;&lt;i&gt;@&lt;/i&gt;Saito&lt;/a&gt; 应该认识他吧 :)  &lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Tue, 08 May 2012 16:40:42 +0800</pubDate>
      <link>https://ruby-china.org/topics/3150</link>
      <guid>https://ruby-china.org/topics/3150</guid>
    </item>
    <item>
      <title>Ruby China T 恤第二期的赠送名单公布</title>
      <description>&lt;p&gt;网店地址：&lt;a href="http://shop.ruby-china.org/" rel="nofollow" target="_blank"&gt;http://shop.ruby-china.org/&lt;/a&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;第二期赠送的 50 件 T 恤是由 &lt;a href="http://www.beltal.com//" rel="nofollow" target="_blank" title=""&gt;Beltal(贝通网)&lt;/a&gt; 赞助！
特别感谢&lt;strong&gt;贝通网&lt;/strong&gt;和 &lt;strong&gt;Bob(汪晓明)&lt;/strong&gt;对 Ruby-China 社区的支持！
还有感谢 &lt;a href="https://www.shopqi.com/" rel="nofollow" target="_blank" title=""&gt;ShopQi&lt;/a&gt; 对 Ruby China 社区及网店以及印制的支持！&lt;/p&gt;
&lt;h2 id="赠送名单"&gt;赠送名单&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;名单的产生规则：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;以报名的形式参加，先到先得，截至到 50 名为止。&lt;/li&gt;
&lt;li&gt;可以通过回帖报名 (适合有 ruby-china id 的同学们)。&lt;/li&gt;
&lt;li&gt;可以通过回复邮件 (admin@ruby-china.org) 报名。(适合没有注册 ruby-china id 的同学们)。&lt;/li&gt;
&lt;li&gt;审批以回帖的时间和邮件的时间戳为准，统计前 50 名。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;几点说明&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;通过对回帖和邮件时间戳的统计，共有 1 名邮件报名者和 49 名回帖报名者获得了 Ruby-China T 恤。&lt;/li&gt;
&lt;li&gt;Ruby China 的管理员会把优惠码发到名单人员的邮箱里，请各位记住自己的编号。&lt;/li&gt;
&lt;li&gt;网店的下单流程不需要登陆，只能通过下单后的 email 回执来查看自己的订单信息，如果大家有问题，请联系 admin@ruby-china.org&lt;/li&gt;
&lt;li&gt;Ruby China T 恤第二期报名帖子：&lt;a href="http://ruby-china.org/topics/2726/" rel="nofollow" target="_blank"&gt;http://ruby-china.org/topics/2726/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Ruby China T 恤的款式见 &lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt; 的帖子：&lt;a href="http://ruby-china.org/topics/2617" rel="nofollow" target="_blank"&gt;http://ruby-china.org/topics/2617&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="下面是Ruby-China第二期免费赠送T恤的名单"&gt;下面是 Ruby-China 第二期免费赠送 T 恤的名单&lt;/h3&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;01. 1024934905@qq.com
02. @zellux
03. @jjym
04. @LarryLv
05. @zhiliang
06. @librajinjing
07. @NonTwitter
08. @amoro119
09. @alvin2ye
10. @ywjno
11. @kehao
12. @fresh_fish
13. @calebx
14. @cxh116
15. @messiahxu
16. @reyesyang
17. @yijie
18. @paranoyang
19. @yeerkunth
20. @huyong36
21. @t_zires
22. @shanks
23. @aston
24. @anylei
25. @yakjuly
26. @fooleap
27. @Crabby
28. @yjprincess
29. @t_wu
30. @wangin0821
31. @loveruby
32. @QinCai
33. @valen
34. @Numbcoder
35. @ekim_sgra
36. @leondu
37. @rainchen
38. @PlayMonkey
39. @zhaowenchina
40. @ranmocy
41. @ch3n
42. @shooter
43. @shaorui23
44. @yedingding
45. @foxzool
46. @DavidWei
47. @jean
48. @raecoo
49. @xguox
50. @lidashuang


&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id="China-Ruby T恤的穿着效果图"&gt;China-Ruby T 恤的穿着效果图&lt;/h2&gt;
&lt;p&gt;正面：
&lt;img src="//l.ruby-china.com/photo/3c2d31199630ae34a1c498626a74856e.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;右边袖口：
&lt;img src="//l.ruby-china.com/photo/2f7db03e3428cf6a25b45b2b4975ee25.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;左边袖口：
&lt;img src="//l.ruby-china.com/photo/f1deb0a82ad1a08d5f58f0948c9379c5.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;背面：
&lt;img src="//l.ruby-china.com/photo/ca51d32e57d6c49c2824863709e3fb18.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Sun, 22 Apr 2012 18:04:44 +0800</pubDate>
      <link>https://ruby-china.org/topics/2812</link>
      <guid>https://ruby-china.org/topics/2812</guid>
    </item>
    <item>
      <title>Ruby China T 恤第二期报名活动开始啦！[已结束]</title>
      <description>&lt;p&gt;网店地址：&lt;a href="http://shop.ruby-china.org/" rel="nofollow" target="_blank"&gt;http://shop.ruby-china.org/&lt;/a&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;近来 Ruby-China 社区的好消息不断啊！我们的第一批 T 恤赠送目前正在如火如荼的进行中，第二批 T 恤赠送活动也要开始啦！ &lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;第二批赠送的 50 件 T 恤是由 &lt;a href="http://www.beltal.com//" rel="nofollow" target="_blank" title=""&gt;Beltal(贝通网)&lt;/a&gt; 赞助！
特别感谢&lt;strong&gt;贝通网&lt;/strong&gt;和 &lt;strong&gt;Bob(汪晓明)&lt;/strong&gt;对 Ruby-China 社区的支持！&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;名单的产生规则：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;以报名的形式参加，先到先得，截至到 50 名为止。&lt;/li&gt;
&lt;li&gt;可以通过回复此帖报名 (适合有 ruby-china id 的同学们)。&lt;/li&gt;
&lt;li&gt;可以通过回复邮件 (admin@ruby-china.org) 报名。(适合没有注册 ruby-china id 的同学们)。&lt;/li&gt;
&lt;li&gt;审批以回帖的时间和邮件的时间戳为准，统计前 50 名。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;几点说明&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;在第一批赠送名单之列的人将不会统计在第二批的名单中。&lt;/li&gt;
&lt;li&gt;通过回帖报名，请回复:"报名"即可。&lt;/li&gt;
&lt;li&gt;通过回复 mail 方式报名的，mail 主题是：第二期 T 恤赠送申请。&lt;/li&gt;
&lt;li&gt;我们最快 2 天内宣布名单。优惠码将由管理员通过 mail 发送给大家。&lt;/li&gt;
&lt;li&gt;Ruby China T 恤的款式见 &lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt; 的帖子：&lt;a href="http://ruby-china.org/topics/2617" rel="nofollow" target="_blank"&gt;http://ruby-china.org/topics/2617&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="亲爱滴同学们，还在等什么！赶紧报名吧！让我们今年的夏天属于Ruby!"&gt;亲爱滴同学们，还在等什么！赶紧报名吧！让我们今年的夏天属于 Ruby!&lt;/h2&gt;
&lt;hr&gt;

&lt;p&gt;&lt;strong&gt;China-Ruby T 恤的穿着效果图&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;正面：
&lt;img src="//l.ruby-china.com/photo/3c2d31199630ae34a1c498626a74856e.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;右边袖口：
&lt;img src="//l.ruby-china.com/photo/2f7db03e3428cf6a25b45b2b4975ee25.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;左边袖口：
&lt;img src="//l.ruby-china.com/photo/f1deb0a82ad1a08d5f58f0948c9379c5.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;背面：
&lt;img src="//l.ruby-china.com/photo/ca51d32e57d6c49c2824863709e3fb18.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Thu, 19 Apr 2012 16:36:00 +0800</pubDate>
      <link>https://ruby-china.org/topics/2726</link>
      <guid>https://ruby-china.org/topics/2726</guid>
    </item>
    <item>
      <title>Ruby China T 恤第一期的赠送名单公布</title>
      <description>&lt;p&gt;网店地址：&lt;a href="http://shop.ruby-china.org/" rel="nofollow" target="_blank"&gt;http://shop.ruby-china.org/&lt;/a&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;第一批赠送的 50 件 T 恤是由 &lt;a href="http://intridea.com/" rel="nofollow" target="_blank" title=""&gt;Intridea&lt;/a&gt; 赞助！
还有感谢 &lt;a href="https://www.shopqi.com/" rel="nofollow" target="_blank" title=""&gt;ShopQi&lt;/a&gt; 对 Ruby China 社区及网店以及印制的支持！&lt;/p&gt;
&lt;h2 id="赠送名单"&gt;赠送名单&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;名单的产生规则：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ruby-China 社区的活跃会员 (前 20 名)&lt;/li&gt;
&lt;li&gt;github 上 ruby-china 的贡献者 (包括 ruby-china 的所有仓库)&lt;/li&gt;
&lt;li&gt;ruby-china-reader 的贡献者&lt;/li&gt;
&lt;li&gt;友情派送 (比如说参与 T 恤的设计)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;几点说明&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;有可能好多同学在上面几个名单中都有参与，重复的人员将按 1 件计算。&lt;/li&gt;
&lt;li&gt;Ruby China 的管理员会把优惠码发到名单人员的邮箱里，请各位记住自己的编号。&lt;/li&gt;
&lt;li&gt;网店的下单流程不需要登陆，只能通过下单后的 email 回执来查看自己的订单信息，如果大家有问题，联系  admin@ruby-china.org&lt;/li&gt;
&lt;li&gt;首批赠送的 50 件衣服是 &lt;strong&gt;Intridea&lt;/strong&gt; 赞助，但是如果大家自行下单购买的话，则没有 Intridea 的字样。&lt;/li&gt;
&lt;li&gt;Ruby China T 恤第一期的款式见 &lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt; 的帖子：&lt;a href="http://ruby-china.org/topics/2617" rel="nofollow" target="_blank"&gt;http://ruby-china.org/topics/2617&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="下面是免费赠送T恤的名单(按id字母顺序排序)"&gt;下面是免费赠送 T 恤的名单 (按 id 字母顺序排序)&lt;/h3&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;01. @ashchan
02. @azhao
03. @bony
04. @camel
05. @chitsaou
06. @coolzilj
07. @cqpx
08. @doitian
09. @ery
10. @fenprace
11. @fleuria
12. @forresty
13. @fredwu
14. @fsword
15. @hechian
16. @hhuai
17. @hisea
18. @hooopo
19. @huacnlee
20. @HungYuHei
21. @huobazi
22. @ichord
23. @jhjguxin
24. @jinleileiking
25. @Juanito
26. @lainuo
27. @leomao10
28. @lgn21st
29. @linjunpop
30. @longerian
31. @mouse_lin
32. @niedhui
33. @poshboytl
34. @Psi
35. @qichunren
36. @quakewang
37. @Rei
38. @ruby_sky
39. @siuying
40. @skandhas
41. @tassandar
42. @willmouse
43. @xdite
44. @xds2000
45. @ywencn
46. @Zernel
47. @zw963
48. @Domon
49. @hSATAC
50. griffin.qiu@gmail.com
51. @aNdReW_Qx 

&lt;/code&gt;&lt;/pre&gt;
&lt;hr&gt;
&lt;h2 id="本次赠送名单的标准"&gt;本次赠送名单的标准&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Ruby China 社区活跃会员前 20 名 (统计日期至:2012-04-09 AM 11:30);&lt;/li&gt;
&lt;li&gt;5 个项目:ruby-china,rails-guides,ruby-china-android,ruby-style-guide,rails-style-guide 的代码贡献者;&lt;/li&gt;
&lt;li&gt;友情派送:

&lt;ul&gt;
&lt;li&gt;
&lt;a href="/coolzilj" class="user-mention" title="@coolzilj"&gt;&lt;i&gt;@&lt;/i&gt;coolzilj&lt;/a&gt; (设计)&lt;/li&gt;
&lt;li&gt;
&lt;a href="/mouse_lin" class="user-mention" title="@mouse_lin"&gt;&lt;i&gt;@&lt;/i&gt;mouse_lin&lt;/a&gt; (设计)&lt;/li&gt;
&lt;li&gt;
&lt;a href="/fredwu" class="user-mention" title="@fredwu"&gt;&lt;i&gt;@&lt;/i&gt;fredwu&lt;/a&gt;   (澳洲)&lt;/li&gt;
&lt;li&gt;
&lt;a href="/ashchan" class="user-mention" title="@ashchan"&gt;&lt;i&gt;@&lt;/i&gt;ashchan&lt;/a&gt;  (东京)&lt;/li&gt;
&lt;li&gt;
&lt;a href="/hisea" class="user-mention" title="@hisea"&gt;&lt;i&gt;@&lt;/i&gt;hisea&lt;/a&gt;    (加拿大)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;hr&gt;
&lt;h2 id="China-Ruby T恤的穿着效果图"&gt;China-Ruby T 恤的穿着效果图&lt;/h2&gt;
&lt;p&gt;正面：
&lt;img src="//l.ruby-china.com/photo/3c2d31199630ae34a1c498626a74856e.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;右边袖口：
&lt;img src="//l.ruby-china.com/photo/2f7db03e3428cf6a25b45b2b4975ee25.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;左边袖口：
&lt;img src="//l.ruby-china.com/photo/f1deb0a82ad1a08d5f58f0948c9379c5.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;背面：
&lt;img src="//l.ruby-china.com/photo/ca51d32e57d6c49c2824863709e3fb18.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Mon, 16 Apr 2012 12:05:00 +0800</pubDate>
      <link>https://ruby-china.org/topics/2624</link>
      <guid>https://ruby-china.org/topics/2624</guid>
    </item>
    <item>
      <title>有可能被误用的 Enumerable#one? </title>
      <description>&lt;p&gt;之所以说容易被误用，是因为&lt;strong&gt;one?&lt;/strong&gt; 这个方法名容易被误解成：
"在一个 collection 中，只存在一个元素时则返回 ture"。
而实际含义是:
&lt;strong&gt;"在一个 collection 中，只存在一个不是 false 或 nil 的元素时则返回 true"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;在某些场合，如果要判断一个 collection 的元素个数是否为 1 时，请使用 collection 的 length 或 size 方法，而不是使用 one?  。如果是只判断非 false(nil) 的元素个数是否为 1 时，则用 one？&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;one?&lt;/span&gt;         &lt;span class="c1"&gt;# =&amp;gt; false&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;one?&lt;/span&gt;             &lt;span class="c1"&gt;# =&amp;gt; true&lt;/span&gt;

&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="kp"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="kp"&gt;nil&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;one?&lt;/span&gt;   &lt;span class="c1"&gt;# =&amp;gt; true&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="kp"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="kp"&gt;nil&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;length&lt;/span&gt; &lt;span class="c1"&gt;# =&amp;gt; 3&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;DHH 的 Jbuilder 的 Pull Request:
&lt;a href="https://github.com/rails/jbuilder/pull/21" rel="nofollow" target="_blank"&gt;https://github.com/rails/jbuilder/pull/21&lt;/a&gt;&lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Wed, 07 Mar 2012 10:52:47 +0800</pubDate>
      <link>https://ruby-china.org/topics/1672</link>
      <guid>https://ruby-china.org/topics/1672</guid>
    </item>
    <item>
      <title>有兄弟接触过 FlowStone 吗？</title>
      <description>&lt;p&gt;一个集成 Ruby 引擎的图形式编程环境，号称只用鼠标就能写程序。应用场景感觉是偏硬件。像是机器人控制之类的。
&lt;a href="http://www.dsprobotics.com/flowstone.html" rel="nofollow" target="_blank"&gt;http://www.dsprobotics.com/flowstone.html&lt;/a&gt;  &lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Mon, 05 Mar 2012 11:15:06 +0800</pubDate>
      <link>https://ruby-china.org/topics/1619</link>
      <guid>https://ruby-china.org/topics/1619</guid>
    </item>
    <item>
      <title>我说咋最近单位和家里上网，很多网站突然打不开了。</title>
      <description>&lt;p&gt;难道是为了两会？  &lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Mon, 27 Feb 2012 10:31:58 +0800</pubDate>
      <link>https://ruby-china.org/topics/1442</link>
      <guid>https://ruby-china.org/topics/1442</guid>
    </item>
    <item>
      <title>在 windows xp 成功编译 gem typhoeus 的步骤</title>
      <description>&lt;p&gt;虽说捣鼓编译环境是个体力活，在 windows 下尤甚。但是这个能力是哪个平台都需要的。Unix/Linux 要更方便一些。如果遇到有些开源工程，系统里并没有自带其编译环境，那也得自己捣鼓了。尤其是做 C/C++ 开发的:&amp;gt;&lt;/p&gt;

&lt;p&gt;还是很赞同大家的观点：&lt;strong&gt;做 Rails 开发最好不要在 windows 下&lt;/strong&gt;。如果实在没得选择，那就硬着头皮上吧。祝福你千万别撞上那些无解的 gem。呵呵&lt;/p&gt;

&lt;p&gt;写给&lt;a href="/carl" class="user-mention" title="@carl"&gt;&lt;i&gt;@&lt;/i&gt;carl&lt;/a&gt; 在 windows xp 下成功编译 typhoeus 通过，并运行。步骤如下，希望对你有所帮助，今后遇到类似的 gem，也可做参考。&lt;/p&gt;

&lt;p&gt;要编译 native gem，首先要有&lt;strong&gt;DevKit&lt;/strong&gt;.这是必须的。&lt;/p&gt;

&lt;p&gt;其实 curl 有 windows 预先编译好的 dev 包:
&lt;a href="http://www.gknw.net/mirror/curl/win32/curl-7.24.0-devel-mingw32.zip" rel="nofollow" target="_blank"&gt;http://www.gknw.net/mirror/curl/win32/curl-7.24.0-devel-mingw32.zip&lt;/a&gt;. 
估计是被墙了，下载不了。那我们就自己编译 curl。&lt;/p&gt;

&lt;p&gt;1.编译 curl
下载 curl 代码：&lt;a href="http://curl.haxx.se/download/curl-7.24.0.zip" rel="nofollow" target="_blank"&gt;http://curl.haxx.se/download/curl-7.24.0.zip&lt;/a&gt;.
把代码 解压缩至一个目录 (我的是 R 盘):R:\curl-7.24.0&lt;/p&gt;

&lt;p&gt;在终端下，切换到你的 Devkit 的安装目录，运行 msys.bat，进入 Devkit 带的 mingw 环境。
在 mingw 环境下进入到 curl 的 lib 目录下，然后 make -f Makefile.m32 
make 完成以后，lib 目录下会生成 libcurl.a,libcurldll.a,libcurl.dll 这三个&lt;/p&gt;

&lt;p&gt;2.编译 typhoeus
在 windows 下，typhoeus 是动态链接到 curl 的。所以需要 libcurldll.a,libcurl.dll 这两个。
&lt;strong&gt;typhoeus 没有依赖系统特性，只用了 curl 了，还算比较好编译&lt;/strong&gt;。&lt;/p&gt;

&lt;p&gt;有一点要注意:
你可以建立一个目录 importlib，然后把&lt;strong&gt;libcurldll.a&lt;/strong&gt; (30 几 k 的那个) 考到这个 importlib，然后改名:libcurldll.a -&amp;gt;&lt;strong&gt;libcurl.a&lt;/strong&gt;  &lt;strong&gt;改名这一步很重要&lt;/strong&gt;。&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;set CPATH=R:\curl-7.24.0\include
set LIBRARY_PATH=R:\curl-7.24.0\importlib

gem install typhoeus --platform=ruby
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;输出信息：&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
Successfully installed typhoeus-0.3.3
1 gem installed
Installing ri documentation for typhoeus-0.3.3...
Installing RDoc documentation for typhoeus-0.3.3...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;编译完成之后，因为该 gem 在运行时依赖 libcurl.dll，所以需要把 libcurl.dll 的路径添加到环境变量 PATH 里。如果嫌麻烦，直接把 libcurl.dll 拷贝到 ruby 的 bin 目录里也行。比如：E:\Ruby192\bin.   &lt;/p&gt;</description>
      <author>skandhas</author>
      <pubDate>Wed, 08 Feb 2012 13:46:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/1084</link>
      <guid>https://ruby-china.org/topics/1084</guid>
    </item>
  </channel>
</rss>
