产品经理学习总结之技术和设计篇
【文章摘要】我本身的专业是法学,出于一直以来对互联网领域的兴趣,修读了软件工程的第二学位。虽然实际的编程能力还是很弱,不过实实在在的专业学习还是有很大的帮助。
相关推荐: 产品经理学习总结之工具篇丨你会几个?
我本身并不擅长技术,对设计相关的内容也仅限于了解一些基础概念,避免出现低级错误。所以这个章节算是对沟通部分的补充,并不是很专业地技术/设计入门推荐,只希望了解一些常识有助于和设计人员、开发人员的交流。
先说技术。这些都是纸上谈兵,我属于编程能力比较弱的那种人,只不过比较喜欢关注技术领域的一些新闻,只是简单说一说技术相关的内容。
如果非计算机专业的同学想认真学技术的话,可以阅读@萧井陌和@Badger的《编程入门指南》或者《知道创宇研发技能表》,同时推荐网易云课堂的《计算机专业体系》。
此外,推荐想要成为 产品经理 的同学学习一些前端相关的知识或者学习一些脚本类语言比如Python。前端相关知识相对来说注重前端呈现,不像后端特别追求性能,并且前端有自身的设计 规则(类似的,iOS/Android/WindowsPhone也都有各自的人机界面指南),对产品设计有很大的帮助;与C/JAVA相比,不需要那么 多的数理知识和算法要求。而脚本类语言相对更为友好,没有那么抽象,编译器/IDE也较轻,适合入门。
简要介绍一些编程语言相关的内容。
HTML/CSS/JavaScript
前端相关,HTML算是比较熟悉的,毕竟是简单的标记语言,相对来说对逻辑的要求没那么高;CSS没深入学过,能简单改一改;JS简单用过框架, 没深入了解过框架源码和架构。前面说过,我认为这部分应该是最应该了解的,个人感觉C系列的编程语言以及脚本类编程语言都比较偏向技术实现,而前端类的编 程语言比较注重呈现的效果,这一点在产品设计阶段需要关注到。
从另一个角度来说,随着 HTML5 在移动领域的表现越来越好,学习web相关的知识,对移动端也有很大的帮助。
Basic
没接触过,据说更加类似搭积木,没有那么抽象。如果一点没有接触过编程,推荐先玩一玩Small Basic,类似很久之前的LOGO语言,很有意思,英文官网疑似被墙,我这里现在无法访问。
C/C++/C
C还算好点,最好的时候能弄懂一点指针的概念,很久不写也就忘记了。C++/C#有个好处,可以使用MS的IDE——VS2013。
JAVA
仅仅入门过,有意从事安卓相关职业的同学可以学习。
Python/Ruby
脚本类语言。Python入门,Ruby没学过。相对,Python的免费电子书比较多,推荐「Python 中文学习大本营」。
Linux
推荐《鸟哥的Linux私房菜》,想入门安全的可以搞搞Kali Linux。
数据库
数据库方面无法推荐,图形化操作还可以,SQL没有认真学习,数据库只了解一些概念性的东西。相对来说,了解一些技术性的概念有很大帮助,比如「高内聚低耦合」等。适当熟悉一些简单的编程语言,对产品设计时的思路有所帮助。从另一个角度,也有利于估算产品的开发进度。
严格来说,软件工程专业的学习对我帮助最大的并不是编程语言的课程,而是《软件工程》/《软件项目管理》两门课程。虽然最后终于确认自己没有编程上的天赋和耐心,与其吐槽自己Hello World级别的编程能力,倒不如讲讲一些其他的体会更好。
关于软件工程
软件工程里对我帮助最大是「软件生存周期模型」,其次是需求分析的一些方法和文档,UML图等更偏向详细设计,并不十分适合互联网产品快速迭代的开发模式。
我们可以看一些软件生存周期模型和产品研发流程的示意图:
瀑布模型
快速原型模型
产品研发流程
又一个产品研发流程
两者虽然不尽相同,但是却有着某种共性:需求——设计——开发——运营。
互联网产品由于其特性,不断循环这样一个流程;而快速迭代,实质上也就是将每一个这样的流程缩短,尽快推给用户,得到反馈,继续下一个这样的流 程。也因为跟传统软件公司的不同,没有甲方的存在,必须要从用户中获取反馈,所以产品经理必须要有一定的数据分析和用户调研能力,辨别真需求和伪需求。也 就是经常说的,找准用户的痛点。
有些产品经理的入门书籍中说过产品经理和项目经理的区别,知乎上也有一些回答。一般大公司分得比较细,两个职位都有专职人员,小公司很多都是一人 兼两个职位。即便如此,学习《软件工程》相关的知识绝对对成为产品经理有所帮助。像刚才所说的,最基础意义上的,理解软件的生命周期,对理解快速迭代、理 解产品的开发流程非常有帮助。撇开产品经理/项目经理的区别这点不谈,软件工程领域有一本书推荐阅读:《人月神话》。这本书我仅限于了解,并未深入地精 读。《人月神话》本身是比较偏向项目经理方向,但是学习一些其中的观点还是很有用处的,避免在策划中忽略一些定量/变量,率性而为。
因为大学期间在图书馆的兼职经历,对图书的分类比较敏感,相当多的产品经理书籍都分到了F类——即经济管理,这本书也属于F类。从管理的角度上来 说,《软件工程》就属于对软件(产品)的管理。用vczh的一个回答来介绍这本书:“这本书的主要内容是,一个程序让vczh一年刚好可以写出来,但是你 如果找到了12个vczh同时写,一个月肯定是写不出来的。人和月是两个单位,人月自然是它们相乘了,神话的意思就是说,这两个量是不能乘的。”
虽然说产品经理不一定要会设计,但是有必要了解一些设计相关的知识,避免出现一些低级的错误。推荐阅读《众妙之门》系列,都是小册子,比较简单;还有王坚在《结网》中推荐的《点石成金》、《GUI设计禁忌》以及《写给大家看的设计书》。
《点石成金》就是大名鼎鼎的《Don’t Make Me Think》一书的中译本,我也是返校之后才去补课读的这本书,短小精悍,即便第三版加入了移动应用相关的内容,依然简洁,全书不到200页,一个下午的 时间足够做到通读第一遍。除了总结一些基本的可用性设计准则外,对可用性测试做了相当详细的叙述。此外还有一本《 用户体验 要素》也有很多人推荐,准备这几天补课;同时推荐豆瓣上根据此书整理的一个书单:以《用户体验要素》整理 互联网产品经理 书单。
在「媒体和博客」那一篇里提到过一些大公司的UED团队,推荐了一些链接,特别是。针对移动产品的策划,十分推荐了解相应的人机交互规 范:iOS/Android/WindowsPhone,这里的链接都是英文版的,国内的一些团队都有针对性翻译一些中文文档,在「媒体和博客」一篇中已 经有所推荐,不再多给链接。还有一个之前没有提到过的,谷歌去年提出的「Material Design」。
最后,多说一句:我认为互联网上本质依然是技术驱动的,开发人员才是核心。所以,尊重技术,不迷信产品。