Skip to content

Instantly share code, notes, and snippets.

@numbbbbb
Created February 20, 2016 11:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save numbbbbb/d551a663e6b7d0bcee1b to your computer and use it in GitHub Desktop.
Save numbbbbb/d551a663e6b7d0bcee1b to your computer and use it in GitHub Desktop.

##使用Parse,从来就不是一个好的点子!

作者:Jameson Quave,原文链接,原文日期:2016-2-2
译者:SketchK(张思琦);

Hi,你听说了么?Facebook正在停止Parse的相关服务(PS:哦,你还不知道什么是Parse?它是一个为移动应用提供后台开发云服务的平台,曾在几年前被Facebook高价收购),这一举动让许多开发者都感到小小的感伤,甚至有的开发者觉得自己被Facebook出卖了!我在自己的Twitter上发布了一张别人弄的截图,图片是在Parse网站关闭前截取的,我想图片里的内容能说明开发者为什么会有如此的反应.

img

我想我并不需要指出图片中的重点内容,因为在图片里已经有所体现了,对,就这句“Thousands of developers TRUST US”(成千上万的用户信任我们),在图片中的宣传语中,他们为自己塑造出了”高大上”的形象,但现实你也看到了,所以我想你这会儿应该明白了,为什么开发者会感到被Facebook背叛了吧.所以我在想为什么还会有人继续使用 React Native, React JS, HHVM, Relay或者Facebook公司的其他技术方案呢?他们也极有掉链子啊!

可以肯定的是,这些技术方案都是开源的,而且技术社区也可以接手它们, ==但是只有维护者和企业资助才能让开源项目受益最大,==Facebook已经被证明并不值得我们信任,这对于曾经使用过Facebook公司API或者任意第三方社交媒体API的人来说,并没有什么可以惊讶的,这其中的缘由我稍后会做解释,但是现在先让我们说点别的话题,比如社交媒体中的另一个大佬——Twitter...同时我们讨论的重点会更多的涉及到*Twitter Fabric, 需要说明的是,Twitter Fabric现在包含了Crashlytics,而且Felix Krause*为它做了一系列的集成工作,只能用两字形容——”完美”!

但是要很好的理解Twitter在过去是如何对待技术社区的话,我想我们应该先聊聊一个叫做Meerkat的app.我保证我们还会回过头来继续讨论Parse和Facebook的事情,但目前要说的这个故事是整个故事的铺垫,所以请先耐心看下去吧!

####Meerkat

说点小小的背景故事:我住在德克萨斯州的奥斯丁,这让我在每年的SXSW大会中都能占得先机,我便有机会了解一些可能在未来一年内变强变大的初创公司,Twitter,Foursquare,GameSalad,还有the Four-Hour Work Week都曾出现在SXSW大会上.这几个产品都获得了巨大的成功,其实每年都会有多到爆的创始人来到奥斯丁去展示自己的工作成果,并希望他们的产品在那里能够脱颖而出,在2015年的SWSX大会中,MeerKat成为了最终的赢家!

img

MeerKat是一个基于P2P的直播平台,用户通过iPhone就可以完成视频直播并与其他用户进行互动,总之这玩意*席卷了去年的SXSW大会!*在当时的SXSW大会上,甚至整个奥斯丁,你随处都可以见到穿着MeerKat衣服的人.大家有的在直播音乐,有的在直播SXSW大会,有的在直播他们的午餐时间,有的在直播他们正在做什么,然后,毫无症状的....一切停下来了!因为一个特别的原因:

由于MeerKat的强势表现,Twitter公司仅仅给了他们2个小时的时间,就将API的登陆权限回收到自己手中.(PS:原文没有提到,这里做一点补充,MeerKat需要使用Twitter账户才能进行登陆)

假如你了解iOS App Store的相关流程,我想你会明白这是怎么样的问题!考虑到即使MeerKat的程序猿们逆天到能在2小时内重写出一个不依赖Twitter API的app,他们也不可能在2个小时内完成MeerKat在App Store中的更新...事实上,这可能要花费3周或者更长的时间.

由于MeerKat的强势表现,Twitter公司仅仅给了他们2个小时的时间,就将API的登陆权限回收到自己手中.(PS:说实话这段我觉得作者可能是排版重复了....)

我个人对此并不感到惊讶,但很多人都奇怪,为什么Twitter要有如此举动…难道MeerKat违反了API协议中的条款?他们在哪里动了手脚?

好了,当然没有啦....

事实上, MeerKat应该是当年的最佳Twitter-based应用,但Twitter阻碍它的原因是因为他们的产品线上有着与Meerkat相似的产品,叫做Periscope,我拒绝为其提供链接(PS:作者这小脾气啊…)

所以故事讲到这里,如果*Twitter希望技术社区再次信任他们的话*…我只能呵呵呵

####Parse

你看,现在我们继续回到Parse的话题上!

如果把Twitter和Facebook看做同一枚硬币的正反面,那对于我来说,信任他们中的任意一个都会得到相同的结果.当我想知道一个科技公司在未来会有怎样的举动时,我通常会复述那句口头禅,”跟着钱走”.这通常会告诉你大公司将如何在未来能表现的更加出色,尤其是那些上市公司(Twitter和Facebook都是上市公司).美国的上市公司要对股东关于季度收益报告上提出的相关问题做出回应,这有时会对他们的客户和(或者)合作伙伴造成一定的伤害.当我看到免费使用Parse的巨大门槛时,我不禁为此担心起来.在我看来超过99% (可能更多)的app不能越过这个门槛,即使他们越过了这个门槛,也只能获得很少的利润.当Parse成为他们的开发者工具,尤其作为后端的服务,Facebook的动机到底是什么呢?我想答案非常简单,他们想要你的数据!但事实证明它不怎么值钱,所以他们认为不必要在Parse上浪费更多的时间.他们也不可能通过向成千上万的开发者提供免费的后端服务中获取什么大的利润,所以他们关闭了这项服务,用Facebook自己的话来说:

我们很自豪,是因为我们已经帮助了很多人搭建出他们自己的手机app,但现在我们需要集中自己的资源到别的地方去了

说的更明白点:你没让老子赚到钱啊!!!

Facebook赚钱的本质就是通过广告,这个套路与Twitter一样,与全世界最有钱的公司——Google也一样(据说已经超过了Apple),事实上,目前只有Apple公司的主要利润不是来自广告.

####Following The Money

我在今天早些时候发布了这样一则twitter:

img

说真的,真的不能盲目相信任何一个社交媒体公司做为你的后端!你必须遵循”Follow The Money”这条准则来摸清他们的动机!如果他们给你提供了优质的技术服务,但这些东西又不能让公司获得利益,那么他们也不太可能坚持这个策略太久.所以假如你是一个初创公司的创始人或者CEO,这也是一个你用来分析自家生意的好方法.当你和他人合作的时候,你一定要确定他们的财务动机与你保持一致,否则总会出现一些不协调的事情.这个同样适用于员工,合伙创始人,合作伙伴,供应商等.

####The Facebook API

回到Facebook API的初期,你可以很轻易的获取用户的联系人列表,这直接导致从Facebook的游戏中发出了大量垃圾邮件和Farmville的崛起(PS: Farmville不知道,QQ农场总知道吧,QQ就学的它),但是Facebook表明他们并不喜欢这样的事情,所以他们收回了许多权限,这使得很多app收到了冲击,说真的,让我们看看这些冲击对Zynga(PS:一家社交游戏公司)股票的影响:

img

假如你的生意是基于一个app,那么你的后端将是一个极其重要的商业资产,你对它一定要有绝对的控制权! 像Salesforce和其他云计算的公司一样,它们用了近十年的时间才成长为大型公司,而且直到现在,它们中的大多数公司直仍在使用本地化的软件,==这样做的原因是因为如果你想要让生意运作良好,你就必须掌握一切,这是相当关键的一点.虽然这样做会增加维护的成本以及最初部署的成本,但如果不这么做,你还能指望那些专门从事数据挖掘以便为广告服务的人么?你真的会想让这些人来控制你的服务器么?==这么看的话,你还信任Facebook, Twitter 和 Google么?

####Build Your Own Damn Backend

唯一靠谱的答案就是,为了获得一个稳定好用的后端,你最好还是自己动手做一个吧!我知道这听起来有点难,但实际上,==如果你使用Ruby on Rails或者NodeJS来做的话,并没有想象中的那么难.坦率的说,Parse和NodeJS并没有太大的区别,调用一些node模块用作简易的API传递,同时使用MongoDB数据库作为支持,==如果这些东西听起来很难,那么你就花费几个小时在网上阅读相关的教程,然后你就会发现这些东西做起来还是挺简单的.或者,你也可以*雇佣我们公司*来做这件事!

假如你雇佣一个供应商来帮你搭建后端,请确保你能拿到源代码,以及在任何你需要的服务器中加载源代码的工具.Docker是一个不错的技术解决方案,它能够包含app需要的所有环境需求, 而像Heroku这样的服务能使部署Rails的app更加简单方便

题外话:约有95%的可能性,当我在写这篇文章的时候,”可爱”的Twitter把文章格式弄得一团糟,而我不得不为此重新排版. ^_^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment