《产品经理必懂的技术那点事⼉》读书笔记
写在前⾯的⼀些话:
这是⼀个⽐较有争议的问题:产品经理需要懂技术吗?懂到什么程度。你要说懂,也对,你要说不懂,也没错。因为产品经理这个岗位不能被单纯
在我的个⼈从业经历来看,我⽐较倾向的是产品经理需要“懂”技术。得划分为技术岗、运营岗、策划岗,它是⼀个多种技能糅合的岗位,在我的个⼈从业经历来看,我⽐较倾向的是产品经理需要“懂”技术。早期的互联⽹公司基本都是以技术为中⼼驱动产品的,因此在很多公司⾥,产品经理这个⾓⾊都是技术或者项⽬经理兼任,他们是有⼀定的技术背景的。然⽽随着互联⽹的迅猛发展,以技术为中⼼逐步⾛向以产品和⽤户为中⼼。接下来就是⼀⼤波从事技术、运营、设计、编辑、市场的⼈转型做了产品经理,⾮技术职位转型做产品经理的⼈占了绝⼤部分。所以,不夸张的说,绝⼤部分产品经理是不“懂”技术的。
但是,这个“懂”技术不等于要会写代码。产品经理学习技术不是为了在技术⼈员⾯前证明你很⽜逼,⽽是为了更好地与技术⼈员沟通需求、更好地合作,⼀起做好产品。
书中提到:
产品经理是处于业务需求和技术实施中间的桥梁和枢纽,肩负着理解、明确、界定业务需求,将其翻译为技术研发⼯程师能够听得懂的语⾔,并交付给⼯程技术团队实施这样⼀个关键⽽重要的职责。
这个观点我⽐较同意,但是我觉得产品经理并不是⼀个单纯的“翻译”,“翻译”只是产品经理⼯作的⼀个⽐较重要的部分,或者说,在互联⽹公司中,“翻译”这个⾓⾊占了产品经理⼯作的60%以上,但是就是因为这样,在这个过程中,懂技术不仅能够让产品经理⽤更准确、更缜密的语⾔跟⼯程师们描述业务需求和逻辑,更能让产品经理在产品需求设计阶段就能够有前瞻性地预见到技术落地时可能存在地挑战和障碍,提前对设计⽅案进⾏优化、折中和取舍,以避免后期可能会遇见的技术瓶颈。
⼀种新的认识:产品除了需求、功能设计和需求⽂档,还有产品战略、产品定位、市场环境、业务切⼊点、产品运营,以及财务模型和商业模式。
这其实也是我对于产品经理这个⾓⾊基本观点,对于我现在负责的“井井打印”项⽬来说,除了APP和后台管理系统上⾁眼可见的迭代、原型⽂档、需求说明,这个APP项⽬的:战略定位(实现公司的盈亏平衡,今年赚1块钱)、产品定位(学习打印机的APP操作端)、业务切⼊点(学习和教育场景)、市场环境(K12的⼩初中学⽣)、产品运营(的吸粉和引流),这些其实我都有研究,但是像⼀些财务模型和商业模式(这是⼀个项⽬存活之根本),我的认识并不是很清晰,还需要探索。
1、产品思维与技术思维:
书中配图:产品思维与技术思维
产品思维侧重从⽤户和商业视⾓出发,技术思维侧重在技术实现和系统架构层⾯,两种思维⽅式也有交叉点,那就是产品的需求、设计和产品功
产品经理需要思考产品的⽤户价值和⽤户的产品使⽤场景,同时还需要考虑产品缩承载的业务闭环和商业价值,⼯程师是技术思维能。产品经理需要思考产品的⽤户价值和⽤户的产品使⽤场景,同时还需要考虑产品缩承载的业务闭环和商业价值,⼯程师是技术思维
的代表,⾸先是基于产品需求的实现⽅式的考虑,⼯程师看到产品设计后在脑海⾥构建的是拆解后的实现要点,好⽐⼀栋房⼦的内部结
构,需要先构建产品的技术架构,然后评估产品功能的技术价值和开发成本。
⾼阶产品经理的思考⽅式:产品思维
产品思维是⼀种结合⼯程思维、功能思维、商业思维的综合思维模式,包括对商业⽬标的理解、对⽬标⽤户及⽤户使⽤场景的理解。
书中配图:⽤户体验的五个层次
战略层:决定了业务和产品需要实现什么⽬标,为谁和什么场景服务;
范围层:需要定义清楚再既有战略的基础上做哪些东西来实现战略⽬标;
结构层:需要基于范围层的内容完成基础信息架构和交互设计;
框架层:完成我们能看得到的界⾯设计;
表现层:视觉表现设计,让产品看起来更友好。
产品经理必须回答的8个问题(以井井打印APP作为⽰例来说):
1、产品的⽬标⽤户是谁?
产品的⽬标⽤户是⼩、初、⾼学⽣,年龄层分布在10~18岁之间,以及这些学⽣们的家长,年龄层分布在35~45之间。
2、产品为⽬标⽤户解决了⼀个什么核⼼问题?
⽤户在进⾏错题整理的时候,往往会花很多时间去抄题、画图,然⽽在真正的做题的时间上却很少,学习效率不够⾼。
3、产品的核⼼功能是什么?
拍照打印和搜题打印。
4、产品的使⽤场景是什么?
学⽣⽤户会有整理错题的习惯,然后整理错题还要抄题或者画图其实是⽐较浪费时间和精⼒的,⽽且还不⼀定画得好,可以⽤我们的产品直接拍照-处理-打印-粘贴,会节省很多抄题时间。
5、产品给⽬标⽤户带来的价值是什么?
提⾼学习效率,节省不必要的时间。
6、如何⽤⼀句话介绍产品是什么?
我们是⼀款能够帮助⽬标⽤户提⾼学习成绩的⼯具。
7、与同类产品的定位差异是什么?
这个定位差异说实话没有办法从软件APP端去说,因为现在才是1.0.0版本,并没有太多亮点功能,这个还需要在产品的发展和迭代中去寻。
8、产品的盈利模式是什么?
卖机器、卖耗材,后期可以在APP上卖内容、卖服务,或者实现流量的变现。
2、互联⽹技术与产品:
书中配图:互联⽹发展阶段
使⽤最⼴泛的服务器操作系统:Linux
⽹上⽀付的基础保障协议:openssl(open secure sockets layer)
数据库标杆:MySQL
服务器的“温床”:apache
⼯程师的造物利器:eclipse
下个时代的技术主⾓:AR(augmented reality)与VR(virtual reality)
书中配图:互联⽹产品技术架构图
所有的互联⽹技术产品,不管是使⽤只能⼿机还是使⽤计算机浏览器,不管是使⽤⼿机与计算机进⾏交互,还是使⽤⼿机与⼿机交互,起背后的实现模型基本都是请求和响应模式。
在移动互联⽹时代,智能⼿机成为主要终端⼊⼝,移动互联⽹的技术特点相对于传统互联⽹阶段具备了移动性、随时性、永远在线的特点,也正式技术的升级,带来了很多产品创新的可能。
未来的产品经理能⼒不仅包括设计产品的能⼒,也包括能基于产品定位把产品运营起来的能⼒。产品经理会从产品结构和功能设计者慢慢向全流程服务设计者转变,从产品定位、⽤户需求、技术⽅案、服务流程、市场推⼴等多个环节实现全流程打通,单⼀技能的产品经理时代即将过去,“全栈产品经理”的时代即将到来。
3、产品经理学编程:
C语⾔:运⾏在世界各地的各种系统中,包括个⼈计算机、⼤型和超⼤型计算机、路由器及可编程的集成电路。
Java:⾯向对象的语⾔,灵活性更⾼,同时其抽象现实世界的特点对程序设计⼈员的学习和理解也更有帮助。
PHP:开源脚本语⾔,以⽂本形式被保存,更轻量化⽽且更灵活,学习成本较低,主要运⽤于web开发领域。
Javascript:脚本开发语⾔,主要运⾏在浏览器中,可以为⽹页增加动态功能,具备跨平台的特点,可
以运⾏在绝⼤多数的浏览器下。
基本数据类型:
1、表⽰整数的“整型”
所有不带⼩数点的数字都是属于整型,在变成语⾔中,⽤关键字int来表⽰整型。
2、表⽰⽂本的“字符型”
网页设计html代码翻译字符型是⼀种⽂本类型,字符型的内容没有规则限制,可以是任意内容。在不同的编程语⾔中,表⽰字符型的关键字略有不同。在Java语⾔中,
使⽤关键字string表⽰字符型数据,在c语⾔中,使⽤关键字char来表⽰,在objective-c语⾔中⽤NSstring来表⽰字符型数据。
3、表⽰⼩数的“浮点型”
浮点型的数据都是带⼩数点的数据。在编程语⾔中,⼀般使⽤float或者double标记浮点型数据。
4、表⽰是⾮判断的“布尔型”
布尔型的数据只有两种值,即“true”和“false”.“true”对应的序号是1,“false”对应的序号是0.
编程语⾔中的逻辑结构:
1、条件判断“if else”
多条件判断逻辑
2、条件选择“switch case”
在“switch case”的条件选择中,条件值得数据类型必须是整型的,“case”是对应输⼊值的条件分⽀,每⼀个“Case”分⽀都会有⼀个对应的执⾏结果。若输⼊的值在所有的“case”中都没有匹配项,那还有⼀个关键字“default”表⽰的默认执⾏模块。多选⼀的操作都可以使⽤到。
3、循环操作“while/do while”
使⽤“while”实现循环的逻辑控制,让⼀个事件在某⼀个条件下重复发⽣,在循环停⽌前持续让这个事件发⽣⼀段时间。还可以通过“do while”控制循环逻辑,“do"的意思是做什么事情,”do while“控制循环逻辑的意思就是先做⼀件事情,再判断条件,如果条件满⾜,就继续循环该动作。
数据的组合⽅式:数据结构: