<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>wushexu (yogor)</title>
    <link>https://ruby-china.org/wushexu</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>开源一个工具（BTC/ETH/...现货交易）</title>
      <description>&lt;p&gt;通过 API 连接交易所，辅助现货交易。
需要部署到自己的服务器，不支持多人使用。&lt;/p&gt;

&lt;p&gt;这是前后端分离的项目，后端是 node.js： &lt;a href="https://github.com/yobett/oec-nest" rel="nofollow" target="_blank"&gt;https://github.com/yobett/oec-nest&lt;/a&gt; ，前端是 Angular： &lt;a href="https://github.com/yobett/oec-ng" rel="nofollow" target="_blank"&gt;https://github.com/yobett/oec-ng&lt;/a&gt; &lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Tue, 21 Sep 2021 15:11:49 +0800</pubDate>
      <link>https://ruby-china.org/topics/41704</link>
      <guid>https://ruby-china.org/topics/41704</guid>
    </item>
    <item>
      <title>用 Node.js 做一个项目的后端，后悔了</title>
      <description>&lt;p&gt;本人近一年都在撸一个创业项目，近日终于上线了。&lt;/p&gt;

&lt;p&gt;这是一个 &lt;a href="http://yuwen-reading.net" rel="nofollow" target="_blank" title=""&gt;英语阅读&lt;/a&gt; 的项目，工作量巨大，个中甘苦自不待言。&lt;/p&gt;

&lt;p&gt;要说过程中有什么遗憾或者后悔的，就是后端采用了 Node.js，后悔没用 Ruby。&lt;/p&gt;

&lt;p&gt;当时选 Node.js 有一点原因是它不那么烧服务器，现在看来是想得多了。&lt;/p&gt;

&lt;p&gt;大量的静态化、cache 使得这个问题微不足道。何况开发效率才是王道。&lt;/p&gt;

&lt;p&gt;当时后端不想用那么重的框架，所以也没用什么框架，只用了 exprees。用个重的框架还不如 RoR 呢，反正多多少少都是学 RoR。&lt;/p&gt;

&lt;p&gt;然而它实在是过于 simple，甚至于 naive 了，导致很多东西都得手撸。包括 REST、一些公共的 DAO 方法。cors、集中的 session 管理、file upload 也要自己实现或集成。&lt;/p&gt;

&lt;p&gt;开发效率比 RoR 低多了，真是无限怀念 RoR 的 Active Record，REST API。&lt;/p&gt;

&lt;p&gt;js 这样弱类型不适合稍大一些项目的开发。没有强制的 API 契约，IDE/jsLint 起不了作用（btw，TS 真香）。&lt;/p&gt;

&lt;p&gt;大量的 async/await，错误处理要非常小心。简单的 try/catch 是不行的，哪有 rescue/ensure 省事呢。&lt;/p&gt;

&lt;p&gt;我今天就吐槽一下。&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Sat, 13 Jul 2019 16:25:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/38837</link>
      <guid>https://ruby-china.org/topics/38837</guid>
    </item>
    <item>
      <title>关于-ist</title>
      <description>&lt;p&gt;我们知道 Rubyist 是有严格限定的，不是随便一个用 Ruby 的都可以称 Rubyist 的。
Clojure 的 Clojurist 就没有什么讲究，一个初学者都是 Clojurist 了。
有-ist 叫法的其他语言，还有没有比较讲究的？&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Fri, 24 Jul 2015 19:02:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/26636</link>
      <guid>https://ruby-china.org/topics/26636</guid>
    </item>
    <item>
      <title>正则表达式也能这么用</title>
      <description>&lt;p&gt;4clojure 的一道题（&lt;a href="http://www.4clojure.com/problem/67" rel="nofollow" target="_blank"&gt;http://www.4clojure.com/problem/67&lt;/a&gt;），找素数：&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;__&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;[&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="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;__&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;[&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;5&lt;/span&gt; &lt;span class="mi"&gt;7&lt;/span&gt; &lt;span class="mi"&gt;11&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;last &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;__&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;541&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;下划线部分是要填的一个函数，要返回前 n 个素数。输入参数 2，返回 [2 3]；输入 5，返回 [2 3 5 7 11]。&lt;/p&gt;

&lt;p&gt;发现有这么一个 solution，&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fn&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;take&lt;/span&gt;
    &lt;span class="nx"&gt;n&lt;/span&gt;
    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;filter&lt;/span&gt;
      &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;empty&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;re&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;matches&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;^(11+?)&lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;1+$&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;apply&lt;/span&gt; &lt;span class="nf"&gt;str &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;))))&lt;/span&gt;
      &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;drop&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;range&lt;/span&gt;&lt;span class="p"&gt;)))))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;很有创意，不是吗？正则表达式也能这么用^_^（效率另说）。&lt;/p&gt;

&lt;p&gt;=====================================================&lt;/p&gt;

&lt;p&gt;BTW，不考虑效率，这个是比较短的：&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fn&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; 
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;-&amp;gt;&amp;gt;&lt;/span&gt;
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;range&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;drop&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;filter &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fn&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;every&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;mod&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;range&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt;&lt;span class="p"&gt;))))&lt;/span&gt;
  &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;take&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;我自己提交的是这样的（考虑了效率）：&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;fn&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;loop&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="nx"&gt;ps&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="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="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="nx"&gt;ps&lt;/span&gt;
            &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nf"&gt;upper &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;inc &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;int &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;sqrt&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
                  &lt;span class="nf"&gt;ps2 &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;filter&lt;/span&gt; &lt;span class="err"&gt;#&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="nx"&gt;upper&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="nx"&gt;ps&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                  &lt;span class="nf"&gt;fm &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;partial&lt;/span&gt; &lt;span class="nx"&gt;mod&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
                  &lt;span class="nf"&gt;np &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;some&lt;/span&gt; &lt;span class="nx"&gt;zero&lt;/span&gt;&lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;map&lt;/span&gt; &lt;span class="nx"&gt;fm&lt;/span&gt; &lt;span class="nx"&gt;ps2&lt;/span&gt;&lt;span class="p"&gt;))]&lt;/span&gt;
                &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;recur&lt;/span&gt;
                   &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nx"&gt;np&lt;/span&gt; &lt;span class="nf"&gt;i &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;dec&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
                   &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt; &lt;span class="mi"&gt;2&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="nx"&gt;np&lt;/span&gt;
                      &lt;span class="nx"&gt;ps&lt;/span&gt;
                      &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;conj&lt;/span&gt; &lt;span class="nx"&gt;ps&lt;/span&gt; &lt;span class="nx"&gt;n&lt;/span&gt;&lt;span class="p"&gt;)))))))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>wushexu</author>
      <pubDate>Sun, 05 Jul 2015 10:52:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/26330</link>
      <guid>https://ruby-china.org/topics/26330</guid>
    </item>
    <item>
      <title>大家对买错的书是什么感觉</title>
      <description>&lt;p&gt;买书多年，积累了不少感觉买错了的书，这些书有烂书、一般的书，也有好书。可分为三类：
1、书本身烂、或者翻译烂，或者过于 low 了。对这些书，要么翻一遍，要么不翻，想法处理了，送人也好，卖废纸也好。处理了心情就愉快了。不好处理的扔进角落里。
2、书是好书，由于没有时间，或者由于发展方向改变了，没机会看了。包括 Linux 内核架构、内核源码剖析之类的书。
3、书是好书，由于缺少相关基础（例如数学基础），或许加上没有时间，难以掌握。这些书有金融数学、随机过程、DM/ML 原理算法等，以及一些纯数学书。这些书未必属于买错，但可以在以后适宜的时候再买。
后两类书比较影响心情，看着他们总有一种惆怅的感觉。&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Tue, 19 May 2015 11:23:45 +0800</pubDate>
      <link>https://ruby-china.org/topics/25632</link>
      <guid>https://ruby-china.org/topics/25632</guid>
    </item>
    <item>
      <title>有做 BI 相关的吗？</title>
      <description>&lt;p&gt;我知道这里做企业应用的很少，但还是想问一下，有做 BI(Business Inteligence) 相关的吗？数据仓库，ETL，报表，多维分析，数据挖掘，统计分析，工作流，规则引擎，DSS 系统等。
这些领域也是很有意思的。我也有意在这些领域做些事情。&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Tue, 14 Oct 2014 22:11:08 +0800</pubDate>
      <link>https://ruby-china.org/topics/22046</link>
      <guid>https://ruby-china.org/topics/22046</guid>
    </item>
    <item>
      <title>软件技术人员的技术方向</title>
      <description>&lt;p&gt;有技术方向自然就有非技术方向，不过这里只讨论技术方向，谈谈我的理解。&lt;/p&gt;

&lt;p&gt;不同的技术方向没有高低之分，不管哪个领域要达到顶尖都很难。朝什么方向发展主要跟个人的兴趣有关。&lt;/p&gt;
&lt;h2 id="前端工程师"&gt;前端工程师&lt;/h2&gt;
&lt;p&gt;这是很大的一类，几乎所有的软件公司都需要前端工程师。喜欢做前端的人，一般都有一定的审美水平，甚至有点艺术天赋。喜欢直观，不喜欢复杂逻辑。一般不想深入业务，理解不了系统分析师所思考的问题。很多人（大部分）可以自己开发架设一个网站，前端后端都做，（一些人）从而以为自己有全面的能力，什么都可以做，这只是一种错觉。&lt;/p&gt;
&lt;h2 id="后端工程师"&gt;后端工程师&lt;/h2&gt;
&lt;p&gt;也是很大的一类，就叫后端工程师吧。这类人对 UI 兴趣不大，一段时间只对一项技术或一个领域感兴趣，甚至是永远专注于一个领域。如 ETL、报表、工作流、数据库、搜索、大数据等。如果不断拓宽知识面，有可能成为架构师。如果专注于一个技术领域，有可能成为这个领域的专家。基础是否扎实决定了能走多远。&lt;/p&gt;
&lt;h2 id="系统分析师"&gt;系统分析师&lt;/h2&gt;
&lt;p&gt;系统分析师是一个技术方向，因为系统分析师首先要有相当深厚的技术功力，对技术有全局的理解。同时，业务理解能力、梳理能力很强。要把错综复杂的业务需求转化成软件系统，业务建模能力极为重要，优秀的系统分析师就有这个能力。做前端的，或者没做过复杂业务系统的，可能对业务建模没有概念，或者认识不深。要做复杂的业务系统，系统分析师必不可少。系统分析师比较适合担任项目经理的角色。优秀的系统分析师可能也是一个合格的技术架构师。&lt;/p&gt;
&lt;h2 id="（技术）架构师"&gt;（技术）架构师&lt;/h2&gt;
&lt;p&gt;这里说的架构师是指能力水平，而不是架构师的职位。很多职位叫架构师并不是合格的架构师，尤其是小公司的。要求基础十分扎实，知识比较全面，学习能力很强，对技术有很深的的理解。并不要求懂多少具体的技术，而是对技术有全局的理解，需要哪样都可以拿起来。架构师看的东西，可能一般人难以理解。可能前几天看并行计算，这两天看数据挖掘，可能过两天看神经网络，再过两天看数理统计。
架构师负责整个系统技术上的把控，要求从可行方案中找出更好的方案，而不仅仅是找出一个可行的方案。工程师需要务实的品质，架构师尤其需要。基于实际情况考虑解决方案，而不是个人喜好。有些架构师只关注纯洁术，在处理大数据、高并发等技术问题上很有经验，结合复杂业务进行设计的能力稍弱，这就需要系统分析师的配合。业务分析、建模能力很强的的架构师十分难得。&lt;/p&gt;
&lt;h2 id="算法工程师"&gt;算法工程师&lt;/h2&gt;
&lt;p&gt;很多公司并不需要算法工程师，但在有的公司算法工程师至关重要。在有些领域，最核心的技术就是算法。不同领域都会需要算法工程师，但其中应用的知识可能是通用的。比如贝叶斯方法可以用在推荐系统中，也可能用在图像识别软件中；蒙特卡洛方法可以用在某个金融软件，对未来利率变化进行模拟，也可能用在计算机棋类软件中。
能做算法工程师，数学和算法都要有深厚的基础。同时，学习能力也很重要，最好能看懂学术论文，了解最新的成果。如果从书本摘个算法就能解决问题，就不需要算法工程师了。一个推荐系统，命中率 0.9 跟 0.8 可能就有本质的区别。最好的算法工程师都是有学术研究背景的。半路出家做算法工程师是不太可能的。&lt;/p&gt;
&lt;h2 id="安全工程师"&gt;安全工程师&lt;/h2&gt;
&lt;p&gt;有些公司不需要安全工程师。必备的知识和能力包括，密码学原理，网络原理，协议分析，公钥体系，以及包括防火墙，入侵检测系统，操作系统，Web 前端安全等等。
和算法工程师一样，也是一个很专业的领域。人的精力有限，我不太相信一个架构师同时也是一个优秀的安全工程师，或算法工程师。&lt;/p&gt;
&lt;h2 id="其他"&gt;其他&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;DBA&lt;/strong&gt; 虽然随着 nosql 的兴起，关系型数据库的使用有下降的趋势，但 nosql 并不能取代关系数据库。在很多领域，事务性必须绝对保证，不容妥协。传统的 DBA 仍必不可少。
  &lt;strong&gt;操作系统底层&lt;/strong&gt; 做设备驱动程序、嵌入式系统、实时系统、虚拟化、甚至操作系统本身，都需要深入操作系统底层。&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Sat, 27 Apr 2013 17:28:47 +0800</pubDate>
      <link>https://ruby-china.org/topics/10575</link>
      <guid>https://ruby-china.org/topics/10575</guid>
    </item>
    <item>
      <title>如果你发现了一个极具潜力的公司</title>
      <description>&lt;p&gt;比方说，1998 年的 Google，你会怎么做？注意，你的加入可能会影响该公司的运程。
. 加入该公司，开始辉煌的职业生涯
. 拿出尽可能多的钱，成为该公司的股东
. 注册一个公司，密切关注该潜力公司，他做什么我做什么
. 注册或购买所有该公司相关的域名，以后卖给他&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Mon, 22 Apr 2013 11:20:28 +0800</pubDate>
      <link>https://ruby-china.org/topics/10397</link>
      <guid>https://ruby-china.org/topics/10397</guid>
    </item>
    <item>
      <title>男人最重要的品质</title>
      <description>&lt;p&gt;不是瞎扯淡：男人最重要的品质是什么？
这里男人可以限制为：少年、青年。
我好像是不久前才考虑这个问题，不过我自己的回答是确切无疑的，那就是有 &lt;strong&gt;志气&lt;/strong&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;/ul&gt;

&lt;p&gt;现实中会有这样一些人，他做的是技术性的工作，可是几乎从不学习（即使学也是被动的学），上班看起来像是上班，对领导很尊重，可是工作成果惨不忍睹；业余都是看电视剧、电影、逛街。这样的人我就是想抽他，别跟我说他有什么优点。&lt;/p&gt;</description>
      <author>wushexu</author>
      <pubDate>Tue, 16 Apr 2013 15:27:36 +0800</pubDate>
      <link>https://ruby-china.org/topics/10243</link>
      <guid>https://ruby-china.org/topics/10243</guid>
    </item>
  </channel>
</rss>
