<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>pynix (pynix)</title>
    <link>https://ruby-china.org/pynix</link>
    <description>啥也不是</description>
    <language>en-us</language>
    <item>
      <title>招聘智能合约开发，Dapp 前端开发</title>
      <description>&lt;blockquote&gt;
&lt;h2 id="你想升职加薪吗？"&gt;你想升职加薪吗？&lt;/h2&gt;
&lt;h2 id="你想当上总经理吗？"&gt;你想当上总经理吗？&lt;/h2&gt;
&lt;h2 id="你想迎娶白富美吗？"&gt;你想迎娶白富美吗？&lt;/h2&gt;
&lt;h2 id="你想走上人生巅峰吗？"&gt;你想走上人生巅峰吗？&lt;/h2&gt;
&lt;p&gt;&lt;del&gt;别做梦了，好好上班吧。&lt;/del&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="不过这里有离梦想最近的职位。"&gt;不过这里有离梦想最近的职位。&lt;/h2&gt;
&lt;p&gt;国际著名基金孵化去中心化 DEFI 项目，急聘智能合约开发，Dapp 前端开发，要求如下。&lt;/p&gt;
&lt;h3 id="智能合约开发："&gt;智能合约开发：&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;熟悉以太坊及其衍生链&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;熟悉 Solidity 智能合约开发语言&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;熟悉 openzeppelin 等智能合约开发基础库。&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="Dapp前端开发："&gt;Dapp 前端开发：&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;熟悉 React 或 Vue 等 web 前端框架&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;熟悉 web3.j s 或 ethers.js 等以太坊交互 js 库&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;熟悉 css3&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;熟悉 metamask 等钱包连接授权&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;坐标：北京&lt;/p&gt;

&lt;p&gt;公司：天津凯翔瑞科技有限公司&lt;/p&gt;

&lt;p&gt;联系方式：(由于急招，直接扫码 1 轮技术面试，如果可以再推给 HR，薪资你说了算。)
&lt;img src="https://l.ruby-china.com/photo/pynix/2674cb89-157f-459f-98c8-2b5323794db2.png!large" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Sat, 17 Apr 2021 19:26:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/41155</link>
      <guid>https://ruby-china.org/topics/41155</guid>
    </item>
    <item>
      <title>原来 class &lt;&lt; self 是这样的</title>
      <description>&lt;p&gt;ruby 中的 &lt;code&gt;&amp;lt;&amp;lt;&lt;/code&gt; 符号作用太多。&lt;/p&gt;

&lt;p&gt;移位计算
数组 append
还有 open singleton class&lt;/p&gt;

&lt;p&gt;我居然一直没懂这个奇奇怪怪的写法。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Fri, 18 Sep 2020 11:48:41 +0800</pubDate>
      <link>https://ruby-china.org/topics/40418</link>
      <guid>https://ruby-china.org/topics/40418</guid>
    </item>
    <item>
      <title>还有人用 Firefox 吗？分享一个 UI 插件</title>
      <description>&lt;p&gt;&lt;a href="https://github.com/muckSponge/MaterialFox" rel="nofollow" target="_blank"&gt;https://github.com/muckSponge/MaterialFox&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2020/7b717bff-2d61-49d9-9d3c-e491a4f7fd60.png!large" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2020/991d97aa-2aa4-49e9-958f-b0242098b605.png!large" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 16 Sep 2020 14:06:14 +0800</pubDate>
      <link>https://ruby-china.org/topics/40411</link>
      <guid>https://ruby-china.org/topics/40411</guid>
    </item>
    <item>
      <title>看，他来了，他又来了。。。</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2020/0d0432aa-4f57-4cb4-bfef-ae17cab020c4.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;社区人数也不多，怎么就老是遭贼惦记呢。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Thu, 23 Apr 2020 23:28:35 +0800</pubDate>
      <link>https://ruby-china.org/topics/39788</link>
      <guid>https://ruby-china.org/topics/39788</guid>
    </item>
    <item>
      <title>貔貅交易所好像被国外开发者复活了</title>
      <description>&lt;p&gt;小交易所又可能搞起来。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 14 Aug 2019 15:43:57 +0800</pubDate>
      <link>https://ruby-china.org/topics/38941</link>
      <guid>https://ruby-china.org/topics/38941</guid>
    </item>
    <item>
      <title>币圈凉了，这里有多少人进了币圈呢？</title>
      <description>&lt;p&gt;潮水退去，才知道&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Sat, 01 Dec 2018 15:45:38 +0800</pubDate>
      <link>https://ruby-china.org/topics/37841</link>
      <guid>https://ruby-china.org/topics/37841</guid>
    </item>
    <item>
      <title>进程死锁</title>
      <description>&lt;p&gt;在 do 上部署 jruby，puma 线程发生死锁，jvisualvm 显示为 Monitor 状态。大概几 10 分钟后恢复正常。&lt;/p&gt;

&lt;p&gt;本地机器没问题，本地 docker 也没问题。do 上跑 docker 就这样。。。难道是 do 性能太差？&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Thu, 07 Jun 2018 19:41:51 +0800</pubDate>
      <link>https://ruby-china.org/topics/36918</link>
      <guid>https://ruby-china.org/topics/36918</guid>
    </item>
    <item>
      <title>Unicode 可以做标识符有时候也会带来麻烦</title>
      <description>&lt;pre class="highlight plaintext"&gt;&lt;code&gt;undefined method `create！
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;❗️后来加的，不过可能当时输入法处于中文状态。。。&lt;/p&gt;

&lt;p&gt;还是 vim 好？输入之前能确保处于英文状态。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 06 Jun 2018 22:37:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/36914</link>
      <guid>https://ruby-china.org/topics/36914</guid>
    </item>
    <item>
      <title>Deploy Rails app with JRuby and Dokku</title>
      <description>&lt;p&gt;最近想尝试一下 jruby，于是尝试部署了一个 rails 应用，这篇文章会带你一步一步重放部署过程。&lt;/p&gt;
&lt;h2 id="准备环境"&gt;准备环境&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.digitalocean.com/" rel="nofollow" target="_blank" title=""&gt;digitalocean&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/dokku/dokku" rel="nofollow" target="_blank" title=""&gt;dokku&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gist.github.com/pynixwang/a31627dbd64c7e2c29eb616c385b4f2d" rel="nofollow" target="_blank" title=""&gt;dokku cloud-config&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/dokku/dokku/blob/master/contrib/dokku_client.sh" rel="nofollow" target="_blank" title=""&gt;dokku client&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/cpuguy83/docker-jruby/blob/master/9000/jre/Dockerfile" rel="nofollow" target="_blank" title=""&gt;jruby Dockerfile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;域名一个&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="开始"&gt;开始&lt;/h2&gt;
&lt;p&gt;登陆 digitalocean，新建 droplet，如图。
&lt;img src="https://l.ruby-china.com/photo/2018/e1521c32-d245-4b27-ab7a-43e699584d1f.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;系统选择 ubuntu 16.04 x64，digitalocean 的一键部署里也有 dokku，不过版本更新慢。&lt;/li&gt;
&lt;li&gt;选择配置，普通的小项目 2G1 核就够了。&lt;/li&gt;
&lt;li&gt;勾选 User data，复制 dokku cloud-config 内容，主要是安装 dokku，postgresql，letsencrypt 插件，可以修改 dokku 版本号到最新版。&lt;/li&gt;
&lt;li&gt;勾选公钥，起个名，点击 Create。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;等在创建完成后 cloud-init 会根据 cloud-config 内容安装必要组件，现在可以获得 droplet 的 IP。&lt;/p&gt;

&lt;p&gt;接下来需要绑定域名。
拷贝 droplet IP，增加 2 条 A 记录，如图。
&lt;img src="https://l.ruby-china.com/photo/2018/d23353ae-bc64-45f6-be6d-dec4e9c3d82e.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;大概需要几分钟生效。然后浏览器输入域名。
&lt;img src="https://l.ruby-china.com/photo/2018/ed5ada5f-2890-40d2-b552-bc33fc143380.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;打开 dokku web installer。公钥已自动填入，只需要填入域名，勾选 virtual host，点击完成即可。&lt;/p&gt;
&lt;h2 id="安装本地环境"&gt;安装本地环境&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;dokku client
&lt;code&gt;wget https://raw.githubusercontent.com/dokku/dokku/master/contrib/dokku_client.sh -O /usr/local/bin/dokku &amp;amp;&amp;amp; chmod +x /usr/local/bin/dokku&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;jruby and rails&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;rbenv&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;jruby&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;9.2&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="mf"&gt;0.0&lt;/span&gt;
&lt;span class="n"&gt;rbenv&lt;/span&gt; &lt;span class="n"&gt;global&lt;/span&gt; &lt;span class="n"&gt;jruby&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;9.2&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="mf"&gt;0.0&lt;/span&gt;
&lt;span class="n"&gt;gem&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;bundler&lt;/span&gt;
&lt;span class="n"&gt;gem&lt;/span&gt; &lt;span class="n"&gt;install&lt;/span&gt; &lt;span class="n"&gt;rails&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;v&lt;/span&gt; &lt;span class="mf"&gt;5.1&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;
&lt;span class="c1"&gt;# 5.2.0暂时有点小问题。&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="创建项目"&gt;创建项目&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;rails new blog -d postgresql&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;cd blog&lt;/code&gt;
修改&lt;code&gt;config/database.yml&lt;/code&gt;&lt;/p&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;production&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;url&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;%= ENV['DATABASE_URL'] %&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;做一次 git commit&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git add . &amp;amp;&amp;amp; git commit -m "initial commit"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;准备 Docker&lt;/p&gt;

&lt;p&gt;&lt;code&gt;wget https://raw.githubusercontent.com/cpuguy83/docker-jruby/master/9000/jre/Dockerfile&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;去掉&lt;code&gt;CMD ["irb"]&lt;/code&gt;，加入&lt;/p&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;ADD&lt;/span&gt;&lt;span class="s"&gt; . /app&lt;/span&gt;
&lt;span class="k"&gt;WORKDIR&lt;/span&gt;&lt;span class="s"&gt; /app&lt;/span&gt;

&lt;span class="k"&gt;RUN &lt;/span&gt;bundle &lt;span class="nb"&gt;install&lt;/span&gt;
&lt;span class="k"&gt;RUN &lt;/span&gt;bundle &lt;span class="nb"&gt;exec &lt;/span&gt;rake assets:precompile

&lt;span class="k"&gt;CMD&lt;/span&gt;&lt;span class="s"&gt; bundle exec rails s -b 0.0.0.0 -p $PORT&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;加入 listen gem&lt;/p&gt;

&lt;p&gt;&lt;code&gt;echo "gem 'listen'" &amp;gt;&amp;gt; Gemfile &amp;amp;&amp;amp; bundle install&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;提交&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git add . &amp;amp;&amp;amp; git commit -m "add Dockerfile"&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="部署"&gt;部署&lt;/h2&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;DOKKU_HOST&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;pynix.me
dokku apps:create rails
git push &lt;span class="nt"&gt;--set-upstream&lt;/span&gt; dokku master
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;很长的 log..............................&lt;/p&gt;

&lt;p&gt;=====&amp;gt; Application deployed:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://rails.pynix.me" rel="nofollow" target="_blank"&gt;http://rails.pynix.me&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;url 出来了。。点一下看看。
&lt;img src="https://l.ruby-china.com/photo/2018/3c77ada7-282c-4fde-b7cd-9d5706547079.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;还是熟悉的配方，还是熟悉的味道，Oh，Yhe。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 30 May 2018 01:16:27 +0800</pubDate>
      <link>https://ruby-china.org/topics/36865</link>
      <guid>https://ruby-china.org/topics/36865</guid>
    </item>
    <item>
      <title>给大家讲个笑话</title>
      <description>&lt;p&gt;今天手贱把 credentials 的某个 key 注释了，然后&lt;code&gt;rails credentials:edit&lt;/code&gt;直接报错，无法编辑。。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 18 Apr 2018 20:13:56 +0800</pubDate>
      <link>https://ruby-china.org/topics/35484</link>
      <guid>https://ruby-china.org/topics/35484</guid>
    </item>
    <item>
      <title>不能发帖了？</title>
      <description>&lt;p&gt;节点无法选择。。。。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 18 Apr 2018 20:08:50 +0800</pubDate>
      <link>https://ruby-china.org/topics/35483</link>
      <guid>https://ruby-china.org/topics/35483</guid>
    </item>
    <item>
      <title>[北京] 北大 - 清华女神创业团队，诚聘 Ruby 开发大牛！</title>
      <description>&lt;p&gt;这是我们的创业故事，我们正在寻觅 ruby 开发大牛，希望你可以更多的了解我们，然后做出更明智的选择。欢迎加入 Summer！&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;自从《春风十里，不如隔壁》MV 火爆全网以后
很多人都在问关于我们的故事，
这一次，我想真诚地
把我们的故事讲给那些愿意听的人听。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="01"&gt;01&lt;/h2&gt;
&lt;p&gt;从大一来到清华大学新闻学院，我就致力于提高宿舍脱单率，虽然现在靠着三号床一直将宿舍脱单率稳定在 25%，但是我们三个一直在拖后腿…因为自行车车技不好，我刚来学校就换了电动车“小粉”（那时学校里并没有电池爆炸，电动车电池也没有被禁止充电），第一次载人体验就是带室友去参加新生舞会，但是很长一段时间内身边的妹子并没有通过舞会脱单。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/0c50c3fa-c235-41f8-ad06-4d8d299caf07.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;那年新生舞会，嗯，年轻过...&lt;/p&gt;

&lt;p&gt;我开始思考一个问题，为什么这么多可爱的妹子没有男票呢？而且，我的室友真的是嫩得出水，很多人说长得像我侄女。人美心善，她的漂亮不是那种胭脂水粉堆染起来的美丽，而是五官的协调匀称，即使不施粉黛，看起来也是清清爽爽，甜美可爱。&lt;/p&gt;

&lt;p&gt;男生们整天嚷脱单难，找不到女朋友，都是瞎扯，谁让他们整天泡在图书馆、实验室，小组作业从不走心，又不爱扩展自己的社交圈。一年下来，没认识几个新的女生，甚至连男生也没新认识几个。&lt;/p&gt;

&lt;p&gt;在我看来，大学生倾向的与陌生同学交友的方式与大众是不同的，他们是一个相对独立纯粹的圈子，人格成熟度以及对社会的认知度还处于青涩的阶段。在这个阶段里，很多同学恋爱的观念还没有被社会所影响，更多的是追求一种心动的感觉，跟物质财富身份地位的关系不是很大，更多的是追求一种单纯质朴的校园爱恋。&lt;/p&gt;

&lt;p&gt;那么对于大学生来说，什么是校园爱恋？
 伏夏、汽水、单杠，那个野蛮生长的少年和手绞裙边的女孩。像被井水冰过的蜜桃，像近海的一片被阳光照射着的水，大概真的是那种不掺杂任何杂质的爱，在这段青葱的校园时代，留下一段美好的回忆。&lt;/p&gt;

&lt;p&gt;我并没有找到一款非常称心的大学生社交应用，我甚至想过自己做一个。但说实话，从 idea 到真正的实践还是差得很远很远，我从未想着把这些不着边际的想法变为现实，直到遇到了山哥和楚晴。&lt;/p&gt;
&lt;h2 id="02"&gt;02&lt;/h2&gt;
&lt;p&gt;楚晴是和我一个年级的闺蜜，是工程物理系的一位长得很好看的女汉子。可能因为性（zhang）格（de）互（hao）补（kan），我们成为了无话不说的闺蜜，从吐槽前男友到分享小鹿乱撞的激动，她都能懂。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/9b8dc49d-4078-45b0-945c-d0ce57bf037a.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;（可爱的楚晴～～～）&lt;/p&gt;

&lt;p&gt;今年二月份，楚晴在朋友圈转了一篇的推送《校园社交到底还有没有戏？》，公众号的名字叫“山哥”，于是我关注了“山哥”的公众号，发现关于他的故事有很多，未名 BBS 上过 N 次十大热贴，北大的创业达人，特别是 12 年冬天创办的早市网，率先摸索出了校园水果 o2o 的可规模化复制的模式，在毕业前联合创办了许鲜网，引爆了校园市场。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/7c22ba8f-868d-4f1f-8c66-0bb2260e9324.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;（隔壁的山哥）&lt;/p&gt;

&lt;p&gt;就在大家都以为他从此走上创业快车道的时候，他却通过 BBS 上的一个帖子宣告了他的出局，那个帖子占据了 BBS 的十大第一贴很长时间，引起了很广泛的反响和讨论。后来的他，选择了通过工作去磨砺自己，用他自己的话说就是，当你的能力无法支撑你的梦想，那就暂时放弃，去磨练自己。从字里行间能感受到他从稚嫩变得越来越成熟。&lt;/p&gt;

&lt;p&gt;想象着这个文字背后的人，我开始想，是不是可以联合他一起做呢？我跟楚晴一拍即合，于是通过楚晴的努力，我们认识了“山哥”。在某一天晚上，我们约在五道口的 bunny drop 咖啡厅线下“面基”。
我发现，原来世界上真的有和我如此相似的人。三个人越聊越兴奋，只恨相见甚晚。山哥经过三年对于校园社交产品的深入研究，蓄势待发，我和楚晴决定跟着山哥一起做。&lt;/p&gt;

&lt;p&gt;我们开始头脑风暴项目叫什么名字。09 年的一部由马克·韦布导演的电影叫《500 Days of Summer》（我与 Summer 的五百天），一个不相信真爱的女孩遇上一个疯狂爱着她的男孩，也许就是我们要找的奇妙而浪漫的夏日初恋的感觉。由此确定了我们的 app 叫作 Summer。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/128f2afa-217e-4dd0-8ed4-083988056cfd.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;两只单身狗 ssfd...&lt;/p&gt;

&lt;p&gt;那天聊到十二点，才回宿舍...&lt;/p&gt;
&lt;h2 id="03"&gt;03&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;“我们要做的是一款真正走心、有趣的校园社交应用，不然，还不如不做。”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;但是，创业这个词，对于我来说是完全陌生的，尤其是社交产品这块，在大家的时间被微信几乎垄断的情况下，任何一款社交产品想要突围确实不容易。这不是仅仅凭一腔热血就可以做成的，我们要考虑微信的社交边界在哪里，校园社交到底还有没有戏，应该怎么差异化，如何跟竞争对手 PK。&lt;/p&gt;

&lt;p&gt;我们在咖啡店讨论了很多次，发动同学帮我们做问卷调查，然后找很多同学朋友面谈访问，最终，我们确定了 Summer 校园的定位，就是最走心的、大学生专属的、陌生同学交友平台。定位明确以后，那剩下的问题就是到底如何才能把这个需求解决好了。&lt;/p&gt;

&lt;p&gt;当然，依旧常常有人来问我，“陌生人社交软件有很多，Summer 校园如何区别于其他走肾的社交软件呢？”，所以首要问题就是解决如何走心？&lt;/p&gt;

&lt;p&gt;走心，是需要一个真正适合的环境和氛围，同时需要一种机制，双方都认可的规则。
我们找到的方式是答题考试，这是和其他产品最大的不同。女生出题，男生回答，通过答题考试的形式实现一种精神层面的深层次交流，找到真正的 soulmate，而不是单纯的看脸。答题通过后双方才能成为好友自由对话，减少无用社交，提高社交的效率。&lt;/p&gt;

&lt;p&gt;为了确保 Summer 社区的单纯性，我们确定了三条原则，零容忍处分，分别是：约炮、广告、身份造假。同时，只对大学生同学开放，相比其他社交软件，省去了很多筛选用户的成本。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/a32088fc-74e1-43f0-8f9c-2d9bd5d4a8eb.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;（左楚晴、右山哥）
紫操日常开会
不忍吐槽，实在是太简陋了...&lt;/p&gt;
&lt;h2 id="04"&gt;04&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;清华对我最直接的影响并不是专业课，
而是前辈们做事的高度。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;当我们明晰了产品定位和产品逻辑之后，就开始“招兵买马”，搭建技术团队。山哥在北大 bbs 发了招聘，Joe 的女朋友是北大的，Joe 是某著名互联网公司的高级码农，看到了 BBS 身上的发帖后，就找到了山哥，在山哥的忽悠下，Joe 就这样入坑了。陆续入坑的还有超 Geek 的服务端开发工程师&lt;a href="/pynix" class="user-mention" title="@pynix"&gt;&lt;i&gt;@&lt;/i&gt;pynix&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;Summer 的季节，终于来到了。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/4e669a65-3279-4d65-a8f4-d9faf3920da0.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;高级码农&lt;/p&gt;

&lt;p&gt;很快，经过几个月的紧张开发，产品在 7 月初正式上线，内部测试的数据表现非常好，留存率远远高于同类型的校园社交产品。但我们并没有着急推广，一方面是处于暑假当中，另一方面是山哥坚持觉得我们要迭代到更好的版本才能规模化推广。于是我们便开始了 2 个月的产品迭代。
我们很快又迭代了“动态”、“匿名兔子洞”和“黑板墙”的功能板块，去增加用户产生链接的机会。同时围绕着考试这个形式，我们又陆续完善了小纸条、试题走心指数、查看小抄、真心话大冒险等功能，保障考试的趣味性和聊天的自然性，在快速的完成了五个版本的迭代之后，用户的留存率和活跃性进一步提升。答题交友的效果非常好。于是，很快我们就如愿拿到了投资。&lt;/p&gt;

&lt;p&gt;有人可能觉得，这个投资拿的也太容易了吧？其实并不是，这背后是多少次咖啡厅、紫操的彻夜脑暴和讨论，是多少次攻克技术难关迭代更新，是多少次自我否定，多少次试错酝酿出来的结果。我们想办法让 Summer 触达每一个同学，联系北大图书馆男神和摄影师拍海报、联系学校 LED 屏、快递点海报甚至是校园里的每一家打印店的鼠标垫我们都覆盖到了。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/677c02f7-b520-454d-82c4-a036172c7664.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;友情出镜的北大图书馆男神和托着大脸的我...&lt;/p&gt;

&lt;p&gt;其实清华对我最直接的影响并不是专业课，而是前辈们做事的高度。
那天我们躺在紫操上，聊起十四年前王兴学长创立了人人网，山哥说，“我们要做的事情甚至比当年的校内网更大，虽然定位不一样。”，过了一会又说，“我这牛逼是不是吹地有点大，哈哈。”我说：“不大，万一实现了呢！”&lt;/p&gt;

&lt;p&gt;在挑战完清华和北大之后，后面就要打开全国 985（双一流）高校的市场，我带着期许也好，挑战也罢，在心里默默立下 flag，要在 20 岁生日之前，让 Summer 校园走向全国。&lt;/p&gt;
&lt;h2 id="05"&gt;05&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;清北版《春风十里，不如隔壁》火爆全网，北大版《春风十里》感动了北大&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;山哥的梦想是做一个出一张专辑拍一个电影，楚晴的梦想是开一家面包店，我的梦想是开一家书吧。但是这次，山哥离他的梦想最近，他为清华北大两校情（ji）谊（qing）改编了一首歌，《春风十里，不如隔壁》，火爆了整个北大和清华的校园。&lt;/p&gt;

&lt;p&gt;暑假我一直在筹备舞蹈队暑训和小学期的调研，每天忙得只有晚上才顾得上刷 Summer。
那天训练完十一点半，我瘫在宿舍写报告，一点也不想动。山哥特激动地打电话给我，说他找北大的十佳歌手王上录了一段《春风十里，不如隔壁》的 demo。
当时我听完那段几十秒的录音，瞬间感觉整个人满血复活，从床上蹦起来，说，“我一定要给这首歌拍一支 MV！”除了小学期的调研，舞蹈队每天 12 小时的训练，还要准备 MV 拍摄方案，但是每天都觉得像上了发条的电动小马达。&lt;/p&gt;

&lt;p&gt;第一次拍 MV 的我，还是紧张的，只怕辜负了这支绝世美曲。摄影师是硬拉的清华博士晓雨哥，男主是演唱者王上，场务是山哥，灯光是楚晴，剩下的化妆、女主、后期、导演没有人了，那就凑合凑合自己上吧…&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/6e38fba9-32ed-4f48-90b9-38fe19b53052.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;实际上我是一个非常 push 的人，不仅对自己，对别人也是。第一天晚上我们在清华园里拍到凌晨，看到军训的新生浩浩荡荡开始拉练了才收工。第二天早上又要五点起床六点开拍，“劳模”王上睡不够五小时又开车赶过来，摄影师晓雨哥几乎是梦游状态被我拖着到处拍，趁着我和王上换衣服的间隙吃早餐，山哥和楚晴却一直精神抖擞地拿着反光板跟着我们在烈日底下到处跑。
拍摄完后，我抱着拍摄素材就住进了剪辑室，连续三天把夜熬穿剪片子。找了很多好朋友询问意见，剪出来又打回去改了五六版，走出剪辑室的时候，整个人都飘了起来。
五点半骑车回到到紫操，天边开始亮了起来，已经有人在跑步了，我也到操场开始晨跑。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/037280ef-6e4d-44d4-a157-3ead209f5398.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;MV 在清华得到的反响比我想象中要好，清华研读间首发以后，半天多的时间，推送阅读量就破 10 万＋了（清北版《春风十里，不如隔壁》MV 惊艳首发 | 国民 CP 秀恩爱也是够了），我以为自己再也不用进剪辑室了。&lt;/p&gt;

&lt;p&gt;但是就在北大研会的公众号推出之前，接到一个山哥的来电，告诉我北大的版本的字幕需要把“北大”放在“清华”前面...我大半夜冷飕飕地跑到院馆一帧一帧改片子，又把所有海报、截图都做了一批“北大版”。
每天凌晨都被叫醒开门，院馆的保安小哥现在看到我就躲，其实我也不忍心。&lt;/p&gt;

&lt;p&gt;MV 火起来之后，各大校园媒体甚至新华社都纷纷转载，截止到现在，点击播放量已经超过上百万，这对于第一次做 MV 的我们来说也是一个大的惊喜了。&lt;/p&gt;

&lt;p&gt;后来，山哥又马不停蹄的开始筹备北大版本的《春风十里》，赶在十一之前拍摄完了 MV，不久前通过北京大学 120 周年校庆官微发布，一天的时间播放量突破 10 万，感动了很多北大的同学。&lt;/p&gt;

&lt;p&gt;从开始做 Summer 校园到现在，转眼也有半年了，中间有过争论，也有被质疑，但是从没有否定这个事情的价值，我们坚信校园爱情就应该以这样单纯、质朴的感觉呈现出来。其实，我们做的事情不求有什么回报，只希望能够产生价值，这种价值有时候不是金钱衡量的，而是每一个人可以感知的东西。&lt;/p&gt;

&lt;p&gt;我们都在这个过程中挣扎，然后慢慢的成长，有一次楚晴和我说她在自己的宿舍楼发传单的体验，从最开始的不好意思感觉到会丢人到最后主动敲门发传单给同学，经历了非常大的心理变化，感觉到了自己做自己不擅长的事情时候的成长，她的眼神已经完全看不出是一个仅仅十九岁的女生。
我告诉山哥，
“你看，这就是女孩儿，多了不起！”&lt;/p&gt;

&lt;p&gt;这是我们的创业故事，如果你也对我们的做的事情感到深深的认同，欢迎投递简历，一起成长，一起做一件有趣的事业。目前公司已完成数百万天使轮融资，多家投资机构追投下一轮。&lt;/p&gt;

&lt;p&gt;邮箱：rencai@imsummer.cn &lt;/p&gt;

&lt;p&gt;公司地址：北京市海淀区大钟寺中坤广场 E 座东区 803&lt;/p&gt;

&lt;p&gt;薪资：15K-25K+ 期权，可以面议&lt;/p&gt;

&lt;p&gt;如果你想了解我们更多，欢迎关注我们的微信订阅号，上面有我们更多的故事。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/c9b2bb39-5301-4d07-8f99-1ebd955611a8.png!large" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;技术栈：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ruby&lt;/li&gt;
&lt;li&gt;rails&lt;/li&gt;
&lt;li&gt;postgresql&lt;/li&gt;
&lt;li&gt;activeadmin&lt;/li&gt;
&lt;li&gt;grape&lt;/li&gt;
&lt;li&gt;git&lt;/li&gt;
&lt;li&gt;docker&lt;/li&gt;
&lt;li&gt;redis&lt;/li&gt;
&lt;li&gt;elasticsearch&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;职位指责&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;优化 API&lt;/li&gt;
&lt;li&gt;偶尔加一点新特性&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/43624dd3-dd0d-4cf1-963e-747d68756535.png!large" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Fri, 17 Nov 2017 17:10:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/34588</link>
      <guid>https://ruby-china.org/topics/34588</guid>
    </item>
    <item>
      <title>笑而不语</title>
      <description>&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2017/8c847282-c04b-489b-b636-0e335c654111.png!large" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Thu, 09 Nov 2017 16:17:04 +0800</pubDate>
      <link>https://ruby-china.org/topics/34544</link>
      <guid>https://ruby-china.org/topics/34544</guid>
    </item>
    <item>
      <title>邮件服务商汇总贴</title>
      <description>&lt;h2 id="sendcloud"&gt;sendcloud&lt;/h2&gt;
&lt;p&gt;国内的，注册到发送成功并收到邮件花费不到 10 分钟，自动生成测试域名，方便测试。&lt;/p&gt;
&lt;h2 id="sparkpost"&gt;sparkpost&lt;/h2&gt;
&lt;p&gt;国外的，注册到发送成功并收到邮件花费不到 10 分钟，需绑定自己的域名。&lt;/p&gt;
&lt;h2 id="sendgrid"&gt;sendgrid&lt;/h2&gt;
&lt;p&gt;国外知名创业公司，需绑定自己的域名，注册 2 天，smtp 和 api 都显示发送成功，但是没有收到任何邮件，控制面板也没有显示是否发送成功，发送请求为 0。第三天账号被禁止登陆，要求联系客服。YC 说是垃圾公司，果然垃圾。&lt;/p&gt;

&lt;p&gt;欢迎补充完善。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Fri, 29 Sep 2017 11:40:02 +0800</pubDate>
      <link>https://ruby-china.org/topics/34288</link>
      <guid>https://ruby-china.org/topics/34288</guid>
    </item>
    <item>
      <title>SendGrid 配置到怀疑人生</title>
      <description>&lt;p&gt;app 需要邮件功能，尝试注册了 sendgrid，两天都没发出去邮件。。。。。smtp 和 api 都不行。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 27 Sep 2017 19:49:48 +0800</pubDate>
      <link>https://ruby-china.org/topics/34276</link>
      <guid>https://ruby-china.org/topics/34276</guid>
    </item>
    <item>
      <title>如何看待 Facebook 在 React 项目中加入专利授权</title>
      <description>&lt;p&gt;这事貌似已经过去一段时间了，听说百度阿里都禁止使用了，长期活跃在 react 社区的其他公司呢？比如那个做网站的公司。。。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Wed, 20 Sep 2017 12:21:22 +0800</pubDate>
      <link>https://ruby-china.org/topics/34196</link>
      <guid>https://ruby-china.org/topics/34196</guid>
    </item>
    <item>
      <title>你们会把 macOS 转成大小写敏感吗？</title>
      <description>&lt;p&gt;苹果默认安装是不敏感的，有时候本地跑的好好的，扔到服务器就出错了，吃了很多次亏了，决心转为大小写敏感，会造成其他问题吗？&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Sat, 09 Sep 2017 18:16:22 +0800</pubDate>
      <link>https://ruby-china.org/topics/34083</link>
      <guid>https://ruby-china.org/topics/34083</guid>
    </item>
    <item>
      <title>使用 dokku 部署你的 Rails 应用</title>
      <description>&lt;p&gt;背景:
在读一些英文教程的时候时不时被安利 heroku 这个部署环境，于是在自己团队的项目也用上了，有人说很贵，用下来没感觉很贵，更致命的问题是慢，比如一些支付场景，api 需要绕地球 2 圈才能回到用户终端，结果就是调起支付需要等待 5 秒甚至 10 秒。&lt;/p&gt;

&lt;p&gt;在用户多次反馈后，终于下定决心搬回国内。于是在国内找 heroku 代替品。BAE，SAE 各种 AE 都很鸡肋，XXPaSS 也找了几个，很不给力。在国内还是只能买到 IaSS，于是上社区找部署文章，大部分是手动安装 rbenv，rvm 什么的。太麻烦了，能不能有点自动化的？最好还能 git 部署。&lt;/p&gt;

&lt;p&gt;经过搜索发现了 Dokku，一个基于容器的最小 PaSS 实现。&lt;/p&gt;
&lt;h2 id="Dokku"&gt;&lt;a href="http://dokku.viewdocs.io/dokku/" rel="nofollow" target="_blank" title=""&gt;Dokku&lt;/a&gt;&lt;/h2&gt;&lt;h2 id="安装"&gt;安装&lt;/h2&gt;
&lt;p&gt;按照官方文档使用 bootstrap 脚本安装，发现走不下去，看错误信息是 GFVV 惹的祸。于是使用 apt 方式安装，安装完 docker 之后修改镜像，貌似国内有 daocloud 提供。&lt;/p&gt;

&lt;p&gt;安装 docker &lt;code&gt;wget -nv -O - https://get.docker.com/ | sh&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;修改 docker 配置 &lt;code&gt;vim /etc/default/docker&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;DOCKER_OPTS="--registry-mirror=http://xxxxxxxx.m.daocloud.io"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;安装 dokku&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;wget -nv -O - https://packagecloud.io/gpg.key | apt-key add -
export SOURCE="https://packagecloud.io/dokku/dokku/ubuntu/"
echo "deb $SOURCE trusty main" | tee /etc/apt/sources.list.d/dokku.list
apt-get update
apt-get install dokku
dokku plugin:install-dependencies --core
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="配置"&gt;配置&lt;/h2&gt;
&lt;p&gt;安装完成后会启动一个 http-server 提供 web 方式的配置，浏览器输入服务器 ip 打开页面，输入公钥和域名就 OK。&lt;/p&gt;
&lt;h2 id="使用"&gt;使用&lt;/h2&gt;
&lt;p&gt;服务端使用除了全局命令外大部分需要指定 app 的名字才能运行。所以推荐使用客户端的方式。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/dokku/dokku/blob/master/contrib/dokku_client.sh" rel="nofollow" target="_blank" title=""&gt;dokku client&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;把脚本扔到 PATH 改名为 dokku，另外在设置公钥的时候需要客户端的公钥哦。&lt;/p&gt;

&lt;p&gt;在服务端创建好一个 app，在客户端设置好 git romote 后就可以部署了。&lt;/p&gt;

&lt;p&gt;服务端 &lt;code&gt;dokku apps:create demo&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;客户端 &lt;code&gt;git remote add dokku dokku@example.com:demo&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;部署 &lt;code&gt;git push dokku master&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="buildpack"&gt;buildpack&lt;/h2&gt;
&lt;p&gt;dokku 使用的是 heroku 的 buildpack，因为 GFVV 的问题，安装 runtime 的时候总是出现超时。我的解决方案是 fork 一个 buildpack，然后修改其中的 url 为环境变量，再把环境变量设置为七牛的 bucket。&lt;/p&gt;
&lt;h2 id="数据库"&gt;数据库&lt;/h2&gt;
&lt;p&gt;有 postgresql 的插件，应该也有 mysql，mongodb，redis 之类的。&lt;/p&gt;

&lt;p&gt;创建数据库 &lt;code&gt;dokku postgres:create demo-db&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;连接到 app &lt;code&gt;dokku postgres:link demo-db&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;link 会在 app 设置 DATABASE_URL，所以 database.yml 里需要使用 url 的方式配置。&lt;/p&gt;
&lt;h2 id="维护模式"&gt;维护模式&lt;/h2&gt;
&lt;p&gt;heroku 有 maintenance mode，搜了一下 dokku 也有插件。&lt;/p&gt;

&lt;p&gt;&lt;code&gt;maintenance:on | off&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="HTTPS"&gt;HTTPS&lt;/h2&gt;
&lt;p&gt;有 letsencrypt 的插件，使用超级很方便。&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dokku config:set --no-restart  DOKKU_LETSENCRYPT_EMAIL=your@email.tld&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dokku letsencrypt&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="常用命令"&gt;常用命令&lt;/h2&gt;
&lt;p&gt;环境变量 &lt;code&gt;dokku config&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;example : &lt;code&gt;dokku config:set APP_ID=xxxxxxxx&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;运行 &lt;code&gt;dokku run&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;example: &lt;/p&gt;

&lt;p&gt;&lt;code&gt;dokku run rails c&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dokku run rake db:migrate&lt;/code&gt;&lt;/p&gt;
&lt;h2 id="总结"&gt;总结&lt;/h2&gt;
&lt;p&gt;如果你还在纠结到底使用 rvm 还是 rbenv，还在手动配置 nginx，不妨来试试这种部署方式，只需要在 Gemfile 中指定 ruby 版本，剩下的一切都交给工具。这才是正确的部署姿势。&lt;/p&gt;
&lt;h3 id="update 1"&gt;update 1&lt;/h3&gt;
&lt;p&gt;dokku 目前的优势是多 app 部署非常方便，像我们团队同时在弄几个小的项目，创建一个 app，部署完成，就能通过子域名来访问应用。&lt;/p&gt;
&lt;h3 id="update2"&gt;update2&lt;/h3&gt;
&lt;p&gt;dokku 的限制：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;暂无集群支持计划。&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;升级 dokku 需要停止所有 app&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;dokku 适用场合：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;1-5 人小团队&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>pynix</author>
      <pubDate>Tue, 14 Mar 2017 12:45:34 +0800</pubDate>
      <link>https://ruby-china.org/topics/32525</link>
      <guid>https://ruby-china.org/topics/32525</guid>
    </item>
    <item>
      <title>社区百态</title>
      <description>&lt;p&gt;加了一些社区的朋友，得出个结论：&lt;/p&gt;

&lt;p&gt;思想江化，性别娘化，头像二次元化。。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Sun, 23 Oct 2016 12:15:30 +0800</pubDate>
      <link>https://ruby-china.org/topics/31412</link>
      <guid>https://ruby-china.org/topics/31412</guid>
    </item>
    <item>
      <title>最近开发微信公众号，涉及支付，踩了各种坑</title>
      <description>&lt;p&gt;首先受够了微信 API 种相关参数命名，可能微信比较喜欢配置而不是约定。种植各种驼峰，下划线，连词，基本各种语言的命名方式你都能见到，而且毫无规律可言，有时候参数签名需要驼峰命名，调用 API 传递参数的时候又是连词，而且调用结果没有任何错误信息，完全是黑盒。当你检查了 N 遍加密算法确定没有错误但调用还是没有成功的时候，你绝对有理由相信，腾讯估计百般刁难开发者。&lt;/p&gt;

&lt;p&gt;1，申请过程复杂，各种证件，证书。基本和入党差不多了严格了。&lt;/p&gt;

&lt;p&gt;2，开发配置参数繁多，配置文档不全，版本不一，还可能有潜规则。&lt;/p&gt;

&lt;p&gt;3，各种限制很多，比如支付目录。rails 的 restful url 就比较麻烦，/orders/xxxxx/pay 这种形式是不被认可的。你大概需要新开一个路由比如 /checkouts/xxxxx什么的。&lt;/p&gt;

&lt;p&gt;4，关于参数签名。貌似只要涉及交易基本都会涉及到参数签名，oauth1 的时候人们受够了各种参数签名，oauth2 的时候直接要求 https 了，貌似交易就算走 https 还是需要签名的，毕竟利益相关。&lt;/p&gt;

&lt;p&gt;如果能绕开的话尽量不要做微信。这玩意真的太坑了。。。。&lt;/p&gt;</description>
      <author>pynix</author>
      <pubDate>Tue, 05 Jul 2016 04:58:57 +0800</pubDate>
      <link>https://ruby-china.org/topics/30447</link>
      <guid>https://ruby-china.org/topics/30447</guid>
    </item>
  </channel>
</rss>
