惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
S
Schneier on Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
The Exploit Database - CXSecurity.com
B
Blog RSS Feed
G
GRAHAM CLULEY
Microsoft Azure Blog
Microsoft Azure Blog
Know Your Adversary
Know Your Adversary
N
Netflix TechBlog - Medium
A
Arctic Wolf
W
WeLiveSecurity
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
The Blog of Author Tim Ferriss
AWS News Blog
AWS News Blog
Engineering at Meta
Engineering at Meta
T
Threatpost
博客园 - 叶小钗
G
Google Developers Blog
U
Unit 42
Latest news
Latest news
Cyberwarzone
Cyberwarzone
N
News and Events Feed by Topic
Simon Willison's Weblog
Simon Willison's Weblog
Hacker News: Ask HN
Hacker News: Ask HN
MongoDB | Blog
MongoDB | Blog
H
Hacker News: Front Page
F
Fortinet All Blogs
T
Tailwind CSS Blog
The Register - Security
The Register - Security
Apple Machine Learning Research
Apple Machine Learning Research
C
CXSECURITY Database RSS Feed - CXSecurity.com
H
Heimdal Security Blog
A
About on SuperTechFans
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
C
CERT Recently Published Vulnerability Notes
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
N
News and Events Feed by Topic
Application and Cybersecurity Blog
Application and Cybersecurity Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Schneier on Security
Schneier on Security
Y
Y Combinator Blog
V
Visual Studio Blog
GbyAI
GbyAI
Forbes - Security
Forbes - Security
www.infosecurity-magazine.com
www.infosecurity-magazine.com
N
News | PayPal Newsroom
P
Proofpoint News Feed
T
Threat Research - Cisco Blogs

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理, 企事业单位数字化的业务供需本质 – 人人都是产品经理, 医疗智能体·第1讲——医疗信息化重构:从“辅助软件”到“自主智能体”的范式转移 – 人人都是产品经理, 粉丝量就是空气!!! – 人人都是产品经理, 用户说“薯片碎了”,机器回“要买吗?”:意图识别的翻车与破局 – 人人都是产品经理, RAG召回准确率从75到90 我做对了这三件事 – 人人都是产品经理, AI大事件:Anthropic改收费、OpenAI发安全版、手术机器人纳入医保、阿里发布”秒悟” – 人人都是产品经理, Chrome 推出 Skills 新功能,Agent 重塑上网方式 – 人人都是产品经理, GitHub前创始人拿了a16z的1700万美元,做Agent时代的Git – 人人都是产品经理 拷贝或克隆其他 Flutter OH 项目到本地后无法运行 – 人人都是产品经理, 优惠券设计:优惠券创建 – 人人都是产品经理, 不用死磕文档!AI 助手 1 小时搞定飞书 CLI 安装 + 配置 + 知识库 – 人人都是产品经理, 用小龙虾做竞品分析报告:从2天到20分钟,我是怎么做到的 – 人人都是产品经理 用小龙虾做市场分析报告:搞懂这3个公式,市场规模不再靠猜 – 人人都是产品经理, 你早就在做 Harness 工程,只是不知道它叫这个名字 – 人人都是产品经理, Think Long就够?你可能想多了! – 人人都是产品经理, 货代SRM实战:供应商准入怎么做,才能让资源池不是通讯录而是可交付网络? – 人人都是产品经理, 如何做好用户调研?详解基本技巧 – 人人都是产品经理, 木鸟、途家、美团对打,平台春天行动开“卷” – 人人都是产品经理, 入职才发现公司不靠谱?小红书从业者求职避坑指南 – 人人都是产品经理, 美国 AI 三巨头联手封堵,中国 AI 突围之路在何方 – 人人都是产品经理, 小红书,放在需求对面的镜子 – 人人都是产品经理, AI 会带来大规模失业吗? – 人人都是产品经理, 从出单到补货前,我第一次犹豫:该不该放大? – 人人都是产品经理, Flutter 三方库鸿蒙化适配:5 种高效检查方式,快速判断是否需要适配 – 人人都是产品经理, 从做产品进阶拿结果:医美机构产品经理转岗科室运营经理 – 人人都是产品经理, 阿里HappyHorse,一场关于“Token经济”的阳谋 – 人人都是产品经理, To B AI:客户留存落地的观察与思考 – 人人都是产品经理, AI产品的“生命线”——数据采集、标注、清洗的产品化设计 – 人人都是产品经理, 谈谈AI Agent(二):当“孩子”能自己“体验世界”时,你该学什么? – 人人都是产品经理, UI/UX设计师的3层能力进阶,前两层让你活下来,第三层…才是真正的分水岭 – 人人都是产品经理, 2分钟 → 30秒,效率提升75%:B端产品经理如何用「规则枷锁」驯服AI幻觉? – 人人都是产品经理, 还没来得及学OpenClaw,来了个更猛的:Hermes Agent – 人人都是产品经理, AI日报:宇树机器人跑出10m/s刷新世界纪录 – 人人都是产品经理, 一文说透基金互金如何用情绪价值引导用户决策做转化 – 人人都是产品经理, 当浏览器开始替你”看”网页:AI 浏览器正在亲手拆掉它脚下的那张网 – 人人都是产品经理, 0代码,一天时间我Vibe Coding了个网站 – 人人都是产品经理, Hermes 和 OpenClaw 之争,Agent 的能力应该“装上去”还是“长出来”? – 人人都是产品经理 视频生成的“桌子”,字节Seedance 2掀完,阿里快乐马掀 – 人人都是产品经理, 从听不懂到完全信任:我的 Codex 深度产品体验 – 人人都是产品经理, 当虚拟偶像有了北京户口,与真人偶像还有什么区别? – 人人都是产品经理, 会说,远远比会做更重要 —— 对 SBTI 爆火现象的五层观察 – 人人都是产品经理, AI产品经理必看:当“搭环境”比“选模型”更重要,你的认知还在2024年吗? – 人人都是产品经理, 2026年AI产品商业化核心逻辑:从功能demo到规模化营收的3个必破卡点 – 人人都是产品经理, 京东围绕供应链,卷起裤腿下场的那些事儿 – 人人都是产品经理, SBTI一夜刷屏:它赢在了“太会说人话” – 人人都是产品经理, 折扣零售的真相:不是便宜,而是价值感! – 人人都是产品经理, 和甲方吵了一架,最后加钱做了——我学到的ToB产品经理生存法则 – 人人都是产品经理, 和几位小红书操盘手聊了8小时,干货全在这 – 人人都是产品经理, 智谱GLM-5.1登场,开源模型首超Opus4.6!!! – 人人都是产品经理 Anthropic收入凭什么反超OpenAI,终于有人把这事说清楚了 – 人人都是产品经理, 史上最有故事感的技术报告——Claude最强模型Mythos 7个极其精彩的细节 – 人人都是产品经理, 模型不是壁垒,Harness 也不是 – 人人都是产品经理, 抖音本地生活业务思考21 – 人人都是产品经理, Superpowers:145k Star的AI编码框架,到底是什么来头? Superpowers:145k Star的AI编码框架,到底是什么来头? – 人人都是产品经理, OpenAI 的路走错了,Anthropic Harness 解法启示:模型需要实践专科生 – 人人都是产品经理, 画原型图的前一步:设计站点地图 – 人人都是产品经理, 给 DeepSeek 的最后一封催更信 – 人人都是产品经理, 手把手教你用 Claude Code 搭建 AI 营销团队:5 个 Agent、12 项技能,独立完成研究、写作、设计全流程 – 人人都是产品经理, 你以为大模型在学语言?不,它在重新发明语言学 – 人人都是产品经理 所谓Skill,不过是AI时代的工业垃圾 – 人人都是产品经理, 聊一聊内容传播的几个方法 – 人人都是产品经理, 当平台开始吃掉生态:从 OpenClaw 被封杀,读懂 Anthropic 的这盘棋 – 人人都是产品经理, 你装了 10 个 AI 插件,Obsidian 还是一个文件夹 – 人人都是产品经理 关于AI智能体架构演进的系统性思考:从单体试水到多体协同的重构 – 人人都是产品经理, 当“人”变成Skill,我们又该何去何从? – 人人都是产品经理 Mythos 事件:前沿 AI 治理的意外实验 – 人人都是产品经理, 货代CRM:信用与风险管理怎么做,才能把坏账风险拦在放货之前? – 人人都是产品经理, 从HR收集自拍照到员工自助录入——我见证了园区人脸识别从”不可用”到”真好用”的全过程 – 人人都是产品经理 千问闯关AI混沌期:阿里画靶,吴嘉张弓,马云射箭? – 人人都是产品经理,
B端产品经理必知:如何将第三方错误信息转化为友好型提示?
PM维他命 · 2022-12-21 · via 人人都是产品经理

在日常工作中对接第三方系统的时候,常见的小困扰是第三方系统返回的错误信息的处理。为了方便理解,我们需要将错误信息转化为友好型提示,如何转化呢?一起来学习一下吧。

作为一个B端或者SaaS产品经理,在日常的工作中经常需要对接第三方的系统。在对接第三方的系统的时候,比较常见的小困扰就是第三方系统返回的错误信息的处理。

有一些研发能力比较强或者说接口做的比较完善的第三方,他们返回的错误信息会比较的齐全,会包含错误码,错误信息和其他内容等,我们可以通过这些信息知道发生了什么错误,应该要怎么解决。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

截图出自:Aftership的API文档

同时第三方的API文档中也会有一个公共的错误码查询页面,当我们遇到了一些问题之后,可以查看这些文档去尝试自己解决问题。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

截图出自:速卖通的API文档

但是在实际的工作中,我们也会发现有一些第三方的API其实做得很不完善。有一些错误信息没有规范处理,可能没有错误码,也可能错误信息都是一些偏术语性的程序错误,导致我们拿到了错误信息之后并不知道错误信息到底是怎么产生的,应该要怎么解决。类似于下图的错误,是在对接一些国际物流渠道的时候经常会遇到的问题:

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

DHL返回的错误,即使翻译了也看不太懂原因是啥

在跨境电商SaaS ERP或者SaaS WMS/TMS这一类系统中,以上问题出现的频率很高。尤其是SaaS ERP,因为它需要对接很多外部的第三方系统,例如说:

  1. 对接电商平台,Amazon,eBay,Walmart,Shopify等;
  2. 对接物流商,国际物流(DHL,FedEx,UPS),跨境物流(云途,燕文,4PX)等;
  3. 对接海外仓,谷仓,万邑通,4PX,其他SaaS WMS等;
  4. 对接一些工具服务商,图片翻译,图片编辑,支付收款,选品分析等;

这些第三方系统,有一些是有比较专业的研发团队,有一些则是不太专业的研发团队,所以就会导致在对接完成了之后,用户在使用的过程中如果遇到了问题或者错误,反馈回来的原始错误信息有可能是不太好阅读的,甚至是压根对不上的错误信息。

除此之外,由于要对接很多国外的系统(国际物流商),这些系统返回的错误信息还有一些语言上的差异,例如说德国的物流渠道会返回的错误是德语,法货的物流渠道返回的错误是法语,即使是比较通用的英语,有一些错误信息还是需要借助翻译工具才能理解其中的意思。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

DHL Packet返回的错误是德语

基于以上的背景,当我们对接了大量的第三方系统,而第三方系统返回的错误信息可能是千差万别,甚至非常不利于客户理解的时候,我们就需要考虑去对第三方系统返回的错误信息做一个转换处理,这个处理过程我称之为:错误信息转化为友好型提示的过程

一、什么是友好型提示?

当用户在使用系统的过程中,用户并不关心系统背后对接了多少家第三方系统,用户甚至也不担心在使用的过程中遇到报错,用户担心的是报错看不懂,报错有误,这种不确定性会很容易消耗掉用户的耐心,从而让用户对系统产生一些负面的看法

作为一款信息系统的设计者(产品经理),我们都知道系统运行发生错误,提示错误信息是不可避免的。但是我们期待的是,当系统出现了错误时,呈现给用户看到的东西是“友好型的提示”,也就是让用户容易理解,最好是能能让用户自主排查问题、自行解决问题的一种提示。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

友好型提示案例1

如上图所示,我在刊登产品到Shopify的时候报错了,系统告诉了我错误原因是“Unavaliable Shop”,同时还告诉了我解决方案,是因为我的店铺不可用,需要重新授权,点击就可以查看具体的授权操作帮助指引。

这种错误提示对用户来说就是“友好型提示”,除了告诉我出错了,还告诉了我错误原因是啥,我应该怎么去解决这个错误。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

友好型提示案例2

上面这张图反馈的也算是“友好型提示”,先告诉了我遇到了错误,同时也告诉了我错误原因是“account numer must be of the legth 14”,所以我要做的就是查看我的account number是否有超长。

并不是说“友好型提示”就一定要翻译成中文或者一定要带上解决方案,只要能让用户快速知道问题所在,并知道怎么解决这个问题,那么这种错误提示都可以称之为“友好型提示”

二、错误信息如何转化为友好型提示?

当我们请求第三方系统的时候,从结果上来看,要么是成功的,要么是失败的。如果只看失败的情况下,失败的提示也就分成两种,要么是能看得懂的(友好型),要么是看不太懂的(非友好型)。

所以,当我们讨论怎么将错误信息转化为友好型提示时,其实前提是将“非友好型”的错误信息转化为“友好型”的提示。因为,有一些第三方系统是会对错误信息处理好后才抛给请求方,这样的错误信息一般情况下都是友好型的,而有一些第三方系统则是因为种种原因,所以就直接将非友好型的错误信息回传给请求方了。

如果第三方回传的是友好型提示,那么后端接收到了错误信息之后,无需处理,直接传给前端去展示对应的错误即可;如果第三方回传的是非友好型提示,那么后端接收到了之后就需要额外处理、转化加工之后再传给前端,去展示处理后的友好型提示。

那么,后端怎么判断第三方系统返回的错误信息是友好型提示还是非友好型呢?

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

错误信息转化为友好型提示的示意图

最简单的办法就是在“错误信息”和“友好型提示”之间,加上一个过滤器,也称之为处理规则或映射机制

当系统接收到了第三方返回的错误信息之后,将错误信息推给处理规则,如果命中了处理规则,则返回处理后的数据,即友好型提示;如果没有命中规则,则返回原始的错误信息。

系统增加一个“处理规则”的维护模块,可以手动创建多个处理规则,然后所有的错误信息进入系统之后,都去轮询跑所有的处理规则,看是否命中了对应的规则,如果命中了则按规则的配置进行处理,如果没有命中在,则循环下一个规则,直到所有的规则都循环处理完成。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

处理规则其实也很简单,分成三部分,一个是规则基础信息,一个是规则的匹配逻辑,另一个就是处理后的友好型提示。

基础信息模块,可以定义规则的名称,规则适用于什么第三方物流服务商,以及规则的优先级等,下图的示意图没有设置优先级,是以对接的物流服务来举例的,大家实际在设计的时候可以灵活的调整。

规则的匹配逻辑模块,可以被匹配的原始错误数据有两类,一个是错误码,一个是错误信息,而匹配的方式有三种,所以组合之后一共是最多6种匹配逻辑,这些匹配逻辑可以采用或的关系,也可以采用且的关系。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

举个例子,如果某第三方物流商的错误码和错误信息如下图所示,当系统需要创建处理规则来匹配其返回的错误码或者错误信息的时候,可以有很多种配置方式。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

第三方错误码示意图

针对错误码设置匹配逻辑,可以有“完全匹配”,“模糊匹配”,“正则匹配”,如下图所示:

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

如果是针对错误信息设置匹配逻辑,可以有“完全匹配”,“模糊匹配”,“正则匹配”,如下图所示:

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

除此之外,还可以设置多条匹配规则,然后采用且或者或的关系进行组合,有非常多的组合方式,很是灵活。

处理后的友好型提示模块,必须要填写的内容是“友好型提示”,而“解决方案”是非必填的。当第三方原始的错误信息匹配了该条处理规则之后,系统会将“友好型提示”和“解决方案”的内容传给用户展示。这样用户就可以看到处理后的提示,能更容易理解遇到了什么问题,将要怎么处理。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

同时也要注意一下,为了带来更好的体验,“解决方案”这个字段还可以支持维护超链接的文字,这样用户还可以直接点击就跳转到对应的帮助手册中。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

用户在前端界面看到的友好型提示

三、一些设计背后的思考

截止到写这篇文章之前,我陆续做过2次的错误码映射转化的需求,但是之前的方案感觉建模的过程搞混了,所以有一些逻辑没有想清楚,就总觉得这个方案不太好,是不是还有什么更优解之类的。

当时设计方案的时候,一直把焦点放在了历史的错误信息上。期望的是当一个新的错误信息进来后,先在历史的错误信息池中找一遍,看是否能找到对应的错误,也就意味着这个错误曾经发生过,然后把之前的错误信息对应的处理方式赋值给新的错误信息,相当于就直接得出了这条新错误的处理方式。

但是实际上,这样的设计就是因为建模对象搞错了,把重心放在了错误信息池上,每次进来的新错误都要插入到错误信息池中,同时还要标记上对应的处理规则,而这个处理规则是从历史的错误信息的处理规则复制过来的。这样就会导致每次去匹配历史的错误信息都要花费很多时间,因为错误信息池肯定是会无限膨胀,逐步增加的。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

当我为了写这一篇文章,重新去对这些业务对象梳理、建模之后,发现只要把建模的核心放在处理规则上,其实这个事情就没有想象中的复杂。因为处理规则是少量的,是可控,也是相对来说固定的,只要预设好处理规则,把它当做一个管道,原始错误进入管道,能处理的就会变成友好型提示,不能处理的就会用原始错误信息展示。只需要不断地对这个管道升级和维护,未来它能处理的消息数量、类型、种类等都会随之提升。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

在此,我分享一个之前看到的聚水潭ERP的处理方式,当时单看这张图的时候,我也想了挺久也搞不明白,但是结合我上面的分析之后,我发现看懂这张图就不难了。

B端产品经理必知:如何将第三方错误信息转化为友好型提示?

聚水潭ERP apiErrorMapping

四、总结

刚好最近在体验ERP的刊登功能,就发现了原来除了物流系统之外,其实很多系统都会需要与第三方系统对接,而且都会遇到这种错误信息不利于用户理解的场景,所以设计一套错误信息的转化规则还是挺有价值的。适用于不同的行业,也适用于不同的系统,学会之后可复用性很高。

我在写这篇文章的时候,在网上找了一下,发现几乎没有看到什么相关的问题,我猜测一方面是因为产品经理可能没有意识到这些错误信息对用户来说体验可能不太好,或者意识到了但是不太懂技术也不知道这个东西还可以优化;还有一方面就是来自第三方的错误信息实在是太多了,这个工程量还是蛮大的,综合考虑来看,这些优先级可能会排的比较后;还是就是写这种细节类、实操类总结文章太费时间,而且不是大家爱看的选题……

在我日常的调研和体验多个SaaS/B端系统的过程中,我发现只有一些比较知名或者说重视用户体验的产品才会在这一块投入较多的资源去优化解决,其他同类型的竞品做了类似的优化的比较少见。

对于跨境电商领域的SaaS产品来说,这一块的优化尤为重要,尤其是SaaS ERP。毕竟一款成熟的ERP对接的第三方系统实在是太多了,很难保证诸多第三方的API体验在及格线之上,既然如此,那还是选择自己去做兜底的事情吧!

希望我的一些小小的思考能够帮助大家,给大家一些启发,如果你们有更好的解决方案的话,也欢迎留言与我交流。

为我投票

我在参加人人都是产品经理2022年度作者评选,希望喜欢我的文章的朋友都能来支持我一下~

点击下方链接进入我的个人参选页面,点击红心即可为我投票。

每人每天最多可投35票,投票即可获得抽奖机会,抽取书籍、人人都是产品经理纪念周边和起点课堂会员等好礼哦!

投票传送门:https://996.pm/7V69p

专栏作家

我叫维他命(Vitamin),微信公众号:PM维他命,人人都是产品经理专栏作家。前PHPer,做过在线教育类产品,也做过5年多的跨境供应链方向的产品,现任某跨境电商ERP的产品负责人。主要专注于WMS/OMS/TMS/BMS/ERP等领域,分享跨境和供应链相关的产品知识。

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

题图来自Unsplash,基于 CC0 协议。

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。