为什么我没有开源我的第二个萨斯

2021-03-12 00:01:41

让我首先说明那里的许多开源项目已经成功展示了开源可以支持业务,我对他们有很大的尊重。我在想像sidekiq,sentry和matomo这样的项目,但有的话。

作为开发人员,我还倾向于访问我依赖的系统的源代码。这样,我可以检查它,甚至在许可证允许时为我的特定需求进行补丁。

我已经学到了很多通过阅读比我更有经验的人写的代码,大多来自像Django,Finatra,Kubernetes等开源项目,或者对少数人作出反应。毋庸置疑,我欠开源社区很多,因为我将永远感激。

那样,我从建立可持续的SaaS服务的角度作为独奏创始人写作这一点。您自己的上下文将影响我的故事是否与您相关。

我想提供多年来继续保持的可靠软件,无论是开源还是封闭来源,免费或支付。但是,我也需要支付账单。理想情况下,我' D自由,开源软件,仍然能够提供居住的地方(慕尼黑的住房已经疯了)。不幸的是生活'没有那么简单,除非由建立的公司或恰好在合适的时间达到正确的地方,否则它似乎没有工作。捐款可以有所帮助,但赔率是我无法通过这种模式支持我的生计,并继续建立和支持项目。

因此,大约三年前,我以为我已经找到了圣杯:我会作为一个开源项目开发SaaS,任何人都可以自主主机,同时提供我可以为客户管理的托管版本。我假设90%的用户只会自我自我托管,但它是一个很好的妥协。所以我走了,并建立了Traduora。

毋庸置疑,我非常天真地认为运行业务与运行开源项目相同。仅仅因为许多人和组织每个月都使用软件,并不意味着您可以自动支持您的生计。

但是,商业模式抛开,主要问题以期待您作为开源维护者的承诺的期望形式。出于某种原因,许多人来到期待开源维护人员在同一时间内提供相同的质量,即公司的整个团队可以免费提供。我了解到,如果他们想贡献代码自己,那么没有任何让人们从GitHub线程上消失得比求追求更快。

在过去的两年里,我正在谈论的这个特殊项目已经下载了超过500万次(Docker Lifls + Github Clones)。虽然这有助于我提高对项目的认识,但它并没有通过(天真地)承担自己的成功商业模式。

然后,我选择基于以下假设的SaaS产品开源开源:

它会降低支持负担,因为人们可以看过去问题,并参加讨论线程。

不幸的是,几乎所有上面的点都是我案件中的错误假设。有时它实际上导致了相反的结果。我赢得了潜入每一点,而是为我创造的主要问题是:作为独奏创始人的运作负担增加。如果我与一支小型团队一起工作,这个故事可能是不同的。

也就是说,有许多人确实为该项目做出了贡献,而且我非常感激。这只是少数群体到目前为止的不幸。

此外,我犯了努力为每个人成为一切。我太专注于开发每个功能,试图为每张票证提供支持,我完全忽略了它的营销方面,因为我没有时间。它还使得了解优先级的问题非常困难,并且哪些问题可能导致更多人支持业务。

不仅如此,而且对那些自主托管的后退兼容性,通过电子邮件和聊天组处理支持请求,为安装它不兼容的平台提供帮助,只是带走了太多时间。我是一个独唱的创始人,穿着所有的帽子,优先考虑我的一切。回顾一下,我问自己:那么怎么工作?

因此,虽然该项目被若干组织使用,但我很快意识到它没有达到账单,因为我正在投入时间。很快我很快就失去了帮助我沿着整个方式推动的东西:我的动力。我知道这个项目在开源前面的相对成功时,我方面需要大规模努力,以便在经营和商业方面转变。然而,没有动机,而不是做的那么容易。火花只是褪色。

我确实学会了很多经验,而且它也是为什么我对那些设法搞定的人有很多欣赏。我曾经读过制作软件只有30%的是制作技术公司的30%,而我无法确认该数字是准确的,而它背后的想法对我而言。

简而言之,就像其他人一样,我在这个世界上只有有限的时间,我也有一个家庭和朋友的生活。多年来,我必须重新评估我愿意分配给每个项目的多少时间和#39;

因此,如果我想为长期这样做,它需要可持续。我确实继续支持我开源的每个项目,但每年将释放频率降低到大约两次。主要例外是安全问题,我确实尽快处理了。

我真的不想成为那个不能依赖的人,但我的生活中有其他事情,就像其他人一样,也不得不为我的健康观看。经营业务,为开源做出贡献,让一切都在最新的M1芯片上运行是有趣的东西,但是与你所爱的人一起生活。

去年我推出了一个新的服务,Panelbear,这是这篇文章的其余部分的内容。简而言之,它'我在去年9月开始的简单性能监测+网站分析SaaS。它完全自筹资金,但这一次,我不会从一开始就打开它。

过去,当它来到作为独奏创始人的业务时,拥有它开源为非常具体的特征请求创造了太多的维护负担。特别是来自非支付用户,有时直接向我发送电子邮件,要求我看待他们的问题,或帮助他们尽快解决问题。

我现在正在尝试另一种方法,到目前为止,在我的情况下它更加可持续。我更好地了解基于支付客户优先考虑哪些功能,这令人惊讶地倾向于更加尊重他们需要支持的时间。

从一开始就没有开放来源,意味着我能够更轻松地枢转和重新改进功能,因为没有许多“破坏改变”来协调(公共API和库除外),或者自托管部署以支持。我能够更快地移动,因为只有一个部署环境来支持(或者如果您计算暂存,则两个部署环境)。

通过在速度下,建立和发展产品也是更可持续的,这是我生命中的其他事情的步伐,同时能够弥补您的费用。有一种说法:“慢是光滑,光滑快速”,在这种情况下感觉非常适合。

不要让我错了,我依靠,并继续为许多开源项目做出贡献。如果没有令人惊叹的社区继续建造,并在他们自己的时间内支持所有这些项目,我将永远不会得到这一点。

如果我可能有一天重新考虑,以及开源新项目,它并非完全脱离这个问题。但现在我' ll主要开辟了图书馆和公用事业,范围更小。这样我可以为他们提供支持,希望更多的人能够贡献,因为CodeBase较小。

有一天,我可能会在我的第二个SaaS上写一个反映的博客文章。这是旅程的快乐,总有一些东西可以学习。