知新网CTO:从程序员的视角,实践精益创业
发表于
2013-03-28 00:10|
4351次阅读| 来源
CSDN|
22 条评论| 作者
唐小引
虽然仅仅是一期CMDN俱乐部,却给笔者留下了深深的触动,由此特意把它搬上CSDN首页头条和大家分享。这也是2013年第一场活动(CMDN第25期),于3月26日在北京福泰酒店举行,本次活动以“从程序员的视角,实践精益创业”为主题。来自knewone.com的CTO李路在活动现场分享了他独自一人完成knewone.com所有的设计、前端、后端、部署和运维的创业过程。运用Ruby on Rails、MongoDB、Backbone和Bootstrap等技术,借助全栈式开发、响应式设计、云端存储和部署的技巧,只花了4天时间就完成了knewone.com从概念模型到上线运营的全过程。
图:knewone.com CTO 李路
李路(@_李路),毕业于北京大学电子学系,原新浪高级软件工程师,08年辞职开始创业,历任宽途天智科技CTO、优品爱开科技CTO,曾联合创办了中国第一个轻博客网站宽岛(kuandao.com),现任知新网(knewone.com)CTO。
以下为knewone.com CTO李路的演讲实录:
大家好,我是knewone.com的CTO,我们这个团队很小,总共有三个人,CEO沙沙、我,还有我们真正意义上的串联人李笑来老师。因为我们从做这个网站到现在才一个半月,在产品开发的过程中,我们团队的所有成员都非常辛苦,基本上每天只要睁着眼睛就在想着如何将这个产品做好。
knewone.com现在还处于起始阶段,我们团队不久才探索了一个想法挣钱的可能性,因为我们在一月份做的时候基本上是玩票性质,做的速度非常快,效率也很高。接下来我们会探讨形成一个讨论,让大家非常踊跃去沟通,了解这个世界的未来改变趋势。
那些年,创业走过的路
我们的创业秉承着“精益创业”的做法,因为在产品开发的过程中许多东西都是我自己完成的,所以我收益良多,但同时也会犯下一些错误,下面我就从一名程序员的视角,分享我创业故事。
- 第一次创业,我在新浪音乐做技术经理
几年前,我在新浪音乐做技术经理的时候,当时领导说让我们做一个全国最大的音乐社区,包括曲库、熟悉的网站等内容,就是希望能将这个社区打造为超越乐吧,并且还可以听正版歌曲的地方。于是我们就开始做这个事情,做了很久,大概四到五个月,一开始产品讨论的阶段我们跟产品经理碰一两个月,然后花两三个月时间做这个网站,把所有功能做的非常细致,包括各种评论、社交功能、关注等许多方面,做得非常详尽。然后我们花两个月的时间来测试,通过新浪的测试部把网站上的bug都排除了,经过很长时间的艰苦努力之后,这个音乐社区终于上线了,现在,这个社区已经改版很多次了。
但当时我们做的时候却发现一个问题,就是用户根本就不理我们,即使我们做得非常牛,甚至都能把豆瓣挤掉,但事实却是,用户在音乐社区中根本就不进行交互,唯一做的事情就是听歌,更本不管其他搜罗、挖掘歌曲之类的事情,后来这个项目也就被取消掉了。这可以说得上是我的第一次创业,尽管失败了。
- 采用敏捷开发方式做轻博客
后来我觉得是我们的开发方式有问题,因为当时我们采取的是瀑布式开发方式,先将所有的东西都设计出来,然后再做。
于是在后来做轻博客,就是宽岛的网站时,我们吸取了新浪的教训,用敏捷开发和叠加的方式做这个产品。完成之后这个网站的流量上去了,我们非常高兴,高兴过了头就干了一件非常愚蠢的事情,就是想着将这个流量推得更高。于是我们就把投资人的钱全花在推广上,当时我们还以为将流量推到更高之后,投资人会继续向我们投资,结果当流量达到一定峰值的时候遇到瓶颈了。最后落得个钱流量两空的下场。
- 问题出在哪儿?两字儿,浪费!
后来在去年,当我们看到精益创业的时候才终于明白了我们的问题出在哪里,非常简单,就是我们浪费的太多,不只是浪费程序员的时间,更重要的是浪费钱,还有浪费用户的时间。
精益创业——不浪费是关键
如果要用一个词组来解释精益创业是什么?就是千万不要浪费,无论是钱还是程序员、设计师的时间是如此,不管什么东西都不应该浪费,而要将他们花在对的地方,因为创业就是这么一回事。
对于具体的精益创业,我想分三部分讲,start(筹备)、stage(具体执行)、stack(素质)。
start——创业筹备阶段
- 如何获取创业的idea?
首先我想讲一下创业在筹备阶段的事,很多人心中都有一个创业的梦想,但却有一个问题让创业者感到非常困扰,那就是我应该先做什么?这个问题很普遍,很多人都不知道,但是这个问题的答案智能靠自己去找,自己有想法,创业才会一步一步成形。如果你始终抱着“活在未来”的心态去思考,你才会明白有哪些事情是值得去做的。
图:活在未来
就比如说做移动开发的,当iPhone一出来时就用iPhone,而不是说随便用着什么,活在未来,而不是停留在现在。这样才能好好思考每天的生活是什么样的、什么的东西是应该抛弃的、什么东西是应该吸收、归纳、不断学习的。
因此对于如何获取创业的idea,就是先把自己放在“活在未来”生活的人,找到兴趣点,这样才让你的生活更美好,与时俱进,而且也会产生非常多的火花。
- 创业=起飞,创业=坠毁
很多人都把创业比喻成为起飞,就是一个飞机在一个跑道上起飞的过程。当你上市了,挣大钱了,你的事业真的改变世界了,他们就会认为你的事业起飞了。但是我们不能忘记和起飞相伴随的还有另一个风险,就是坠毁。这个原因是很多很多的,最主要两个因素,还是拿飞机来说,飞机如果起飞有两种情况,第一种是跑道到头了,跑道到头飞机自然冲出这个跑道,如果跑道到头你还没有起飞就有问题了。第二个是跑道有弯,跑道不是一条直线。这时候如果你还是直线往前走,最后还是起飞不了,你会在弯道上直接冲出去。所以这个比喻对于创业而言是非常恰当的。
图:创业=起飞
结合起来我们就知道了一次创业的成功是和别人比较,比别人多还是少?非常简单,在你的钱耗完之前,你能够比别人多做几次方向上的调整,这就是你的创业最后成功还是失败的一个最重要的因素,就是你能够比别人探索的可能性有多少?因为我们大家都知道一次创业不可能一开始把所有东西都想清楚,想得头头是道,一下子做出来还成功了,这是不可能的事情。所以说我们都需要调整,只要在你跑道完成之前你比别人跑得多就赢了。这是我们创业整个过程的了解。
- 创业如何寻找合作者?
要想创业,idea很重要,寻找合适的合作者也非常重要。那么如何找?结合前面所言,首先就是减少成本并不断调整方向。这个非常简单,一个好的精益创业团队具备的基本素质就是观察和决策。何谓观察?就是你不能把一个东西推上去,上线了,然后你什么都不干了,其实上线之前你就应该观察,上线之后你一直不停的观察,你的产品大概对用户怎么样,用户怎么想、怎么说?你的钱花的对不对?你获得了什么?所有东西都得观察,但是观察完了以后,有的团队观察做的不太多,他们成功几率一定比每天走观察的人要少很多很多。
另外一个就是决策,也有很多团队有这么一个现象,他们观察到不同的数据之后,很多人去开会讨论,每天不断地开会,上午一大会,下午一小会,一周恨不得开四五次会,不断讨论,最后得到什么结果呢?如果你只开会那永远都得不到结果,所以非常重要的因素是什么?就是决策,决策需要快速到什么程度呢?只要是可逆性的决策就尽量快点看效果。什么是可逆和不可逆,光给他股份就是不可逆。比如说我要做一个什么工作、推广?这些决策是可逆决策,因为负面影响是可以被抵销的,这种决策应该尽快去做。如果做可逆性决策的会议超出十分钟,就证明你的效率有问题,决策速度至关重要。
- 如何保证创业团队的高水准?
创业团队非常重要的一点因素就是让团队既能跑得快跑得远又不盲目扩大。如果一个团队一开始不知道做什么事情,或者说不知道做的事情对不对。就拉点钱招个三四十人,这可真是不妙了。因为三四十个人每天每周每月都需要花钱,人一多,讨论成本也会上升,不停地讨论、沟通,会拖慢整个团队的速度。如果你在短期内想扩张性地招一批人,那么,要想达到一个精英团队的水准是不可能的。因为你的团队肯定有高水平和低水平的人。如果你想让你团队健康发展,非常简单,就是让你团队足够小,团队成员全都是精英分子。如果你盲目扩大的话,你就会变成像一个客机来不及调整方向撞毁的。我们的团队就是如此,全职的才两个半人,个个都会累得吐血,但我们宁可这么累也不会找一般的人。
tage——具体执行过程
对于一个创业团队来说,每一场创业都是不断进行实验的过程,你要对自己的想法进行实验,看是对还是错?是否能被用户接受?如何实验,就是Build、Measure、Learn的过程。把你最简单的创业点用最直接的方法表达出来就是Build。Build做完之后需要进行调整,如果你的分析不调整会撞毁。之后便是Measure,衡量这个事业到底有没有成功,成功率多少?现在有些投资人就说你们简单出吧,快速上线。如果我们上线只是为了看看上线是发生什么,我们肯定100%成功,因为上线之后我们才能完全知道发生了什么。但是上线之后你学到了什么?你想过这个问题吗?上线之后用户反应哪些是我们预料到的?哪些是我们没预想到的?诸多反映哪些是单纯地因为我们的产品做得好?有多少成分是我们推广营销的?又有多少成分是因为我们做了一些开发之外的事情?
图:B-M-L循环体
所有这些事情都是衡量一个产品能否成功的唯一标准,就是Measure,它是你在做Build之前就想好的,你的产品上线之后的访问量?你的预期用户数?这些你都要提前想好,然后用你的Build去测试你的想法是否正确?如果失败了,那么从中吸取教训,也许是你整个的idea错了,那就不断学习,学习完了再调整,再Build,如此形成一个循环。所有成功的创业都是如此,像Facebook、Twitter之类的成功创业在这个上面的循环都不知道多少次了。
stack——团队素质
- 团队成员基本要求
其实最基本的要求就是你必须得是一个Broad-based。如果你是一个程序员你不能只写程序,你是设计师不能只写UI,你是一个运营人员不能只编写内容,因为团队一开始很小,所以需要一个人做很多事情,包括运营、进货、流水、经营等,程序员都可以做。运营人员也可以做设计,只要他的想法够好就可以做。所以一定不要以为你参加一个创业团队之后你的工作就仅局限于自己手上一团活儿,这是肯定不会的,而且这种情况下也会极大地影响到其他人的士气。很简单,这种分工肯定会不合理,你是创业团队一份子,大家都是,为什么要只管你一摊呢?如果有的事情比你手中的事情重要的多,你是不是应该帮助他人呢?因此很显然不能只看自己手上的活儿,还要顾及全局做的事情,比你手上编的程序更优先的事情,这个东西必须考虑,这是我给想组建创业团队的童鞋的一点建议。
- 程序员的职业素质养成记
第一个这个程序员不能只是程序员,应该是一个Hacker。这个Hacker我相信大家都清楚Hacker这个词在国内被很大的误解了,被误解是黑客。Hacker这个词是有多大的含义?Hacker是如何定义的?Hacker对精品有特别的追求,他希望自己做的东西都是精彩的,可以让人眼前一亮的,他们必须热爱编程,他们通过编程实现精彩的东西,这种人才会称之为Hacker。为什么说Hacker素质对于创业人员来说非常重要,就是在一个团队不可能把所有事情都想全,但是如果Hacker不断追求卓越,你的产品会比预想的还要好。我们知道大的团队做的事情最后的成品往往比当初设计的产品有所差距,一开始百分之百设计,最后变成80%、70%,最后可能不及格了。但是对于创业团队而言,却往往能做出比预想还要好的东西。这个里面Hacker作用很大,一个小小的细节就可以留住永恒的客户。Hacker就是不断追求卓越,不管写出来的东西的样子、用户体验还是代码质量都要足够好。如果你的程序写的非常好的话,一个新加入的成员就会对你这个团队非常崇拜,或者说会让他们产生一种能与这样的人一起共事是一种荣幸,这个事情是非常好的。所以不要以为完成就over了,而要在完成的基础上追求卓越,要比任何你想的东西都好,这是Hacker的基本素质。
图:程序员职业素质
第二个是On the Edge。你可以了解现在世界正在发生的事情,作为程序员一定要追求新潮,要对现在流行什么了然于胸,千万不要孤芳自赏,不要闭门造车做一个东西就完了,一定要知道这个世界上其他地方别的程序员在做什么?名人在做什么?又有什么新奇的东西出来了?这些东西都是非常有用的资产。
第三个就是Sense。我们都知道大多数程序员不太好沟通,可能比较内向,但是必须要有Sense,就是指我们作为程序员,作为技术合伙人,我们要理解别人,以一个宽容的心态了解他们在想什么?总之试着去理解,理解之后你可以选择宽容或者开诚布公地进行交谈。你要试着了解别人的想法,尝试用常识考虑自己做的事情是否合理?这样可以让整个团队处于非常好状态。一个团队健康是必须每个人都健康,有一个不健康的,这个团队就不健康。所以让这个团队每个人都开诚布公、坦诚相见。需要对其他人和同事真诚,共同为同一个目标而奋斗,这是程序员的基本素质。
观众:我想请教一个问题,就是精益开发,别人模仿你,怎么看待这个问题?比如说腾讯,如果你开发到一定程度了,好比说你用四天,如果腾讯集中人力用了四天,或者通过他的财力、销售一些途径去模仿你,你怎么面对这个问题?
李路:说实话,如果我们开发一个东西用了四天的时间上线了,并取得了一定成绩,也赚了一部分的钱。然后腾讯组织一个团队也花四天时间做得比我们还好,我们就不干了。因为如果出现这种情况说明不是一个Start,而是我们做得有问题,所以到现在为止,我们也看不到腾讯做一个产品到成形。
观众:你的产品能吸引客户,大公司看到它的前途了,于是借鉴你的想法或技术,你怎么体会这件事?
李路:首先,正如我之前所言,创业就如同飞机起飞,但在这件事上,用飞机来形容并不恰当,因为飞机运行跑道一半的时候,后面可能还有数不清的弯道。所以我现在用赛车来形容,你是领先的那辆赛车,而腾讯则在你的后面紧追不舍,但前进的方向,比如该拐进哪个弯道,只有你能控制,也不见得你怪哪儿腾讯就会跟着拐,那样在这个市场上,你就会永远处于领先位置,而腾讯永远不会超过你,不管什么弯道你都领先一步,你是第一名,他是第二名,你是冠军,他是亚军,如果他跟在你后面就只能是这个结果。但如果腾讯依靠其雄厚的人力物力财力,超过了我们成为第一名之后就又有一个问题,那就是他不知道怎么拐了,如果他拐错了,成本机会比我们高得多,但如果他拐对了,我们就自认倒霉。
观众:有什么好方法能让自己及团队工作尽可能地维持高效率?
李路:多观察、快速做决策,团队小会高效,每个人做所有的事情而不是专搞自己的一摊。工作十年以来,我觉得没有比我们更高效的团队了,因为我们团队的每一个人都是我见过最有效率的人,我很敬佩他们。
要说个人高效,我还是觉得,首先需要吸取知识。要高效就想清楚自己平常做的每件事情对自己生活、对自己将来的发展可以真正想做的事情有多重要。就像乔布斯说的抓紧时间,乔布斯知道自己得了癌症,经历生死以后他会把时间抓得紧,我们不应该非得自己得了绝症才把时间抓紧,从现在起就把时间抓紧。除了抓紧时间,还要高效率利用时间,第一是把手上事情尽量做得完美,追求完美过程中得到提高是很快的,另外就是了解现在其他人在做什么,有没有比你有更高效的方法,学习这些方法,然后运用,这就是怎么让个人变得更有效。
knewone.com的CTO李路此次在活动现场演示的PPT与众不同,采用精益创业的方式完成,且是在线的,使用3D幻灯片框架Reveal.js。Reveal.js基于CSS,它不依赖任何外部类库,同类产品还有Impress.js。点击链接,浏览PPT(按Esc键浏览演讲提纲)。