<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>dfguo</title>
    <link>https://ruby-china.org/dfguo</link>
    <description>CTO of Strikingly.com</description>
    <language>en-us</language>
    <item>
      <title>上线了认证开发者计划，百万级用户和各种定制开发的项目等你参与！</title>
      <description>&lt;p&gt;Strikingly/上线了 诚邀你申请认证开发者计划！我们有百万级用户和各种定制开发的项目。成为我们认证的开发者，你可以接我们开拓出来的项目单子。我们看重的是长远的合作，一起赚钱并累积到各种门户行业的专业知识背景。我们的客户包括：Microsoft、阿里巴巴、Uber、招商银行、渣打银行和众多中小企业等等。&lt;a href="http://apply.sxl.cn/" rel="nofollow" target="_blank"&gt;http://apply.sxl.cn/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2018/52290f9f-9b2b-41f4-9b58-ba4000b6ef67.png!large" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2018/f23fb2c1-35ea-42b4-9303-2bf99d63492e.png!large" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2018/006ad4e4-d6a9-4d37-a3d5-46f819ebdef8.png!large" title="" alt=""&gt;&lt;/p&gt;
&lt;h2 id="公司发展时间轴"&gt;公司发展时间轴&lt;/h2&gt;
&lt;p&gt;2012.8 - Strikingly 诞生于硅谷&lt;/p&gt;

&lt;p&gt;2013.4 - 从硅谷顶级孵化器 YC 荣誉毕业，获得天使轮融资&lt;/p&gt;

&lt;p&gt;2016.4 - 上线了 SXL.CN 登陆中国市场&lt;/p&gt;

&lt;p&gt;2017.1 - 正式启动小程序项目&lt;/p&gt;

&lt;p&gt;2017.8 - 获 $600 万美金 A 轮融资，发布小程序编辑器&lt;/p&gt;

&lt;p&gt;2018.8 - 获 $1000 万美金 A+ 轮融资，发布超级云名片&lt;/p&gt;

&lt;p&gt;2018.10 - 正式启动认证开发者计划&lt;/p&gt;

&lt;p&gt;详细请看： &lt;a href="http://apply.sxl.cn/" rel="nofollow" target="_blank"&gt;http://apply.sxl.cn/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;感兴趣的请提交资料，近期会开始对接项目。&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Tue, 06 Nov 2018 09:40:26 +0800</pubDate>
      <link>https://ruby-china.org/topics/37731</link>
      <guid>https://ruby-china.org/topics/37731</guid>
    </item>
    <item>
      <title>[上海][2016年01月22日] OpenRedis 创始人分享 Redis 的不同用法</title>
      <description>&lt;p&gt;这次有幸邀请到在 RubyTuesday 分享的 Michel Martens 来给我们再做一次分享。这次他会分享 6 年使用 Redis 的一些经验和技巧。另外 Strikingly 前端工程师黄高岚也会分享当大型 React 应用出现性能上问题时如何优化。&lt;/p&gt;

&lt;p&gt;时间：2016 年 01 月 22 日（周五）19:30 - 21:00
地点：&lt;a href="http://map.baidu.com/?newmap=1&amp;amp;ie=utf-8&amp;amp;s=s%26wd%3D%E4%B8%8A%E6%B5%B7%E5%B8%82%E6%9D%A8%E6%B5%A6%E5%8C%BA%E5%A4%A7%E5%AD%A6%E8%B7%AF248%E5%8F%B7" rel="nofollow" target="_blank" title=""&gt;上海市杨浦区大学路 248 号 1601 Strikingly 办公室&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="主题一：“The Many Souls of Redis” - Michel Martens"&gt;主题一：“The Many Souls of Redis” - Michel Martens&lt;/h2&gt;
&lt;p&gt;介绍
I have been using Redis as my main database for the past six years, and like to share my experience with you. I'll show you some of the use cases for Redis along with some best practices for configuring your instances.&lt;/p&gt;

&lt;p&gt;嘉宾介绍
&lt;img src="https://l.ruby-china.com/photo/2016/41542f5e129a37305b9ca6c979c8849b.jpeg" title="" alt=""&gt;
&lt;a href="http://soveran.com/" rel="nofollow" target="_blank" title=""&gt;Michel Martens&lt;/a&gt; 是 OpenRedis 的创始人，他们提供基于 Redis 的托管与咨询服务，并曾得到 Redis 作者的&lt;a href="https://groups.google.com/forum/#!msg/redis-db/YyOJl2Aqf6o/D6DSwKwrbqQJ" rel="nofollow" target="_blank" title=""&gt;推荐&lt;/a&gt;。他是简洁驱动开发的倡导者，他坚信所有的工具都应该被设计得更简洁，更便于理解，这样才能尽可能的避免错误的发生，保证软件的质量；使用过于复杂的工具只会给软件的开发带来障碍与风险，使得错误的产生不可避免。从 2003 年起，秉承简洁驱动开发的理念，他设计了一系列的开源软件，包括 &lt;a href="http://github.com/soveran/ohm" rel="nofollow" target="_blank" title=""&gt;ohm&lt;/a&gt;, &lt;a href="https://github.com/soveran/cuba" rel="nofollow" target="_blank" title=""&gt;Cuba&lt;/a&gt;, &lt;a href="https://github.com/soveran/mote" rel="nofollow" target="_blank" title=""&gt;mote&lt;/a&gt;, &lt;a href="https://github.com/soveran/micromachine" rel="nofollow" target="_blank" title=""&gt;MicroMachine&lt;/a&gt; 等。目前 Michel 正在致力于 &lt;a href="https://disque.tynd.co/" rel="nofollow" target="_blank" title=""&gt;tynd&lt;/a&gt; 的开发，提供 &lt;a href="https://github.com/antirez/disque" rel="nofollow" target="_blank" title=""&gt;Disque&lt;/a&gt; 的托管服务。
Michel 是 Ruby Conf 和 Rails Conf 的讲师，2013 年的&lt;a href="https://www.youtube.com/watch?v=_ztlV76b2Gg" rel="nofollow" target="_blank" title=""&gt;分享&lt;/a&gt;和 2015 的&lt;a href="https://www.youtube.com/watch?v=h_4nazdj9ok" rel="nofollow" target="_blank" title=""&gt;分享&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id="主题二：“Tuning/Scaling React Application” - 黄高岚"&gt;主题二：“Tuning/Scaling React Application” - 黄高岚&lt;/h2&gt;
&lt;p&gt;介绍
React is known to be performant because of virtual DOM. What if virtual DOM is still too slow for you? The sharing will talk about tools and tips of tuning React application when virtual DOM is the bottleneck.&lt;/p&gt;

&lt;p&gt;嘉宾介绍
披着前端攻城师外衣的 UX 设计师。设计和开发过 CSS 预处理语言 Roole，热衷于追随各类前端标准。对于产品体验和代码结构患有严重强迫症。目前正在 Strikingly 使用 React 这把利器，开发最最最简单好用的建站工具以及改变世界。&lt;/p&gt;
&lt;h2 id="如何报名参加"&gt;如何报名参加&lt;/h2&gt;
&lt;p&gt;为方便统计，请报名：&lt;a href="http://form.mikecrm.com/f.php?t=FhUPC4" rel="nofollow" target="_blank"&gt;http://form.mikecrm.com/f.php?t=FhUPC4&lt;/a&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Wed, 20 Jan 2016 22:28:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/28799</link>
      <guid>https://ruby-china.org/topics/28799</guid>
    </item>
    <item>
      <title>Simple Rails history pattern (ActiveRecord)</title>
      <description>&lt;p&gt;如果你的应用里需要保留 Model 的历史记录，可以尝试一下 Strikingly 团队实践后的方法：&lt;/p&gt;

&lt;p&gt;原文：&lt;a href="http://strikingly.github.io/blog/2015/09/14/Simple-rails-history-pattern-ActiveRecord/" rel="nofollow" target="_blank"&gt;http://strikingly.github.io/blog/2015/09/14/Simple-rails-history-pattern-ActiveRecord/&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="Context"&gt;Context&lt;/h2&gt;
&lt;p&gt;Many times in my career, I had to face cases where I had to keep a history of one or many tables. Most of the time, the need of history comes after the main feature itself is developed and ends up in this kind of architecture:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;| Post         |   | PostHistory   |
|==============|   |===============|
| author_id    |   | post_id       |
| title        |   | title         |
| content      |   | content       |
| published    |   |---------------|
| published_at |
|--------------|   
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It comes as the most natural and painless way to add the history feature to an existing entity. You can also find gems doing this job for you, in which case, they will serialize your Post in a generic history table.&lt;/p&gt;

&lt;p&gt;Both of those approaches sound sexy because they’re simple to implement and they don’t introduce a “risk” for the Post model. Problem is, they’re very hard to maintain.&lt;/p&gt;

&lt;p&gt;In the first case, every time we run a migration on the post table, we will have to run it on the PostHistory too. Double the work. If you have special columns (enum, serialized stuff in any manner), you also have to maintain the same code in both classes. Or you have to extract everything in modules to share it between classes, which makes the code less readable. If you use services, it can lead to even more complicated situations.&lt;/p&gt;

&lt;p&gt;In the second case, if your Post model changes, restoring the serialized version from history will become hard, if not impossible. If you want to historize only a subset of properties from Post, it’s also inconvenient. Plus, if you have serialized columns in Post table, you will end with serialized data IN serialized data in the history table. Something you don’t want to deal with in case of bugs.&lt;/p&gt;

&lt;p&gt;The other main problem is if you need to use history in another context than just reading values and showing them to a human, you will have a schizophrenic code, using sometimes Post, sometimes PostHistory.&lt;/p&gt;

&lt;p&gt;This architecture also come with the classic problem “when do we create a new entry?”:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;before saving will imply that the last version is not in history, force you to read from 2 tables to have the complete history&lt;/li&gt;
&lt;li&gt;after saving will imply that the last version is in two different places (content duplicated)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s take a simple example, restore values from history:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# services/posts/historize_service.rb

class HistorizeService
  def run(post)
    history = PostHistory.create!(
      title: post.title,
      content: post.content
    )
  end
end

# services/posts/restore_from_history_service.rb

class RestoreFromHistoryService
  attr_reader :historize_service

  def initialize(historize_service:)
    @historize_service = historize_service
  end

  def run(post, post_history)
    Post.transaction do
      historize_service.run(post)
      post.title = post_history.title
      post.content = post_history.content
      # this list can be very long
      post.save!
    end
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Also consider that in this specific case, published state is ambiguous. And if many versions in the history have different meanings, it’s hard to identify which one has what meaning. We could transfer “publish” informations into the history table but that would mean history would carry contextual informations and we would have to maintain the whole history to ensure only one version is published at a time. &lt;/p&gt;
&lt;h2 id="Separate “meta” and “content”"&gt;Separate “meta” and “content”&lt;/h2&gt;
&lt;p&gt;A more flexible solution you can consider is to separate in two separate models what is content (ie: what we need to keep track of over time) and what’s immutable over time.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;| Post                 |   | Post::Content |
|======================|   |=============|
| author_id            |   | post_id     |
| current_content_id   |   | title       |
| published_content_id |   | content     |
| last_published_at    |   | created_at  |
|----------------------|   |-------------|
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Using this design, whatever version you use, you will always manipulate the same type of object. You don’t have to double the logic and migrations. You keep your data stable over time. &lt;/p&gt;

&lt;p&gt;To give specific meaning to specific versions, we will rely on foreign keys. Post::Content should not know it’s role in outside models. Let’s keep it as small as possible and focus on data.&lt;/p&gt;

&lt;p&gt;Your post model will look like this:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# models/post.rb

class Post &amp;lt; ActiveRecord::Base
  # Associations
  has_many :contents

  has_one :current_content, class_name: 'Post::Content'
  has_one :published_content, class_name: 'Post::Content'

  # Methods
  def published?
    published_content_id?
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Create a new entry in history is as simple as that:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# services/posts/historize_service.rb

class HistorizeService
  def run(post)
    Post.transaction do
      new_content = post.current_content.dup
      new_content.save!
      post.update_attributes!(current_content: new_content)
    end
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Compare to the previous version, we don’t need to modify this service every time we add (or remove) a property. It’s stable over time, that’s all we want.&lt;/p&gt;

&lt;p&gt;The simplest way to deal with versions is to consider our Post::Content objects as immutable&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# services/posts/content/update_service.rb

class UpdateService
  # params
  # 
  # * post: an instance of Post
  # * properties: a hash containing the following keys
  #   * title: (string) optional
  #   * content: (string) optional
  def run(post, properties)
    new_content = post.current_content.dup
    new_content.attributes = properties
    new_content.save!
    post.update_attributes!(current_content: new_content)
  end
end
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This service will create a new content entry every time you want to update content properties (title and/or content). If you want to prevent blank entries that would create useless history entry, you can use a form object to validate the data before calling the service.&lt;/p&gt;

&lt;p&gt;Let’s keep going with restoring an entry&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# services/posts/restore_content_from_history_service.rb

class RestoreContentFromHistoryService
  def run(post, content)
    Post.transaction do
      # in order to keep the structure coherent, we need to
      # create a new entry instead of linking the old one.
      new_content = content.dup
      new_content.save!
      post.update_attributes!(current_version: new_content)
    end
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Let’s see how we do the publishing now&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# services/posts/publish_service.rb

class PublishService
  def run(post)
    post.update_attributes!(
      published_content: post.current_content,
      last_published_at: Time.now
    )
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And voila! This design is flexible enough to add many features that won’t compromise the structure.&lt;/p&gt;
&lt;h2 id="Making it a bit more transparent"&gt;Making it a bit more transparent&lt;/h2&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# models/post.rb

class Post &amp;lt; ActiveRecord::Base
  # Delegations
  delegate :title, :content, to: :current_content, allow_nil: true
end

# allow you to access directly post.title
# and masking the complexity of post.current_content.title
# (see demeter law https://en.wikipedia.org/wiki/Law_of_Demeter)
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="Plugging features"&gt;Plugging features&lt;/h2&gt;
&lt;p&gt;Adding version numbers, for example&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# models/posts/content.rb

class Post::Content &amp;lt; ActiveRecord::Base
  # Callbacks
  before_create :tag_version_number

  # Methods

  private

  def tag_version_number
    self.version = generate_version_number
  end

  def generate_version_number
    # optimistic solution
    (self.class.where(post_id: post_id)
               .maximum(:version) || 0) + 1
  end
end

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This could also be extracted to a module, exposed as a method like&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;has_versions_number scope: :post_id
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can even disable update at model level to ensure no one is changing the history&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# lib/active_record/immutable_model.rb

module ActiveRecord
  module ImmutableModel
    class UpdateImmutableModelException &amp;lt; Exception
      def initialize(msg)
        super("Immutable model can't be updated")
      end
    end

    extend ActiveSupport::Concern

    included do
      before_update :prevent_update
    end

    private

    def prevent_update
      raise UpdateImmutableModelException.new
    end
  end
end        

# models/post/content.rb

class Post::Content &amp;lt; ActiveRecord::Base
  include ActiveRecord::ImmutableModel
end
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="Recommendations"&gt;Recommendations&lt;/h2&gt;
&lt;p&gt;To update Post  from forms, I discourage you to use ActiveRecord nested_attributes pattern as long as it’s a very horrible pattern (even if it looks very convenient). Instead, you would prefer to use a form object and hide the complexity of content versioning from your user.&lt;/p&gt;
&lt;h2 id="Conclusion"&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;This solution solves some problem cases but still have cons, like any other one. It has a higher cost at beginning but offers more flexibility over time, especially if you want to add features based on your history. It also allows you to easily “tag” and access some versions.&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Tue, 15 Sep 2015 10:49:07 +0800</pubDate>
      <link>https://ruby-china.org/topics/27336</link>
      <guid>https://ruby-china.org/topics/27336</guid>
    </item>
    <item>
      <title>2015年3月29日 Rubyist 上海聚会 《React.js in Strikingly》PPT</title>
      <description>&lt;p&gt;这次主要分享 Strikingly 决定使用 React.js 的几大原因。为了让碰过和没碰过 JS 的人都听懂，我讲了一些比较抽象的概念。希望通过本次分享能让大家明白 React.js 相对于其他目前主流前端框架的创新性。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://speakerdeck.com/dfguo/reactjs-in-strikingly-1" rel="nofollow" target="_blank"&gt;https://speakerdeck.com/dfguo/reactjs-in-strikingly-1&lt;/a&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Thu, 16 Apr 2015 13:22:06 +0800</pubDate>
      <link>https://ruby-china.org/topics/25167</link>
      <guid>https://ruby-china.org/topics/25167</guid>
    </item>
    <item>
      <title>RubyConf《I’ ve shipped the code, what’ s next》的 slides</title>
      <description>&lt;p&gt;作为技术人，我们常常把上线当成是终点。上线了，搞定了。但其实从一个上线了的产品到一个用户热爱的产品，还有很长的路。我这次分享的就是产品上线后，作为技术人可以做什么。这次大会后很多朋友和我有很多讨论，看来大家开始对这块比较感兴趣的，以后我希望能看到社区里多一点关于技术 + 产品的分享。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://speakerdeck.com/dfguo/i-ve-shipped-the-code-what-s-next" rel="nofollow" target="_blank"&gt;https://speakerdeck.com/dfguo/i-ve-shipped-the-code-what-s-next&lt;/a&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Mon, 03 Nov 2014 14:58:44 +0800</pubDate>
      <link>https://ruby-china.org/topics/22431</link>
      <guid>https://ruby-china.org/topics/22431</guid>
    </item>
    <item>
      <title>[上海] 当我们谈招聘，我们来谈谈信仰</title>
      <description>&lt;p&gt;Strikingly 的招聘贴一直很受大家支持，在此表示感谢。&lt;/p&gt;

&lt;p&gt;第一次在 Ruby China 上分享我们的创办理念，公司信仰，我们希望通过这样一个交流分享的过程，大家会对 Strikingly 有多一层的理解，也希望可以吸引到志同道合的人，一起奋斗，一起创建我们理想的“乌托邦”。&lt;/p&gt;

&lt;p&gt;Strikingly 是什么？&lt;/p&gt;

&lt;p&gt;Strikingly.com 是第一个被世界最顶级孵化器 Y Combinator 在硅谷孵化的中国团队，同时也是创新工场在北美投资的第一个项目。我们增长很快，在上线第二周开始，就已经盈利。我们的投资来自包括 SV Angel, Index Ventures, Infinity Venture Partners, Wufoo 创始人 Kevin Hale 等硅谷最知名的投资人。&lt;/p&gt;

&lt;p&gt;Strikingly (&lt;a href="http://www.strikingly.com" rel="nofollow" target="_blank" title=""&gt;www.strikingly.com&lt;/a&gt;) 希望通过简洁美观的设计，简单易行的操作帮助大家去解决互联网最基础的问题之一 — 如何让所有人在短时间内建立一个能够自动适应移动端屏幕大小的网站？我们相信每个人都能成为创造者，而我们的目标就是帮助大家将想法变成现实，并建立自己的品牌。Strikingly 让任何人都能在数分钟内建立一个高大上的网站展示你的想法、活动、产品。&lt;/p&gt;

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

&lt;p&gt;Strikingly 相信什么？&lt;/p&gt;

&lt;p&gt;创造力和创业精神一直是推动世界改变和人类历史向前的驱动力。每个人，每天，都在以不同方式创造新的东西：一首歌，一幅画，一次活动，又或是一个公司。在 Strikingly，我们的使命就是让每个人都有能力把他们的想法变为现实，并帮助他们打造属于自己的品牌。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/c7694a01da2067c87f47b1c947d8e521.png" title="" alt=""&gt;
Nobel Peace Prize Winner Malala’s page on Strikingly&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;img src="https://l.ruby-china.com/photo/2014/fe650c188de9d55b7effc60dfc07c307.png" title="" alt=""&gt;
Walter Tsui, though visually impaired, is still able to create his page on Strikingly&lt;/p&gt;

&lt;p&gt;我们相信，互联网的未来注定要让所有人都强大起来。&lt;/p&gt;

&lt;p&gt;作为一个互联网公司，Strikingly 已经成功的帮助了成千上万的用户实现了他们的梦想。我们帮助过初创企业家完成了一次史上最成功的时尚众筹项目；我们帮助过一个盲人通过展现他的技术能力而成功获得心仪的工作；我们帮助过一个奋斗中的艺术家通过建站而成功获得他的第一个电视角色；我们帮助过成百上千的本地商人通过拥有自己的网站和大型连锁商店有效竞争。&lt;/p&gt;

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

&lt;p&gt;而现在，我们要把互联网的力量带给所有人。搬了新 office，变了新的环境，但不变得是团队越来越强的使命感、责任感、紧迫感。尤其是当看到我们的用户取得了各种各样的成就，我们才更深刻的意识到，打造用户需要的一个好产品是多么有意义有成就感的事。我们认为，编程是一门艺术，而我们就是艺术家，并且我们创造出的艺术品可以和用户互动交流。电影和画对用户的交流是单向的，而编程，是互动的。如果你想用你的才能创造出人们热爱的产品，如果你也认同我们的理念，请不要犹豫，加入我们！&lt;/p&gt;

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

&lt;p&gt;登陆我们招聘页面：&lt;a href="http://www.strikingly.com/s/careers/?locale=zh_CN" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/s/careers/?locale=zh_CN&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;或者直接发送简历到 jobs(a)strikingly.com&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Tue, 21 Oct 2014 19:56:20 +0800</pubDate>
      <link>https://ruby-china.org/topics/22176</link>
      <guid>https://ruby-china.org/topics/22176</guid>
    </item>
    <item>
      <title>[上海][2014年09月24日] YC 创业课 How to start a Startup </title>
      <description>&lt;p&gt;&lt;a href="http://www.36kr.com/p/215425.html" rel="nofollow" target="_blank" title=""&gt;How to start a Startup&lt;/a&gt; 是最近非常火的一个 online course，将持续两个多月，刚刚开课，主讲的都将是来自 Y-combinator 的成功创业家，主要会介绍关于创业的方方面面。我们熟知的 Paul Graham、Peter Thiel、Marc Andreessen 等人都会成为这系列课程的讲师（&lt;a href="http://startupclass.samaltman.com/" rel="nofollow" target="_blank" title=""&gt;具体的课程安排可以点击这里查看&lt;/a&gt;）。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.strikingly.com" rel="nofollow" target="_blank" title=""&gt;Strikingly&lt;/a&gt;作为第一个由华人创建的 YC 毕业的团队，觉得这次机会非常难得，因此我们在 Facebook 上组织了一个&lt;a href="https://www.facebook.com/groups/howtostartastartupshanghai/" rel="nofollow" target="_blank" title=""&gt;线上小组&lt;/a&gt;。希望在上海的对 startup 感兴趣的朋友可以加入讨论，并且在 09 月 24 日晚上 7 点，我们将组织一次线下的观摩讨论学习，欢迎大家前来！具体地址：大学路 248 号 13 楼。&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Wed, 24 Sep 2014 16:03:31 +0800</pubDate>
      <link>https://ruby-china.org/topics/21702</link>
      <guid>https://ruby-china.org/topics/21702</guid>
    </item>
    <item>
      <title>[上海][2014年9月20日] 搬了新办公室，这周六 Strikingly 开放日</title>
      <description>&lt;p&gt;搬了新的办公室，在杨浦大学路上。办公室比以前大很多，跟 &lt;a href="/gene_wu" class="user-mention" title="@gene_wu"&gt;&lt;i&gt;@&lt;/i&gt;gene_wu&lt;/a&gt; 说过新办公室可以 host 以后一些 Ruby 相关的活动。这周六有个 Office Warming 派对，欢迎你们参加，更有限量版的 Strikingly 马克杯赠送。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/ad40abc4f5e2ead363cc03332bd0f625.jpg" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2014/cc613fb24feafc64283b409d64538340.jpg" title="" alt=""&gt;
&lt;img src="https://l.ruby-china.com/photo/2014/ca0edc81c58f06301b7af7d262490f5e.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;欢迎报名~ &lt;a href="http://officewarmingparty.strikingly.com/" rel="nofollow" target="_blank"&gt;http://officewarmingparty.strikingly.com/&lt;/a&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Fri, 19 Sep 2014 12:34:41 +0800</pubDate>
      <link>https://ruby-china.org/topics/21607</link>
      <guid>https://ruby-china.org/topics/21607</guid>
    </item>
    <item>
      <title>[上海] Strikingly 团队诚聘前后端工程师，实习也可 (周六团队开放日等你来)</title>
      <description>&lt;p&gt;经过近两个月的施工，新的办公室终于完工了。现代极简风格。办公室大了之后，下一步就是招人，所以全部职位全职实习都开放。&lt;a href="http://www.strikingly.com/s/careers" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/s/careers&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;本周六晚上 7 点，Strikingly 将会有一个 office warming party，欢迎你们参加，分享我们的喜悦，近距离接触 Strikingly，更有限量版的 Strikingly 马克杯赠送。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://officewarmingparty.strikingly.com/" rel="nofollow" target="_blank"&gt;http://officewarmingparty.strikingly.com/&lt;/a&gt;&lt;/p&gt;

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

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

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

&lt;p&gt;关于我们&lt;/p&gt;

&lt;p&gt;Strikingly.com 是第一个被世界最顶级孵化器 Y Combinator 在硅谷孵化的中国团队，同时也是创新工场在北美投资的第一个项目。2013 年 4 月，我们在两个星期内完成了 150 万美元的融资。我们的投资来自包括 SV Angel, Index Ventures, Infinity Venture Partners, Wufoo 创始人 Kevin Hale 等硅谷最知名的投资人。我们增长很快，在上线第二周开始，就已经盈利。&lt;/p&gt;

&lt;p&gt;以下是我们的一些报道：&lt;/p&gt;

&lt;p&gt;国外报道&lt;/p&gt;

&lt;p&gt;诞生记英文版： &lt;a href="http://www.forbes.com/sites/morganhartley/2013/03/19/how-a-y-combinator-startup-is-born-the-story-of-strikingly/" rel="nofollow" target="_blank"&gt;http://www.forbes.com/sites/morganhartley/2013/03/19/how-a-y-combinator-startup-is-born-the-story-of-strikingly/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Techcrunch 报道： &lt;a href="http://techcrunch.com/2013/02/13/strikingly/" rel="nofollow" target="_blank"&gt;http://techcrunch.com/2013/02/13/strikingly/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;纽约时报报道： &lt;a href="http://www.nytimes.com/2013/05/05/magazine/y-combinator-silicon-valleys-start-up-machine.html?pagewanted=all" rel="nofollow" target="_blank"&gt;http://www.nytimes.com/2013/05/05/magazine/y-combinator-silicon-valleys-start-up-machine.html?pagewanted=all&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Next Web 报道： &lt;a href="http://thenextweb.com/insider/2013/03/14/y-combinator-backed-strikingly-wants-to-help-you-build-a-simple-beautiful-mobile-website/?fromcat=all" rel="nofollow" target="_blank"&gt;http://thenextweb.com/insider/2013/03/14/y-combinator-backed-strikingly-wants-to-help-you-build-a-simple-beautiful-mobile-website/?fromcat=all&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Inc 报道： &lt;a href="http://www.inc.com/issie-lapowsky/4-ways-screwing-up-website.html?cid=sf01001" rel="nofollow" target="_blank"&gt;http://www.inc.com/issie-lapowsky/4-ways-screwing-up-website.html?cid=sf01001&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Entrepreneur 报道： &lt;a href="http://www.entrepreneur.com/article/232160" rel="nofollow" target="_blank"&gt;http://www.entrepreneur.com/article/232160&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;国内报道&lt;/p&gt;

&lt;p&gt;诞生记： &lt;a href="http://www.forbeschina.com/review/201303/0024468.shtml" rel="nofollow" target="_blank"&gt;http://www.forbeschina.com/review/201303/0024468.shtml&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;36 氪报道： &lt;a href="http://www.36kr.com/p/202900.html" rel="nofollow" target="_blank"&gt;http://www.36kr.com/p/202900.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pingwest 报道： &lt;a href="http://www.pingwest.com/strikingly/" rel="nofollow" target="_blank"&gt;http://www.pingwest.com/strikingly/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Strikingly 在做什么？&lt;/p&gt;

&lt;p&gt;Strikingly (&lt;a href="http://www.strikingly.com" rel="nofollow" target="_blank" title=""&gt;www.strikingly.com&lt;/a&gt;) 希望通过简洁美观的设计，简单易行的操作帮助大家去解决互联网最基础的问题之一 — 如何让所有人在短时间内建立一个能够自动适应移动端屏幕大小的网站？&lt;/p&gt;

&lt;p&gt;建站是一个很老的话题，可是我们认为一直都没有被好好的解决。仔细想想，互联网存在了 20 多年，我们依然找不到一个简单的方式帮助不懂技术的父母，朋友，建立一个属于自己的网站。我们希望 Strikingly 能够做到的就是解决这个互联网最基础的问题之一！&lt;/p&gt;

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

&lt;p&gt;来自我们用户案例&lt;/p&gt;

&lt;p&gt;超模系列&lt;/p&gt;

&lt;p&gt;Miranda Kerr &lt;a href="http://www.mirandakerr.com/" rel="nofollow" target="_blank"&gt;http://www.mirandakerr.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Naomi Campbell &lt;a href="http://www.naomicampbell.com/" rel="nofollow" target="_blank"&gt;http://www.naomicampbell.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Bar Refaeli &lt;a href="http://www.barrefaeliofficial.com/" rel="nofollow" target="_blank"&gt;http://www.barrefaeliofficial.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Portfolio&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.danmakoski.com/" rel="nofollow" target="_blank"&gt;http://www.danmakoski.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;创业公司&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.simplelegal.com/" rel="nofollow" target="_blank"&gt;http://www.simplelegal.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;更多案例，请点击： &lt;a href="http://www.strikingly.com/s/discover" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/s/discover&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;待遇和福利
工作时间：6 天/周，一年 10 天带薪休假
工作地点：上海，杨浦复旦大学周边
福利：专职阿姨烹饪的营养午餐 + 晚餐，时令的餐后水果，还有不限量的零食和饮料，每月的派对，PS4，小霸王游戏机，Wii，德州扑克
薪资：薪资不是一个问题，我们虽不敢说是行业最高，但是我们的提供的薪酬对得起你的付出，还有住房补贴&lt;/p&gt;

&lt;p&gt;快点发你的作品集到 jobs&lt;a&gt;strikingly.com,&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;我们的招聘网站： &lt;a href="http://www.strikingly.com/s/careers" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/s/careers&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="https://l.ruby-china.com/photo/2014/161ad8ef4567f3c02c119b3eaf4c14dc.jpg" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Thu, 18 Sep 2014 15:58:10 +0800</pubDate>
      <link>https://ruby-china.org/topics/21587</link>
      <guid>https://ruby-china.org/topics/21587</guid>
    </item>
    <item>
      <title>[上海] Strikingly 团队诚聘前端工程师</title>
      <description>&lt;p&gt;2013 年对于我和 Strikingly 来说，是一个非常重要的年份。从三个创始人在硅谷创立了公司，到进入 YC 并成为第一个华人团队，后来因为签证原因回国，最后，用一个星期把团队从北京迁移到上海。我们花了半年的时间去寻找合适的人一起创业，因为我们相信对于一个创业公司来说，人永远都是最为重要的。&lt;/p&gt;

&lt;p&gt;对于每一个 Strikingly 的员工来说，我们很享受也很庆幸可以和彼此一起工作。我们最关心的是每个人的成长，因为我们深刻的认识到公司的成功离不开个人的自我实现。在这里，我们欣赏的是有什么建议说出来，大家一起商量；在这里，没有所谓的 Boss。我们希望大家可以在没有顾虑的情况下不断提高自己的技术水平，创造人们热爱的产品。&lt;/p&gt;

&lt;p&gt;&lt;img src="http://ww2.sinaimg.cn/mw690/6b34c5f9gw1ectffw5824j218g0w2kcf.jpg" title="" alt="我们很注重成员的学习和成长。在每周一次Sharing上，大家互相交流技术、产品和自己平时的hacking"&gt;&lt;/p&gt;

&lt;p&gt;我们很注重成员的学习和成长。在每周一次 Sharing 上，大家互相交流技术、产品和自己平时的 hacking&lt;/p&gt;
&lt;h3 id="关于产品"&gt;关于产品&lt;/h3&gt;
&lt;p&gt;&lt;a href="https://www.strikingly.com/" rel="nofollow" target="_blank" title=""&gt;Strikingly&lt;/a&gt;是一款简洁美观好用的建站平台，任何人都可以在 15 分钟内做出一个能够自动适应移动端屏幕大小的网站。&lt;/p&gt;

&lt;p&gt;建站是一个很老的话题，可是我认为一直都没有被好好的解决。仔细想想，互联网存在了 20 多年，我们依然找不到一个简单的方式帮助不懂技术的父母，朋友，建立一个属于自己的网站。我们希望 Strikingly 能够做到的就是解决这个互联网最基础的问题之一！我们正在努力。&lt;/p&gt;

&lt;p&gt;这里是我们一些用户的例子：&lt;/p&gt;

&lt;p&gt;&lt;img src="http://ww3.sinaimg.cn/mw690/6b34c5f9gw1ecj5b0y1aij215j0qo0y0.jpg" title="" alt="世界超模 Miranda Kerr主页"&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;世界超模： &lt;a href="http://www.mirandakerr.com/" rel="nofollow" target="_blank" title=""&gt;http://www.mirandakerr.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;创业公司： &lt;a href="http://www.glassandsex.com" rel="nofollow" target="_blank" title=""&gt;http://www.glassandsex.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;小商家： &lt;a href="http://fox.do/" rel="nofollow" target="_blank" title=""&gt;http://fox.do/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;给女友的情书： &lt;a href="http://www.strikingly.com/morag" rel="nofollow" target="_blank" title=""&gt;http://www.strikingly.com/morag&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;更多请看我们展示页面： &lt;a href="http://www.strikingly.com/s/gallery" rel="nofollow" target="_blank" title=""&gt;http://www.strikingly.com/s/gallery&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="工作待遇"&gt;工作待遇&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;工作时间：6 天/周，一年 10 天带薪休假&lt;/li&gt;
&lt;li&gt;工作地点：上海，杨浦&lt;/li&gt;
&lt;li&gt;福利：午餐 + 晚餐，不限量的零食和饮料，每月的派对，每月的团队聚餐&lt;/li&gt;
&lt;li&gt;薪资：最低 12k + 2K 住房补贴&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="招聘职位"&gt;招聘职位&lt;/h3&gt;
&lt;p&gt;我们在招前端工程师，要求如下，&lt;/p&gt;

&lt;p&gt;CSS+JavaScript+English，详细要求可见 &lt;a href="http://www.strikingly.com/jobs" rel="nofollow" target="_blank" title=""&gt;www.strikingly.com/jobs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;国内 web 编程界普遍重后端而轻前端，很多人认为前端技术难度小，其实这事要是在 2004 年以前拿出来说还说得过去。今天的前端复杂度不亚于后端。event-driven, asynchronous callback，event progation 和 single-page app 都是相对复杂的。而未来的 web app，为了优化用户体验，前端也将会更加复杂。Strikingly 是一家非常注重前端技术的公司，我们大量使用 angular.js 和 knockout.js，并用 phantom.js 做 eager-binding，写了一套自己的 responsive design 框架。我们希望应聘者对这些新的技术也感兴趣。&lt;/p&gt;

&lt;p&gt;从 14 岁开始编程，影响我最大的一句话是：Programming as an intellectual activity is the only art form that allows you to create interactive art。编程是一门艺术，而我们就是艺术家。我们创造出的艺术品可以和用户进行互动交流。这在其他艺术界里是罕见的。电影和画对用户的交流是单向的，而编程，是互动的。如果你想用你的才能创造出人们热爱的产品，email 我：我的 rubychina id + &lt;a href="/strikingly.com" class="user-mention" title="@strikingly.com"&gt;&lt;i&gt;@&lt;/i&gt;strikingly.com&lt;/a&gt;。&lt;/p&gt;
&lt;h3 id="最后附上办公室照片"&gt;最后附上办公室照片&lt;/h3&gt;
&lt;p&gt;&lt;img src="http://ww4.sinaimg.cn/mw690/6b34c5f9gw1ectffrup52j218g0t9dz7.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://ww4.sinaimg.cn/mw690/6b34c5f9gw1ectffpckhfj21kw16n1ev.jpg" title="" alt="无论你喜欢躺着写代码还是站着写代码，总有一个合适你的"&gt;&lt;/p&gt;

&lt;p&gt;无论你喜欢躺着写代码还是站着写代码，总有一个合适你的&lt;/p&gt;

&lt;p&gt;&lt;img src="http://ww1.sinaimg.cn/mw690/6b34c5f9gw1ectfg5nfxkj218g0tn4eq.jpg" title="" alt="每天阿姨都会准备美味可口的午餐和晚餐"&gt;&lt;/p&gt;

&lt;p&gt;每天阿姨都会准备美味可口的午餐和晚餐 &lt;/p&gt;

&lt;p&gt;&lt;img src="http://ww4.sinaimg.cn/mw690/6b34c5f9gw1ectffzjahsj218g0mh15t.jpg" title="" alt="来一局乒乓球赛娱乐一下"&gt;&lt;/p&gt;

&lt;p&gt;来一局乒乓球赛娱乐一下&lt;/p&gt;

&lt;p&gt;如果你想用你的才能创造出人们热爱的产品，email 我：我的 rubychina id + &lt;a href="/strikingly.com" class="user-mention" title="@strikingly.com"&gt;&lt;i&gt;@&lt;/i&gt;strikingly.com&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;** 欢迎推荐！成功推荐我们送 HHKB Pro 2 键盘或者 iPad Air 16G wifi 版。**&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Fri, 24 Jan 2014 10:41:32 +0800</pubDate>
      <link>https://ruby-china.org/topics/16965</link>
      <guid>https://ruby-china.org/topics/16965</guid>
    </item>
    <item>
      <title>[北京][2013年9月27日] Hacker News Meetup</title>
      <description>&lt;p&gt;报名请点击&lt;a href="http://www.strikingly.com/hnbj" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/hnbj&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What's Hacker News?
Hacker News is a social news website about technology, programming, and entrepreneurship, from Paul Graham's investment company and startup incubator Y Combinator. We want to bring the culture of Silicon Valley to Beijing, so we're hosting a meetup for the HN fans here. Come to discuss the latest tech news or to meet like-minded people!&lt;img src="//l.ruby-china.com/photo/0b14876f048507f21a3b3e8d284a280c.jpg" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;Hacker News 是一家技术，编程和创业公司的社会化新闻网站，由 Paul Graham 的投资公司和创业孵化器 Y Combinator 所创建。我们希望将硅谷的文化带回到北京，所以我们组织了这个聚会，希望可以为北京的 HN 粉丝做一些事情。我们非常欢迎你参与进来，讨论最新最酷的新闻，认识志同道合的朋友。&lt;/p&gt;

&lt;p&gt;Who are we?
We're Strikingly, the first Chinese team backed by Y Combinator. We made Strikingly to help people build a modern, mobile-optimized website in minutes. We value our hacker culture -- our ability to code up a storm and get things done.&lt;/p&gt;

&lt;p&gt;This meetup is not endorsed by Hacker News or Y Combinator, we're just some happy readers and YC alumni who are excited to bring this here!&lt;/p&gt;

&lt;p&gt;我们是 Strikingly, Y Combinator 孵化的第一支中国团队。Strikingly 是一个建站工具，能够帮助人们在几分钟内建立一个简洁美丽并且适用于各种移动端的网站。我们热爱极客文化，设计人们喜欢的产品。&lt;/p&gt;

&lt;p&gt;本次聚会是一次非官方聚会，并非由和 Hacker News 和 Y Combinator 主办。我们只作为 YCombinator 的校友和 Hacker News 的忠实读者，很期待将硅谷的技术氛围带回北京。&lt;/p&gt;

&lt;p&gt;报名请点击&lt;a href="http://www.strikingly.com/hnbj" rel="nofollow" target="_blank"&gt;http://www.strikingly.com/hnbj&lt;/a&gt;&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Wed, 25 Sep 2013 10:56:19 +0800</pubDate>
      <link>https://ruby-china.org/topics/14376</link>
      <guid>https://ruby-china.org/topics/14376</guid>
    </item>
    <item>
      <title>[北京] 硅谷 Y Combinator 的中国团队招 Rails 工程师</title>
      <description>&lt;p&gt;&lt;a href="https://www.strikingly.com" rel="nofollow" target="_blank" title=""&gt;Strikingly.com&lt;/a&gt;是第一个被世界最顶级孵化器 Y Combinator 在硅谷孵化的中国团队，同时也是创新工场在北美投资的第一个项目。今年 4 月，我们在两个星期内完成了 150 万美元的融资。我们的投资来自包括 SV Angel, Index Ventures, Infinity Venture Partners, Wufoo 创始人 Kevin Hale 等硅谷最知名的投资人。&lt;/p&gt;
&lt;h2 id="关于我们的报道："&gt;关于我们的报道：&lt;/h2&gt;
&lt;p&gt;Techcrunch 报道： &lt;a href="http://techcrunch.com/2013/02/13/strikingly/" rel="nofollow" target="_blank" title=""&gt;http://techcrunch.com/2013/02/13/strikingly/&lt;/a&gt;
36 氪报道： &lt;a href="http://www.36kr.com/p/202900.html" rel="nofollow" target="_blank" title=""&gt;http://www.36kr.com/p/202900.html&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="我们的产品"&gt;我们的产品&lt;/h2&gt;
&lt;p&gt;Strikingly 是一款简洁易用的建站工具。即使是没有任何技术背景的用户（比如你学文科的女朋友！！），也可以使用 Strikingly 在 15 分钟内创建出一个在手机、平板及电脑端都优化的网站。也因为这样，我们很快就积累了很多用户。&lt;/p&gt;

&lt;p&gt;这里是我们一些用户的例子（感觉速度慢的请翻墙~）：&lt;/p&gt;

&lt;p&gt;国际名模： &lt;a href="http://www.mirandakerr.com/" rel="nofollow" target="_blank" title=""&gt;http://www.mirandakerr.com/&lt;/a&gt;
创业公司： &lt;a href="http://sign.byeink.com/" rel="nofollow" target="_blank" title=""&gt;http://sign.byeink.com/&lt;/a&gt;
小商家：&lt;a href="http://fox.do/" rel="nofollow" target="_blank" title=""&gt;http://fox.do/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;更多请看我们&lt;a href="https://www.strikingly.com/s/gallery/" rel="nofollow" target="_blank" title=""&gt;展示页面&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id="我们理想中的你"&gt;我们理想中的你&lt;/h2&gt;
&lt;p&gt;和其他号称硅谷范的公司不一样，我们是一家土生土长的硅谷公司。我们崇尚极客文化，因为我们自己就是一群极客。我们的成员曾经做过超过 2000w 用户的 Facebook App 和 1000w 用户的游戏。我们没有所谓的高级工程师或者产品总监，在 Strikingly，你可以随便为自己选择想要的职位名称（我们的客服叫 Chief Happiness Officer）。我们注重的不是 5 年的经验、牛逼的学历、或者 4.0 的 GPA，我们更希望你是热爱创造、有品位、能 get things done 的极客（我们的 CEO 就是辍学创业的）。&lt;/p&gt;

&lt;p&gt;我们希望的是真正把硅谷极客的文化带回中国。如果你渴望的只是一个稳定的工作，那你可能来错了地方。但如果你想体验和学习硅谷和 Y Combinator 的文化、渴望做最漂亮的产品并发挥自己最大的潜能，那这事就很靠谱了。&lt;/p&gt;

&lt;p&gt;我们的宗旨很简单：Make Something People Want。你呢？&lt;/p&gt;

&lt;p&gt;如果你对我们感兴趣，请将你的简历发送到 &lt;a href="mailto:Joyce@strikingly.com" title=""&gt;Joyce@strikingly.com&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="待遇"&gt;待遇&lt;/h2&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;每年至少一次海外 Work Away&lt;/p&gt;

&lt;p&gt;如果想了解更详细的我们，请移步至英文介绍 &lt;a href="http://www.strikingly.com/apply/" rel="nofollow" target="_blank" title=""&gt;http://www.strikingly.com/apply/&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="Software Engineer - Product"&gt;Software Engineer - Product&lt;/h2&gt;&lt;h2 id="Responsibilities:"&gt;Responsibilities:&lt;/h2&gt;
&lt;p&gt;· Design and build new features from ground up: crafting UIs with front-end engineers and building backend systems with Ruby
· Practice disciplined software engineering (e.g. automated testing, code reviews, and writing beautiful, pragmatic code.)
· Communicate closely with users, collect feedback/metrics, and rapidly iterate on product.
· Work closely with other engineers, designers, and marketers to ship an extraordinary product
· Be flexible, grow, and learn fast in a startup environment.&lt;/p&gt;
&lt;h2 id="Requirements:"&gt;Requirements:&lt;/h2&gt;
&lt;p&gt;· Good taste
· Keen product sensibilities, with a desire to discover and fulfill the needs of users
· Exceptional object-oriented programming skills
· Experience in any server-side language (Java, Scala, Go, Node.js, Erlang, Python, Ruby, PHP and etc.)
· Extensive knowledge of Unix/Linux
· A solid foundation in computer science, with competencies in data structures, algorithms, and software design practices
· Experience in optimizing your code to the extreme
· Experience building highly interactive web applications, working up and down the stack
· Experience with Git
· BS, MS, or PhD in Computer Science or related technical discipline (or equivalent)
· Conversational English skill&lt;/p&gt;
&lt;h2 id="Bonus:"&gt;Bonus:&lt;/h2&gt;
&lt;p&gt;· Object-oriented JavaScript skills
· Test-driven development
· Experience in distributed systems, performance analysis, network systems, large-scale storage systems, and web infrastructure, with extensive knowledge of Unix/Linux
· Strong understanding of database design and SQL, caching, and scalability
· Experience in optimizing your code to the extreme
· Experience with shipping high-volume production applications
· Familiar with AWS stack&lt;/p&gt;

&lt;p&gt;如果你对上述职位感兴趣，请将你的简历发送到 &lt;a href="mailto:Joyce@strikingly.com" title=""&gt;Joyce@strikingly.com&lt;/a&gt;.&lt;/p&gt;</description>
      <author>dfguo</author>
      <pubDate>Thu, 01 Aug 2013 20:55:45 +0800</pubDate>
      <link>https://ruby-china.org/topics/12990</link>
      <guid>https://ruby-china.org/topics/12990</guid>
    </item>
  </channel>
</rss>
