<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>kgen (Kgen Bao)</title>
    <link>https://ruby-china.org/kgen</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>调查一下论坛上用 Linux 的桌面环境</title>
      <description>&lt;p&gt;服务器环境基本都是字符界面，没人安装 GUI 的，所以好统一。&lt;/p&gt;

&lt;p&gt;Linux 桌面环境每个人习惯都不一样。所以，想调查一下，目前在用 Linux 桌面的，你们的环境是怎么样的？&lt;/p&gt;

&lt;p&gt;这样我们可以尽可能提供合适的工具给 Linux 平台。&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;</description>
      <author>kgen</author>
      <pubDate>Wed, 28 Jun 2017 23:45:28 +0800</pubDate>
      <link>https://ruby-china.org/topics/33354</link>
      <guid>https://ruby-china.org/topics/33354</guid>
    </item>
    <item>
      <title>Ruby 开发者也有自己的 Telegram 群啦！</title>
      <description>&lt;p&gt;技术圈用 &lt;a href="https://telegram.org" rel="nofollow" target="_blank" title=""&gt;Telegram&lt;/a&gt; 的人非常多，各个技术几乎都有自己的 Telegram 群，连一些活动和 Podcasts 都有 Telegram 群了。唯独没找到全是 Rubyist 的 Telegram 群 &amp;gt;_&amp;lt;&lt;/p&gt;

&lt;p&gt;于是建立了一个 &lt;del&gt;&lt;strong&gt;Ruby China&lt;/strong&gt; Telegram 群&lt;/del&gt;（已改名，见下文），并转化成公开群了，欢迎大家来瞎扯淡。&lt;/p&gt;

&lt;p&gt;群链接：&lt;del&gt;&lt;a href="https://t.me/rubychina" rel="nofollow" target="_blank"&gt;https://t.me/rubychina&lt;/a&gt;&lt;/del&gt;（已改名，见下文）&lt;/p&gt;
&lt;h2 id="2017年7月15日 更新"&gt;2017 年 7 月 15 日 更新&lt;/h2&gt;
&lt;p&gt;2017 年 6 月 8 日，我建立了本群，&lt;a href="/Rei" class="user-mention" title="@Rei"&gt;&lt;i&gt;@&lt;/i&gt;Rei&lt;/a&gt; 主动联系我，表示要把 Telgram URL: rubychina 转给我，并表示把群名也改成 RubyChina。我表示同意，把群名称和链接都改成了 RubyChina，并添加 &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;2017 年 7 月 14 日，&lt;a href="/Rei" class="user-mention" title="@Rei"&gt;&lt;i&gt;@&lt;/i&gt;Rei&lt;/a&gt; 联系我，希望要回 Telgram URL: rubychina。&lt;/p&gt;

&lt;p&gt;我不想因此给已经加入和想要加入群的 Ruby 开发者造成困扰。所以，公告一下：&lt;/p&gt;

&lt;p&gt;原 Ruby China 群，改名为 Ruby 中文圈，其他一切照旧，URL 改为：&lt;a href="https://t.me/rubycn" rel="nofollow" target="_blank"&gt;https://t.me/rubycn&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ruby China 群的名字和 URL 已转让给 &lt;a href="/Rei" class="user-mention" title="@Rei"&gt;&lt;i&gt;@&lt;/i&gt;Rei&lt;/a&gt;。&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Thu, 08 Jun 2017 17:10:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/33176</link>
      <guid>https://ruby-china.org/topics/33176</guid>
    </item>
    <item>
      <title>Stack Overflow 帮助 100 万开发者退出 Vim</title>
      <description>&lt;p&gt;今天 Stack Overflow 最热门的问题之一：如何退出 Vim，达到了 &lt;strong&gt;1000082&lt;/strong&gt; 次阅读，成功帮助了百万开发者摆脱 Vim 的束缚。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/50a77229-287b-4285-be5c-912b1687b521.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;这事儿，你怎么看？&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Wed, 24 May 2017 17:23:32 +0800</pubDate>
      <link>https://ruby-china.org/topics/33062</link>
      <guid>https://ruby-china.org/topics/33062</guid>
    </item>
    <item>
      <title>用 Twitter 的投票功能，发现 PHP 的势力还是很强大的</title>
      <description>&lt;p&gt;Twitter 的投票功能，还是很有用的&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/7c958e443f08c5e0bd9cea461f528036.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;&lt;del&gt;请忽略昵称等无关信息 O_o&lt;/del&gt;&lt;/p&gt;

&lt;p&gt;这个梗后来被用到千千万万的场景，其实我还是很想知道，它的起源到底是什么。&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Sun, 01 Nov 2015 02:19:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/27910</link>
      <guid>https://ruby-china.org/topics/27910</guid>
    </item>
    <item>
      <title>git commit -m "Fixed interface issues."</title>
      <description>&lt;p&gt;git commit -m "Fixed interface issues."&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/347e864a4ed76606f1f820b720a8aca0.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Tue, 28 Jul 2015 01:16:49 +0800</pubDate>
      <link>https://ruby-china.org/topics/26669</link>
      <guid>https://ruby-china.org/topics/26669</guid>
    </item>
    <item>
      <title>Rails 3.2.22, 4.1.11 and 4.2.2 发布了，修复了 N 个安全漏洞</title>
      <description>&lt;p&gt;部分漏洞比较严重，线上的应用快升级。&lt;/p&gt;

&lt;p&gt;Rails 4.1.11 and 4.2.2 修复的漏洞：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CVE-2015-3226&lt;/li&gt;
&lt;li&gt;CVE-2015-3227&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rails 3.2.22 修复的漏洞：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CVE-2015-3227&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;jquery-ujs 和 jquery-rails 修复的漏洞：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CVE-2015-1840&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rack 修复的漏洞：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CVE-2015-3225&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="简单说一下这几个漏洞"&gt;简单说一下这几个漏洞&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;CVE-2015-3227 是 XML 解析器的一个 bug，通过一个特别构造的 XML 请求，导致 SystemStackError，连续发送可以搞挂系统，用于 DoS Attack.&lt;/li&gt;
&lt;li&gt;CVE-2015-3226 是个 XSS 漏洞，出现在 JSON encode 的部分。&lt;/li&gt;
&lt;li&gt;CVE-2015-1840 是一个 CSRF 漏洞，攻击者可以控制 href 属性，让它指向一个用于攻击的 URL。&lt;/li&gt;
&lt;/ul&gt;

&lt;hr&gt;

&lt;p&gt;官方链接：&lt;a href="http://weblog.rubyonrails.org/2015/6/16/Rails-3-2-22-4-1-11-and-4-2-2-have-been-released-and-more/" rel="nofollow" target="_blank" title=""&gt;Rails 3.2.22, 4.1.11 and 4.2.2 have been released and more&lt;/a&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Wed, 17 Jun 2015 04:36:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/26056</link>
      <guid>https://ruby-china.org/topics/26056</guid>
    </item>
    <item>
      <title>Ruby 2.2.2 发布了，修复了那个 SSL 证书验证的安全问题</title>
      <description>&lt;p&gt;官方发现这个安全问题：
&lt;a href="https://www.ruby-lang.org/en/news/2015/04/13/ruby-openssl-hostname-matching-vulnerability/" rel="nofollow" target="_blank" title=""&gt;CVE-2015-1855: Ruby OpenSSL Hostname Verification&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;这个问题受影响的版本极多，大部分老版本都涉及了：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;All ruby 2.0 versions prior to ruby 2.0.0 patchlevel 645&lt;/li&gt;
&lt;li&gt;All ruby 2.1 versions prior to ruby 2.1.6&lt;/li&gt;
&lt;li&gt;All ruby 2.2 versions prior to ruby 2.2.2&lt;/li&gt;
&lt;li&gt;prior to trunk revision 50292&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;紧急修复&lt;/strong&gt;后，立刻发布了 Ruby 2.2.2
推荐 Ruby 2.2.1 的人立即更新它，来解决安全隐患。
&lt;a href="https://www.ruby-lang.org/en/news/2015/04/13/ruby-2-2-2-released/" rel="nofollow" target="_blank" title=""&gt;Ruby 2.2.2 Released&lt;/a&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;Ruby 2.1.6, Ruby 2.0.0-p645 也一并发布，及时修复了这个漏洞。&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Tue, 14 Apr 2015 03:55:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/25130</link>
      <guid>https://ruby-china.org/topics/25130</guid>
    </item>
    <item>
      <title>帅爆了的 RSpec 测试结果显示方法：Philips Hue</title>
      <description>&lt;p&gt;用飞利浦的 Hue 灯泡自动显示 RSpec 的测试结果，随着绿色和红色的灯光闪起，这测试过程简直帅爆了！&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;完整视频看这里&lt;/strong&gt;
&lt;span class="embed-responsive embed-responsive-16by9"&gt;&lt;iframe class="embed-responsive-item" src="https://player.vimeo.com/video/124436622" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://vimeo.com/124436622" rel="nofollow" target="_blank" title=""&gt;&lt;img src="https://l.ruby-china.com/photo/2015/4f7ee198e94703916c2b26b5e9b88f5a.jpg" title="" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;RSpec Hue Formatter 的代码看这里：
&lt;a href="https://github.com/yujinakayama/rspec-hue_formatter" rel="nofollow" target="_blank"&gt;https://github.com/yujinakayama/rspec-hue_formatter&lt;/a&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Sun, 12 Apr 2015 00:42:03 +0800</pubDate>
      <link>https://ruby-china.org/topics/25102</link>
      <guid>https://ruby-china.org/topics/25102</guid>
    </item>
    <item>
      <title>墙劫持了百度 JS 攻击 Github，一步解决 malicious javascript detected on this domain</title>
      <description>&lt;p&gt;这事儿开始很多天了，但是因为消息人为封闭的原因，发现依然有很多人不知道。所以，有必要说一下。&lt;/p&gt;

&lt;p&gt;今年 3 月份，墙从对内封闭，进化为对外攻击了。
全球最大的程序员同性交友网站 Github 成为了首个攻击对象。而人质就是百度统计的 JS 代码。&lt;/p&gt;

&lt;p&gt;从海外浏览很多内嵌有百度 JS 的中文网站时，会出现一下警告：&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/a652be8da7f811a2582a750b275ca2cd.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;详细信息，见乌云：&lt;a href="http://drops.wooyun.org/papers/5398" rel="nofollow" target="_blank" title=""&gt;百度统计 js 被劫持用来 DDOS Github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;一键解决方案&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;在 &lt;code&gt;/etc/hosts&lt;/code&gt; 中加入以下内容：&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;127.0.0.1  m1.baidu.com
127.0.0.1  mobads.baidu.com
127.0.0.1  mpro.baidu.com
127.0.0.1  mobads-logs.baidu.com
127.0.0.1  dl.client.baidu.com
127.0.0.1  a.baidu.com
127.0.0.1  wm.baidu.com
127.0.0.1  adm.baidu.com
127.0.0.1  baidutv.baidu.com
127.0.0.1  banlv.baidu.com
127.0.0.1  bar.baidu.com
127.0.0.1  c.baidu.com
127.0.0.1  cb.baidu.com
127.0.0.1  cbjs.baidu.com
127.0.0.1  cjhq.baidu.com
127.0.0.1  cpro.baidu.com
127.0.0.1  drmcmm.baidu.com
127.0.0.1  dzl.baidu.com
127.0.0.1  e.baidu.com
127.0.0.1  eiv.baidu.com
127.0.0.1  gimg.baidu.com
127.0.0.1  guanjia.baidu.com
127.0.0.1  hc.baidu.com
127.0.0.1  hm.baidu.com
127.0.0.1  iebar.baidu.com
127.0.0.1  ikcode.baidu.com
127.0.0.1  ma.baidu.com
127.0.0.1  neirong.baidu.com
127.0.0.1  nsclick.baidu.com
127.0.0.1  pos.baidu.com
127.0.0.1  s.baidu.com
127.0.0.1  sobar.baidu.com
127.0.0.1  sobartop.baidu.com
127.0.0.1  spcode.baidu.com
127.0.0.1  tk.baidu.com
127.0.0.1  tkweb.baidu.com
127.0.0.1  tongji.baidu.com
127.0.0.1  toolbar.baidu.com
127.0.0.1  tracker.baidu.com
127.0.0.1  ucstat.baidu.com
127.0.0.1  ulic.baidu.com
127.0.0.1  union.baidu.com
127.0.0.1  unstat.baidu.com
127.0.0.1  utility.baidu.com
127.0.0.1  utk.baidu.com
127.0.0.1  wangmeng.baidu.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Done！你再也不会看到那个恼人的警告了，也不会请求到墙污染的百度 JS 统计了。&lt;/p&gt;

&lt;p&gt;特别提示：&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;以上内容会屏蔽百度的多个域名，以解决该问题。如果你是百度的粉丝，或者百度的忠实用户，请谨慎使用，避免对你的心灵造成打击。&lt;/li&gt;
&lt;li&gt;此事不是百度的错，而是墙干的，所以，不必因此事指责百度，它也是受害者。&lt;/li&gt;
&lt;/ol&gt;</description>
      <author>kgen</author>
      <pubDate>Sat, 04 Apr 2015 22:11:52 +0800</pubDate>
      <link>https://ruby-china.org/topics/25000</link>
      <guid>https://ruby-china.org/topics/25000</guid>
    </item>
    <item>
      <title>一张图说明什么是 git push --force</title>
      <description>&lt;p&gt;这就是 git push --force&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/58ea6e259f66cb8fcf8350e3c79f6616.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Wed, 11 Mar 2015 08:34:46 +0800</pubDate>
      <link>https://ruby-china.org/topics/24581</link>
      <guid>https://ruby-china.org/topics/24581</guid>
    </item>
    <item>
      <title>新版 MacBook 完全没风扇了</title>
      <description>&lt;p&gt;超薄，超轻 2 磅，Retina 屏幕，无风扇，便携式工作利器啊：
要开 IDE 才能写的，肯定别想了。
但是写 Ruby 只要 Vim / Sublime + Terminal，足够了。&lt;/p&gt;

&lt;p&gt;买买买！&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/dfe499538f681f5b8653e5b6b9074270.jpeg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Tue, 10 Mar 2015 04:01:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/24557</link>
      <guid>https://ruby-china.org/topics/24557</guid>
    </item>
    <item>
      <title>MySQL 用 UUID 作为主键，实际使用中有什么问题</title>
      <description>&lt;p&gt;最近有一个产品尝试采用 UUID 代替默认的 int 主键。&lt;/p&gt;

&lt;p&gt;由于没有在大规模的生产环境中这样用过，虽然搜索了关于 MySQL UUID 主键的优劣势文章，但毕竟案例还是太少，很多还停留在性能测试阶段。&lt;/p&gt;

&lt;p&gt;论坛中是否有朋友在生产环境中采用过 ActiveRecord + MySQL UUID 主键的方案，有没有什么特别的坑？&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Fri, 06 Mar 2015 23:26:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/24509</link>
      <guid>https://ruby-china.org/topics/24509</guid>
    </item>
    <item>
      <title>没有用心设计的代码，一样可以通过测试，然后就这样了……</title>
      <description>&lt;p&gt;看，这 26 个 Case 全部顺利通过了测试&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2015/5839a359207c37c903c7da881d78f678.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Fri, 23 Jan 2015 16:32:41 +0800</pubDate>
      <link>https://ruby-china.org/topics/23907</link>
      <guid>https://ruby-china.org/topics/23907</guid>
    </item>
    <item>
      <title>今天不能 bundle 是因为 rubygems.org 用的 DNSimple 被攻击了</title>
      <description>&lt;p&gt;一大早很多朋友来问 rubygems.org 是不是被墙了，虽然这货在国内访问不快，但没有被墙。
而是它用的 DNSimple 今天凌晨 4 点开始被 DDoS 到现在。&lt;/p&gt;

&lt;p&gt;比如，Github 家的 atom.io，RVM 家的 rvm.io，&lt;a href="https://www.yuntipub.com" rel="nofollow" target="_blank" title=""&gt;云梯&lt;/a&gt;家一半的域名，都在 DNSimple，都受到了影响。&lt;/p&gt;

&lt;p&gt;根据第三方网络流量监控，这次 DNSimple 绝大部分 DDoS 攻击的来源都是 China，真是个悲伤的故事。&lt;/p&gt;

&lt;p&gt;更新&lt;/p&gt;

&lt;p&gt;13 个小时后，DNSimple 终于在今天下午 4 点，化解了攻击，恢复服务了。&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Tue, 02 Dec 2014 13:11:51 +0800</pubDate>
      <link>https://ruby-china.org/topics/22970</link>
      <guid>https://ruby-china.org/topics/22970</guid>
    </item>
    <item>
      <title>作为开发者，你喜欢 markdown 还是所见即所得的编辑器</title>
      <description>&lt;p&gt;Markdown 毁誉参半。&lt;/p&gt;

&lt;p&gt;有人觉得它写起来方便，生成和控制又容易，好用。&lt;/p&gt;

&lt;p&gt;有人觉得它一边写标记干扰思路，标准又不统一，困扰。&lt;/p&gt;

&lt;p&gt;我想了解一下 Ruby 圈的想法，如果你用来写技术文档，你希望它是 Markdown 的编辑器，还是所见即所得的那种，或者你觉得有其他更好的方案？&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Fri, 28 Nov 2014 17:12:51 +0800</pubDate>
      <link>https://ruby-china.org/topics/22915</link>
      <guid>https://ruby-china.org/topics/22915</guid>
    </item>
    <item>
      <title>写完了，天快亮了，81 页</title>
      <description>&lt;p&gt;工作太忙了，同时管理两家创业公司：&lt;a href="https://www.yuntipub.com/" rel="nofollow" target="_blank" title=""&gt;云梯&lt;/a&gt;和秒视，真是个挑战，每天工作到凌晨，大家莫尝试 T_T&lt;/p&gt;

&lt;p&gt;本次大会的 Keynote 终于写完了，81 页，4:41AM 天快亮了，希望明天大家不要拍砖。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/5afadcf0f6813162496b049decbfd692.png" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Sat, 01 Nov 2014 04:43:24 +0800</pubDate>
      <link>https://ruby-china.org/topics/22392</link>
      <guid>https://ruby-china.org/topics/22392</guid>
    </item>
    <item>
      <title>大会期间北京的天气</title>
      <description>&lt;p&gt;到北京了，雾霾还是那么重，分享一张天气图。&lt;/p&gt;

&lt;p&gt;准备参会的童鞋们，注意携带厚外套。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/4110b234419707b05a35e8d33d047d8a.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Thu, 30 Oct 2014 18:03:48 +0800</pubDate>
      <link>https://ruby-china.org/topics/22362</link>
      <guid>https://ruby-china.org/topics/22362</guid>
    </item>
    <item>
      <title>版本号判断原因跳过 Windows 9 的那个笑话，居然是真的！你看源码……</title>
      <description>&lt;p&gt;之前看到微软跳过 Windows 9 的原因是，很多开发者用 Windows 9 开头的字符串来判断是不是 Windows 95/98，大家以为是个笑话。&lt;/p&gt;

&lt;p&gt;结果……这居然是真的！&lt;/p&gt;

&lt;p&gt;在 Sun 的 OpenJDK 1.7 中，真的直接通过字符串开头来判断 Windows 版本……&lt;/p&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;WindowsAttachProvider&lt;/span&gt;&lt;span class="o"&gt;()&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="nc"&gt;String&lt;/span&gt; &lt;span class="n"&gt;os&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getProperty&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"os.name"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;os&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;startsWith&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Windows 9"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="n"&gt;os&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;equals&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Windows Me"&lt;/span&gt;&lt;span class="o"&gt;))&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;throw&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;RuntimeException&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;
            &lt;span class="s"&gt;"This provider is not supported on this version of Windows"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
    &lt;span class="nc"&gt;String&lt;/span&gt; &lt;span class="n"&gt;arch&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getProperty&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"os.arch"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="o"&gt;(!&lt;/span&gt;&lt;span class="n"&gt;arch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;equals&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"x86"&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="o"&gt;!&lt;/span&gt;&lt;span class="n"&gt;arch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;equals&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"amd64"&lt;/span&gt;&lt;span class="o"&gt;))&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;throw&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;RuntimeException&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;
            &lt;span class="s"&gt;"This provider is not supported on this processor architecture"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;特别声明：以上代码版权属于 Oracle，我复制仅用于讨论技术，请 Oracle 不要诉讼我 T_T&lt;/p&gt;

&lt;p&gt;源码见此处：&lt;a href="https://searchcode.com/codesearch/view/17993376/" rel="nofollow" target="_blank"&gt;https://searchcode.com/codesearch/view/17993376/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;对此各位怎么看？&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Thu, 02 Oct 2014 16:51:09 +0800</pubDate>
      <link>https://ruby-china.org/topics/21824</link>
      <guid>https://ruby-china.org/topics/21824</guid>
    </item>
    <item>
      <title>除了 Kingaxis 的云梯外，我开始搞 Catch 的秒视啦</title>
      <description>&lt;p&gt;我是 Kgen，几年前我创建了 Kingaxis。这两年技术圈很热门的 &lt;a href="https://www.yuntipub.com/" rel="nofollow" target="_blank" title=""&gt;云梯&lt;/a&gt; 就是我们的产品。对，你点这个链接注册购买可以获得 10 元优惠！&lt;/p&gt;

&lt;p&gt;不，我今天不是来说云梯的。&lt;/p&gt;

&lt;p&gt;我发现了一个有可能彻底改变沟通方式的产品：&lt;a href="http://catchchat.me" rel="nofollow" target="_blank" title=""&gt;秒视 CatchChat&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/ff65aebd5f3a216c85c74af61cdd41b9.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;秒视，只花了不足 1 个月时间，就发布了第一版，发布后一周就收到了来自几乎所有一线 VC 的 A 轮 Offer。&lt;/p&gt;

&lt;p&gt;为了顺利奔向 100 万用户，两周前，秒视的创始人邀请我去当 CTO，重新设计秒视的技术架构。我去跟团队见了面：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CTO 当然留给我啦。&lt;/li&gt;
&lt;li&gt;PM 是大名鼎鼎的 Ubuntu Tweak 作者 Tualatrix。&lt;/li&gt;
&lt;li&gt;Android 开发由 Twitter 客户端 Twidere 的开发者 Mariotaku 负责。&lt;/li&gt;
&lt;li&gt;市场也来自于几家互联网产品的原市场高管。&lt;/li&gt;
&lt;li&gt;iOS, Android, NodeJS, 运维，都齐全啦，再加上几位 Rubyist 大牛，就所向披靡了。&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;这么棒的团队，我果断就入伙了。于是，我开始了同时管理两家公司的生活。50% Kingaxis 和 云梯，50% 秒视。&lt;/p&gt;

&lt;p&gt;显然一个月无法完成一个完美的产品，目前秒视的后端还是初期原型，我们会以 100 万用户作为第一期目标，重新构建一个高速稳定安全的后端，技术当然是 Web 界最全能的 Ruby on Rails 啦。&lt;/p&gt;

&lt;p&gt;有 Rubyist 愿意来跟我们一起创造它吗？&lt;/p&gt;

&lt;p&gt;感兴趣的朋友，可以看我发的招聘贴：&lt;a href="https://ruby-china.org/topics/21136" rel="nofollow" target="_blank"&gt;https://ruby-china.org/topics/21136&lt;/a&gt;&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Wed, 20 Aug 2014 13:51:24 +0800</pubDate>
      <link>https://ruby-china.org/topics/21138</link>
      <guid>https://ruby-china.org/topics/21138</guid>
    </item>
    <item>
      <title>[全职 Remote] 秒视 CatchChat 招 Rubyist，开发大规模实时短视频 IM 后端 (上线一周拿到 A 轮)</title>
      <description>&lt;p&gt;我是 Kgen，几年前我创建了 Kingaxis。这两年技术圈很热门的 &lt;a href="https://www.yuntipub.com/" rel="nofollow" target="_blank" title=""&gt;云梯&lt;/a&gt; 就是我们的产品。对，你点这个链接注册购买可以获得 10 元优惠！&lt;/p&gt;

&lt;p&gt;不，我今天不是来说云梯的。&lt;/p&gt;

&lt;p&gt;我发现了一个有可能彻底改变沟通方式的产品：&lt;a href="http://catchchat.me" rel="nofollow" target="_blank" title=""&gt;秒视 CatchChat&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/cd14733dcb28171cbcb8740e18dfcc3e.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;秒视，只花了不足 1 个月时间，就发布了第一版，发布后一周就收到了来自几乎所有一线 VC 的 A 轮 Offer。&lt;/p&gt;

&lt;p&gt;为了顺利奔向 100 万用户，两周前，秒视的创始人邀请我去当 CTO，重新设计秒视的技术架构。我去跟团队见了面：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CTO 当然留给我啦。&lt;/li&gt;
&lt;li&gt;PM 是大名鼎鼎的 Ubuntu Tweak 作者 Tualatrix。&lt;/li&gt;
&lt;li&gt;Android 开发由 Twitter 客户端 Twidere 的开发者 Mariotaku 负责。&lt;/li&gt;
&lt;li&gt;市场也来自于几家互联网产品的原市场高管。&lt;/li&gt;
&lt;li&gt;iOS, Android, NodeJS, 运维，都齐全啦，再加上几位 Rubyist 大牛，就所向披靡了。&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;这么棒的团队，我果断就入伙了。于是，我开始了同时管理两家公司的生活。50% Kingaxis 和 云梯，50% 秒视。&lt;/p&gt;

&lt;p&gt;显然一个月无法完成一个完美的产品，目前秒视的后端还是初期原型，我们会以 100 万用户作为第一期目标，重新构建一个高速稳定安全的后端，技术当然是 Web 界最全能的 Ruby on Rails 啦。&lt;/p&gt;

&lt;p&gt;有 Rubyist 愿意来跟我们一起创造它吗？&lt;/p&gt;
&lt;h2 id="1.资深 Ruby 工程师"&gt;1.资深 Ruby 工程师&lt;/h2&gt;
&lt;p&gt;我会和你一起，把支撑 100 万用户短视频聊天的后端架构搭建起来。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;我们的要求：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;熟悉 Ruby on Rails，以及常用的工具链。觉得自己在这个技术栈上是牛人！&lt;/li&gt;
&lt;li&gt;有 1 个以上基于 Ruby on Rails 的互联网产品开发经验&lt;/li&gt;
&lt;li&gt;使用 Mac 或 Linux 进行日常工作&lt;/li&gt;
&lt;li&gt;对，没有第 4 个要求啦。牛逼的人，岂是能用几个固定的技术名词来定义的。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;看看我们能提供什么吧：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;税前 18K - 25K&lt;/li&gt;
&lt;li&gt;弹性工作，绝不打卡&lt;/li&gt;
&lt;li&gt;人人配备云梯，办公室还有云梯路由器&lt;/li&gt;
&lt;li&gt;接受 Remote 方式工作&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="2.Ruby 工程师"&gt;2.Ruby 工程师&lt;/h2&gt;
&lt;p&gt;如果你觉得以上要求太高了，但是想加入我们，那么这个职位也可以哦。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;我们的要求：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;熟悉 Ruby on Rails，以及常用的工具链&lt;/li&gt;
&lt;li&gt;使用 Mac 或 Linux 进行日常工作&lt;/li&gt;
&lt;li&gt;有使用 Ruby on Rails 开发的小作品，小工具&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;看看我们能提供什么吧：&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;税前 12K - 16K&lt;/li&gt;
&lt;li&gt;弹性工作，绝不打卡&lt;/li&gt;
&lt;li&gt;人人配备云梯，办公室还有云梯路由器&lt;/li&gt;
&lt;li&gt;接受 Remote 方式工作&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="加入我们"&gt;加入我们&lt;/h2&gt;
&lt;p&gt;公司在广州，支持 Remote，但只接受中国大陆范围内。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;赶快联系我吧，简历发送到：&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="sx"&gt;%w(keengenius gmail.com)&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"@"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;简历请注明申请的职位：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;资深 Ruby 工程师&lt;/li&gt;
&lt;li&gt;Ruby 工程师&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;附上以下任意内容的简历优先：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;RubyChina ID&lt;/li&gt;
&lt;li&gt;Github ID&lt;/li&gt;
&lt;li&gt;stackoverflow ID&lt;/li&gt;
&lt;li&gt;Blog&lt;/li&gt;
&lt;li&gt;Twitter&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="2014-08-25 更新"&gt;2014-08-25 更新&lt;/h2&gt;
&lt;p&gt;收到了非常多技术很赞的 Rubyist 的应聘简历。&lt;/p&gt;

&lt;p&gt;由于时间原因，我只回复了第一批：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;安排面试时间的简历们。&lt;/li&gt;
&lt;li&gt;觉得互相不够不合适的简历们。&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;后续的很多邮件，还没来得及回复，先给应聘者说声对不起。
我一定会亲自回复每一封应聘邮件的。&lt;/p&gt;</description>
      <author>kgen</author>
      <pubDate>Wed, 20 Aug 2014 13:25:12 +0800</pubDate>
      <link>https://ruby-china.org/topics/21136</link>
      <guid>https://ruby-china.org/topics/21136</guid>
    </item>
  </channel>
</rss>
