QCon 2016 上海站见闻

有幸参与了QCon 2016的上海站会议。官方宣传这是一个中高端会议,专题丰富涵盖了当前互联网各种技术领域。

10月20号周四 10月21号周五 10月22号周五
前端技术实践 玩转大数据 Growth Hacking,IoT & React Native
安全之战 移动开发探索 互联网广告系统实战
新Java,新未来 移动视频 工程团队管理
无处不在的容器 让架构更简单 技术创业
微服务架构,我们该如何实践? 运维与监控 机器学习与深度学习
大数据应用与系统优化实践(厂商共建专题) 大数据服务与应用 用户体验设计
业务上云技术拆解(厂商共建专题) 高并发与实时处理架构设计(厂商共建专题) 研发支撑体系
智能出行 - 高德开放平台专场(厂商共建专题) 微服务实践与架构演进之路(厂商共建专题) 业务系统架构
大数据分析与应用
大规模前端系统

QCon 上海站PPT 下载

其中每个专题会在固定的宴会厅进行,由专题出品人主持专题的会议开展。专题下面是各个议题,时长大致为45分钟包含Q&A环节。

根据自身技术栈出发,我选择了以下专题

  • 20号 前端技术实践
  • 21号 移动开发探索
  • 22号 Growth Hacking & 用户体验设计 & 技术创业

前端技术实践

周四的专题对于 客户端开发来说稍显尴尬,没有与之相关的议题。 我选择了和客户端相对平等的前端专题。 下面重点介绍一下我认为有意思的议题:

Vue 2.0: 渐进式前端解决方案

讲师@尤雨溪,很早就关注他了。这次总算见到真人了。Vue已经在Github上收获了3w+颗star,对于开源项目来说,无疑是相当成功了。

我很认同他对框架的理解。框架的存在是为了帮助我们应对复杂度。但同时框架也有复杂度,Pick the right tool for the job.

开篇的框架理解引出了 Vue ,这个渐进式前端解决方案。可能就是他对当下JS开发环境的一个答案。

框架本身,我不是JS开发,没有使用经历就不做主观评价了。 回到一开始的”框架”,他是如何解决框架复杂度的呢? 答案是”渐进式”。

progressive

Vue框架提供 声明式渲染 核心功能,加上可选的附加库/工具链,来打造弹性复杂度。这个区别于传统框架,集成整合了一整套解决方案。提高框架复杂度,增加开发者的学习使用成本。

这种框架的设计思路,是明智的。

Progressive Web App:反击序章

讲师@黄玄开篇讲述了web在当下移动时代的窘境。有一定的技术高度看待这类行业问题是蛮赞的。不认可web在移动时代只有Hybrid这一种选择。

开始布道 PWA(Progressive Web App),认为这是web针对native的一次反击。
The new application model for Web

  • add To HomeScreen (web 也有像native原生应用一样的桌面图标入口)
  • Instant Loading & ReliableExperience (提供一种缓存机制,类似原生应用的首次下载)
  • Push Notifications (web 也可以像原生应用一样接受通知)

…等等一些特性。让我这种native同学感到十分新鲜。确实在 纯web 到 纯navite 之间有许多可能的点

反观业界,应该很少有企业对自己的网站能支持到这种体验程度。特别是在iOS 9提供了 web mark机制之后,直接把web流量切给了native。不知道有没有统计过用户是愿意留在浏览器 还是 更愿意跳往原生应用

不过在原生应用开发实践中,我个人偏向于 hybrid 方案。这个取决于你的App大多数是什么样的业务场景,需要权衡体验和发布节奏等利益点。

  1. 纯native,体验是有可以保证的。 缺点就是发版受限
  2. hybrid,这里讨论指的是 RN,Weex这种跨端方案。好处是 发布不受限制,一人开发跨两端(iOS,Android) 节省人力。体验稍逊于native
  3. 纯web,包括不经优化,直接套用webview的这种。缺点是体验差,卡顿,load时间久

移动开发探索

这个专题与我息息相关,吸引的我是这些议题

React Native 业务实践和性能优化

who use RN

讲师 携程@赵辛贵。 携程积极拥抱RN技术,多数业务和页面使用RN搭建。
好处明显

  • size优势,RN页面大小计算脱离原生包大小
  • 支持动态发布,跨端节省开发人力
  • RN技术成熟,社区活跃(参会时和旁边的途牛网开发交流,他们动态方案也是选择RN)

携程内部还演化出了CRN(ctrip RN)业务框架。做了性能和稳定性优化(思路参见PPT),规划支持CRN-web实现跨三端(iOS,android,H5)。

外界RN动态方案使用的如火如荼,他们正在证明这是未来移动前端开发的方向。

Weex 极致性能优化

公司同学分享,Weex性能优化的几个思路方向。围绕性能,干货较多。
不过,这种经历只能听听思路。 基本没有实践复用场景 :)
安利Weex性能很好,倒是真的。

蘑菇街 App 的稳定性与性能实践

从用户角度出发看 性能和稳定性问题:

  • 闪退
  • 打开慢
  • 滑动不流畅
  • 耗电
  • 网络不畅/出错
  • 流量大

都是客户端常见的问题,相信各大公司都有自己的答案实践。

他们有一个比较有意思的工具:AppMate(小蘑菇) 提供给测试和业务开发进行开发阶段的一个性能把控。

或许是在阿里的原因,这些东西听来都不足以让我兴奋。

Growth Hacking 最新动态和最佳实践

这个是受团队运营产品委托,刻意留意了这个议题(我所在的天猫team也负责push通道来召回用户,提高留存)

Growth Hacking 最新动态和最佳实践

  1. 数据看板 - 数据分析 - 数据监控
  2. 数据驱动产品决策
  3. AB 测试实验
  4. 灰度渠道发布

其中的数据分析提到:”Core Action” 指到的是核心操作,关键路径到达。
列举了几类APP的”Core Action”

APP类型 Core Action
Facebook connect(连接?相互关注?朋友互动?)
Slack/Wechat 接发信息
Pinterest 晒图
电商 浏览、下单购买
知乎 回答,点赞,收藏,感谢
互联网金融 购买理财产品
二手车 购买,砍价

这里有一个观点 重点关心产品核心操作是否被用户触达
recall
这个模型 描述了 新客或流失客户(最近打开app的时候是在30-60天之前),我们应该积极的通过Push通道来进行用户召回,当用户下沉为忠实用户之后。要谨慎使用push。这个模型是可逆的,也就是说当用户不再活跃的时候,回归上层我们也要通过push相关利益点来进行召回。

分享了业界做病毒式扩散的几个经典例子:

  1. airbnb 分享给朋友,两方都能获得25刀的优惠券
  2. PRISMA 图片滤镜软件 制作图片打上软件水印
  3. Pokémon Go 户外现象级户外捕捉小精灵

这些快速扩散区别于 用户推荐和口口相传。分享者和你分享的时候,并不是在说这个平台或者软件如何如何,还是在和你分享他们得到了什么。分享一定要满足用户一些心理:增加声望、财富、乐趣。

最后病毒式扩散一定要作用在Core Action上。

产品思维和设计思维详解

讲师 @张玉婷,她的设计思路蛮不错的。她认为设计师设计产品交互的时候,一定是从产品架构出发分析产品用户需求,进而推导出产品界面。而不是接到需求在网上一通翻找竞品界面。不同的需求场景有不同的用户语境,进而有不同的视觉交互表达。

比如 从业参与的Weico客户端,是设计驱动的一个产品。目前是最大的微博第三方客户端,跳脱开 官方微博客户端的通用性和功能化,主打个性化和情感化。围绕核心功能(阅读和发送微博)进行 特色的设计扩展。

后面提及高德客户端的交互设计,虽然 App类型不同,设计很难参考。但思路是ok的。要关注 用户与产品发生交互的真实场景,介绍了高德在这方面的交互实践。

如何选好技术初创风口:从0到1,1到100

这个。实话说我睡着了,可能是吃完中饭乏了。恩,是的。