<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>xds2000 (Deshi Xiao)</title>
    <link>https://ruby-china.org/xds2000</link>
    <description>follow me on twitter: xds2000</description>
    <language>en-us</language>
    <item>
      <title>Nanobox 最新的 Docker 本地开发工具。for rails</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/87b1ba08b8dd0d5c7bf233428951f065.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;Eliminate Environment Complexity&lt;/p&gt;

&lt;p&gt;&lt;a href="https://desktop.nanobox.io/how-nanobox-works/" rel="nofollow" target="_blank"&gt;https://desktop.nanobox.io/how-nanobox-works/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;推荐给大家。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Sun, 22 Nov 2015 09:47:25 +0800</pubDate>
      <link>https://ruby-china.org/topics/28145</link>
      <guid>https://ruby-china.org/topics/28145</guid>
    </item>
    <item>
      <title>我勒个去，Matz 大叔的新语言 Streem 竟然没人讲讲！</title>
      <description>&lt;p&gt;Matz 大叔的 Streem，号称并发脚本语言，语言设计借鉴 ruby(废话)，erlang 还有其他函数式语言。简单到：&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;STDIN | STDOUT
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;完全突破以前脚本语言的范畴，现在还不能玩，但这个时候加入，绝对会让你在未来成为 Streem 语言高手。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/matz/streem" rel="nofollow" target="_blank"&gt;https://github.com/matz/streem&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;快来和 Matz 一起讨论设计 streem 吧。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Mon, 15 Dec 2014 13:47:26 +0800</pubDate>
      <link>https://ruby-china.org/topics/23204</link>
      <guid>https://ruby-china.org/topics/23204</guid>
    </item>
    <item>
      <title>看完这张图就可以解惑 MVP 是啥东东</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/9cb34d82b6fea1c15657dcec5a580eef.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Sat, 27 Sep 2014 21:47:10 +0800</pubDate>
      <link>https://ruby-china.org/topics/21752</link>
      <guid>https://ruby-china.org/topics/21752</guid>
    </item>
    <item>
      <title>[北京] RedHat 红帽 OpenShift PaaS 云 NOC 技术支持团队招 Associate Software Engineer</title>
      <description>&lt;p&gt;&lt;strong&gt;Job summary&lt;/strong&gt;
The Red Hat OpenShift Online Technical Operations team is looking for a site reliability engineer with experience working in complicated and dynamic environments to join us as an Associate Software Engineer. OpenShift Online is Red Hat's world-class Platform-as-a-Service (PaaS) offering, and keeping the environment available and secure is a top priority. As a Software Engineer, you will play a key role within a team responsible for the day-to-day availability of all OpenShift services at Red Hat. You'll work on problem detection, automated recovery scenarios, and incident management, and maintain an understanding of complicated, interconnected data points to determine when issues arise. This entry-level role is a great opportunity to work with a top-notch team supporting a world-class cloud product, with the chance to move into the OpenShift Quality Engineering team or other non-OpenShift teams within Red Hat.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Primary job responsibilities&lt;/strong&gt;
Actively work to automatically detect potential issues in a large virtualized environment
Write automation scripts to auto-correct or completely prevent issues in our online product
Track and review changes in a highly dynamic environment
Identify single points of failure and other high-risk architecture issues and propose more resilient solutions
Perform and oversee releases to ensure proper life cycle and policies have been followed
Implement software updates, testing, and CVE analysis
Respond appropriately to any security threats&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Required skills&lt;/strong&gt;
Experience running Linux in a production environment (Red Hat Enterprise Linux is preferred)
Red Hat Certified System Administrator (RHCSA) or equivalent experience is required; RHCE or above is a plus
Working knowledge of monitoring systems like Nagios or Zabbix
Working knowledge of configuration management systems like Puppet or Chef
Experience with Infrastructure-as-a-Service (IaaS) layers like AWS or OpenStack
Demonstrated ability to quickly and accurately troubleshoot issues
Expert-level experience with Bash and other scripting languages (Ruby, Python, etc.)&lt;/p&gt;

&lt;p&gt;外部招聘地址：
&lt;a href="http://jobs.redhat.com/jobs/descriptions/associate-software-engineer-beijing-beijing-china-job-1-4559749" rel="nofollow" target="_blank"&gt;http://jobs.redhat.com/jobs/descriptions/associate-software-engineer-beijing-beijing-china-job-1-4559749&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;内部：
我可以内推，有兴趣的朋友，可以顶一下，我给你发内推链接。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 30 Jul 2014 12:51:00 +0800</pubDate>
      <link>https://ruby-china.org/topics/20747</link>
      <guid>https://ruby-china.org/topics/20747</guid>
    </item>
    <item>
      <title>如何学好一门编程语言技巧方法一粒</title>
      <description>&lt;p&gt;从踏入计算机领域的第一课起，我就在学习各种编程语言，并且每种语言的学习方法我还尝试变换过多次。一路过来，14 年的修炼让我对学习编程语言的方法有了一个自己的心得。我想这里分享出来应该可以让更多的 Coder 在阅读完我的心得后顺便可以改进自己的学习方法，让自己变得更强。&lt;/p&gt;

&lt;p&gt;practice make perfect。这是我从《纸牌屋》里听到的一句台词。我很容易就能体会出这个道理，但还是有一些怪问题需要解开。练习本身是很枯燥的，要我说完全就是苦行僧干的事情，一般很难在期望的时间內达到目标。这里有一个关键字，&lt;strong&gt;目标&lt;/strong&gt;。拿我来说，我在学习一些编程语言的时候很容易就迷失了方向，比如 C++ 语言学习的时候，我从一开始就不知道我能用它干什么，只是觉得这个很底层的语言学会一定能成为 &lt;strong&gt;牛人&lt;/strong&gt; ，实际上只知道语法，日常也就只能编写一些书本中的例子。我相信即使是现在，仍然会有这样的人，和我一样，漫无目的的学习。这就像慢性自杀一样可怕，不知道何时是个头。解决办法只有一个，立即停下来，重新设定 &lt;strong&gt;目标&lt;/strong&gt; 。我并不是一个训练有序的机器人，所以在想停下来的时候会纠结一段时间。在我经历过多次这样的场景后，现在已经可以快速的做出判断并执行这个技巧了。我相信任何人如果能意识的训练这种技巧后，以后尽快结束这种不必要的纠结时间，那就是万幸。&lt;/p&gt;

&lt;p&gt;I love this game。这是我看 NBA 广告中一句台词。我非常羡慕 NBA 球员在场上精彩的比赛。但电视仍然欺骗了我，为什么呢？因为事实上电视台转播的都是精华版，常规赛仍然是难看的，并不精彩。像我这样的伪观众更本没有耐心去天天看这个。学习编程语言也是这么个样子，谁也逃不了枯燥无聊的重复代码练习。这个谁都明白，所以我在这里不提这个，我想说说的是另外的一个事情， &lt;strong&gt;钱&lt;/strong&gt; 。程序员的工资水平相对其他行业，总的来说还是过的去的。所以，如果你给我一个不可接受的价钱，我绝对是立即走人的。我看到的这样的场景无数次，包括我也有这样的想法，钱太少了。在经历过无数次的历练后，发现一个事实：你用一门编程语言，是因为你很喜欢使用它，这和钱一点关系没有。你为了能天天编程，你必须要找一个地方施展开。所以无论别人给多少钱，你都不应该为此而诱惑。这里给一个简单的公式，应聘这个可以让你有多大的施展空间，这个才是关键。别用钱来限制自己，应该用舞台来展示自己。&lt;/p&gt;

&lt;p&gt;remote by 37singals，这是一本书的名字。我看完后产生一个观点，那就是 &lt;strong&gt;独立开发者&lt;/strong&gt; 在未来的时代将会有更好的施展空间。已经有很多人早就实现了这个，非常让人羡慕。但我仍然非常坦陈的想告诉你，改变并不容易。不如把当下的你的工作做的更出色。不要再局限于一种语言或者技能上，你要全面的自我学习，超越自己现有的编程能力就是进步。&lt;/p&gt;

&lt;p&gt;effective learning。学一门语言到底需要多少时间，大家有自己的判断。但我想给大家一个方法。一本书看一周，就算入门了。不要自己欺骗自己，就一周最多 30 个小时，就可以入门。很多人一直 &lt;strong&gt;迷恋入门阶段&lt;/strong&gt;  ，即使已经入门了，还在那里原步踏步踏就是不在前行。还有些人更是把读一门语言的源码作为入门的最高境界，比如我买过一本这样的书《Python 源码剖析》，至今没有完整看过一遍。其实学编程语言最大的用处是用它，而不是造它，那是孔乙己的学法，过时了。&lt;/p&gt;

&lt;p&gt;open source。学一周语言编程，就可以参与开发了。但没人会给你一个赚钱的项目让你练手。所以更多的人，就闭门造车。模仿复制只有少数人能做的漂亮。不如 &lt;strong&gt;参与一个开源项目&lt;/strong&gt; ，练手比创造要来的容易。随着时间的积累，你随时可以加入新功能，并能快速体会到用户的反馈。这是最真实的，也是最有效的。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 26 Feb 2014 18:10:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/17505</link>
      <guid>https://ruby-china.org/topics/17505</guid>
    </item>
    <item>
      <title>Ruby 2.1.0 in Production 的 bug 必须修啊，这个宜早不宜迟啊。</title>
      <description>&lt;p&gt;&lt;a href="https://gist.github.com/tmm1/8393897" rel="nofollow" target="_blank"&gt;https://gist.github.com/tmm1/8393897&lt;/a&gt;&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Mon, 13 Jan 2014 11:15:21 +0800</pubDate>
      <link>https://ruby-china.org/topics/16755</link>
      <guid>https://ruby-china.org/topics/16755</guid>
    </item>
    <item>
      <title>这个 Star 2000+ 的中文算法集锦，中文的，其中的思路还是可以帮到一波人的</title>
      <description>&lt;p&gt;算法对于非科班出身的人来说，简直就是一个坑。它一般出现在“高大上”的场景下。所以当我还是一个普通开发者的时候，很多时候我还是直接回避它。但一路走过来，为了科学的，持续的成为专业人士，我认为我们需要了解它。如何了解算法，非一日之功，但并不妨碍我们管中窥豹，看看别人的思路。多加练习仍然可以学到一招半式。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/julycoding/The-Art-Of-Programming-By-July/blob/master/ebook/zh/01.0.md" rel="nofollow" target="_blank"&gt;https://github.com/julycoding/The-Art-Of-Programming-By-July/blob/master/ebook/zh/01.0.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;edit:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;fork 改成 star。&lt;/li&gt;
&lt;/ol&gt;</description>
      <author>xds2000</author>
      <pubDate>Sun, 12 Jan 2014 18:22:37 +0800</pubDate>
      <link>https://ruby-china.org/topics/16746</link>
      <guid>https://ruby-china.org/topics/16746</guid>
    </item>
    <item>
      <title>Laravel, 为 Web 工匠定制的 PHP 框架。让 Rails 也颤抖一下。</title>
      <description>&lt;p&gt;最近冒出来的一个 PHP web 框架，
&lt;a href="http://laravel.com/" rel="nofollow" target="_blank"&gt;http://laravel.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;RESTful Routing
这个好，&lt;/p&gt;

&lt;p&gt;Proven Foundation
使用了成熟的 Symfony 组件，不是从头开始做的，有质量保证&lt;/p&gt;

&lt;p&gt;Composer Powered
依赖问题也直接解决&lt;/p&gt;

&lt;p&gt;Command Your Data
这块是 PHP 的强项，就是不优雅而已。&lt;/p&gt;

&lt;p&gt;Beautiful Templating
模板也现成的&lt;/p&gt;

&lt;p&gt;Great Community
社区离不开你&lt;/p&gt;

&lt;p&gt;Red, Green, Refactor
有测试，让你也专业。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Fri, 27 Dec 2013 17:31:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/16468</link>
      <guid>https://ruby-china.org/topics/16468</guid>
    </item>
    <item>
      <title>DHH 再次重申，Rails 项目应该拥抱 SJR，别去整啥 JSON-Client render 方案。</title>
      <description>&lt;p&gt;Server-generated JavaScript Responses
&lt;a href="https://37signals.com/svn/posts/3697-server-generated-javascript-responses" rel="nofollow" target="_blank"&gt;https://37signals.com/svn/posts/3697-server-generated-javascript-responses&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;这绝对是最强音的逆袭。你如果没点耐性，就直接接受吧。&lt;img title=":+1:" alt="👍" src="https://twemoji.ruby-china.com/2/svg/1f44d.svg" class="twemoji"&gt;&lt;/p&gt;

&lt;p&gt;Revised：
经过吕哥提醒，是 SJR，不是 RJS。但我怎么觉得这是一回事啊。。。。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 11 Dec 2013 07:41:44 +0800</pubDate>
      <link>https://ruby-china.org/topics/16132</link>
      <guid>https://ruby-china.org/topics/16132</guid>
    </item>
    <item>
      <title>vagrant-dev-box 现在满天飞。请大家多多使用吧。</title>
      <description>&lt;p&gt;很多盆友是 window,linux,mac 各端都修，很容易发散出各种难题，不解决吧，无法体现技术人的价值。但解决吧，等搞了 N 天解决了，回过头看这个问题，发现自己当初只是想学 ruby 做个网站，但手头上解决的却是 vim,linux,window。what's fuck day！所以，想到自己犯下的错误，不能让大家还跟着淌这个浑水，不如帮大家提个醒：用虚拟机吧。这个没啥技巧，Fork,coding, lunch。&lt;/p&gt;

&lt;p&gt;先来一个坑，希望大家多多分享好的坑。
&lt;a href="https://github.com/redsparklabs/spinuplabs-vagrant-dev-box" rel="nofollow" target="_blank"&gt;https://github.com/redsparklabs/spinuplabs-vagrant-dev-box&lt;/a&gt;&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 04 Dec 2013 21:38:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/16014</link>
      <guid>https://ruby-china.org/topics/16014</guid>
    </item>
    <item>
      <title>37signals 的 Jason Fried 的 Remote: Office Not Required 出来了。</title>
      <description>&lt;p&gt;&lt;a href="http://www.amazon.cn/Remote-Office-Not-Required-Fried-Jason/dp/0804138079/ref=reg_hu-rd_add_1_dp" rel="nofollow" target="_blank"&gt;http://www.amazon.cn/Remote-Office-Not-Required-Fried-Jason/dp/0804138079/ref=reg_hu-rd_add_1_dp&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;定吧。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Fri, 25 Oct 2013 13:56:55 +0800</pubDate>
      <link>https://ruby-china.org/topics/15024</link>
      <guid>https://ruby-china.org/topics/15024</guid>
    </item>
    <item>
      <title>“高端大气上档次” 的编程语言学习清单</title>
      <description>&lt;p&gt;对于开发者来说，学一门新语言已经不是什么大事。主要是在需要的时候能快速找到相关的书籍列表。
&lt;a href="https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md" rel="nofollow" target="_blank" title=""&gt;free-programming-books&lt;/a&gt;  这个资源采用 github 协作模式，可以保证资源是最新有效的。太方便了。所以我 Star 了它。你也可以看看。总有一款适合你。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Mon, 14 Oct 2013 21:26:59 +0800</pubDate>
      <link>https://ruby-china.org/topics/14743</link>
      <guid>https://ruby-china.org/topics/14743</guid>
    </item>
    <item>
      <title>PeepCode Git Internals PDF 开源</title>
      <description>&lt;p&gt;&lt;a href="https://github.com/pluralsight/git-internals-pdf/releases" rel="nofollow" target="_blank"&gt;https://github.com/pluralsight/git-internals-pdf/releases&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;想了解 git 的不容错过。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Thu, 10 Oct 2013 18:04:07 +0800</pubDate>
      <link>https://ruby-china.org/topics/14652</link>
      <guid>https://ruby-china.org/topics/14652</guid>
    </item>
    <item>
      <title>注意：Ruby 开发者以后在外面点鸡尾酒，就点 Ruby 版的</title>
      <description>&lt;p&gt;如何服务生不会，你叫他尝试一下：&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- 20 cocoa liqueur "Malibu"
- 20 "Lychee" liqueur
- 40 cognac or brandy
- 150 cherry juice
- lemon
- ice
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/fffd8279764eb9c97e832f97891d8df9.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;你不是 Ruby 开发者，我考，你竟然来 Ruby 社区找乐子。得，你也找个定制版本的吧：
&lt;a href="https://github.com/the-teacher/cocktails_for_programmers/blob/master/cocktails_for_programers.md" rel="nofollow" target="_blank"&gt;https://github.com/the-teacher/cocktails_for_programmers/blob/master/cocktails_for_programers.md&lt;/a&gt;&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Thu, 12 Sep 2013 21:35:17 +0800</pubDate>
      <link>https://ruby-china.org/topics/14081</link>
      <guid>https://ruby-china.org/topics/14081</guid>
    </item>
    <item>
      <title>分享一个 shell function，在命令行下快速切换到你的 workspace 目录下的任意项目</title>
      <description>&lt;p&gt;我有一个习惯就是把代码工程都放在一个目录里，命名为 Code。每天打开 Terminal，我都是先切换到 Code 目录，然后在看看需要到那个工程目录开发。后来，我在 github 上看别人的 dotfiles，发现了这个函数，分享给大家，希望大家喜欢。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/xiaods/dotfiles/blob/master/bash_config.sh" rel="nofollow" target="_blank"&gt;https://github.com/xiaods/dotfiles/blob/master/bash_config.sh&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;用起来特简单，打开 Terminal，输入 work 就到你的工程目录，想到 fork 下来的 ruby-china，就输入 work ruby-china。&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# shortcut to workspace&lt;/span&gt;
&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;SHARED_WORKSPACE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="s2"&gt;/Documents/Code"&lt;/span&gt;

&lt;span class="c"&gt;# `work foo` to navigate to SHARED_WORKSPACE/foo.&lt;/span&gt;
work&lt;span class="o"&gt;()&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
  &lt;span class="nb"&gt;dir&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;workspace&lt;span class="si"&gt;)&lt;/span&gt;
  &lt;span class="nb"&gt;cd&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$dir&lt;/span&gt;&lt;span class="s2"&gt;/&lt;/span&gt;&lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;1&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;# Used by work() and _work() to determine workspace your projects live in. Set&lt;/span&gt;
&lt;span class="c"&gt;# the SHARED_WORKSPACE environment variable if this is not ~/workspace/.&lt;/span&gt;
workspace&lt;span class="o"&gt;()&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
  &lt;span class="nv"&gt;result&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt; &lt;span class="nt"&gt;-s&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$SHARED_WORKSPACE&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;$SHARED_WORKSPACE&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"~/workspace/"&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;
  &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$result&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;# bash completion function for work(). Allows you to type `work f` to&lt;/span&gt;
&lt;span class="c"&gt;# auto-complete to `work foo`, following standard Bash directory-completion&lt;/span&gt;
&lt;span class="c"&gt;# rules.&lt;/span&gt;
_work&lt;span class="o"&gt;()&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
  &lt;span class="nb"&gt;local &lt;/span&gt;cur
  &lt;span class="nb"&gt;local &lt;/span&gt;trim
  &lt;span class="nb"&gt;local dir&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;workspace&lt;span class="si"&gt;)&lt;/span&gt;
  &lt;span class="nv"&gt;cur&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;COMP_WORDS&lt;/span&gt;&lt;span class="p"&gt;[COMP_CWORD]&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;
  &lt;span class="c"&gt;# length of expanded path, used to trim off first portion of matched paths below&lt;/span&gt;
  &lt;span class="nv"&gt;trim&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;$dir&lt;/span&gt;/ | &lt;span class="nb"&gt;wc&lt;/span&gt; &lt;span class="nt"&gt;-c&lt;/span&gt;&lt;span class="sb"&gt;`&lt;/span&gt;
  &lt;span class="c"&gt;# perform completion, returning all directories in workspace, trimming off the path to the workspace&lt;/span&gt;
  &lt;span class="nv"&gt;COMPREPLY&lt;/span&gt;&lt;span class="o"&gt;=(&lt;/span&gt; &lt;span class="si"&gt;$(&lt;/span&gt; &lt;span class="nb"&gt;compgen&lt;/span&gt; &lt;span class="nt"&gt;-S&lt;/span&gt;/ &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nv"&gt;$dir&lt;/span&gt;/&lt;span class="nv"&gt;$cur&lt;/span&gt; | &lt;span class="nb"&gt;cut&lt;/span&gt; &lt;span class="nt"&gt;-b&lt;/span&gt; &lt;span class="nv"&gt;$trim&lt;/span&gt;- &lt;span class="si"&gt;)&lt;/span&gt; &lt;span class="o"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;# enable completion for work() function using _work(), but only if `complete` exists&lt;/span&gt;
&lt;span class="nb"&gt;command&lt;/span&gt; &lt;span class="nt"&gt;-v&lt;/span&gt; &lt;span class="nb"&gt;complete&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /dev/null &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;complete&lt;/span&gt; &lt;span class="nt"&gt;-o&lt;/span&gt; nospace &lt;span class="nt"&gt;-F&lt;/span&gt; _work work


&lt;/code&gt;&lt;/pre&gt;</description>
      <author>xds2000</author>
      <pubDate>Tue, 10 Sep 2013 21:27:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/14017</link>
      <guid>https://ruby-china.org/topics/14017</guid>
    </item>
    <item>
      <title>有幸在这个介绍亚洲开源的 slide 里看到了 ruby-china 的链接。Cool.</title>
      <description>&lt;p&gt;&lt;a href="http://www.slideshare.net/OReillyOSCON/an-overview-of-open-source-in-east-asia-china-japan-korea" rel="nofollow" target="_blank"&gt;http://www.slideshare.net/OReillyOSCON/an-overview-of-open-source-in-east-asia-china-japan-korea&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;希望大家顶起 Ruby.&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Fri, 26 Jul 2013 20:36:50 +0800</pubDate>
      <link>https://ruby-china.org/topics/12810</link>
      <guid>https://ruby-china.org/topics/12810</guid>
    </item>
    <item>
      <title>开源的 Open Source PaaS，Flynn，正在从社区筹募资金。号称小 Heroku.</title>
      <description>&lt;p&gt;&lt;a href="https://flynn.io/" rel="nofollow" target="_blank"&gt;https://flynn.io/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/35b536034f466c64bc8def36985cbb16.gif" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 24 Jul 2013 17:49:40 +0800</pubDate>
      <link>https://ruby-china.org/topics/12747</link>
      <guid>https://ruby-china.org/topics/12747</guid>
    </item>
    <item>
      <title>nodejs-cantas. 开源的实时管理工具 更新到 1.0, Open Source Trello implementation.</title>
      <description>&lt;p&gt;April 24,2014&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;support card search.&lt;/li&gt;
&lt;li&gt;version upgrade to 1.0&lt;/li&gt;
&lt;li&gt;integrate with bugzilla.&lt;/li&gt;
&lt;li&gt;new community, onepiecejs &lt;/li&gt;
&lt;li&gt;welcome new contributer.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://github.com/onepiecejs/nodejs-cantas" rel="nofollow" target="_blank"&gt;https://github.com/onepiecejs/nodejs-cantas&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Updated: Mon Sept. 30,2013&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;支持直接导入 trello 的 board json 文件&lt;/li&gt;
&lt;li&gt;Card 支持上传图片，文件&lt;/li&gt;
&lt;li&gt;Card 能设置封面&lt;/li&gt;
&lt;li&gt;Backbone 升级到 1.0&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;==============
Cantas is a real-time collaborative web application.
&lt;a href="https://github.com/xiaods/nodejs-cantas" rel="nofollow" target="_blank"&gt;https://github.com/xiaods/nodejs-cantas&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;自上次 rubyconf china 之后就开了这个项目，从第一行 Nodejs 代码写起。项目有内部团队支持，差不多一年，出来个摸样。分享出来给大家练手使用。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Wed, 10 Jul 2013 18:33:20 +0800</pubDate>
      <link>https://ruby-china.org/topics/12401</link>
      <guid>https://ruby-china.org/topics/12401</guid>
    </item>
    <item>
      <title> Ruby 1.8.7 这会真的退休了。</title>
      <description>&lt;p&gt;&lt;a href="http://www.ruby-lang.org/ja/news/2013/06/30/we-retire-1-8-7/" rel="nofollow" target="_blank"&gt;http://www.ruby-lang.org/ja/news/2013/06/30/we-retire-1-8-7/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I think the majority of people and that you are using 2.0.0 or ruby ​​1.9.x already. Once (., So please if still exists), there was a version 1.4.x, 1.6.x, and 1.8.x. These are known as MRI, is a descendant of 1.0 lineal ruby. 1.8.0 was released by matz ruby ​​as state-of-the-art at that time, 1.8.7 is now one of the last of its pedigree. &lt;/p&gt;

&lt;p&gt;When you talk technical, 10 years after 1.8.0 is released, five years have passed since 1.8.7 is released. Until then, ruby ​​was used for writing CGI scripts. Thereafter, Rails appeared, the situation is completely changed. Many people have started using ruby. And we have reached a merge (was called YARV at that time) new engine made out of ko1. This engine was a ruby ​​legitimate being used today. &lt;/p&gt;

&lt;p&gt;I can say '10 have passed, 1.8.7 has become legacy is that it very gratifying. 1.8.7 made a history. Literally, I have changed our lives. And, in order to ever-changing, we move forward. Is a wonderful very Ruby 2.0.0, but to the more attractive the 2.1 come, allowed to end 1.8.7, we will continue to focus on ruby ​​trunk is developing state-of-the-art version. &lt;/p&gt;

&lt;p&gt;Thank you, 1.8.7. It was a good life as a program. &lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Sun, 30 Jun 2013 18:31:40 +0800</pubDate>
      <link>https://ruby-china.org/topics/12119</link>
      <guid>https://ruby-china.org/topics/12119</guid>
    </item>
    <item>
      <title>ruby 的痛。Gemifying Ruby standard library</title>
      <description>&lt;p&gt;&lt;a href="https://bugs.ruby-lang.org/issues/5481" rel="nofollow" target="_blank"&gt;https://bugs.ruby-lang.org/issues/5481&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ruby 源代码中包含大量内建的 ruby library，但都不是 gem 形式。和社区中的 gem 是一个设计上的代码分离。有兴趣的可以 Hack 一下。大家可以谈谈对此的看法。&lt;/p&gt;</description>
      <author>xds2000</author>
      <pubDate>Fri, 24 May 2013 10:34:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/11204</link>
      <guid>https://ruby-china.org/topics/11204</guid>
    </item>
  </channel>
</rss>
