新时代互联网创业-快速实现

2016年5月8日,我应朋友邀请,在位于重庆互联网产业园的『易一天使』孵化器给大家分享了一下:在当前这个新时代,互联网创业过程中如何合理利用云计算资源和简单易学的HTML5技术快速实现MVP(最小可用产品)。
以下是分享的主要内容:

就差个写代码的了

相信有不少非技术背景的创业者在初创阶段都会面临这个共同的难题:『就差个写代码的了』,往往在这个阶段对技术的了解不多,通常也会觉得技术很简单很便宜,这也是我重点分享的第一段主题,希望通过一些漫画和数据打破非技术背景的创始人在这方面的一些误区,同时也代表技术人奉劝各位非技术背景的创始人:抛弃那些不切实际的幻想,脚踏实地,尊重商业规则,尊重技术才是互联网创业的正确姿势。

做一个APP需要多少钱

在尊重商业规则,尊重技术的前提下,我们来谈谈钱的问题。以我的切身体会,重庆这么多年之所以互联网行业发展不起来,有一个很重要的原因是资本的投入不够,这么多年也就只有一个猪八戒网,一路熬过来也非常之不容易。而即便是猪八戒网,真正投入到技术研发中的资金和资源同样非常有限,这背后当然有一些客观现实的原因,同时也有一部分原因是从一开始创始人和非技术高管就觉得技术这块儿应该很简单很便宜这样的意识形态决定的。就像下面这副漫画描述的这样:

对于技术人而言,最可怕的不是你的需求方完全不懂技术,而是这种特别勤奋的客户,他们自己按照自己熟悉的方式做了很多努力,梳理了需求,甚至都画出了流程图,在他们自己的心里他们已经想得很清楚了,似乎就差吹一口仙气儿他们的需求文档应该就能变成现实了,于是在尊重商业规则的前提下他们兴致勃勃的去见技术外包公司了。

不懂技术总觉得很简单

在得到一个初步的报价之后,不熟悉这个行业的大部分客户都会觉得贵,而且觉得贵得毫无道理:

在没有技术背景的情况下,总是没法儿想象一个完整的系统需要牵扯到多少资源多少工作量,所以总会觉得太贵,觉得软件外包是暴利。而更可怕的是一切试图解释的努力都几乎是无效的。


PS:在此郑重声明一下,这个漫画出自著名设计师 西乔

好了,看完了漫画,让我们一起回到现实,设想一下如果不找外包,自己组建团队从头开发一款APP需要多少钱:

从产品经理的角度算一算

类似上面这个漫画的场景几乎每天都在不停地上演,于是就有产品经理针对这个问题给出了一个相对客观的答案,这个答案的前提在:深圳、移动互联网方向。包含研发一个新产品过程中一些常见的工作,并非十全十美。
首先假设在做APP之前我们已经有了一个成熟的团队(这是非常幸运的前提,很多产品研发进度极其缓慢的原因之一就是在过程中不断在招人),团队的结构以架构师兼后台开发1名+安卓1名+iOS开发1名+产品经理1名+前端开发1名+设计师1名。你可能也发现了这些人员配备都是单点的,一旦有人生病或请假,某个职位就会缺失,项目进度就会拖后,所以我们大约配备2个浮动名额,也就是,初始团队大概有8名,我们假设团队平均工资在13000左右(憋惊讶,深圳需要这个数,还是比较低的。。。),需要给员工缴纳五险一金,详见下表(假设我们是老实善良的公司,公积金按最低标准缴纳):


除工资的部分,还要平均为每个员工多缴纳 3653元的五险一金支出,员工部分的支出是 (13000+3653)*8=133224元/月。

文中还粗略计算了办公场地、办公用品、服务器、域名等其他成本,我们在这里略过细节,直接进入核心内容。

新产品从无到有常见的工作:

  1. 产品官网,产品官网是产品、公司、团队的脸面,让用户进入之后能以最快的速度了解你的定位以及产品特性,也就是什么样的人在为解决什么样的问题,做着什么样的事情。
  2. 用户协议。是的,如果用户要注册、使用你的产品,你得起草你的用户协议,跟律师或法务不断沟通调整。
  3. 种子用户。嗯,你要思考你的第一批种子用户从哪里来,如何组织,怎么管理,他们是检验你产品的第一群人,对于验证你的产品定位、发现产品问题、提升产品体验来说至关重要。
  4. 基础数据上报规划。你要知道产品一旦发布,在对用户行为一无所知的情况下,需要收集什么数据来优化、调整你的产品设计,思考你的产品方向。
  5. UI设计与交互标准制定。不能保证产品的UI以及交互一上线就有让用户觉得惊艳的效果,但是必须保证UI/交互在一致性上没有问题。
  6. 后台管理系统。如论是查看数据还是内容管理,后台管理系统是你工作的有效辅助,也不能少。
  7. APP。这是你的产品的重中之重,密切观察跟踪。

......

如果一切顺利,那么在3-6个月之后,你的APP第一版应该有了第一个雏形了。
6个月的时间,算快,一个APP从无到有需要的费用大概这么算:

  • 人工费用: 133224元×6个月 ≈ 80 w。
  • 场地租金: 15000元×6个月 = 9w。
  • 办公耗材+桌椅支出:1w。
  • 服务器、域名、周边IT基础费用:2w。
  • 大约算下来,不算营销费用,第一个版本,你需要准备100w。

是的,当有人问你做一个APP需要多少钱时,你可以回答一个不太复杂的APP,从无到有做出来,半年第一个版本出来,需要100万。

在这里肯定有朋友会跳出来拆台了,会说在重庆更便宜些,人工费用场地费用都要便宜些。是的,我不否认这个现实。在重庆你确实可以在人工和场地费用上更少,大概能少花20万只用80万做出来,可是有没有人想过便宜的这20万付出的代价是什么呢?当一个技术人可以去深圳月薪15000的时候他为什么要留在重庆月薪5000呢?更何况他在深圳的工作环境更敞亮更方便而在重庆就像在富士康的流水车间!长此以往重庆还能剩下什么优秀的技术人呢?没有优秀的技术人拿什么做出来优秀的产品呢?靠便宜的那20万吗?

如果重庆的便宜真的那么好占的话,BAT为什么不把研发部门放到重庆来呢?下面我们就来看看BAT在研发上都花了多少钱吧。

BAT的研发费用占比

下表数据均来自新浪财经,时间周期为2015年第2季度,单位均为百万人民币

公司 毛利 销售/常规费用总额 研发费用 研发/销售 研发/毛利
百度 10072.22 3889.84 2712.68 70% 27%
阿里巴巴 11292.00 5008.00 3042.00 61% 27%
网易 2845.57 898.42 496.78 55% 17%

PS:现场演讲时部分数据有误,特此更正!

原谅我标题党了,腾讯的财报是港股的,不按这种结构分布,所以没办法弄成同等的表格来对比。但是总的来说,我们羡慕的BAT,我们每天在用的这些亿级用户的APP背后,是这样的研发费用数据。达不到这个程度,那么基本上你的产品肯定到不了这个量级。除非你认为自己比李彦宏和马云要聪明得多,否则轻易不要去挑战这个商业规则,他们做了10多年也只能做到这样而已。

没有一百万怎么办?

那么很多创始人看完前面这些数据之后肯定开始愁了,我没有一百万怎么办?我天使轮总共才融100万呢,难道全部用来搞研发?甚至于没有一个免费的技术合伙人帮我把东西做出来,我连100万的天使投资都拿不到呢?怎么办呢?这种情况还是回家洗洗睡吧😄。

如果睡醒了之后你的梦想还在的话,与其满世界去找免费的技术合伙人,不如自己沉下心来花100个小时自学编程 http://codingvc.com/the-100-hour-rule/ 只要你够努力,100个小时足够学会编程做出一个简单的产品原型。运气足够好的话,那么你可以拿这样的原型去融到资。

当然也有运气不够好的情况,那么你需要把原型变成真正能用的产品,而这个过程显然不是只靠你花的那100个小时就可以搞得定的,要让你花100个小时做出来的产品能够用于实际生产,有一个非常重要的前提:善用各种云计算产品。这个世界有很多聪明的程序员正在把他们的技术能力变成各种各样的云计算,在云时代创业往往只需要学会简单地调用这些云计算产品并按实际使用量付费给他们就可以了。我们将在下一个环节中演示一个实例,如何通过 200 行代码调用云计算产品实现一个通过短信验证码登录的简版『微信』。

如果你的产品方向确实靠谱,那么通过花100个小时自学编程并借助合适的云计算产品,足够让你的第一个版本上线运作起来并收集到一些数据,在这个时候你再去找投资或者找到懂技术的朋友来做你的技术合伙人,当然会显得更有诚意,并且也会更清楚你自己要什么。

说到这里肯定有朋友要问了,你一上来告诉我们要100万,8个人,半年才勉强能做出来一个APP,现在又跟我说1个人花100个小时就能做出来一个产品,这不是自相矛盾吗?各位看官别着急,我们马上进入下一个话题:

又快又好又便宜现实吗

每一个创业者在创业初期都希望自己的技术实现又快又好又便宜,但是在前面那些血淋淋的数据面前,这个美好的幻想似乎要落空了。其实在相对合理的一些前提下,又快又好又便宜是完全现实的,在这一小节里我们将用事实说话。

希望完全免费的那些就不提了,我已经在前面劝过他们回家洗洗睡了😄。

下面我们就来摆一下事实:

Instagram 是怎么做出来的

首先,让我们一起来认识一家美国公司:Instagram

  • 2010年10月6日正式发布
  • 2010年12月12日突破 百万 用户
  • 2011年9月22日突破 千万 用户
  • 2012年4月3日推出Android版
  • 2012年4月9日被Facebook 10亿美金 收购
  • 被收购时只有13名员工

如此梦幻的创业故事,简直酷毙了。那么他们是怎么做到的呢?在他们没有13个人的初期,由一个创意变成第一个版本的那个阶段,他们是怎么干的呢?下面这张图形象地给我们表达了这个过程:

值得一提的是这张图是根据 Instagram 创始人 Kevin Systrom 的自述: https://www.quora.com/What-is-the-genesis-of-Instagram 画出来的。

在文字版本的自述里面 Kevin Systrom 比较详细地描述了他还在 Nextstop 做市场工作的时候,开始尝试在业余时间自学编程(他没有学过任何正规的计算机课程)。他最初尝试做一个名为 Burbn 的黑帮战争版 Foursquare (签到类应用),并且他利用HTML5做出来了最初的原型给身边的朋友们使用。但是一开始的时候,那些朋友们其实是拒绝的。因为这个原型没有任何品牌元素也完全没有经过设计。于是 Kevin 花了很多个周末来改进这个原型。直到他碰到了他的天使投资人,在给天使投资人看过原型之后,投资人很感兴趣,他们第一次正式碰面聊过之后,Kevin 就辞职去潜水休假了并且在休假的过程中慎重考虑要不要把 Burbn 变成一家公司,2个星期之后,Kevin从天使投资人那里拿到了50万美金的投资。

拿到投资之后 Kevin 才找到了他的另外一个合伙人 Mike,然后他们一起把Burbn 做成了一个功能强大的 HTML5 mobile web app。包括了 签到、制定计划、通过和好友互动获取积分、发照片等功能。

随后他们才意识到需要保持专注在自己真正能做好的事情,并且逐步删减原有的功能,只保留分享照片,并重命名为 Instagram。8周之后,他们上线了,并且迅速成为了照片分享类APP的行业第一。

回顾 Instagram 的诞生过程,我们不难发现以下关键点:

  • 创始人兴趣出发的自我驱动
  • 早期团队不需要太多人(2人)
  • 第一个版本不需要太长时间(8周)
  • 先用 HTML5 快速验证原型
  • 保持专注量力而行

所以呢,我们的结论是:当你找到你的技术合伙人之前,不妨先像 Kevin Systrom 一样试试自学编程,然后用HTML5快速把你的想法做出来,给朋友们用用看。

新时代互联网创业的技术栈

事实上,在技术飞速发展的今天,用HTML5已经足够让你快速把早期产品做得不错了,下面我们就推荐一组最适合早期快速创业的轻量级技术栈:

使用React可以让你快速做出来体验和性能都非常棒的 H5版本Web APP,配合React Native 更能让你快速得到 iOS和Android平台的Native版本,最棒的还是通过这样的技术做出来的Native版本是可以随心所欲自动更新的,而不用任何改动都等苹果官方审核2个星期。

在服务器端我们选择了NodeJS,而LeanCloud对NodeJS的支持非常好,数据库我们选择了mongoDB,以JSON为核心,这样下来我们只需要找一个熟悉JS的全栈工程师就足够了。再搭配GrowingIO做用户行为数据监控和收集,早期创业在技术侧所需的全部都齐了。

实例演示(1人、2天,1APP)

说了这么多别人家的故事,我们还是实打实的来体会一下这套技术栈到底能干什么吧,这里有一个我为了这次分享做的小DEMO:

http://demo.h5.vc/
由于只花了2天时间,所以很多细节处理得并不到位,但是基本的功能有了:

  • 1人2天做出来的简版 『微信』
  • 手机验证码登录
  • 实时聊天
  • 基于H5的OpenMVP

这也是我最近正在尝试的 H5.vc 的核心价值之一,我们打算用上面提到的技术栈将创业初期开发MVP所必须的各个部分(比如获取短信验证码登录、地址管理、购物车、直播聊天、移动支付等)都以组件化的形式开发出来,这些开源的组件就构成了我们的 OpenMVP,然后我们再借助 OpenMVP 去帮助各个初创团队快速实现自己的想法。

快速组建合适的技术团队

好了,前面说了这么多,活儿还是得有人干的不是吗。也不是谁都能找得到一个有10年工作经验的全栈开发两天就把MVP做出来了啊。何况那个两天做出来的DEMO其实还有很多工作没有完成呢,所以接下来我们就来聊聊技术团队的问题。

有没有一个万能的CTO

几乎每一个创业公司的CEO都恨不得有一个万能的CTO从天而降,解决跟技术有关的一切问题,但是残酷的现实却是哪怕BAT这种级数的公司,CTO都经常离职。

那么到底是什么原因导致万能的CTO这么难找呢?又是什么原因导致哪怕大型互联网公司的CTO都经常离职呢?
西乔的漫画《神秘的程序员们》17期 《为何受伤的总是技术人》很生动地解释了背后的原因,下面节选几个关键点:


我想圈内名人 Feng 的这段经典语录足以说明一切:技术在短期内总会被高估,但长期内,总会被低估。

如果你期待的是这样万能的CTO,那么不好意思,这个星球上都没有的。要找得到靠谱的CTO,前提你得是靠谱的CEO,得让优秀的人能在你公司生存下去,而技术的生存空间,很大程度是和你产品、销售、运营甚至成本控制相矛盾的,如果你在这些方面都取得了完美的胜利,那么恭喜你,你的技术和技术团队离崩溃不远了。

什么样的技术人适合创业

那些『就差个写代码的了』式的创始人肯定没有认真想过这样一个问题:只要是写代码的就适合创业吗?残酷的现实是并不是每个技术人都适合创业的,无论哪个专业领域,适合创业并且能够成功的永远都是那极少数。如果你从一开始就找错了人,那么恭喜你,离成功有多远我不确定,但是离失败一定不远了,就看这个失败的后果有多严重了。这里有两个传统行业投身互联网创业的反例,大家可以参考一下:

也有人分析《为何你找不到一个技术合伙人?》
http://tech.91.com/news/140102/21642815.html 结论是:

  1. 地点距离并不重要
  2. 想法共识(idea validation)才最重要
  3. 个人关系并不重要
  4. 没有产品也能先有业务(参考《精益创业》一书)

说了这么多反例,给大家推荐一个正面的,由著名产品经理纯银提出的:
《产品小团队》http://www.jianshu.com/p/9bf5fe5012ed
总结起来就是百万日活之前 6个人左右的小团队是最合适的,他自己用亲身经历和携程的大部队做了个对比:携程其他部门的人跟我说,太羡慕蝉小队的研发速度了。我们的产品团队人数多3倍,速度慢3倍。

你没听错,3X3=9倍。所以别瞎学大公司,动不动就招人。

总之,提高效率的终极方案是“砍需求,砍人头,控制版本节奏”。砍需求减少无效研发,砍人头减少沟通成本,而版本循序渐进,分批验证设计更加是金科玉律。“再招几个人”的应对思路总归是下下策,解决一时的进度,却带来长久的内耗。产品团队人招得越多,则研发效率越低,产品经理扎堆更是无人可破的黑魔法,中招必死,死相难看。

轻量级技术团队的组建和管理

前面已经说到了创业公司最忌讳的就是疯狂招人,把沟通成本搞得很高,带来长久的内耗。那么接下来我们聊一聊轻量级技术团队的组建和管理:

还是接着上面的假设聊,百万日活之前的 APP团队,大概长这样:
3RD/2PM/1UI,产品团队一共6个人,做蝉游记/蝉游画报/蝉游攻略这3款产品。

当然了,这样的前提是每一个都是前面提到过的适合创业的人,不养闲人,有兴趣的可以去看同样是纯银写的《创业招聘经验贴》http://www.jianshu.com/p/b6e8e6214dbc

而更具有可操作性的技术团队进化路线建议看看《你为什么总招不到程序员?》http://t.cn/Rq8NbZM:

人一多,免不了要考虑如何管理,如何提高效率的问题,基本上一张图说明一切:


出处:《开发团队的效率》http://coolshell.cn/articles/11656.html

千万不要为了管理弄出一堆根本不懂技术的监工去监视和打扰程序员,让程序员干任何事情都得先给这些不懂技术的高管写PPT汇报基本上就不要指望效率了。

取而代之的是以现在国际上最流行的DevOps为核心的自动化敏捷开发流程管理:


让每一个需求每一个bug都有系统追踪,每一次提交都有程序自动进行测试,测试通过之后可以第一时间体现在云端,让需求方可以尽快看到产品开发的真实进度而不是PPT,由程序自动完成大部分系统通知的工作,程序员专注在开发本身。

联系我们

好了,本次分享到这里结束,演讲时所用的屏幕投影材料:新时代互联网创业-技术篇.pdf
也欢迎微信扫一扫和我进一步联系:


公众号:

2016-04-21 12:18354