有了大量微信用户,就不需要App了吗?
小卢同学是我半年前在中关村车库咖啡认识的一个自由创业者,他从北航毕业后在一家IT上市公司只上了1年多的班就辞职创业了,他的创业项目属于国内度假旅游垂直细分领域:积累大量详细的旅游攻略,组成一个个温馨舒适的旅游体验小故事,提供季节性的旅游套餐服务。小卢很能干,他们团队一共3个人,从一个微信公众号开始做起,仅仅用了半年多的时间就积累了11万多的粉丝。小卢一直想让我给他投资,我却一直处于犹豫中。上个月底小卢满怀信心的拉着我陪他去见一个投资人,本想让我见识一下他们产品在其它投资人眼里的价值,但没想到得到的反馈回应却让他非常失望。很显然,是被投资拒绝了,投资人给出的理由很简单,大致如下:
你需要尽快完成相关App产品的开发和上线。在公众号上,你是拿不到用户信息的,那么随着时间推移,如果有用户失去了活力,你也没有任何能力将其挽回,因为你连他们的基本信息都没有。而这样的局面,就要求你的度假产品非常具有特色,要么性价比极高,要么非常与众不同,别处见不到。否则,一旦陷入竞争,你的压力会非常巨大。说白了,投资人就是质疑小卢团队的产品没有任何壁垒和对用户的掌控力太差。
其实,Web、App、公众号,仔细说起来,Web与公众号是一样的,App与他们不一样。因为Web和公众号都是传统的BS结构(Browser/Service),App是传统的CS结构(Client/Service)。BS结构的特点是,用户通过浏览器操作,服务端的任何改动,都可以非常快速的在浏览器层面得到展示,而CS结构的特点是,用户通过客户端操作,服务端的改动有时依赖于客户端的更新才能获得体现。BS结构产品的迭代速度比CS要快,这一点其实是完全不用质疑的。但是所有BS结构的产品都面临一个问题:“入口”。
当我们在讨论Web与App产品运营层面的不同时,我通常会说,二者获客的渠道、成本与维系客户的渠道、成本,以及手段有非常明显的差异。Web时代,我们见识到的是入口力量的强大。能够占据入口的产品,就可以获得大量的流量,从而在大流量中获取用户。淘宝之所以牛逼,不是因为它是卖货的,而是因为它是众多卖货的人的入口——帮消费者找到合适的商品。百度之所以牛逼,不是因为它是做搜索的,而是因为它是分发流量的入口——帮用户找到适合的内容。腾讯之所以牛逼,不是因为它是做社交的,而是因为它是建立关系的入口——帮用户找到希望建立联系的人。App时代,传统入口的力量被无限削弱,这才让应用商店变成了新的入口。这是因为介质发生了变化,当人们从大屏幕转移到小屏幕时,原先的流量分发器——搜索引擎的作用被削弱了,而应用商店的作用增强了,所以现在应用商店在手机上,可以用和搜索引擎一样的方式去盈利。
BS结构下,搜索引擎是一级入口,其他网站是二级入口;而CS结构下,应用本身就是一级入口,通过搜索引擎把自己变成二级入口,这真的是创业者想要的么?不是,那么只有通过搜索引擎或者应用商店,把自己安装到用户的手机上,变成一级入口,这个效果才能完成,这实际上和BS结构下,通过搜索引擎找到自己想要的站点,然后记住地址或者放入收藏夹将其变为一级入口的概念是类似的。但是,和BS结构产品不同的是,CS结构的产品变为一级入口,对于用户来说,成本是高昂的——因为CS结构产品是需要下载、安装,才能注册使用或者直接使用的,BS结构产品是没有下载和安装这两个步骤的。也因此,对于用户来说,相对高频App来说,低频App随着频次的降低,其成本是线性增加的。这就出现了在小内存时代,人们往往会精挑细选,只保留自己最常用的App,而其他的App,要么不装,要么,只在需要的时候装,用完了再卸载——别笑,几年前,很多人就是这么玩儿的——这样的历程,与PC早期,大多数程序通过软盘来直接运行是一个道理——当然,我想大多数年轻人是没有经历过这个时代的。但随着硬盘体积的增加,很多人的PC里,都存放了许多低频的产品,甚至内容,可后来已经没有人介意这件事儿了,硬盘体积的增加,极大的推动了PC时代,CS结构产品的发展。可以这么说,如果不是存储空间的增加,现在很多游戏都根本不会有——当然,显示技术的进步是另一个关键。回到如今的手机应用上来,其实道理是一样的。在小内存时代,倡导WebApp,是我能理解的——因为这能极大的解决用户的需求,同时照顾用户的手机空间。但时间演化到今天,动不动就可以扩展出百G级别空间时,再讨论WebApp,这不仅仅实是一种技术上的倒退,同时也包涵着对于入口的极大焦虑和逃避。
其实道理讲得再多,也不一定真能解决现实问题。挡在App开发道路上最大的问题就是成本问题,开发App太贵,初创者哪有那么多钱呀?招一个原生开发工程师工资太贵了,招一个人肯定不够至少要同时支持苹果和安卓吧,再加上原生开发太难,还要长期维护,开发人员却很难稳定下来,想想就有点让人望而生畏。但事实真的是这样吗?软件行业的发展可能远比你想象还要快,很多之前还认为是很难解决的问题,其实早就已久有人帮你解决好了。App的开发从开始流行到今天发展有5年多了,每个环节工作都一直在不断细分和优化、所以我们要保持及时跟进才能做出正确选择。
今天大量成熟BaaS服务让很多专业的App开发工作变得越来越简单,比如:百度LBS服务、个推和极光的信息推送服务、七牛的云存储服务、环信和融云即时通讯服务,微信和支付宝的移动支付服务等,这些专业的功能模块由专业的第三方公司去开发和升级,你不必自己做只要调用就行,这让你有更多时间可以专注在你的App业务里。同样,设备端的程序开发也不必非要通过Xcode和eclips去从底层开发做起了。你可以选择一些Html5技术的跨平台产品开发产品,例如:Appcan,ApiCloud等,开发者可以像做网页那样做App,虽然App最终体验效果差一些,但对于一些需求简单体验要求不高的App开发也够了,可以用于应付部分App外包业务的交付工作。同样你也可以选择一些基于原生扩展技术的跨平台开发产品,例如:reactive native和DeviceOne等。开发者在享受跨平台、低成本开发服务同时,做出的App完全能够具备原生体验效果,更适合一些较高端的App需求和想用App的创业者。
软件领域的发展和硬件非常类似,工艺在不断的改进技术也在不断进步,如果你做出来的东西能力和体验不过关,所有借口都是苍白无力的。但你也不必为此沮丧,很多时候你不必从头做到尾,好的方法总是很多,只要你肯于用心去尝试总能找到出路。如果有人为你做IOS和Android的底层技术组件,你只要用javascript完成你的业务逻辑并合理的调用这些组件就行了,何乐而不为呢?
所以呢,作为创业者,你觉得,现在你还是想「不要开发App了」呢?
有了大量微信用户,就不需要App了吗?的更多相关文章
- C#开发微信门户及应用(10)--在管理系统中同步微信用户分组信息
在前面几篇文章中,逐步从原有微信的API封装的基础上过渡到微信应用平台管理系统里面,逐步介绍管理系统中的微信数据的界面设计,以及相关的处理操作过程的逻辑和代码,希望从更高一个层次,向大家介绍微信的应用 ...
- ios/iphone手机请求微信用户头像错位BUG及解决方法
转:http://www.jslover.com/code/527.html ios/iphone手机请求微信用户头像错位BUG及解决方法 发布时间:2014-12-01 16:37:01 评论数:0 ...
- 第七篇 :微信公众平台开发实战Java版之如何获取微信用户基本信息
在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯一的.对于不同公众号,同一用户的openid不同). 公众号可通过本接口来根据O ...
- Q1微信用户增长11% 微信生态圈逐渐完善
就在今天早些时候,腾讯公布了Q1财报,微信和手Q游戏收入达18亿元,微信用户环比增长11%,微信生态圈逐渐完善.和xmyanke一起来看看具体的财报数字分析. 微信和手Q游戏付费用户环比增长100%以 ...
- 微信公众平台开发—利用OAuth2.0获取微信用户基本信息
在借鉴前两篇获取微信用户基本信息的基础下,本人也总结整理了一些个人笔记:如何通过OAuth2.0获取微信用户信息 1.首先在某微信平台下配置OAuth2.0授权回调页面: 2.通过appid构造url ...
- Magicodes.WeiChat——使用OAuth 2.0获取微信用户信息
使用Magicodes.WeiChat,可以很方便的获取到微信用户的信息.在使用OAuth 2.0之前,你先需要做以下操作: 1)在开发者中心修改[网页授权获取用户基本信息],在弹出的界面输入自己的根 ...
- 微信小程序+微信管理后台+微信用户前台
代码地址如下:http://www.demodashi.com/demo/15043.html #### 微信小程序+微信管理后台+微信用户前台 #### 产品介绍 基础功能开发:景区微信地图导游.天 ...
- 小程序获取微信用户的openid
小程序获取微信用户的openid //index.js //获取应用实例 const app = getApp() Page({ globalData: { appid: '11121221a89e0 ...
- C#-MVC开发微信应用(7)--在管理系统中同步微信用户分组信息
在前面几篇文章中,逐步从原有微信的API封装的基础上过渡到微信应用平台管理系统里面,逐步介绍管理系统中的微信数据的界面设计,以及相关的处理操作过程的逻辑和代码.希望从一个更高的层次介绍微信的开发. 在 ...
- ssm项目中遇到微信用户名称带有表情,插入失败问题
ssm项目中遇到微信用户名称带有表情,插入失败问题 问题 Mysql的utf8编码最多3个字节,而Emoji表情或者某些特殊字符是4个字节. 因此会导致带有表情的昵称插入数据库时出错. 解决方法 一. ...
随机推荐
- MySQL Workbench建表时 PK NN UQ BIN UN ZF AI 的含义
[转自网络]https://my.oschina.net/cers/blog/292191 PK Belongs to primary key 作为主键 NN Not Null 非空 UQ Uniqu ...
- mono for android 用ISharedPreferences 进行状态保持 会话保持 应用程序首选项保存
由于项目需要 要保持用户登录状态 要进行状态保持 用途就好像asp.net的session一样 登录的时候进行保存 ISharedPreferences shared = GetSharedPrefe ...
- 从is(":checked")说起
*此文所用jQuery版本应大于1.6.1 如何判断一个单选(复选)框是否选中. 对于刚接触jQuery的人,第一反应必然是. <input id="checkbox1" ...
- web音乐播放器总结
前言 项目暂时告一段落,胸中有股炽热之气望喷涌而出!忍不住吐槽,为什么程序员要加班啊,为什么产品下达deadline,就得把这生死剑架在程序员的脖子上.卧槽,听说程序员在国外是叫工程师的.最近看了很多 ...
- Visual Studio Code 配置指南
Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.在我看来它是「一款完美的编辑器」. 本文是有关 VS Code 的特性介绍与配置指 ...
- asp.net pipeline完整图
- CentOS 搭建openVPN
1.安装前准备 # 关闭selinux setenforce 0 sed -i '/^SELINUX=/c\SELINUX=disabled' /etc/selinux/config # 安装open ...
- bootstrap表格
Bootstrap 实例 - 边框表格 < 建立日期 2015-5-27 录入人员 test1 处理人员 test2 问题报障人 部门/城市公司 联系电话 问题类型 处理状态 ...
- C#多线程之基础篇1
在多线程这一系列文章中,我们将讲述C#语言中多线程的相关知识,在多线程(基础篇)中我们将学习以下知识点: 创建线程 中止线程 线程等待 终止线程 确定线程的状态 线程优先级 前台线程和后台线程 向线程 ...
- TCP四种计时器
TCP共使用以下四种计时器,即重传计时器.坚持计时器.保活计时器和时间等待计时器 .这几个计时器的主要特点如下: 1.重传计时器 当TCP发送报文段时,就创建该特定报文段的重传计时 ...