9 月 15 日,Figma 的 CEO Dylan Field 发布消息:今天,Figma 宣布接受 Adobe 的收购...
Adobe 以约 200 亿美元收购 Figma,这也是 Adobe 该公司在其历史上的最大一笔收购。那是什么样的魔力,让 Figma 被 Adobe 收购呢?下面以定位(用户、产品、市场等)、PLG 增长维度,进行进一步分析和拆解 Figma。
Figma 是由 Dylan Field 和 Evan Wallace 于 2012 年创立的设计在线协同工具。Figma 简化了数千家公司在设计过程中的协同流程,其团队规模在 1200 人左右,目前积累的 400 万用户包括设计师、开发工程师、产品经理等。
正如 Zoom 为远程会议服务,GitHub 为代码管理服务,可以理解为 Figma 为设计协同服务。
Figma 的愿景是:让每个人都可以使用设计。官网原话如下:
make design accessible to everyone.
从愿景看出,用户群体不单单只是设计师,据统计 65% 的 Figma 用户不是设计师。
上一轮融资是 2021 年 6 月,完成 2 亿美元融资后,估值达到 100 亿美元。要知道 2020 年估值是 20 亿美元,其增长简直就是魔力。据三方统计,2020 收入已达 3510 万美元,2021 收入已达 5110 万美元,2022 收入预计 8110 万美元,涨幅在 50% 左右。

下面从定位维度,回答下 Figma 究竟是什么产品?为什么增长如此魔力?
首先据 UXTools 统计:近年来主流 UI 设计工具占比。Figma 在 UI 设计工具上增长超过了其他同类产品。

再从上面的愿景可以看出,用户群体不单单为设计师。官网原话如下:
Figma connects everyone in the design process so teams can deliver better products, faster.
Brainstorm -> Design -> Build
可以理解为:设计工作流程中,从想法构思,到执行过程,再到复盘。几乎所有设计相关工作,都可以在 Figma 完成。整个流程包括了创造环节和迭代环节,然后持续重复:

跟设计相关有不同的用户群体,下面举个常见的:
其特点为实时、共享、协作、可追溯、管理透明。Figma 还自带各种模板,适应不同场景互动会议。只有能力创作,在 Figma 在线白板上无所不能可以适合不同场景。
按场景划分,其划分了两个产品线:FigJam 和 Figma
2021 年全球团队协作软件市场规模为 216.9 亿美元,预计从 2022 年到 2030 年将以 9.5% 的复合年增长率扩大。市场的可喜增长前景可以归功于进化现代工作场所和日益需要整合跨组织团队协作的有效手段。疫情下的封锁和限制迫使全球企业在 2020 年实施远程工作模式,这增加了对用于虚拟通信的团队协作软件的需求。(数据来源:Report ID GVR-2-68038-633-2)
2021 年中国企业团队协同软件市场规模为 3.8 亿美元,同比增长 39.1%。其中,SaaS 模式的企业团队协同软件规模为 1.5 亿美元,同比增长 41.4%。未来,企业团队协同 SaaS 市场的增速要远高于本地部署模式,预计在 2022 年,企业团队协同软件市场规模将达 4.6 亿美元。(数据来源:IDC、中商产业研究院整理)
设计软件行业的市场发展大致如下:

因此,Figma 产品切得定位就是设计协同,设计 + 协同场景 all in one 一体。
从 Figma 官方发布记录(releases.figma.com) 可以看出:
Figma 产品优势可以分为以下几个维度:
在设计的某些深入业务场景中,Figma 支持真的到位。比如 Builder.io 这个插件,可以从任何一个竞品网站 HTML to Figma。如图所示:

这简直是设计师的神器,想到一句话:
Good artists copy, great artists steal. - Jobs
Figma 目前流量情况如下:
(数据来源:similarweb)
Figma 目前流量来源情况如下:

从流量来源来看,直接来源占比最大,其核心原因是 Product-Led Growth(PLG) 增长。其 PLG 关键点在于协同机制,比如设计会议、设计协作、设计项目管理都具备协同效应,一传十、十传百。
那 PLG 的核心是什么?我认为是是相对的,相对于 Marketing-led Growth(MLG)来说, PLG 核心有几点:
根据 PLG 核心,Figma 的 PLG 增长拆解如下:

通过细致体验了下 Figma 产品后,发现 Figma 用户体验做的真是极致:
这里针对 PLG 增长,不要误解:
第一:产品功能
PLG 核心是 P ,即是产品力。
这样,满足了口碑传播。
第二:考虑产品适不适合 PLG 主导
如果适合 PLG 主导,按营销 ROI,那 PLG 增长主导。所以主导只是主导:
这样,同时满足了协同机制传播和推荐机制传播。
第三:PLG 跟免费无关
免费为主,只是某种策略。但商业的价值是成交。完全免费的策略,是不可取的。所以一定要提前考虑好商业化节奏,如何设计?这样趁早才能区分出真正的付费用户群体画像,有利于后续对增长的决策。
因此,PLG 增长主要是为了更好的流量侧增长,也需要 sales 跟进,两条腿走路。在 growth + sales 共进的道路上,才能更好的实现商业化的结果。
本文大致从 Figma 相关的市场维度、用户维度,再到产品维度、最后拆解其流量构成和 PLG 增长去总结。
大致总结分享的一些 PLG 关键点:
最后回到国内,对标 Figma 设计相关协作工具有哪些?如图:

原文链接 https://bysocket.com/figma-plg-saas/
出处:公号「程序员泥瓦匠」
博客: https://bysocket.com/内容涵盖 Java 后端技术、Spring Boot、Spring Cloud、微服务架构、运维开发、系统监控等相关的研究与知识分享。
我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
鉴于我有以下迁移:Sequel.migrationdoupdoalter_table:usersdoadd_column:is_admin,:default=>falseend#SequelrunsaDESCRIBEtablestatement,whenthemodelisloaded.#Atthispoint,itdoesnotknowthatusershaveais_adminflag.#Soitfails.@user=User.find(:email=>"admin@fancy-startup.example")@user.is_admin=true@user.save!ende
给定一个复杂的对象层次结构,幸运的是它不包含循环引用,我如何实现支持各种格式的序列化?我不是来讨论实际实现的。相反,我正在寻找可能会派上用场的设计模式提示。更准确地说:我正在使用Ruby,我想解析XML和JSON数据以构建复杂的对象层次结构。此外,应该可以将该层次结构序列化为JSON、XML和可能的HTML。我可以为此使用Builder模式吗?在任何提到的情况下,我都有某种结构化数据-无论是在内存中还是文本中-我想用它来构建其他东西。我认为将序列化逻辑与实际业务逻辑分开会很好,这样我以后就可以轻松支持多种XML格式。 最佳答案 我最
注意:本文主要掌握DCN自研无线产品的基本配置方法和注意事项,能够进行一般的项目实施、调试与运维AP基本配置命令AP登录用户名和密码均为:adminAP默认IP地址为:192.168.1.10AP默认情况下DHCP开启AP静态地址配置:setmanagementstatic-ip192.168.10.1AP开启/关闭DHCP功能:setmanagementdhcp-statusup/downAP设置默认网关:setstatic-ip-routegeteway192.168.10.254查看AP基本信息:getsystemgetmanagementgetmanaged-apgetrouteAP配
基础版云数据库RDS的产品系列包括基础版、高可用版、集群版、三节点企业版,本文介绍基础版实例的相关信息。RDS基础版实例也称为单机版实例,只有单个数据库节点,计算与存储分离,性价比超高。说明RDS基础版实例只有一个数据库节点,没有备节点作为热备份,因此当该节点意外宕机或者执行重启实例、变更配置、版本升级等任务时,会出现较长时间的不可用。如果业务对数据库的可用性要求较高,不建议使用基础版实例,可选择其他系列(如高可用版),部分基础版实例也支持升级为高可用版。基础版与高可用版的对比拓扑图如下所示。优势 性能由于不提供备节点,主节点不会因为实时的数据库复制而产生额外的性能开销,因此基础版的性能相对于
了解Rails缓存如何工作的人可以真正帮助我。这是嵌套在Rails::Initializer.runblock中的代码:config.after_initializedoSomeClass.const_set'SOME_CONST','SOME_VAL'end现在,如果我运行script/server并发出请求,一切都很好。然而,在我的Rails应用程序的第二个请求中,一切都因单元化常量错误而变得糟糕。在生产模式下,我可以成功发出第二个请求,这意味着常量仍然存在。我已通过将以上内容更改为以下内容来解决问题:config.after_initializedorequire'some_cl
我经常迷上ruby的一件事是递归模式。例如,假设我有一个数组,它可能包含无限深度的数组作为元素。所以,例如:my_array=[1,[2,3,[4,5,[6,7]]]]我想创建一个方法,可以将数组展平为[1,2,3,4,5,6,7]。我知道.flatten可以完成这项工作,但这个问题是作为我经常遇到的递归问题的一个例子-因此我试图找到一个更可重用的解决方案。简而言之-我猜这种事情有一个标准模式,但我想不出任何特别优雅的东西。任何想法表示赞赏 最佳答案 递归是一种方法,它不依赖于语言。您在编写算法时要考虑两种情况:再次调用函数的情
这应该是一个简单的问题,但我找不到任何相关信息。给定一个Ruby中的正则表达式,对于每个匹配项,我需要检索匹配的模式$1、$2,但我还需要匹配位置。我知道=~运算符为我提供了第一个匹配项的位置,而string.scan(/regex/)为我提供了所有匹配模式。如果可能,我需要在同一步骤中获得两个结果。 最佳答案 MatchDatastring.scan(regex)do$1#Patternatfirstposition$2#Patternatsecondposition$~.offset(1)#Startingandendingpo
我想开始使用“Sinatra”框架进行编码,但我找不到该框架的“MVC”模式。是“MVC-Sinatra”模式或框架吗? 最佳答案 您可能想查看Padrino这是一个围绕Sinatra构建的框架,可为您的项目提供更“类似Rails”的感觉,但没有那么多隐藏的魔法。这是使用Sinatra可以做什么的一个很好的例子。虽然如果您需要开始使用这很好,但我个人建议您将它用作学习工具,以对您来说最有意义的方式使用Sinatra构建您自己的应用程序。写一些测试/期望,写一些代码,通过测试-重复:)至于ORM,你还应该结帐Sequel其中(imho