Open #1 的价值 - PostHog

我们非常激动地宣布我们自己的播客第一集!受到 Basecamp 的 rework.fm 和 WordPress 的 Distributed 的启发,valueinopen.fm 是 Meilisearch 的姊妹项目,旨在作为一个独立但价值观一致的实体运作。
在这个播客中,我们采访了开源公司 (COSS) 的创始人。在开源领域,围绕金钱存在很多污名。“商业化”对许多人来说听起来像是一个肮脏的词,有时甚至被视为与开放性的对立面。与此同时,我们的社区充斥着倦怠和流失。无数支撑着数十亿美元企业的项目都是由志愿者在业余时间运营的。
新一代开源开发者正试图将他们的开放价值观与可持续的商业实践相结合,以追求长期稳定和创造者获得公平份额的生态系统。这些人是我们将会与之交谈的对象。
本着开源的精神,我们在一切都完善和理清之前就发布了这些剧集。对于您可能对制作质量、提出的问题或一般内容提出的任何意见,我们将不胜感激。请随时联系我们。
第一集 - PostHog
[
PostHog - James Hawkins
快速轻松地免费收听 Open 中的价值!
Open 中的价值
](https://player.captivate.fm/episode/e4572233-5e90-4783-a0cc-778237b3ac2f)
非常感谢 Jakob Terjesønn Rypdal 创作了精彩的片头曲!
文字稿
Erlend: James,非常感谢您今天加入我。
James: 是的,谢谢邀请。
Erlend: 您和您的联合创始人 Tim 最近共同撰写了一篇长篇博客文章,内容是为您的开源创业公司获得 300 万美元的融资。您能否非常简要地介绍一下您在那里宣布的内容以及您公司最近发生的事情?
James: 当然。我们是 PostHog,我们提供开源产品分析。我们从去年 8 月开始合作,经历了几次转型。我们参加了今年 1 月、2 月、3 月的 Y Combinator 批次。我们从 1 月份从头开始,2 月份发布,并在 4 月/5 月开始进行种子轮融资。
我们刚刚宣布我们已经筹集了大约 300 万美元。因此,从一无所有到达到这个目标,这是一个非常快的转变。那真是一个令人兴奋的时刻,因为我们基本上能够增加我们的工程团队。
Erlend: 让我们回到过去,看看是什么样的旅程促成了这一切。您在您的网站上有一个有趣的小提示,在早期,您甚至有过作为职业自行车手的职业生涯,或者至少是尝试?
James: 是的,我花了 10 年时间,大约从 15 岁到 25 岁左右,一直做到大学毕业后的一段时间,一直在参加比赛。我住在英国,但我们过去每年夏天都会去比利时几个月,我们五个人会住在农舍里,通常没有自来水,生活条件非常糟糕,都在努力赢得比赛。
唯一的生存方式就是努力赢钱。好消息是在比利时,自行车比赛非常受欢迎。进入前 50 名通常就足以赚到一些钱。这不是赢得多少的问题,而只是努力维持生计。但是,是的,我做了很长时间。
然后我经历了几次非常严重的撞车事故,心想我可能应该找一份正经工作。但这很酷,这是一种有点奇怪的风格。
Erlend: 后来这最终变成了科技和互联网业务的职业生涯。您的第一份工作是您进入的公司还是您自己启动的公司,也就是您最初合作的这家营销公司?
James: 我过去常常在晚上做一些网站开发的工作,以赚取更多现金。当你在一整天的自行车骑行后坐下来时,这是一件不错的事情。我最终启动了一家公司。它归其他人所有,但对我来说,这有点有趣,因为我可以做任何我想做的事。
我们做的是潜在客户开发。因此,我们会找到想要在网上购买东西的房主,通常是大型家居装修或太阳能电池板。很多可再生能源产品。访客会通过我们的网站进来。他们会与我们预约,我们会解释融资等一切运作方式。
然后,如果他们想继续,我们会将他们与覆盖当地地区的安装人员联系起来。我们会通过电话将他们转给安装人员,安装人员会安排预约并外出开会。我们按公寓收费。它增长得非常快。
这就是我们开始进行分析的地方。转化率真的非常非常重要。我们有很多算法来决定如何给人们打电话。所以有人在您的网站上进行咨询;背后有很多科学原理来决定最终如何给他们打电话。所以我们对此非常感兴趣。我们有一个开源拨号器,我们对其进行了大量修改,以尝试找出下一个最佳呼叫对象。那是我第一次大量使用开源的东西。
但是,是的,我一直对分析很感兴趣,因为我有点商业头脑,而且技术也很强。这是一个非常有趣的工作场所,但这并不是我们认为我们可以在某个时候真正做大的事情。所以我们最终决定继续前进。
Erlend: 您当时对您正在使用的这些开源项目有什么印象?例如,您是否好奇它们是如何产生的以及如何维护的?
James: 我认为我当时对开源的认识还不够。所以对我们来说,它更像是我们最终 fork 出来并把自己所有这些奇怪的修改都放进去的东西,仅仅是为了我们自己的自托管的东西。我们使用了 CodeIgniter,这是一个旧的 PHP 框架,来构建我们所有的数据处理内容。
但是再说一次,我没有养成做 pull request 并贡献代码的习惯。事后看来,这绝对是我应该做的。因为它本可以帮助我成为一名更好的开发人员,以概括我们正在构建的用例,并且代码质量可能会更高。
所以我认为如果我早点意识到这一点,我会学到更多,但我当时就是没有。那是我第一次真正意义上的编程,所以我可能有点天真。
Erlend: 那么最后,关于您的第一个创业项目,启动部分,这到底意味着什么?您是否在构建这项业务的同时,靠其他工作来养活自己?
James: 是的。我们一开始完全没有收入。拥有它的人很乐意支付我当时的工资。我想是因为我当时还很年轻,所以不太贵。我们最终实现了每年约 500 万美元的收入,团队约有 50 人。所以它增长得非常快,但这真的是一种平衡。在发票和从客户那里收钱等方面承受着很大的压力,以便支付我们的广告费用。因为我们花了很多钱在广告词、Facebook 广告以及所有此类东西上。
实际上,大部分压力都来自那里。我认为我们过度关注了那个领域。我们正在与许多经常迟付款的小企业打交道。有时他们会陷入财务困境。他们通常依靠我们来帮助他们产生收入。
因此,会产生讨厌的副作用,例如,一家企业的所有销售额都来自我们提供的潜在客户,但如果他们有点落后,我们不能 просто 切断他们,因为这可能会扼杀这家公司。然后他们永远不会支付账单。而且这对他们来说也很可悲。
因此,我们最终陷入了这种奇怪的平衡,即试图收取所有这些钱并按时付款,以便能够增加我们在所有营销方面的支出。因此,财务方面可能是整个事情中最有压力的方面。它的好处是,它迫使我们找到了产品市场契合度。
它迫使我们非常迅速地建立一家真正的企业。我认为,缺点是那些相当短期的难题,例如向人们追讨欠款,真的让我们分心。因此,这使得我们更难真正专注于技术。我们可以用它做更多的事情。
Erlend: 因此,您最终转到另一家名为 Arachnys 的公司,在那里您遇到了您现在的联合创始人 Tim。您能否简要介绍一下这是如何实现的?你们两人是如何在这家公司认识并开始讨论新的创业项目的?
James: 我想我最终转到 Arachnys 的真正原因是,这只是一家非常专业的公司,里面充满了非常聪明的人。当我遇到他们时,这很明显。所以我想去那里只是为了在再次做自己的事情之前获得更多经验。
我认为创始人看起来非常非常聪明。我与他相处得非常好,他最终成为了我们 PostHog 的投资者之一,这真的很好。
Tim,我过去...我本应负责我们的营销,因为我之前一直在经营一家大型在线营销公司,负责战术方面的工作。我最终在那里负责我们的销售团队,从事企业销售和 SAAS。我们过去常常向大型银行销售合规软件。Tim 过去负责研发部门。因此,他会构建新功能的原型。
通常 Tim 会构建新功能,我会带到与银行中真正重要的人物举行的重要高管会议上展示,嘿,这就是我们认为该软件的未来发展方向。您有什么反馈吗?您是否想再花一百万美元与我们合作,以便我们为您将此产品化?
所以我们两个人一起工作,虽然不是很密集,但我们肯定一起参加了很多客户会议等等。这就是我们认识彼此的方式。从我的角度来看,Tim 在工程方面非常强大,而且速度非常快。真的知道自己在做什么。
Erlend: 您是如何认识到这一点的?您在他身上看到了什么,使您清楚地认识到他是一位非常强大的工程师?
James: 速度之快,非常明显。就像你可以说,嘿,我们从客户那里得到了这个很酷的想法。第二天,就会有我可以走进并向他们现场演示的东西。因此,这种速度非常重要。
我们的第一个大型企业客户是一家非常大型的一级银行。当时的合同大约是每年 70 万美元左右。我们赢得了合同。他们曾与另一家供应商合作。我们坚持不懈。我们一直在努力说,嘿,我们认为我们是一个更好的解决方案。另一家供应商未能交付。然后我们在 48 小时内交付了另一家供应商一年多未能做到的事情。
Tim 总是很擅长在您真的需要在当天完成某件事时做到这一点。这就是他的工作真正让我印象深刻的地方。
Erlend: 嗯。所以你们两个人开始考虑一起创业。你们早期的对话是什么样的?主要是,我们想一起创业,还是有什么其他想法?
James: So Tim 在其他地方找到了一份工作。听到这个消息大约五分钟后,我就想,伙计,我需要去和他谈谈。我开始感觉到,作为销售主管,一旦我们超越某个点,就会有人比我更适合我的工作。
所以我一直在想,也许我应该去做那个创业想法。这时,我有一些想法可以尝试。Tim 辞职了,这就像,好吧,好吧。我想我需要继续做这件事了。因此,当我得知他在其他地方找到工作后,我想,嘿,我请他喝杯啤酒,然后我们去谈谈我想到的一些随机想法。
这就是我们开始的方式。我最终在几周后离开了,然后我们开始构建我们的软件,与用户交谈,并尝试获得 traction,在那之后很长一段时间。
Erlend: 而你们最初想要创办的公司与你们现在向世界展示的公司截然不同。您追求的第一个想法是什么?后来如何演变成转型?
James: 实际上有两个想法。我只写了一个。这有点太多了,有点令人困惑,但是,好吧,让我们试试。因此,我们尝试的第一件事是:我过去常常管理一个销售团队,我只是从认识许多其他销售主管那里感觉,人们并没有使用太多数据来驱动他们对团队的管理。
因此,他们通常会有一个预测,您会列出每个应该成交的交易。但问题是,每个人都专注于应该成交的东西,而这有点不相关。就像如果您总体上有足够的 pipeline,而不仅仅是非常后期的交易,并且您朝着这个目标努力。即使有些东西掉出来,您也会没事的。因此,我们构建了一个工具,可以帮助销售经理与团队进行一对一会议,它将使用预测分析,与 Salesforce 集成以突出显示交易。即使是那些非常早期且没有取得任何进展的交易,从统计学上看,这些交易看起来也很可能会失败,它也会说:“嘿,这笔早期交易;我们认为它会失败”。
因此,我们构建了它。我们在与潜在用户沟通方面做得不太好。就像我们与很多人交谈过,但是有一本非常好的书叫做《妈妈测试》。我不知道您是否看过这本书,
Erlend: 是的,我很熟悉。
James: 这本书的前提是,不要与您的用户进行假设性谈话。如果他们实际上没有采取任何措施来尝试解决该问题,他们可能不太可能愿意花钱购买软件来解决该问题。
我们在这方面做得不好。我们更像是,嘿,您会为一款工具付费吗?这款工具可以帮助您判断要谈论哪些交易,这样您就可以从与人们的管理时间中获得更多收益。我们非常快速地构建了它。我们发布了它,我们将其发送给了 15 位友好的销售主管或销售副总裁,我通过网络认识了他们。
我认为最终结果是,其中一个人点击了链接,并迅速使用了一周,然后就停止了。很明显,我们当时遇到了问题。
Erlend: 在这个时候,您还没有申请 Y Combinator 或任何类似的东西。这只是第一次试运行,让我们看看我们是否可以构建一款产品和一家公司。第一次尝试并没有完全成功。现在您转向了另一个想法。在这个时候,您已经在考虑,我们也想尝试为这个项目获得资金。
James: 是的,我们一开始认为我们将进行 bootstrap,我们只是默认这样做。因此,我们认为,好吧,我们已经节省了一年的钱,或者无论从长时间工作以来节省了多少钱。因此,我们认为我们可以给它 12 个月的时间,然后看看我们能做到什么程度。
如果失败了,我们就不得不再次找工作。因此,我们从 bootstrap 开始。当我们做 SAAS 时,这可能很有帮助,因为它鼓励我们与人们谈论金钱。因此,人们会很快为东西付费。
最终,我们尝试了另一个关于解决技术债务的想法。
两秒钟的总结是,我们构建了一个小调查,可以与您的 Git 仓库集成。当我们的工程团队变得更大时,我们看到了这方面的一些挑战,我们从其他工程朋友那里听到了很多关于这方面的信息。我们开始注册大量工程师。我们获得了数百名用户,但我们只是觉得我们并没有真正正确地解决问题。
大约在这个时候,我们申请了 Y Combinator。我们决定改变方向的原因是,我们回顾了我们职业生涯中的选择。我们倾向于尝试做一些真正大的事情并做出重大改变。我们认为 VC 会让我们更快地做到这一点。我认为通过 bootstrap,我们可能可以,我认为我们可以成功地支付自己的工资并建立一些东西,可以说更可持续。
但感觉我们很可能会花费五年时间才能回到我们已经拥有的那种收入水平,因为我们已经有了相当好的工作,因此开始感觉这会一路走来压力更大。而且一路走来,我们将赚更少的钱。因此,这将非常痛苦、压力大且速度较慢。
我只是开始想,好吧,我可以在两年后看到,我们可能会开始为动力而挣扎,或者跟不上节奏,因为我们都喜欢快速做事。所以,是的,这有点像我们进行的对话,然后我们就这样,我们只是觉得在 VC 方面,我们可以非常快速地完成这一切。
有如此多的融资可用,或者至少在 COVID 之前是这样。因此,我们认为,为什么不呢?让我们采取更大的登月计划,看看我们是否可以成功,因为无论哪种方式,结果都将是相同的,例如,如果我们在这两种情况下都失败了,我们最终将不得不找到合适的工作。
这就是我们早期进行的对话,我们在考虑转换。
Erlend: 是的。在您向 Y Combinator 提交的申请中,要点是什么?因为您在博客上将其描述为可能不是最强的申请。但它一定非常强大,因为它成功了!但您当时并没有这种感觉?
James: 是的,对于 Tim 和我来说,YC 周围有一种光环,因为我们都是狂热的粉丝。我们阅读了大量的工程博客,并且一直感觉进入 YC 是一件神秘的、不可能的事情。我们两人以前都没有筹集过资金。
所以我们想,好吧,也许我们需要建立人脉并尝试通过努力打拼进入,或者类似的事情。如果我们不做这些事情,我们就无法进入。但实际上,我们基本上只是按照说明进行操作。我认为如果您正在收听,并且您认为自己适合 Y Combinator,那么您可以 просто 按照申请流程进行操作。
最初,我们写了一份非常长的申请书,花费了太多的文字,描述了我们所做的事情,并试图过于复杂和聪明。那是前一天晚上 10 点左右,我们坐在那里,只是觉得,这份申请书不太好。
因此,我们删除了它,从头开始,并在大约 25 分钟内重写了整个内容。它的要点基本上是:我们已经取得了很多成就;我们非常迅速地获得了大量用户。这就是我们认为我们可以解决这个问题的方式。这就是为什么这是一个大问题。这是一个我们以前见过的问题。
我们只是让它非常简单。我还分享了一些创始人发送给我的申请书。
Erlend: 所以您进入了 Y Combinator,您和 Tim 也搬到了旧金山。您似乎进入了他们进行的 YC 冲刺。但听起来在这次旅程中并没有走太远,您就意识到这不是您应该构建的产品。
James: 是的。因此,我认为一旦我们进入 YC,我们一直非常有纪律地尝试每周取得重大进展,因为我们有点知道您的规模有多大并不重要。重要的是您前进的方向和进展速度。因此,当我们进入 YC 时,我们真的非常重视每周取得进展,只是感觉压力更大了。
我们也更加关注业务,因为在项目开始时,我认为 Michael Siegel 说,嘿,这给您提供了一个在社交上可以接受的借口来照顾自己、锻炼身体和工作,而没有其他事情,这正是发生的事情。因此,我们 просто 开始工作。这对于我们两个人来说都是一生中最有效率的时期。
我认为我们很快就开始意识到我们并没有很好地解决这个问题。我们亲自会见了许多工程主管,讨论我们正在做的事情。我们与现有用户进行了交谈,但我们 просто 意识到我们并没有很好地解决问题。
Tim 和我也都觉得我们并不是真正适合我们试图解决的问题的创始人。我们都非常喜欢增长营销分析与技术内容的结合。并且一路走来,我们对我们在产品分析方面的经验感到沮丧。合伙人说,嘿,感觉您应该转换方向。所以我们就这样做了。
Erlend: 方向的改变似乎与您走开源路线相吻合。那么是什么促成了这一点?据我所知,您与一些创建了其他成功的开源公司的人进行了交谈。因此,我非常好奇这些对话是什么样的。特别是,您从那里学到了什么让您觉得,好吧,我们将使这成为一款开源产品,并以此为基础开展业务。
James: PostHog 成立的部分原因是,我们只是不想将大量用户数据发送给第三方;我们觉得这有点侵犯隐私。
然后,还有一些我们希望作为工程师构建到我们的分析中的宠物功能。所以我们有点在想,好吧,我们如何才能将产品分析定位在工程师身上,使其对他们有用?我并没有真正考虑那些通常使用这些工具的产品经理。
我们想,好吧,我们如何让您自托管它?我们必须让您访问源代码,以便您可以安装它等等。所以我们不妨将其开源。然后我们开始对许可感到非常紧张,并开始阅读 Elastic、MongoDB 等的许可。
我们开始变得莫名其妙地偏执,我们会落伍或什么的。因此,我们与 YC 的合伙人进行了交谈,他们有点说,我们不知道,去与一群开源创始人交谈。我们 просто 征求了他们的建议,他们几乎普遍都非常友好。我想,大约在一周之内,只是为了了解我们在做什么。
我们与 Mattermost 的创始人 Ian Tien 会面。这非常有帮助。他在电话里和我们聊了一个小时左右。然后他碰巧做了一个演讲,我们去听了。GitLab 也非常有帮助。我们与联合创始人 Sid 进行了一些电子邮件交流。而且,由于 GitLab 透明地记录了一切,因此很容易理解它们是如何工作的。Sentry 也很有帮助。
当我们实际上在考虑转型时,我遇到了 David Kramer。我想,我们为技术债务构建了这个东西,您怎么看?您可以看出他不在乎。所以我说,还有另一个想法:您有像大型、复杂的自托管产品分析这样的东西吗?然后我们 просто 开始讨论它。
大约有三四个这样的创始人 просто 告诉我们该怎么做。前提基本上是,不要太担心许可,只需发布它,看看是否有人在意。只需确保您正确记录内容即可。不要试图从开源的个人工程师那里赚钱。
只需免费提供给人们,您就会收到来自大公司的 inbound 兴趣。所以我们完全按照那样做了。
Erlend: 所以建议本质上是。不要太担心许可。只需将其公开,获得用户,您就可以稍后担心保护自己。
James: 是的。如果您有一个由数千人组成的社区,那么更改许可将引起争议。但是,如果您刚刚开始,我的意思是,我们查看了主要的现有模型,例如,开放核心、托管与自托管收费或基于服务的类型。
我们排除了服务,因为我们 просто 觉得,我们 просто 觉得它没有得到充分利用。就像您总是必须关注利润率,而且这将是人力密集型的。我们确实提供服务,但基本上是为了让我们能够学习新的功能,这些功能可以自动化很多工作。
我们 просто 决定,我们的很多好处在于,如果您是一家非常大的公司,或者如果您更注重隐私,那么我们允许您不将用户数据发送给第三方。因此,出于这个原因,我们 просто 觉得酷开放核心对我们来说很有意义。
因此,我们将从开放核心开始,并且现在将构建一个 MIT 许可的产品,完全免费。这就是我们想要尝试发布的所有内容。我们不会尝试为非常大的客户构建具有更好功能的产品的付费版本。您必须成功,别人才会费心复制您,而且您在刚开始时并不成功。
出于同样的原因,您可能更喜欢喝可口可乐,而不是来自您当地超市的可口可乐,我们 просто 觉得您不会通过跟随而获胜。所以,是的。我们 просто 发布了,不再担心它。然后,这 просто 给我们提供了足够的反馈,让我们能够学习接下来要构建什么。
Erlend: 那么,将开源,尤其是自托管,称为 PostHog 相比于竞争对手的主要差异化因素,这样说是否公平?听起来这像是你们的首要任务。其他的那些,只是将你的数据发送到你无法控制的某个服务器上,而使用 PostHog,客户将对数据有更多的控制权。
而开源本质上是一种非常标准化的、广为人知的方式,可以让用户更好地控制他们的软件。
James: 是的。我们早期对此有两个假设,正是因为,就像你想要控制你的数据一样。我们想象那些想要控制用户数据的大公司。我的意思是,有很多开发者也想要这样,在小公司里可能不太在意,但个人开发者真的很在意,因为展示数据通常被认为是不对的。
所以我们当时的想法是,这将为我们带来足够多关心这个问题的人,然后我们认为可以从那里发展起来。我们相信的另一件事是,如果你正在跟踪某人网站或应用程序中发生的所有事件数据,并且如果你提供托管服务,你将积累所有这些数据,这将花费你一大笔钱。
这是一个托管服务,所以你必须根据他们的使用量来收取一些代理费,也就是用户量、事件量或任何问题。有些用户真的很有价值,而另一些则不然。所以如果你在 B2B 领域销售,比如你用于工资单的会计软件,你知道,你可能会为这个应用程序每年收取 5 万美元,然后只有几个用户,但如果你是 B2C,你知道,你是 Pinterest 或其他类似的公司,每个用户的边际价值会非常低,但用户量却很大。
所以我们相信,当你的使用规模超过一定程度时,基于用户数量的定价模型在某个时候会变得非常没有吸引力,因为你必须尝试赚钱,而且你还在猜测托管成本到底是多少。
所以我们只是觉得,如果我们的客户规模很大,我们可以更站在他们这边。我们和一些给我们的仓库点赞的人聊过。如果他们在酷公司工作,我通常会尝试请他们喝咖啡,只是为了了解,嘿,你们现在是怎么考虑这个问题的。
我们了解到,真正的大公司经常会为这些东西自建堆栈。所以我们认为,嘿,PostHog 是很多自建工作的替代方案。最终,当我们变得更具可扩展性等等的时候,总有一天会实现。
Erlend: 是的,我也写过一些关于这个的文章。自托管也为你的业务和定价方式建立了这种透明度,因为通过让你的产品如此易于使用且易于他人检查,你实际上也在与自己竞争。
James: 是的,我认为对于开源来说,它更容易快速获得大量用户。我认为这可能会使弄清楚如何产生收入变得更具挑战性,也许是因为它最终会来得晚一些。
所以,这确实是需要解决的缺点之一。但我们正在做的一件大事是,我们专注于工程师的采用,而不是产品经理。我们希望帮助工程师自己了解谁在使用他们的东西。所以,如果你要争取工程师,却让非技术人员与他们打交道,我们只是觉得这注定会让人沮丧。所以我们只是试图以非常直接的方式处理这些事情,并给人们选择权。
他们不是一个容易被说服的群体,除非是功能和特性上的优势。这非常清晰明了,这是一种更酷的做生意方式。因为你只是减少了在定价等方面互相扯皮的时间。
Erlend: 那么,你能否再详细说明一下。在那个时候,你们正在朝着更大的融资轮迈进。在那段时间里,就像我认为你们现在仍然是这样,你们非常注重工程,专注于构建社区。那么,在实践中,围绕 PostHog 构建社区是什么样的呢?
James: 是的。基本上,我们尝试做的是,当我们回到 Arachnis 时,当我们卖出第一笔真正大的企业级交易时。我们,公司在照顾他们方面做得非常好,这听起来有点理所当然。但基本上,每次他们提出要求,我们要么给出不做的理由,要么就很快为他们构建出来。
所以我们试图为我们的开源用户提供这种水平的服务。所以如果有人,你知道,足够好地写了一个 issue,获得反馈,提出一个 bug,我们就会很快为他们解决。我们只是反复这样做,因为它向人们表明我们关心我们收到的反馈。
所以这鼓励人们给你更多的反馈或提供更多的功能。我认为保持产品定义合理,以免你被拉向奇怪的方向,或者,你知道,只为某个特定用户进行工程设计,这是一个挑战。我们会尽力询问关于你试图用这个功能解决什么问题的背景信息。
但可能我要说的是,大部分情况下我们会收到随机提出的 bug。这些是很明显的。比如不应该有 bug,我们应该修复它。所以,我们只是非常努力地对所有从最初几周就相信 PostHog 的早期用户做出快速响应。
所以我认为这可能至少帮助我们获得了良好的声誉。这就是我们现在试图投资的方向。这是专注于我们的工程实力。我没有聘请客户成功人员,他们只是升级所有这些案例,而没有真正解决实际问题。所以我们正在努力尽可能多地将工程师与工程师联系起来,这是资本密集型的。
就像我们需要投资才能做到这一点。
Erlend: 是的。在你们的融资博客文章中,你们也提到在 3 月和 4 月期间,大约在那段时间,你们的银行存款已经在增加了。那是种子轮融资进来了,还是早期客户带来的收入,还是……
James: 我只是想解释一下这在实践中可能是什么样的。
基本上,事实证明,你可能会有一些天使投资人,他们可以给你开出较小的支票,并提供大量的建议和帮助以及介绍。他们会一直待在那里,并且对人们,对我们来说仍然非常有用。比如我们会一直问一些随机的问题。这会给你带来一点动力。
但在接近尾声的时候,我们发现这个过程突然加速了。就像突然你收到一个 offer,然后你又收到三四个,如果你设法在几乎同一时间与所有人交谈过。所以这只是为了让人感觉到,嘿,我们正在稳步获得小额支票。
但在接近尾声时,它几乎立即加速了。如果你有幸进入那种境地,那真是太奇怪了。从一直推销到后来不得不对如何完成剩余的融资轮非常挑剔,以免过早出售太多公司股份,这非常奇怪。
Erlend: 那么所有这些投资者。几年前,对于人们来说,对开源公司进行任何投资都可能听起来很奇怪。但是你发现你交谈过的那些人,当你们基本上对他们说,就像,我们只是在制作这个开源产品。我们会让一大群人使用它,然后我们会稍后解决赚钱的问题。基本上你们是这么告诉他们的吗?
James: 是的,情况已经发生了变化。首先,我认为我们在经历那个过程时不太自信。就像如果你通过那种融资过程来筹集资金,它几乎就像获得了关于你的策略的大量咨询,因为你会受到人们的抵制,你会得到很多不同的观点,有些人甚至会直接互相矛盾等等。是的,我们一开始的想法是,好吧,计划是我们会尽快构建一个付费版本,这样我们就可以尝试更好地控制我们的支出等等。这样做感觉很明智。但是,在进行所有这些演讲的过程中,我就想,嗯,这似乎并没有那么吸引人。
然后我们开始谈论我们自己。然后我们开始研究其他真正发展壮大的公司,那些做开源的公司,我们只是觉得,如果我们真的想在这里构建一些大的东西,那么停止将我们所拥有的一切都集中在……,这似乎是不合理的。我以前做过销售,我很乐意给一群人打陌生电话,试图卖出一份合同。但如果我们现在这样做,我们就必须构建产品的付费版本,这意味着我们所有的工程重点都会转移。而且我们将无法像以前那样关注社区,因为我们不可避免地必须构建一个付费产品,这将分散我们的注意力。
然后我们将构建一些明智的东西,但它不是风险投资家想要的那种对更大目标的大胆尝试。而这也正是我们想要尝试用我们在这里的东西做的事情。所以对我们来说,我们只是觉得另一条路线同样可行,但它并没有吸引很多投资者,然后这让我们意识到,也许那实际上不是正确的做法。我们将保持更简单。就像只制作免费版本。很棒。然后从那里开始解决问题。是的,这真的变得柔和了一些。嗯,这也是我们现在真正深信不疑的。
Erlend: 你们获得了大型融资轮。我们现在几乎到了今天。目前公司的基本数据是什么?比如有多少人在那里工作,你们的采用率怎么样?
James: 当然。所以我们现在每天大概有 20 家新公司有机地安装它,这很棒。有些来自我们做过的几篇在网络上流行的博客文章。只是写一些关于我们正在学习的东西。大部分增长来自口碑,这非常酷。
我们看到了很多自然增长。我认为我们现在需要解决的问题是……,当你做产品分析时,你会说,“哦,我们需要跟踪,比如,我们是如何正确增长的?”这有点讽刺。但通常我们没有我们需要用来进行自我跟踪的功能,所以我们必须先构建它们。
所以构建出来,我们一直在尝试构建所有我们实际需要的用来跟踪我们公司增长的东西。所以我们真的在尝试做两件事:我们有产品工作,这些只是我们认为会有帮助的功能,这些功能是我们从用户访谈中了解到的。
所以我们正在尝试将它转变成更像一个产品实验平台,这意味着只是功能标记。所以我们相信,通过将功能标记与产品分析集成,你可以给开发者更多的控制权。比如这里有一些疯狂的功能。因为它很疯狂,所以你可能应该将它部署到 1% 的用户群,然后查看它对你的指标的实际影响。
这就是我们如何给你作为一名工程师更多自主权的方式,这也是为什么这款产品会变得更具吸引力。我们了解到,许多大型科技公司都在内部构建了这个功能。所以我们认为,嘿,我们可以将它产品化。所以我们正在尝试构建更多类似的功能。
所以我们有人专注于此,只是一个小团队。我们目前仍然只有 6 个人。另一方面是,考虑增长工程。所以有点像说,好吧,我们从这些访谈中获得了一些东西,我们正在努力。我们正在考虑的另一部分是,是否有功能可以帮助我们更快地增长?
我们的梦想基本上是,如果一位工程师安装了它,那么不止一位其他工程师会因此而直接加入。因为那样我们最终会获得指数级的增长率。这意味着,好吧,当一位工程师安装它时,你如何让团队的其他成员使用这个工具。所以,我们认为我们会有所帮助的一些产品功能,比如如果你将它用于功能标记,其他工程师真的需要访问它,这可能会很酷。
还有一些功能,比如让人协作处理他们的统计数据,比如标记和分析图表。所以我们将有几个人更专注于为此目的而开发功能。但基本上就是这样。我们没有聘请任何销售人员。
我们不会在营销上花费大量资金。我们真的,真的在努力保持产品驱动,因为它正在获得自然增长。所以如果我们能够顺应这种趋势,如果我们以后花钱,它会更有效。
所以我认为,通过尝试以产品为主导,你可以更加专注,你可以构建一个高标准的产品,因为你不会因为做销售之类的事情而分心,但这会在某个时候造成收入压力。
Erlend: 你们在哪里与用户互动?很自然地有 GitHub。那么你们与用户交流的其他渠道是什么?
James: 这是一个非常好的问题。我不确定我们现在是否做得对。所以 GitHub 是显而易见的。我们在那里收到 issue。我们是远程优先的,所以我们所有的讨论都是公开进行的,我们经常从看到内容的开发者那里获得一些反馈,这让我们了解什么是受欢迎的,什么是不受欢迎的,以及因此我们应该在哪些方面投入更多精力。
我们创建了一个社区 Slack 群组。这对于与人们进行更深入的讨论非常棒。所以如果有人试图调试某些东西,并且他们想分享一些屏幕截图,我们会为那家公司创建一个频道,并邀请他们的几位工程师加入。
这样真的很有帮助。但另一方面是,感觉有点……,理想情况下,我们实际上应该把它做成更像论坛的东西。这样它就可以被索引,并且更容易搜索。我们到目前为止没有这样做,原因是,我个人经常觉得,在论坛上发帖的门槛相当高。如果我是一个新开发者,我会感到紧张,就像,哦,这将在互联网上永远存在。
而不是一些随机的 Slack 消息。所以我们觉得两者之间需要权衡。我很希望有一种东西可以将我们的 Slack 自动转换为论坛。它会像同步它们一样,为了这个原因。因为这可能会真正帮助那些想看到其他人遇到过的问题的人。
所以这是我们需要解决的问题。它有点让我烦恼。我认为我们还没有搞定,但是,到目前为止,Slack 似乎非常有用。
Erlend: 是的。我认为我们很多人都在等待完美的聊天-论坛混合体,它可以轻松地为你提供早期的用户群,这些人只是短暂地交谈在一起,而且风险很低,并且逐渐过渡到一个成熟的论坛,在那里我们可以进行更多异步的交流,然后也可以将内容永久地存储在公共领域。
James: 我希望通用房间基本上就是一个论坛。然后人们必须去消息,进行一对一的交流,如果他们因为某些原因感到不舒服。然后能够将对话转移到公共频道。如果可以的话。所以,是的,梦想在某个圣诞节实现,也许。
Erlend: 是的,是的。我非常好奇你对风险投资在开源领域的看法。我们通过电子邮件简短地讨论过这个问题,我认为你的回答非常有趣。所以我很想听听你对风险投资如何与开源产品互动以及你认为激励措施在哪里对齐的更深入的看法。
James: 是的。所以,我认为,也许没有足够多的人……,我可能会做错,但我的观点基本上是,我认为开源非常适合颠覆许多 SAAS,这应该对风险投资公司具有吸引力。我认为的具体原因是,如果你相信产品增长,比如,是的,如果你看看 Slack 的增长方式,或者任何这些公司,比如那些在产品方面做得非常出色,并且自然而然地从一个用户扩展到多个用户的公司,开源是比这更好的版本。潜在地。
显然,你需要构建一些能够帮助你在这里增长的功能。但是通过开源,你可以进入大型企业的生产环境,而无需任何信息安全,无需供应商风险管理。你知道,如果他们看到 MIT……或者比引入新的 SAAS 提供商要少得多,因为数据保留在你的基础设施上,你可以访问所有代码,所以如果你自己有任何安全担忧,你可以检查它。而且它只是允许更容易地获得更大的公司的采用,同时也对数字开发者更具吸引力。所以它消除了采用过程中的摩擦。所以是的……,它不适用于任何类型的 SAAS。比如如果你是一个 CRM,我可以看到可能不太成功,也许是因为它不是开发者会使用的东西。所以他们不会那么关心做 pull request 或提出 issue。但是如果你正在构建更接近产品的东西,我认为这真的,它就像更具吸引力。
比如如果我是一名工程师,我看到一些开源的东西。我很可能会想安装它。如果我看到一些 SAAS 的东西,我就会想,我们是否需要另一个账号?我将感受到锁定,你知道,它不再是永远免费的了。我只是认为,如果你正在构建一些工程师会使用的东西,并且有一个 SAAS 版本,但没有开源版本,我认为那里有一条非常简单的途径。我认为一些投资者已经开始真正看到这一点,我认为他们的心态几乎就像,如果某些开源的东西变得流行……,比如随便找一个开发者问问他们在用什么开源库。那可能就是我应该投资的。所以有些人绝对是这样想的。
(…)
但肯定有一些投资者只是希望你构建一些被广泛采用并变得非常流行的东西,然后他们相信一切都会水到渠成。所以是的,当我们与人们交谈时,我们发现他们对这些东西的看法非常两极分化。
Erlend: 而且,你对风险投资的压力感觉如何?存在着以某种方式做大和实现那种类型的退出的期望。你对此感觉如何,这与日常产品开发有何关系?
James: 这很有道理。我确信有一些风险投资公司可能很难合作。但我们的经验是,他们非常友好。我们只是没有遇到我们期望的刻板印象,从网上读到的那样,比如人们给了我们关于他们是否会投资的良好反馈。
他们很乐于助人。他们很友善。他们发送友好的 WhatsApp 消息。所以我认为风险投资的压力可能发生在真空中。就像如果你没有主见,当你进入时,你最终可能会接受他们的意见,从而影响你的决策。所以,就像,我认为当我们更早的时候,当我们开始做最初的几次演讲时,我们没有那么强烈的观点。
就像我们没有充分考虑策略,我们没有足够强烈地知道我们在做什么,但这迫使我们有了更清晰的图景。所以在接近尾声的时候,就像这笔钱都不会花在销售团队上。它将用于工程和产品以及产品设计。
我们将遵循产品主导的增长。我们不会向个人开发者等用户收费。我们将专注于免费产品。现在它与构建一个酷社区完全一致。
我们知道,在稍后阶段,比如 B 轮或 C 轮,可能会有更大的收入压力。所以我们将不得不解决这个问题。但在早期,我认为如果你真的有主见,并且你真正相信那是构建伟大产品的最佳方式,那么你就站在他们一边。所以是的,我几乎会争辩说,在 SAAS 中,与开源相比,激励措施更远离用户的角度。所以对于开源来说,即使我们出了问题,比如仓库将永远存在。所以,从这个意义上说,它稍微好一点。如果在早期阶段,我认为这可能就是为什么当你在早期阶段时,有些人会采用开源库。而对于 SAAS,你会想,哦,如果这项服务在六个月后消失了,或者我们陷入困境。
所以,是的,我只是没有像你可能从网上读到的那样强烈地感受到这种压力。
Erlend: 你现在与开源的关系是什么?就像你有点从外部进入它,只是像许多开发者一样,把它当作一种不错的免费福利来涉猎。到突然完全投入其中,成为一家开放核心的公司。你现在与开源的关系是什么?你觉得自己是运动的一部分吗?你现在是这个群体的一份子吗?
James: 是的,我已经完全爱上它了。就像,我错过了很多。就像它一直都在哪里?它有很多很酷的东西。我绝对不愿意再经营一家非开源公司。
人们真的很友善。他们给你很好的反馈。有时反馈可能相当直率或直接,但如果你正在尝试建立一些需要改进的东西,这正是你需要的。而且你看到了来自非常多元化人群的专业知识。
你知道,无论是通过可访问性,比如我们正在尝试以特定的方式托管它,还是像一个不寻常的用例。而且它使为人们构建有用的东西变得更容易。然后有一种很酷的感觉,就是人们可以完全免费使用它,如果他们负担不起给你钱的话。
所以它感觉更受欢迎,作为一种方法。而且很酷的是,这意味着你可以获得,比如,当我们招聘工程师时,这是一个巨大的优势,我们可以比原本更容易地获得真正优秀的人才,因为他们也想回馈工程师等等。
我认为我错过了更早尝试它的机会。也许我太多疑了。不知道如何围绕它建立一家公司可能是我潜意识里的偏见。
Erlend: 这些天,从你的角度来看,你认为开源的目的是什么,或者主要功能是什么?
James: 好问题。所以,对我来说,它就是控制。就像你不会被锁定在某些东西中。它很强大。它让每个工程师,比如用户,更好地控制他们正在做的事情。比如如果你不喜欢某些东西,你可以改变它。如果你想的话,你可以做一个 pull request 来构建一些扩展。
所以我有点喜欢它给人们带来的自由。这在双方都是如此。当你让工程师在你的仓库上工作,做一些 pull request 来改进某些东西,或者只是提出一个 issue 并说,嘿,如果……,那不是很酷吗?所以你只是从人们那里获得了那种程度的反馈,因为它对人们来说更容易合作。
你只是获得了更多的善意。我认为这源于其中包含更多的自由。
Erlend: 你是否发现你也从你看到的来自外部的活动中获得了动力,比如其他人的能量也给你带来了建设开源的能量。
James: 是的,这真的很酷。因为我们一直都在尝试这样做。就像我们完全投入其中一样。这就是为什么我们有一个透明的手册,所以你可以看到我们的费用政策或者我们如何招聘人员,或者任何详细信息。
所以我们看到很多其他正在运行开源项目的人想知道,嘿,我可以把这个当作全职工作吗?或者也许我陷入困境,就像一家非常早期的初创公司,我正在努力发展。所以,是的,我们开始收到很多人的联系,他们正在努力将很酷的项目推向世界。尝试帮助其他人将更多可以修改的酷技术带入世界真的很有趣。所以是的,我认为这方面尤其令人鼓舞。
Erlend: 对于那些想要创办自己的以开源为中心的公司的人,你建议他们从哪里开始他们的旅程?他们应该从哪里开始阅读?
James: 所以我认为,我认为第一件事是你自己需要有一些痛点。这将使你的生活轻松很多。你可以只是为了它本身而尝试这样做,而你实际上并不知道这个项目会是什么。或者至少你需要有一些你愿意大力测试的随机想法。
如果你感受到了痛点,至少你已经克服了找到一个会使用它的用户的第一个障碍。它需要是你自己会使用的东西。一旦你能弄清楚那可能是什么……,我们只是过去保留一份大的 Google 文档,每次我们对编写软件感到恼火时,我们都会写下一个小小的痛点。所以我们有几页的想法。一旦你找到了一个你真正兴奋于解决的问题,我认为这很关键。如果你不兴奋,这是我们在另一个想法中犯的错误之一。我们只是对它不够兴奋。
你最终会为此做很长时间。你会在午夜起来编写代码来解决这个问题。所以它需要是你真正认为很酷的东西。而且它可以从非常小的规模开始,一旦发生这种情况,你需要一个大致的计划,说明你如何才能不把钱花光。如果你有一份全职工作,你可以在晚上做一些事情,确保你的雇主允许你这样做,这样这项工作就不属于其他人。如果你存了一些钱,比如给自己六个月的时间,尤其是如果你担任工程职位,有很多工作机会。所以如果你想花六个月的时间来尝试让这件事起步。如果出了问题,你之后可能会找到另一份工作。而这样做的好处是,你最终可以全职从事开源工作,这真的很有趣,而且对你的职业生涯来说可能非常棒。
另一种选择是,如果你换工作,你最终可能会找到一份更好的工作。所以,你知道,有时感觉不尝试一下是不理智的。我创建了一个个人预算。我知道我必须在多长时间内完成工作,然后我就非常努力地工作。
我认为找到一位联合创始人非常重要。你自己可以构建一些很酷的东西,但我认为在早期阶段,当你没有任何用户并且开始质疑你在做什么时,你可能会失去理智。所以我认为我们两个人真的很有帮助,比如当我们筹集资金时。基本上,我专门负责筹款,而 Tim 做了其他所有事情:处理整个社区、所有 pull request、所有工程和开发。我们两个人设法完成了这件事。我认为否则我在筹款方面可能会感到沮丧,如果我试图同时做所有其他事情的话。而且你们两个人都有承诺,所以你们都有义务不让对方失望。
然后在资金方面,你需要一定程度的吸引力。如果你构建了一些好的东西,比如把它放在 Hacker News 或其他地方,只是为了看看是否有人在意,并且尽早这样做,而不是在你觉得自己真的准备好了之后再做,因为你最好花四周时间构建错误的东西,而不是花六个月时间构建错误的东西。
我们给自己精确地四周时间,从一无所有到把它放在那里。这给了我们做融资所需的所有增长。所以,你知道,给自己一个窗口期。但不要试图追求完美。它可以非常粗糙,它只需要有一个 readme,一些其他文档,并且它需要解决你的问题,并且不要有可怕的 bug。但有足够的善意,你可能会到达那里。所以你需要一个小的时间段,尽快启动,我认为这可能非常关键。
Erlend: 非常好。好的,最后一个问题。对于哪个闭源应用程序,你真的很想看到一个开源替代品?
James: 好问题。有很多。社区那个是我个人想要的。我不相信你可以围绕我们已经讨论过的东西建立一家非常大的公司,但那是我反复想要的东西。
我真的很想要一些像 Google 文档一样的东西,但可以让你使用 Markdown 工作。并且是开源的,而且非常容易设置和使用。我们仍然在 Google 文档中保留一些东西,这让我很恼火。我希望我可以将它放入我们的 issue 或仓库中的 markdown 文件中。但我喜欢协作。我有时喜欢在线协作。所以一些很酷的方式来做到这一点。
我的建议是看看你作为开发者正在使用的 SAAS 产品,并思考,我是否可以想到一种方法来改进这个功能,并且开源是否会使它更好。
Erlend: 是的,没错。好的,非常感谢你,James。这次谈话非常棒。我祝愿你们的公司未来一切顺利。我确信你们还有一段相当长的旅程要走。这将非常有趣。
James: 酷。慢走。