[关闭]
@numbbbbb 2016-02-17T10:27:38.000000Z 字数 3100 阅读 594

如果你还没有听说,Facebook即将关闭Parse,一个Facebook不久前购得的后端及服务系统(BaaS)。许多开发者感到有些失望,甚至是被Facebook背叛了。在Parse被关闭前,有人从它的主页上截下了这张图片,我把截图发了一条Twitter,它几乎概括了一切:

不必由我强调,他们自己都强调:成千上万的开发者相信我们。你可以从这种图片的展示中看出为什么开发者觉得自己被背叛了。当知道Facebook随时可能决定关闭一个项目后,为什么还会有人继续使用React Native, React JS, HHVM, Relay或者其它Facebook推出的技术呢?

诚然,这些都是开源项目,开源社区可以接手,但开源项目需要维护者,企业赞助者能为此提供巨大的帮助。Facebook已经证明了他们不值得信任,但曾经用过Facebook API(或者就第三方社会化媒体API而言)的人并不会因此感到过多惊讶。我打算以后再详细讨论这件事,目前我们转换一下话题,讨论另一件显而易见的事:Twitter,以及更重要的Twitter Fabric。它现在拥有Crashlytics并且集成了许多由Felix Krause完成的令人惊讶的工作。

不过要想理解Twitter对待开发社区的态度,我想我们应该讨论一个叫Meerkat的小APP。我保证我们会回来继续讨论Parse和Facebook,不过这个故事也与话题相关,所以暂且忍耐一下。

Meerkat

讲一个小故事:我生活在德州首府奥斯汀,在每年的SXSW(一系列电影、交互式多媒体和音乐的艺术节与大会)上我坐在前排,靠近那些打算明年大显身手的初创公司。Twitter, Foursquare, GameSalad甚至Four-Hour Work Week都是在SXSW成立,这些是获得了巨大成功的公司,但每年有大量天真的创始人来到奥斯汀展示他们的成果,希望能在这个节日里起步。2015年有一个非常明显的赢家:Meerkat。

从本质上说,Meerkat是一个直播平台,它允许用户向别人直播自己的的手机,在SXSW上大出风头。如果你在去年的SXSW会场周围闲逛一圈,你会发现随处可见Meerkat的衬衫。每个人都在直播音乐,Meerkat会议,他们的午餐,或者任何在做的事情。然后,所有的一切都突然停止了,因为一个非常具体的原因:

在Meerkat达到巅峰的时候,Twitter突然通知Meerkat在接下来的2小时中会限制他们的API访问

如果你熟悉iOS App Store的上架审核流程,你就会理解这是一种(比较严重的)问题。尽管Meerkat工程师可以重写整个APP来避免使用Twitter的API,但他们无法在发布更新的两小时内让APP审核通过。这个过程实际上需要大约3周时间。

在Meerkat达到巅峰的时候,Twitter突然通知Meerkat在接下来的2小时中会限制他们的API访问

就我个人而言,我并不对此感到惊讶,但很多人想知道为什么Twitter会有如此行动。他们是不是违反了API的协议,此举是否违法?

好吧,不是这样的。。。

其实Twitter决定阻碍数年来最成功的基于Twitter的应用的全部原因是,Twitter自己在准备开发一个叫Periscope的APP,它是Meerkat的竞争者,我拒绝为它添加链接。

于是我们现在发现Twitter再一次希望获得开发社区的信任,叹气。。。。。

Parse

看吧,我说过我们还会回到对Parse的讨论上来的!

由于Twitter和Facebook本质上来说是一枚硬币的两面,对我来说好像信任其中的任何一个都会有相似的结果。在我思考一家科技公司未来会如何发展时,我总是重复同一句真言:“跟着金钱走”。这大体上可以告诉你大公司在未来会有怎样的表现,尤其是那些上市公司(Twitter和Facebook都是)。美国的上市公司需要按季度向股东提供营收报告,有时一份令人满意的报告是以损害顾客和合伙伙伴的利益为代价的。我看到Parse免费额度如此之高时,我着实感到担心。我觉得99%或更多的公司都不会超过这个额度,即使超过也只需花很少的钱。Facebook提供开发工具,尤其是BaaS服务的动机究竟是什么?我认为答案很简单:他们想要获取你的数据,但最后发现这些数据没有价值,所以他们决定不值得再为Parse花费时间。他们不能提供免费的Baas服务,把利润变成成千上万的开发者,所以他们决定关闭Parse,用Facebook自己的话来讲就是:

我们为能够帮助你们中的很多人开发优秀的移动应用而感到骄傲,但我们需要把资源集中到别的地方

翻译:“你们不能为我们赚到足够多的钱”

Facebook的利润主要来源于广告业务,就像Twitter和Google,后者超过了Apple,现在是世界上最值钱的公司。事实上,只有一个平台提供商不把广告收入作为主要利润来源,那就是Apple。

跟着金钱走

今天早些时候我发布了这条Twitter消息:

(译者注:不会插入推特消息啊)

这是真的,你不能盲目地把后端交给这些社会化媒体公司管理。你必须跟着金钱走,找到对方的动机和目的。如果对方的目的不在于为你提供优秀的服务,并有利于他们的最终受益,那么这样的服务可能不会长久存在。如果你是创业公司的创始人或CEO,这也是一个很好的分析你自己业务的方法。当你与他人合作时,你必须确定你们的金融目的是一致的,否则你们迟早会分道扬镳。这个结论对员工、联合创始人、合作伙伴和卖家都适用。

Facebook API

回到Facebook API推出的早些时候,你可以非常方便的获取到用户的联系方式,这导致了来自Facebook游戏的大量垃圾邮件,以及Farmville的崛起。但是Facebook不喜欢这样,所以他们限制了这种权利,损害了很多APP的利益,以及Zynga的股票。很认真的说,检查一下这对于Zynga股票造成的影响:

如果你的业务依赖于APP,那么你的后端将是非常重要的商业资产,你必须对它拥有绝对控制权。诸如Salesforce和其他基于云的公司用了将近十年发展成为大公司,即使是现在,他们中的大多数也在使用在线托管版本的软件。其原因就是在一个运营情况良好的公司中,你必须拥有一切对于任务至关重要的东西。这会增加最初部署和后期维护的成本,但如果不具备这样的控制能力,你的业务就依赖于一些可疑人物的决策,这些人会挖掘你的数据并为自己的广告服务提供支持。你希望这样的人控制你的服务么?你有多信任Facebook, Twitter和Google?

建立你自己的后端

为你的移动应用提供一个可控、稳定的后端的唯一方案是自己建立这样的后端,我知道这听上去很难,但使用Ruby on Rails或NodeJS来为移动应用提供API支持并非那么困难。坦白地说,Parse后端和基于javascript的事件与写一个NodeJS应用在表达、为简单的API发送抓取节点模块、使用MongoDB数据库存储所有数据方面并没有太大区别。如果这些听上去非常难,你只要花几个小时读一些网上的教程就会意识到你自己完成所有的这些事情是多么简单。或者你也可以雇佣我的公司,我司专门从事这种业务。

如果你着实雇用了别人来构建你的后端,确保你能够获得源码和必要的工具,这样你可以部署在任何你需要的服务器上。Docker是一个很好的选择,它可以包含一个APP所有的环境需求,像Heroku这样的服务让部署Rails应用变得很简单。

有趣的事实:在这篇文章完成了95%时,我那令人啼笑皆非的Twitter插件弄坏了所有格式,我不得不把所有的东西重新排版。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注