三步瘦身法 司马亮教你为app“塑形”

相信很多同行都遇到过这个问题,那就是随着时间的推移,team合作开发的项目会因为各种原因导致我们的安装包越来越大,大到自己都不愿意去商城点击下载自己开发的这个应用了。应用跟人的身材一样,一旦“肥胖”,则下载量呈直线下滑,因此我们有必要对我们的app进行“塑形”了。

借着这个机会,我对手头的两个项目(iOS应用)进行了“瘦身”,成功瘦身1/3。其实对于一个30M左右的ipa包来说,能够成功瘦身到20M左右,已经相当不容易了。接下里描述下我是如何一步步做到的。

总体来说,应用瘦身分三个大的层次,分别是资源的优化、编译时候的优化以及深层次的可执行文件优化。

如下图所示:
总体优化逻辑

接下来详细描述这三步操作。

第一步:对于资源文件进行压缩优化

所谓对资源文件的处理,就是对项目中一些图片、音频或者视频文件的排查处理。具体方法如下:

1、搜索冗余图片资源

很多时候,我们发现尽管项目中有很多图片资源,但是有一部分图片是并没有使用的,那么如何找到这些未使用的图片呢?这里我介绍两种方法:

a、利用工具
下载一个项目工具(下载地址 http://jeffhodnett.github.io/Unused/ ),然后运行这个项目工具,在弹出的应用工具中选择我们所要排插的工程文件。即可进行自动搜索这些未经使用的文件。

b、终端命令
此种方法需要安装ack  [在终端通过:brew install ack 命令安装ack(ack用于做搜索)]  。
首先建立.sh 文件 如 unusedImage.sh(可以通过sublime Text编写)

#! /bin/bash
for i in `find . -name “*.png” -o -name “*.jpg”`; do
file=`basename -s .jpg $i | xargs basename -s .png | xargs basename -s @2x` result=`ack -i $file`
if [ -z $result ]; then
echo $i
# 如果需要,可以直接执行删除:
# rm “$i”
fi
done

然后进入你要查找的工程目录下执行 这段 shell 脚本,
sh unusedImage.sh
       运行出来的结果就是程序语言所辨别出来的一些未使用的资源图片。但是千万不要将这些图片一起删除了,因为有可能这些图片在某些地方以另外一种方式使用着。

2、排查冗余图片

123

经过运行软件,得到的冗余图片实在是多,我们接下来要做的就是用人脑对每个文件进行排除。一定要确保这个文件在应用中确实没有被使用,才能删除。对于不确定的图片素材,宁愿保留也不要轻易删除。

3、压缩优化大文件

编译项目,在我的资源中,相应路径下找到该项目文件,右键显示包内容,再对这些包内容list按照大小排序,找到其中占据比较大的一些文件。看看能否进行相应优化处理。

4、处理未使用的僵尸文件。

由于应用开发人员较多,导入进去的各种资源有可能重复,也有部分测试用的文件。那么这个时候就需要去找到这些僵尸文件,然后删除。我在整理整个项目的时候,就发现了又几个音频文件保留在项目中,而项目中没有任何地方引用。因此这个时候可以果断删除掉。

第二步:编译优化

1.编译器优化级别

Build Settings->Optimization Level有几个编译优化选项,release版应该选择Fastest, Smalllest,这个选项会开启那些不增加代码大小的全部优化,并让可执行文件尽可能小。

2.去除符号信息

Strip Debug Symbols During Copy 和 Symbols Hidden by Default 在release版本应该设为yes,可以去除不必要的调试符号。Symbols Hidden by Default会把所有符号都定义成”private extern”,具体意思和作用我还不清楚,有待研究,但设了后会减小体积。这些选项目前都是XCode默认选项,但旧版XCode生成的项目可能不是,可以检查一下。

3.PrefixHeader.pch引用瘦身。

尽量避免全局引用,除非是类似网络接口类,这种基本每个类控制器都会用到的引用。我在检查中就发现,很多时候开发人员为了图方便,直接将头文件在PrefixHeader中引入,这样导致的后果就是每次编译都会将该文件引用编译。无端降低了程序运行效率。

第三步:深入分析,对于可执行文件进行压缩

其实做到上面两步,我们应用已经瘦身很多了,至少已经让我的应用安装包瘦身8M(这个数值因人而异,因项目而异),为了追求更加完美,我需要对应用进行更深入的瘦身,且看下面分解。

一、设置link map,以便本地生成记录

通过Xcode自带的link map来记录我们的可执行文件list,这里需要按照下图设置。

设置link map

点击编译,开始本地生成可执行文件记录。

二、打开沙盒路径

1、如果不知道沙盒路径,可以在自己的应用中打印其路径。

NSLog(@”沙盒路径:%@”,NSHomeDirectory());

/Users/apple/Library/Application Support/iPhone Simulator/6.1/Applications/******-****-****-****-************

打开Finder,选择前往-前往文件夹(或选择快捷键command+shift+G)输入打印出来的路径即可会得到打印结果*为字母或数字,即为沙盒的路径

2、打开Finder,选择前往并按住option键,进入资源库

找到这个linkmap 的txt文件,本次路径为:

Path: /Users/mac/Library/Developer/Xcode/DerivedData/WisdomMedical-afinsdxtbizadydfxufjuxeckkew/Build/Products/Debug-iphoneos/WisdomMedical.app/******

跋山涉水,终于找到这个文件:

可执行文件

接下来就是通过脚本文件编辑器来查看分析生成的这个文件

三、分析link map

这个LinkMap里展示了整个可执行文件的全貌,列出了编译后的每一个.o目标文件的信息(包括静态链接库.a里的),以及每一个目标文件的代码段,数据段存储详情。

(1)在LinkMap里首先列出来的是目标文件列表

列表1

前面中括号里的是这个文件的编号,后面会用到,像项目里引用到静态链接库libMobClickLibrary.a里的目标文件都会在这里列出来。

(2)在LinkMap里最后编译成的可执行文件中的偏移位置及大小

接着是一个段表,描述各个段在最后编译成的可执行文件中的偏移位置及大小,包括了代码段(__TEXT,保存程序代码段编译后的机器码)和数据段(__DATA,保存变量值)。

列表2

首列是数据在文件的偏移位置,第二列是这一段占用大小,第三列是段类型,代码段和数据段,第四列是段名称。

每一行的数据都紧跟在上一行后面,如第二行__stubs的地址0x101364528就是第一行__text的地址0×100005B80加上大小0×0135EA8,整个可执行文件大致数据分布就是这样。

这里可以清楚看到各种类型的数据在最终可执行文件里占的比例,例如__text表示编译后的程序执行语句,__data表示已初始化的全局变量和局部静态变量,__bss表示未初始化的全局变量和局部静态变量,__cstring表示代码里的字符串常量,等等。

(3)接着在LinkMap里就是按上表顺序,列出具体的按每个文件列出每个对应字段的位置和占用空间。

列表3

同样首列是数据在文件的偏移地址,第二列是占用大小,第三列是所属文件序号,对应上述Object files列表,最后是名字。

例如第二行代表了文件序号为2(反查上面就是TKPFileInfo.o)的parseWithDictionary方法占用了1000byte大小。

通过这个可以查看编译后可执行文件占据大小,便于定位和优化项目。

好了,三步到此结束。相信只要你按照着三步来进行应用项目分析,一定可以讲应用塑形成“型男”,赢的广大用户的喜爱。

剖析产品 找准用户 做个创业“老炮儿” --司马亮创业回忆录(二)

       谈用户离不开产品,也就是经济学中的“商品”。商品的本质就是价值。通俗来讲的话,就是如何让用户来喜欢你的商品,甚至愿意掏钱购买你的商品。 

mr-six

        本打算赶在元旦前赶出这一篇内容的,奈何2015过去太快了,一眨眼功夫,司马亮已经不能像以前那样说“奔三”了,而是已经迈进“而立”的门槛了。俗话说,男人四十一朵花,那么三十岁的男人,应该可以算得上含苞待放了吧(害羞)。 这个年龄段的男人,少了二十几岁时候的鲁莽,多了些许沉稳,却又不失锐气,男人,在这个时机理应选择创业,这个时候创业盈天时享人和。

        好吧,闲话不多扯。今天聊到“用户”了,用户这个词在互联网行业内来说是一个十分敏感又逃脱不掉的词,对它的观点也仁者见仁,智者见智。但凡有一定用户量基础的应用,都必须经历这个用户量的成长过程。自然而然的也有很多人愿意将自己的“用户经”分享出来,比如如何以最小成本获取首批用户量?如何增加用户粘性等等。

        这些“用户经”到底有没有用,肯定有用。但是要看人,对于有一定运营经验的创业者来说,这些“用户经”都是手到擒来,自然用起来得心应手,而对于一些新手创业者来说,司马亮奉劝各位,还是谨慎行之,不然根基不稳,适得其反。今天这篇文章,就是写给像是万里虎这种初创企业的初创人士的。全文不谈方法论,而是从现象到本质的分析,如果你是一名方法论的拿来主义者,那么你可以离开了,因为这篇文章你看不到任何你想要的“用户经”。

一 、思考力决定竞争力  创业者得学会洞悉事物本质

现象和本质

       所谓洞悉事物本质,就是通过事物的现象看清问题真正原因,从而导出真正有效的解决办法。我们常将“透过现象看本质”这个哲学命题挂在嘴边,但是真正遇到现象了,很多人迷茫了,迷茫到错把现象当成了本质,那么导出来的解决办法自然也不能解决本质问题。

        比如我们今天聊到的用户这个话题,我们要解决的是如何提高用户量、增加用户粘性等问题。那么是不是这就是问题的本质呢?

       谈用户离不开产品,也就是经济学中的“商品”。商品的本质就是价值。通俗来讲的话,就是如何让用户来喜欢你的商品,甚至愿意掏钱购买你的商品。

        很多人对互联网行业和传统行业划了很明显的分界线,认为互联网行业就得用互联网行业的方式来做事,不可用传统行业的思维来开辟市场。司马亮认为,互联网行业是在传统行业基础上诞生的产物,就像是先有了电,再有电脑一样。互联网行业不仅要有传统行业的思维,而且得在传统行业的基础上有所创新,融入互联网的基因,这才是新时代的互联网创业。

       我们在做一款互联网产品的时候,首先需要明白这款产品“市场价值”,也就是他能够解决什么问题。u-ber带来了打车行业的改革,“饿了吗”带来了外卖行业的改革,“春雨医生”带来了移动医疗的革新……产品的本质在于满足用户的需求,解决社会在发展过程中需要解决的问题。这就是我们每一个创业者需要思考的。  

二、用户心理学进程 你在哪一阶段?

       到这里我们已经分析了用户是因为商品而存在,那么是不是说商品就是解决用户这个问题的本质所在呢?看过我的上一篇文章《避其锋芒,侧翼出击。——司马亮创业回忆录(一)》的读者应该还记得文中提到的产品迭代”潜规则“,也就是很多创业者所谓的憋一个大招放翻一批竞争者的做法。 我们暂且不论这个方法的好坏,但是至少这样做的创业者已经分析到了这一点:那就是商品的本质就是价值。消费者喜欢的自然是物美价廉的产品,按照这个逻辑,那么我们只需要把产品做到物美价廉应该就一定能够赢得用户喜欢,用户量自然上升、用户粘性也自然增加。

      事实果真是这样吗?接下来司马亮会继续跟大家一起往下分析,去挖掘什么才是解决用户问题的本质所在。我们要让用户喜欢我门的产品,那么我们有必要知道用户凭什么喜欢我门的产品,换句话说,我们需要去分析用户的一个心理。

      用户在去下载你的应用(其实也可以说购买你的商品)的时候,经过的心理过程是比较复杂的,按照用户的决策层面,我将用户购买心理分成了下面三种境界。按照用户的三种决策境界,我也分析了我们三种常见的市场策略。大家大可根据自己目前状况对号入座。

(1)产品阶段

      用户在这一阶段购买商品不需要经过过多思考,决策性较低。就像小两口过日子,材米油盐酱醋茶这些基本物资的采购上,比较固定且不会多去比较。这个阶段对于用户来说就是产品阶段,也就是仅仅为了满足基本生活需求而购买的商品,或者说属于轻决策类商品。

       说到这里,有些读者可能有异议了,这跟互联网创业风马牛不相及,司马亮这不是满嘴跑火车吗?如果你这么想的话,说明你确实需要好好读读我接下来要讲述的内容了。<微笑>

       相信做过销售的人都知道“扫楼”这个词,“扫楼”顾名思义就是拿着产品和产品资料在客户楼层进行地毯式的拜访和推广,它是传统行业里面销售员成长必走路。这里就需要销售员对自己的产品相当了解,在接触用户的时候,能够有条不紊的将产品的功能叙述清楚。

       同理在互联网行业亦是如此,无论是电商类产品还是金融类产品,都离不开对产品的认知度。我之前接触过一个创业者,大概四十岁左右,他跟我说这是他第一次创业,说句实话我挺佩服他的,因为这个上有老下有小中间还有车贷房贷的环境下,他有勇气出来进行初次创业,这绝对难得。但是当他说到要找一个牛逼点的“产品经理”来帮他做一个产品,并且这个产品的需求点也不怎么清晰,这个时候我感到他或许真的不适合创业。试想一下,一个老板对自己的产品需求不清楚,只是期待自己能够抓住互联网这股风获取一定报酬,那么他成功的概率很低的。因为他不了解自己产品的真正功能,那么肯定无法准确定位自己产品的用户。与其这样,还不如去做一个投资者。

(2)需求阶段

      很多人说,销售员特别能够忽悠,不知不觉间就忽悠你了买他的产品和服务。 我觉得如果而你需要这个产品,而人家又给你介绍了这款产品,你购买了,那叫销售。如果你不需要这款产品,而他给你介绍了这款产品,你也购买了,那他最多算个忽悠(当然除去你本身脑子短路的情况)。

需求

       这里我们就涉及到了第二点用户心理,那就是用户需求点。撇开刚才说到的“忽悠派”销售员来说,用户真正希望获取的是自己需要的产品,这也符合经济学中的供求关系原理。换句话说,对于我们创业者来说,我们需要打造的产品功能是你的用户需求的功能,这样才能构成市场。

a、有需求一定有用

       这个观点大家基本上都知道,因为我们既然脱离了单纯的产品阶段,意味着我们开始以用户为中心来开发自己的产品了。很多理论中说的找痛点找需求点就是基于这个而来。

b、有用不一定有需求

        这个观点我想尽管有很多创业者都知道,但是还会去犯这样的错误。什么是有用不一定有需求呢?

纸张

       举个夸张点的例子,将a4纸的质量需求控管放在了卫生纸的产品生产上,其结果可想而知。很多的创业者在创业的过程中容易犯闭门造车的毛病,这跟我在上一篇《避其锋芒,侧翼出击。——司马亮创业回忆录(一)》中描述的迭代潜规则有相似之处。一旦用户闭门造车或者掩耳盗铃,那么创业者就会去独自揣摩用户的需求或者干脆创造了用户需求,伪需求就由此而诞生了。接下来你和你的团队将要经历的是一段时间的无用功奋斗阶段。

      再举个例子,在当今社会,尽管很多人需要汽车代步,但是考虑到诸多因素,或许此刻对他来说汽车不是真的需求。

      至此,我想说的是:
      功能强大的不等于用户需求……
      质量好的不等于用户需求……
      对客户有用的不等于客户需求……
       要开发对客户有真正需求的产品,而不是有用的产品。有需求一定有用,但是有用不一定有需求。

(3)感知阶段
       之前在创业公司的时候,我有个习惯,就是喜欢去关注一些大品牌的广告语。至今还记得德芙巧克力的广告词“众享丝滑”,总能让我脑袋中浮现一幕幕甜蜜温馨的场景。还有一个可能很多男士都熟知的广告语“最大的感觉就是没有感觉”,这句广告词为“冈本003”推向市场创下了辉煌战绩。

德芙

        不必多说,大家也能体会出上面这两句广告语的独特之处。那就是能够让用户呈现感知上的趋同感。买德芙巧克力的不一定是为了德芙的口味多么好,而是为了感知这份“众享丝滑”的意境。买“冈本003”的我想也不一定是冲着这个0.03mm的厚度去的,而是为了那份“没有感觉“的感觉而去的。

      那么对于互联网产品来说,我们如何让用户产生感知上的趋同感呢?这就涉及到一个心理学方面的阶段,那就是--感知阶段。感知阶段是一个用户比较深层次的需求体现,而我们要去想的就是如何抓住用户的感知来打造你的产品。我们可以在描述产品的时候,多采用一些感觉性的词。就像上面说到的德芙巧克力和冈本的广告语一样,让用户有一种跃跃欲试的欲望。

       市场中商品的本质并不是咱们“产品阶段”描述的那样忽悠,也不仅仅是停留于“需求阶段”的按需定制,市场中的商品是让客户有好的感觉,让客户感觉到物超所值。要知道,消费者其实需要的是一种满足感,一种优越感。

       人们购买奢侈品的心理状态,并不仅仅是产品的基本功能了。很多是为了面子。那么如果售卖奢侈品(其实互联网产品算得上是泛奢侈品),则需要从让用户感觉到档次、地位、身份等。满足一个人的心理需求,往往比刚性需求更容易产生效果。

        下面我们可以逆向思维,分析揣摩下用户进行产品选择的心理需求轨迹:

(1)用户选择我们产品的前提是喜欢。一旦用户喜欢我们产品了,我们才谈得上用户粘性和日活跃等数据。

(2)而喜欢的前提是了解,也就是说只有了解了才能谈得上喜欢。

(3)了解的前提是听说或者知道这个产品。这里就要涉及到我们前面说的德芙巧克力式的市场推广了。

        总的来说, 用户先通过某种渠道知道我们的产品,然后才可能去了解,进而才会有喜欢与否(当然喜欢也有两种情况,一种是买得起,一种是买不起,买不起的时候,很多用户会选择记住它),这一个流程走完了,最后才有购买决策。 而我们要做的就是让用户在每个流程都有感知上的趋同,这样培养出来的用户才可能会是我们忠实用户。

写在结尾:

       如果你是一名正在初创中的创业者,或者是打算创业期待逆袭的loser,而你又坚持读完我这篇文章的话,我想你一定在心底对于用户有了一个整体的把握。学会去分析你的用户,了解他们的心理,才能投其所好,不要傻乎乎的把“卫生纸”做成“打印纸”的质量,还满心期待用户好评。

避其锋芒,侧翼出击。——司马亮创业回忆录(一)

        “今天中国内地的互联网基本上是70后唱主角,10年前是我们这些人,那时候我们30多岁,现在我们40岁了,一开会还是我们这一批人,再过十年,如果中国互联网还没有颠覆式创新的话,没准儿还是一帮50岁的老家伙们在跟大家谈经论道。这些对于我们这些老家伙们来说是幸福的,但是对于广大中国的80后、90后和00后来说,那真的是悲剧!”-《周鸿祎自述——我的互联网方法论》。

 

      上面是摘录周鸿祎在他的自述中说过的这么一段“狂妄”的话,作为一名80后,我当时也是热血沸腾。今天在这里写这篇文章并不是表达自己的“愤青”情绪,相反,我特意买了这么一本书《周鸿祎自述——我的互联网方法论》,花了大概半天时间吞完了这部自述。回过头来想他说这句话,有一定的道理。借这个机会,我也陆续整理下自己对于创业的观点,希望得到广大70后和90后的指正。

        说到创业,万里虎的各位同仁也都是深有感触。从万众瞩目的大企业出来开始从0到1的创业历程,在创业果实刚刚含苞待放之际,因为各种环境因素而夭折。创业失败的案例很多,每个失败者都有自己的失败教训。今天司马亮要谈的是关于互联网创业的“潜规则”。不要激动,此“潜规则”非彼“潜规则”。

不要做互联网的门外汉,意味着遵循互联网“潜规则”?

(1)风口“潜规则”,真要做风口上的猪?

        谈到这个话题,我们必定会想到马云,正是从他嘴里蹦出来的这句话”在风口上,猪都会飞起来“,引起了国内大多数创业者的盲目认同,认为现在创业选择项目,一定要找到风口上的项目,这样的话,才会被吹起来。过了一段时间,马云又补充了一句”风过后,摔死的还是猪!“这个时候,很多人开始迷茫了,马总说这句话究竟是让我们去风口上呢还是避开风口呢?

        无独有偶,前段时间,偶然机会接触了智明新通的唐斌森唐总,他有个观点:”创业者创业最好选择在主航道上奔跑,因为这里蛋糕大,创业者分得蛋糕的几率大!“

         我不反对上面两位的观点,因为从概率论上来说,的确是风口上的企业成长起来快一点,因为在主航道上,他所需要的资本养料更充足,资源更丰富。选择风口对于创业初始是个很好的选择。

         但是我不赞同创业者在创业初始的时候就为了吹到那阵风而去变道。无论如何,创业者创业之前要深刻认识到自己的资源,风口很多,风口也分大小,找到适合自己的风口发力,这样飞起来概率高一点。

         那么一旦找到自己的风口了,我们是不是就可以高枕无忧守株待兔,等待一飞冲天的那一刻呢?诚然非也,周鸿祎有一个观点我觉得十分不错,那就是”通过侧翼和聚焦来达到颠覆式创新“。类似的观点也被两位国际大咖(一位是艾.丽斯,一位是杰克.克劳特)在他们的著作《定位》中提到,那就是“品牌再定位”的理念。无论是周鸿祎,还是克劳特,我总结出来一个观点,那就是颠覆的力量并不是来自于主流的、热门的市场,而是来自于边缘地带,来自于“侧翼”。看过《商战》的读者应该都知道,书中讲了很多以少胜多、以弱胜强的案例,在目前国内的互联网大环境下,基本上BAT三分天下,我等一介布衣只有选择侧翼战略才能有成功的机会。

       请注意,我这里说的边缘地带并不是说背离风口,而是在选择好了一个适合自己的风口以后,然后在风口上找一个僻静的角落,专心打磨自己的产品,这就是我所谓的侧翼+聚焦创业模式。

(2)创新“潜规则’,先创新再创业?

        我们现在所说的创新,从定义上来说,有三个方面:以往的创新,一般指的是创造新东西,也就是所谓的发明,这种创新就是科技带来产品上的革新;第二种创新指的是产品盈利模式上的创新,以uber为代表的一些互联网企业对这种创新得使用淋漓尽致;第三种创新指的是用户体验上的创新,这个也是我们作为创业者最可能做的也是最需要做的创新。  只有注重产品在用户体验上的创新,才能了解你的用户,进而驾驭你的用户。

       很多创业者对于创新往往陷入一个误区(这也是我之前曾经陷入的误区),那就是认为先得有一个创新的idea,然后再通过创业来实现这个idea。其实这样的话,对于创业者思维是一种束缚,隐形中自己给自己抬高了创业门槛。马云当年做中国黄页的时候想到了要做成现在的淘宝吗?刘强东当年在中关村卖场的时候想到了自己会打造京东商城吗?

      讨论这个话题得首先弄明白你为什么创业,也就是你创业的动机是什么?是为了创新而创业吗?显然不是,这个顺序就搞反了。我们创业是为了给社会提供服务,去解决或者改善社会的参与者在参与社会活动中的问题。淘宝是为了解决老百姓从商门槛高的问题,uber的出现是改善了人们出行打车难的问题……我们只有找到了社会中存在的这个需求点以后,才可能去想办法解决这个问题,至于如何解决这个问题,那可能涉及到一些创新的操作,比如在模式上的创新或者在用户体验上的创新。所以,个人觉得创业者在决定创业之后再谈创新为宜。

(3)迭代”潜规则“,憋一个大招放翻一批竞争者?

       在创业的过程中,我发现很多创业者是个完美主义者,他们在推出第一版产品之前,去过于用心的打磨自己的这个产品,以至于将过多的时间和精力花在了产品设计和完善上,他们总是抱着一个想法,那就是容我闭关修炼,一年甚至两年,待到时机成熟,瞬间放出大招,让所有竞争者闻风丧胆,不战自退。

        我个人对这种完美主义者持异议。假如说回到十年前,那时候的移动互联网并没有盛行,当你憋了很久拿出一个轰动行业的产品的时候,或许真的会火一把。但是现在不同了,互联网发展如此之快,当你想到一个你认为好的想法的时候,你怎么敢笃定目前就你想到这个想法了呢?在中国,比你行业经验丰富的人多了去了,还有BAT这几个老大哥在绞尽脑汁的挖掘用户需求,你就这么自信你的想法只有你想到了?或许说,这个社会都在等着你的想法变成产品?

        因此,我想说的是在当下互联网时代,一旦你确定了一个风口中的入口,那么就要尽快的孵化产品,并且尽快的打造第一版产品入市,要知道,如果你的产品真正牛逼的话,真正能够解决大众用户某一个痛点的话,那么用户会认同你这个产品的。其实那时候用户更多关注的是你的产品能不能解决他的问题,其次才是产品体验。

        当你快速将第一版出来以后,得到用户的反馈还不错的时候,你大可花时间去打磨你的产品,这个时候也要做到快速迭代。快速的根据用户反馈来完善你的产品,做到有的放矢。

      好了,今天就写到这里吧,文中观点仅代表司马亮个人观点,如果大家有不同意见,欢迎评论拍砖。

      顺便预告下,下一节司马亮会根据自己的创业失败经验,跟大家聊聊关于“用户”的话题,大概意思就是司马亮当年在用户踩过的坑。