qt 一个线程接收数据 主线程更新界面 会造成界面退出 怎么解决_打造一个好产品

2023-11-06

原标题:打造一个好产品 | 让产品自己说话

编辑导语:一个好的产品,关键在于产品经理和团队;产品经理对于产品如何理解以及产品更新迭代时的需求变化,产品如何实现更好的体验等等;本文作者分享了关于产品经理经常犯的七个问题,我们一起来看一下。

75619c45ba659ff5ff5ec8e3337759d4.png

不管怎么说,打造出一个好的产品都不是简单的事情。

入职新公司之后,老板和 team leader 就交给我一件很重要的事情“团队的产品基础底子比较薄,希望尽快帮助大家建立起基础的产品 sense”;刚好最近重读了一遍当年 Pony 认为产品经理常犯的 7 个错误,觉得有蛮多内容都深有感触,因此在这里再次对这些容易犯错的地方进行整理。

01 问题一:忽视产品的隐形特性

任何一个产品,简单的按照“产品应该包含哪些功能”的思路整理需要设计的功能总显得思考的太浅;其实我们应该考虑在将产品交付到客户之后,客户可能会基于产品享受到哪些服务,这个服务的流程和特性是怎样的,这个服务背后隐藏的成本是怎样的。

一些必须要在流程上进行闭环的,大多数人都能够想到的,常见的特性叫做产品的显性特性,如果连显性特性都想不到的话说明基本功还不熟练;而在显性特性之下还有一层隐形特性,安全性、易用性、数据统计分析与挖掘,在异常条件下的客户支持闭环其实都是隐性条件。

大多数产品经理都能够找到产品的显性特性,但是如同很多刚入行不久的产品经理都会用“我是产品经理,我只关注流程和业务的闭环,别的那些工作都是设计师、运营,需要考虑的事情”这样的话来解释自己的工作一样,其实过于强调这些产品的显性特性是十分初级的想法。

显性特性当然很重要,但是显性特性救不了你(就如同金蝶、用友在财务软件的基本流程设计上几乎一致),愿意把核心的资源和时间放在一次次改版过程中对于“显性特性”的优化上几乎属于初级产品经理最容易犯的错误

02 问题二:自己臆想用户的需求

我在面试产品经理的时候都会问一个问题“介绍一个你曾经发现需求的例子”,如同每一个产品经理都知道用户需求的挖掘是产品的核心,但其实最简单的事恰恰是做起来最困难的。

产品研发中最容易犯的一个错误——“研发者往往对自己挖空心思创造出来的产品像对孩子一样珍惜、呵护,认为这是他的心血结晶”。

有的产品经理在设计产品时总觉得要让这个产品越厉害越好,但所谓的好产品可能压根就不需要那些特别厉害的设计(好的产品都需要明确产品的边界);相反,产品经理最应该考虑的就是通过研究用户来满足他们的需求,并且持续的提升用户满意度,并以此去定义产品的设计工作。

腾讯自己有一个「10/100/1000法则」:即产品经理每个月必须做10个用户调查,关注100个用户博客,收集反馈1000个用户体验。

我们姑且不去考虑大厂中的产品是否真的有精力去做用研分析,但通过了解用户熟悉用户,最终做出用户喜欢的产品终归是产品经理的基本功之一。

当然了,在用研上其实并没有什么捷径可以走,那些基于所谓的“人性如此”所设计的功能有的时候可能也是扯淡。

不管什么年龄和背景,所有人都喜欢清晰、简单、自然、好用的设计产品,这是人对于美最自然的感受与追求。

所以产品经理要么是基于访谈,要么是基于观察,要么是对于自己所设计的产品流程百分百熟悉;产品经理总是要在成为自己产品的忠实用户的同时,把触角延伸到用户群体中聆听真正的声音,只有这样才能脚踏实地,从不完美向完美一点点靠近。

03 问题三:不注意积累口碑

不论是 2C 还是 2B 产品,最终都会需要去建立用户口碑并且占领用户的心智。

在产品已经有一群稳定的用户之后,需要考虑如何提升头部用户的关注,还需要考虑如何在不同的业务线与部门之间协调资源,做出一个大家都能够想用的大蛋糕。

但是在没有口碑的时候,也不要投入营销、市场、客户支持(客服)等不同部门之间的资源;这些东西在本质上属于加分项而不是扣分项,如果当产品的实力都没有达到的时候,就先把重要的精力放在重要的地方,去关注最核心,能够获得用户口碑的增长点。

而如果连这些基本盘都没有做好,最终用户只能满怀期望的来,然后失望而归,这种时候反而会让我们花费更多的精力去进行弥补,得不偿失。

当然了,在产品的边界上也要十分清楚,在满足重要的核心功能之后,再来逐步补齐那些局部的,细微之处的创新设计。

如果想要设计一个“良好口碑”的产品,那对于每一个功能的设计与发布都应该谨慎,新功能在给 10%的用户带来好感的同时,是否也会给 90%的用户带来困惑呢?当出现冲突的时候应该如何进行取舍?

功能不一定是用的人多了就是好,用了的人都觉得好才是真的好。

04 问题四:对于产品的核心能力关注不够

任何产品其实都是在用自己的核心功能解决用户某一方面的痛点问题,而有的产品经理对于核心能力的关注不够就表现在“关注不到位”,并不是说没有关注,而是在程度上差了一点。

核心能力并不仅仅是在功能,也包括性能,体验等问题;比如产品的加载速度太慢,流程设计不严谨,没有考虑不同设备上的兼容性等等;这些功能其实在设计与开发的时候就需要进行切实的考虑,这也是我在前文中说产品经理为什么不应该“只关注核心的流程,而将别的工作都丢给别人”。

很多产品经理在和用户聊天的时候都会发现,用户在用一个“看起来解决方案并不是那么好的产品”;但用户给出的答案无非就是“流程上的东西其实所有的产品都差不多,但他们家这个产品用起来比较方便,简单好用。”

有一句老化说“人无我有,人有我优”其实就是这个意思——把核心能力做到极致并且通过技术行程差异化,或者局部领先与对手,产品的口碑也就能在用户中逐渐建立起来了。

05 问题五:把添加当做提高

我做了好多年的 B 端产品经理,总觉得在目前的这个行业中,很多厂商都不怎么关注用户的交互,所以那种界面看起来就是上个世纪的产品反而很多。

有的人说“能卖钱就行了,想那么多干嘛”,但最终面对的就是飞书、钉钉这种泛 OA 产品对于传统厂商的降维打击;所以这也是我始终认为产品经理都应该力所能及的把交互设计做到极致,视觉上简洁清爽。

产品经理要想象自己是一个挑剔的用户,想象自己是个傻瓜用户,对于复杂和不好用的产品有天生的抵制感。

毕竟产品经理的精力本来就有限,对于交互上的内容通过设计规范来让用户感觉到舒服、清晰、明白;比如鼠标少点少移动,内容的自动复用等等。

这些内容看起来都很小,但是只要产品想清楚了,用户就会觉得好,可能他们也说不出个所以然,但这些都是对用户体验的优化。

当然了,有一些基本点我觉得还是需要产品经理坚持的:

  • 不强迫用户,不为1%的需求骚扰99%的用户;
  • 操作便利,简单可靠,不要为了“炫技”设计某些特性或者引用某些组件;
  • 交互设计,点到即止,ui 上不用太重也能做得很好,图案和简洁并不是一对矛盾体;
  • 突出重点,有自己的坚持,不要沦为原型的搬运工。
06 问题六:认为内部竞争是浪费资源

我想可能很多人和我一样,在设计产品的过程中会有一个困惑“自己做的这个产品如果失败了怎么办?”所以有的公司在内部也引入了赛马机智,不同的团队为了实现一个目标而努力,没有竞争就意味着创新的死亡嘛。

对于公司而言,在面对创新的问题上应该允许适度的浪费,只要是资源许可,有一两个团队同时研发一个产品当然也可以,只要在战略上明确了这一步是必须要做的就行。

并非所有的系统冗余都是浪费,不尝试失败就没有成功,不创造各种可能性就难以获得现实性。

这种“自己打自己”导致的结果才能让自己更加努力,也能让公司不至于丢掉一些大的战略机会;毕竟如果你不做,那总会有人来做,无非是时间早晚的问题。

07 问题七:把产品发布当做成功

很多流程不规范的公司,很喜欢给产品设定各种大版本,我之前面试其他产品经理的时候,看到简历上写的都是“负责了 xxx 产品从 到 的升级与发版,作为唯一责任人做了xxx 的事情”。

但实际上,这些产品在发布之后其实也并没有体现出多么革新的变化;我问他们“新版本发布之后有哪些数据上的提升吗?”他们倒也说不出个所以然,那在这种时候, 版本和 版本也确实没有什么明显的区别。

在市场中,一个好的产品往往是从不完美开始的,每一次的更新也不见得都是完美的,“小步快跑,快速迭代”的敏捷研发也不仅仅是说我们快速发版上线就完事了;通过不同的小版本解决不同的小问题,不久之后也就能够把作品打磨出来了。

有一句说法叫做“永远的 beta 版”,其实创新应该来源于对用户需求的准确把握和对产品的不断打磨。

产品经理是否愿意花费时间来把握产品的走向和用户体验,找到不足进行迭代完善才是在产品发布背后的事情

合格的产品经理应该努力挖掘用户深层次且不断变化的需求,并进行迭代改进,才能实现更好的产品体验。

本文由 @Wannz 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

qt 一个线程接收数据 主线程更新界面 会造成界面退出 怎么解决_打造一个好产品 的相关文章

  • vue项目,ie11 浏览器报 Promise 未定义的错误

    报错 description Promise 未定义 message Promise 未定义 name ReferenceEr number 2146823279 stack ReferenceEr 解决办法 1 npm install b
  • AIDL实现跨APP通信(双向通信)

    某天 接到了一人任务要在两个app互相传递一些消息 上网查了以后发现有几种方式 第一是广播 第二是AIDL 由于初出茅庐全不会就选择了AIDL 下面简单粗暴的开始贴代码好了 也是得到了网上的一些借鉴 若有雷同 嗯你懂的 1 我们需要先建立A
  • SVN出现:原始内容“XXXX“不存在

    缘由 偶然一次在工作期间 策划的svn出现了 原始内容 XXXX 不存在 的提示 无论是用清理 还是还原都无效 由于是第一次遇到所以记录一下解决过程 分析 从提示上看大致可知是某个文件不存在了 估计是异常操作svn导致一些文件丢失 据网上资
  • Python中的for循环

    Python中的for循环 在Python编程语言中 for循环是一种常用的迭代结构 用于遍历可迭代对象 iterable 它允许我们按照指定的方式重复执行一系列操作 直到满足退出条件 在本文中 我们将详细介绍for循环的使用方式 并提供相
  • 快速排序的优化及其与qsort的比较

    快速排序是用的最多的一种排序方法 编程珠玑 在第十一章 排序 中讨论了快速排序的几个版本 其实版本的不同 都是体现在partition函数上 partition版本1 其实就是 算法导论 给出的版本 很好理解 int partition1
  • 在main函数实现两个数的输入并用函数实现两个数的值相换(两种方法实现)

    在main函数实现两个数的输入并用函数实现两个数的值相换 1 方法一 void f int x int y 定义 声明函数 int t 临时变量 t x x y y t 关于汉诺塔这个是最简单的算法 include
  • python lambda函数排序_python笔记-lambda函数、sorted函数、map函数

    1 lambda函数 又称匿名函数 示例如下 def f x return x 2 print f 4 16 g lambda x x 2 print g 4 16 2 map函数 print map lambda x x 2 range
  • 分布式任务调度(XXL-JOB)

    什么是分布式任务调度 任务调度顾名思义 就是对任务的调度 它是指系统为了完成特定业务 基于给定时间点 给定时间间隔或者给定执行次数自动执行任务 通常任务调度的程序是集成在应用中的 比如 优惠卷服务中包括了定时发放优惠卷的的调度程序 结算服务
  • 减小android button的大小

    当我们仅需要按钮的大小恰当包裹其中文本的大小 尽可能减小多余的空白空间 第一种方式 我们可以直接设置button属性 minHeight和minWidth android minHeight 0dp android minWidth 0dp
  • 工业通信网络结构

    工业通信网络结构 工业通信网络包含所谓的工业现场总线 局域网 公网等概念 这些概念在物理环境下并不是界线分明的 是一种主观上的分类 在物理环境下 目前工业网络结构都是设备与双绞线之间的通信 可以互相通信的设备与双绞线的集合称为网络 当网络中
  • 【深度学习常见问题——Attention基础知识梳理】

    这里写目录标题 1 注意力机制计算 2 d k sqrt d k dk
  • Unity 编辑器ScrollView滚动卡顿优化

    原因 在使用 Unity 开发游戏的时候 经常会需要用到数据配置 方式可能是CSV JSON等等 为了可以方便地查看修改数据 通常使用ScrollView实现在 Unity 编辑器里面以列表的形式查看数据 当数据量大的时候 滚动视图会发现卡
  • Linux下如何查看系统启动时间和运行时间

    1 uptime命令输出 16 11 40 up 59 days 4 21 2 users load average 0 00 0 01 0 002 查看 proc uptime文件计算系统启动时间cat proc uptime输出 511
  • 有了内存地址范围,如何确定内存空间容量大小?

    假如RAM的地址范围从0x2000 0000到0x2000 2000 也就是有2000个内存地址 1个内存地址是可以存8位二进制数 如何来算这空间的容量是多少字节呢 先用0x2000 2000 0x2000 0000 2000 得到的200
  • R语言的字符串

    几乎所有的程序都离不开字符串 例如姓名 性别 男或女 商品名称 类别等等 因此在程序开发过程中就避免不了对字符串进行操作处理 常用的如拼接字符串 计算字符串长度 截取字符串 字符串拆分等等 字符串规范 在R语言中 字符串通常使用单引号或双引
  • Halcon API

    1 延时等待 wait seconds 0 5 注 括号内以秒为单位 2 遍历文件夹 list files Directory Options Files Directory 目录 文件夹路径 Options 选项 files 指定搜索的格
  • 尚硅谷面试题第三季

    java字符串常量池 package atguigu demo1 public class StringPool58Demo public static void main String args String str1 new Strin
  • 安装MySQL时出现黄色感叹号,提示3306已被占用

    今天安装MySQL遇到这个问题 取消安装后卸载 再次安装 一直是这个问题 查询资料后得知是3306端口被占用 那么windows系统如何查看现在某个端口的应用进程id呢 命令是 netstat aon findstr 3306 那么 最后的
  • zabbix服务器监控

    zabbix服务器监控 文章目录 zabbix服务器监控 一 zabbix服务器监控 概念 1 服务器上安装zabbix agent 2 启动zabbix agent服务 二 监控远程linux服务器 1 将server的hosts文件复制

随机推荐

  • 数据导出Excel时,忽略一些导出项(Java)

    仅供学习 不可转载 欢迎评论 导言 在做导出功能时 我们一般都是导出到一个Excel表格里面 但是有些数据字段我们不想导出来 如果导出来之后再去删除 这时就显得比较麻烦 下面介绍一种方法直接就可以忽略一些不想导出的数据字段 实例演示 下面这
  • angularJS懒加载实现

    angularJS懒加载 主要是分担首页文件加载效率提高渲染性能 实现要点 1 项目模块化 使用import export 进行模块化 2 路由 使用ui router进行路由切换 3 模块异步加载 1 使用import 实现文件动态加载
  • ​LeetCode刷题实战479:最大回文数乘积

    算法的重要性 我就不多说了吧 想去大厂 就必须要经过基础知识和业务逻辑面试 算法面试 所以 为了提高大家的算法能力 这个公众号后续每天带大家做一道算法题 题目就从LeetCode上面选 今天和大家聊的问题叫做 最大回文数乘积 我们先来看题面
  • 批处理获取管理员权限

    废话少说 先上代码 echo off BatchGotAdmin REM gt Check for permissions IF PROCESSOR ARCHITECTURE EQU amd64 gt nul 2 gt 1 SYSTEMRO
  • TCP/IP体系结构简介

    一 网络体系的构成 访问方式 数据帧格式 布线类型 布线规则 二 网络体系的类型 IEEE 802 3 以太网 在大多数办公室和家庭中使用的基于线缆的网络 就是常见的有线局域网 IEEE 802 11 无线网络 在办公室 家庭和咖啡厅使用的
  • 如何下载和安装 Visual C++6.0(解决未响应版)

    下载链接一 https pan baidu com s 1VEggDaoKgt0ZW8Q5wSu zQ 提取码 4chy 下载链接二 https dl pconline com cn download 413670 html
  • 行列式&矩阵_MD&Latex

    行列式 left begin array cccc 1 6 9 7 90 f x 9 psi x g x end array right left begin array cccc 1 6 9 7 90 f x 9 psi x g x en
  • 使用mklink突破百度网盘等软件的自动备份文件夹数量限制

    百度网盘 夸克等各种网盘都提供了自动备份文件夹的功能 但一般都有文件夹数量的限制 比如百度网盘就限制了最多只能同时备份5个文件夹 想整盘备份的话显然是不够的 当然 你可以把所有的文件夹都转移到一个母文件夹下 但这样明显不太方便 操作起来还涉
  • 解决idea中maven的javaweb项目,输出在控制台上的中文乱码问题

    在idea中创建一个maven的javaweb项目 当有中文输出到控制台的时候 就会出现乱码 下图 第一张图是我们要输出的中文 但是我们通过servlet访问之后 控制台打印出来的都是乱码 而且我们使用的是maven自带的tomcat 所以
  • 6.6 Hessenberg法求特征值

    文章目录 1 Gram Schmidt正交化的缺点 2 Hessenberg矩阵 3 海森堡化简 Hessenberg reduction 4 Givens rotation 5 多次Givens rotation QR 6 循环QR直至收
  • Java并发编程学习11-任务执行演示

    Java并发编程学习系列 任务执行演示 引言 1 串行的页面渲染器 2 携带结果的任务 3 使用 Future 实现页面渲染器 4 使用 CompletionService 实现页面渲染器 5 为任务设置时限 5 1 限时获取广告信息示例
  • Qt线程基础使用指南

    Qt的线程一共3种使用方式 继承QThread 继承QRunnable 调用moveToThread 方法 本文旨在系统的记录这3种方法的使用过程 以及解决使用这些方法中遇到的bug 一 继承QThread 1 创建线程文件 继承基类QTh
  • day02 - Java基础语法

    day02 Java基础语法 0 类型转换问题 类型转换 理解 在Java中 会存在不同类型的数据需要一起参与运算 所以这些数据类型之间是需要相互转换的 分为两种情况 自动类型转换和强制类型转换 自动类型转换 类型范围小的变量 可以直接赋值
  • 手机探测帧频率的测试

    手机的探测帧的频率在802 11协议里面并没有一个详细的要求 并且各个厂家从省电等方面考虑设置的探测帧频率也各不相同 并且在wifi界面下 锁屏状态下 忽略掉wifi再锁屏的状态下探测帧的频率都不同 所以wifi探针并不是一个可靠的用户感知
  • FPGA实战小项目

    1 基于fpga俄罗斯方块的实现 基于fpga俄罗斯方块的实现 2 基于fpga白平衡的实现 基于fpga白平衡的实现 3 基于fpga的目标跟踪 树叶 基于fpga的目标跟踪 树叶 4 基于fpga数字0 9识别的实现 基于fpga数字0
  • HCNP——水平分割、毒性逆转、触发更新、毒性路由

    一 水平分割 原理是 RIP路由器从某个接口收到的路由不会再从该接口通告回去 这个机制很大程度上消除了RIP路由的环路隐患 二 毒性逆转 毒性逆转是另一种防止路由环路的有效机制 其原理是 RIP从某个接口学到路由后 当他从该接口发送Resp
  • linux的mtime的用法,Find–atime –ctime –mtime的用法与区别总结

    周五有同事问起find命令中 mtime n mtime n以及 mtime n的用法区别 当时虽然记得这里n是n个24个小时的意思 也是对所有这几个属性详细的用法却一知半解 索性周末仔细google并且实践了一番 终于理清楚了个中乾坤 f
  • SpringBoot分布式任务调度,可支持rabbitmq与kafka两种消息中间件的可回滚微服务实现。

    分布式任务调度管理 Distribution task center 支持Rabbit与kafka两种消息队列 实现立即执行与根据CronExpress表达式的执行及更加复杂的复合执行策略 在任务执行过程中可完成回滚操作 在微服务中我们经常
  • MyBatis-动态SQL

    实体类Car package com bjpowernode domain public class Car private Integer id private String carNum private String brand pri
  • qt 一个线程接收数据 主线程更新界面 会造成界面退出 怎么解决_打造一个好产品

    原标题 打造一个好产品 让产品自己说话 编辑导语 一个好的产品 关键在于产品经理和团队 产品经理对于产品如何理解以及产品更新迭代时的需求变化 产品如何实现更好的体验等等 本文作者分享了关于产品经理经常犯的七个问题 我们一起来看一下 不管怎么