一周书评之第二期

一周书评:记录我在过去一周所看的书籍,旨在将提炼总结并结合个人经历后的所得分享给大家,希望大家喜欢,共同成长进步。 《 启示录》:如何打造用户喜爱的产品 作者 Marty Abbott 曾在惠普、ebay、网景等公司担任职业高级产品经理,担任AKF Consulting公司合伙人,具有20多年丰富的软件产品管理经验。在《启示录》中,作者从人员、流程和产品上探索了如何打造用户喜爱的产品,分享了自己在一线产品设计开发的实践经验,值得每一个产品经理、工程师等互联网从业人员学习。 好的产品都是相似的,失败的产品各有个的原因。 作者总结的富有创意的好产品遵循的十条规律: 产品经理的任务是探索产品的价值、可用性、可行性。 探索(定义)产品需要产品经理、交互设计师、软件架构师通力合作。 开发人员不擅长用户设计体验设计,因为开发人员脑子里想的是实现模型,而用户看重的是产品的概念模型。 用户体验设计就是交互设计、视觉设计(对硬件设备来说,则是工业设计)。 功能(产品需求)和用户体验设计密不可分。 产品创意必须尽早地、反复地接受目标用户的试用,以便获取有效的用户体验。 为了验证产品的价值和可用性,必须尽早地、反复地请目标用户测试产品创意。 采用高保真的产品原型是全体团队成员了解用户需求和用户体验最有效的途径。 产品经理的目标是在最短时间内把握复杂的市场/用户需求,确定产品的基本需求——价值、可用性、可信性。 一旦认定产品符合以上基本要求,它就是一个完整的概念,去掉任何因素,都不可能达到预期的结果。 对于产品,重视用户体验,重视设计,再怎么做都不为过,所谓“用户体验为王”。如果说作者提出的十大规律更多是从公司层面来看的,是全局化的,是具体的,更偏“术”,那么,微信之父张小龙谈的好产品就更加形而上,更偏“道”。在近期的微信公开课2019上,张小龙谈到为什么微信不像其他 app 在启动页加入广告:如果微信是一个人的话,那他一定是你最好的朋友。如果微信是你的好友,然后你们见面时,他脸上先贴一个广告,你要撕下来才能跟他说话,就这样一个感觉。所以微信是真正把用户当做朋友来看的,地位是均等的。在公开课上,张小龙谈到什么是好的产品时,对博览首席设计师 Diet Rams 提出的十大设计原则如数家珍,因为很多苹果的产品设计都来自于他。 设计十大原则: 好的产品是有创意的,它必须是个创新的东西 好的产品是有用的。 好的产品是优美的,它必须有美感,它是美丽的。 好的产品是非常容易使用的,它不需要说明书,一看就会。 好的产品是含蓄的,并不照耀。 好的产品是诚实的,不欺骗用户。 好的产品是经久不衰的,它不会随着时间的流逝而迅速的消亡掉。 好的产品是重视细节的。 好的产品是环保的,不会浪费太多资源。 好的产品是会尽可能少地体现它的设计,或者说少即是多。 好的产品需要好的设计,那么在产品设计初期,如何评估产品机会?作者提到: 产品要解决什么问题?(产品价值) 为谁解决这个问题?(目标市场) 成功的机会有多大?(市场规模) 怎样判断产品的成功与否?(度量指标或收益指标) 有哪些同类产品?(竞争格局) 为什么我们最适合做这个产品?(竞争优势) 时机合适吗?(市场时机) 如何把产品推向市场?(营销组合策略) 成功的必要条件是什么?(解决方案要满足的条件) 根据以上问题,给出评估结论。(继续或放弃) 作为一名开发人员,本书给我的启示是: 在产品开发时间评估时,一定要给自己加上冗余的时间,以应对不期而遇的问题。 在早期,要尽快地拿出产品原型,实现最基本的功能,步步为营,不用太早地考虑代码质量和重构的问题,因为如果验证了产品可行后,代码很可能要重写,如果产品不可行,那么把时间浪费在重构代码上是不值得的。要尽早地邀请用户参与体验测试,体会用户的困惑和疑虑,了解哪些问题是严重的,以形成“开发-测试-问题反馈-开发”的开发闭环。 产品发布后,要能快速响应用户反馈,版本更新要平滑部署,做到对用户无痛升级。 追踪最新的技术趋势。新技术层出不穷,如果利用新技术解决以往无法解决的问题,将新技术融入产品设计中,解决用户的老问题,那么诞生的产品将所向披靡。 前端感性,后端理性。代码虽然理性,但是呈现在用户面前的要是感性的,注重情感体验的,不能把“开发者模式”呈现在普通用户面前。 当然,从另一层面来看,我们每个人也可以把自己当做一个产品,如何找到产品的原动力?如何抓住机会推出市场?如何应对激烈的市场竞争?如何成为真正对家人、朋友、社会有帮助的产品?如何成为有一定影响力的产品?那将是一条永无止境的迭代开发之路。…

论文研读: Faster R-CNN

[TOC] 摘要 代码:https://github.com/rbgirshick/py-faster-rcnn 论文:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks (https://arxiv.org/pdf/1506.01497.pdf) 引入 我们首先回顾一下 Fast R-CNN 的主要步骤: 特征提取:输入整张图片,利用 CNN 提取图片的特征。 提取候选区域:使用 selective search 从原始图片中提取出区域候选框,并把这些候选框一一投影到最后的特征层。 进行分类和回归:通过两个全连接层,分别用 softmax 进行目标分类识别和用回归模型进行边框位置和大小的微调。 Fast R-CNN 虽然比 R-CNN 和 SPP-net 都快,但是速度也依然不够快,因为使用 selective search 进行候选区域提名是个耗时的过程。论文中指出使用 Selective Search 在 CPU 上执行每张图需要2s,即便是使用另一个候选窗口提取模块:EdgeBoxes,也需要0.2s。而Faster R-CNN 去掉了 Selective search, 通过引入 RPN (Region Proposal Networks) 来提取候选窗口,使得区域提名、分类、回归能共享卷积层,节约了计算时间,进一步提高了检测速度,实现了端到端的训练。 RPN如何工作的?…

一周书评之第一期

一周书评:记录我在一周所看的书籍,旨在将提炼总结并结合个人经历后的所得分享给大家,希望大家喜欢,共同成长进步。 《OKR工作法》 平常我们谈公司里个人绩效管理,一般都只知道KPI工具,但是KPI容易造成的问题是:过度强调短期利益,忽视长期利益;过度强调个人目标实现最大化,忽视了整个公司的利益,忽视了整个团队,容易造成各部门各行其是。而OKR工作法就能解决这个问题。 第一次听说OKR工作法是在吴军老师的《硅谷来信》中,信中提到: Google的每个员工每个季度都需要给自己定一个或者几个目标(objectives),以及衡量目标是否达成的关键结果(Key Results),这几个词合在一起被成为 “OKR”。 每个人的OKR会放到自己的网页上,大约半页纸长,大家都可以看到。如果没有制定OKR,一目了然,即使没有人催你,大家看到你的网页上面是一个空白,你自己都不好意思。到了季度结束时,每一个人会给自己的目标完成情况打分。完成了,得分是1,。部分完成,得分是0到1之间一个数字。 Google强调每一个人制定的目标要有挑战性,因此如果一个人完成目标的得分情况总是1,并不能说明他工作好,而是目标定得太低。大部分情况下,大家完成目标的得分在0.7—0.8左右。当然,一个季度开始的时候的想法,和后来完成的任务可能会有差异,早期没有想到的事情可能后来做了。 OKR工作法在硅谷的Google、Facebook等高科技公司中比较盛行。对Google具体是如何应用OKR来为员工和公司设定目标和推进目标感兴趣的读者,可以参考: (Startup Lab workshop: How Google sets goals: OKRs: https://www.youtube.com/watch?v=mJB83EZtAjc&t=626s ) ps: 需要搭梯子。 说回本书《OKR工作法》,此书从这个险象环生的创业故事讲起,围绕一家创业公司的试错、困惑、决断和成长的全过程说明了OKR(Objectives and Key Results)方法的基本原理和实施原则,非常的形象生动,遇到的问题简直是现实世界中创业公司的真实写照,比如创始人对公司战略的思考不一致、员工的懈怠和各种托辞、投资人和市场的“无情”,所幸的是书中这家创业公司依据OKR终于走上了正轨。当然,我们不是说OKR是创业成功的充分条件,始终要强调的是OKR只是一个工具,它能极大地推动团队去完成目标。 一言以蔽之: 专注一个目标,目标至少要有50%信心能达成,关键结果要能量化,能实时监控系统状态指标(红、黄、绿),每周工作按重要性排序列出,列出未来几周的计划,每周五进行复盘,庆祝胜利,以此循环,周而复始。 书中描述的创业公司的OKR: 留个彩蛋:

Airsim install

[TOC] Build AirSim on Linux Ubuntu 16.04 LTS Install and Build Make sure you are registered with Epic Games. This is required to get source code access for Unreal Engine. Clone Unreal in your favorite folder and build it (this may take a while!). Note: We only support Unreal 4.18 at present. bash # go…