我辞去了生意,开始开发开源开发工具

2025-06-07

我辞去了生意,开始开发开源开发工具

这是一个关于我辞去 Web 开发工作、创办我的第一个 SaaS 项目、花光我所有的积蓄并找到我真正想做的事情的故事。

另外,这篇文章是我尝试在网上分享我的真实经历,无论好坏。既可以作为我自己的日记,也可以作为社区的案例研究。

我希望这些更像是私人信件,而不是自我推销、感觉良好、产生流量、积极思考的营销帖子。

我想保持脆弱和诚实。

这会很糟糕。

辞掉工作,开始做在线产品

2020年1月,我辞去了Web开发人员的工作,与合作伙伴创办了一家SaaS公司。这是我职业生涯中最大胆的举动。我既害怕又兴奋不已。多年来,创办自己的项目一直是我的终极目标。

它终于发生了!

我非常幸运,这几年来收入一直高于支出,并且在牛市期间投资了标准普尔500指数。这给了我足够的积蓄,让我至少在几年内不用再考虑钱的问题。

回想起来,我不禁想到,拥有太多的现金流可能会危及你的企业:太容易感到舒适。

我们当时不知道自己想要打造什么。尽管如此,我们仍然想一起工作(毕竟我们一起共事了三年半以上),而且我们知道未来或许不会再有那样的机遇了。

怀着自由的感觉,同时也伴随着难以言喻的巨大压力,我们开始集思广益。当时,我们俩都没有他一直想做的事情(而且那也算是一个可行的商业机会),所以这个过程既需要反思自身,也需要寻找市场空白。

那是我第一次深刻地意识到,当时我所感受到的所有自由,其代价是沉重的不确定性。在2020年之前,我已经做了7年的Web开发人员(兼任团队领导、产品管理、数据分析等工作)。总有人至少在某种程度上告诉我,应该实现什么目标。

随心所欲的滋味并不像我想象的那么美好。感觉我们可能会做出很多错误的决定,却没有人告诉我们。

然而,那种感觉也是锻炼你对自己人生负责的最佳方式之一。归根结底,应对不确定性以及为艰难的抉择承担个人责任,需要通过实践来训练,而不是从书本上学习。

我很想说,事后看来,那段经历教会了我为自己的人生决定承担最终责任,让我成为一个非常自主的人。但这绝对是谎言。我已经坚持“想做什么就做什么”两年半了,充其量,我学会了不那么慌乱。真正为自己的每个决定负责是很困难的。这并非仅仅是一个概念,而是一项实践。

探索食品科技

经过几天的头脑风暴,我们根据十几个因素对不同的想法进行了评估,最终找到了我们要解决的一个问题。

我们希望全球所​​有餐厅和咖啡馆都能拥有现代化的数字菜单,每道菜都配有高清照片,并支持在线点餐。(请注意,距离全球疫情爆发还有几个月的时间。)

我们还看到了一个商机:为什么餐馆不愿意为显著改善(在我们看来)顾客的体验而付钱给我们呢?

我们把项目命名为 Foodba,只是因为那里有个比较便宜的 .com 域名。
我知道。

我们当时没有意识到的是,我们只关心来访的客人。我们对经营餐馆的人一无所知,也不太关心。

我们对此视而不见,进行了数十次“顾客访谈”,几乎每个人都告诉我们,拥有这些数字菜单会很棒。这些人中没有一个人经营餐馆。

如果我们与那些确实希望付钱给我们的人交谈,整个事情就会有所不同。

无论如何,我们最终打造了一个MVP,并利用我们的人脉网络找到了首批愿意免费使用我们产品的客户。作为回报,我们可以研究他们的总体使用情况,以及他们对产品的具体反馈。

我们其实很享受那段时间。什么事都要做:开发产品、与顾客沟通、为他们设计并打印二维码,甚至还要为数百份餐食拍摄专业照片。我们真是忙得不可开交!

我们还没有赚到钱,但这已经开始感觉像是一次地狱般的冒险。

戴口罩并保持距离

然后新冠疫情爆发了。哎哟!

毫无疑问,疫情几乎撼动了所有行业,餐饮业尤其脆弱。今天你还在营业,明天就关门了。你推出了外卖,却无人订购。你依赖外卖,但外卖平台的佣金只会让你亏损。

更糟糕的是,没人知道接下来会发生什么,大家都在止损。没有坚实的基础。问题会在几周内出现又消失,因此很难找到一个具体的痛点并加以解决。

与此同时,我们感觉自己真的努力工作,而且很有成效。最终,感觉就像在“创业”:几乎每天都在和客户沟通,开发一些东西来解决至少一些问题(无论多么短暂),收集反馈等等。

虽然很累,但还是很有收获的。

回想起来,我认为疫情才是我们取得进展的真正原因。危机中的人们需要帮助,而我们渴望提供帮助。

尽管我们感觉自己似乎从未找到任何产品与市场的契合点,但在2020年12月(一年过去了),我们拥有了近50个付费客户。到了6月,我们一个客户都没有,所以感觉这很成功!

此外,每个独立开发者都知道,当别人真的因为你的作品而给你钱时,那种感觉真是令人欣喜若狂。至少在一开始是这样。

到那时,人们会因为各种各样的原因购买我们的产品。他们都不被允许使用纸质菜单,所以有些人只是想要比二维码后面丑陋的PDF更好的体验。有些人想自己送货。有些人想在Facebook上进行重新定位营销。有些人只是觉得电子菜单很时髦。
我们的“客户资料”一团糟。

让我们花点时间反思一下。

两个家伙花了一年时间全职开发一款产品。结果如下:

  • 约 600 美元 MRR。
  • 没有明确的产品市场契合度。
  • 没有明确的扩展方法。

至此,累计机会成本已达数十万美元。

您会继续这样的冒险吗?

这是一个艰难的选择。

我们做到了。

产品与市场不匹配

仍然回想我们继续的决定,值得一提的是,当然,这不仅仅是钱的问题。

我们学到了很多。不仅仅是关于产品构建,还包括销售、市场营销、用户体验等等。

坚持。我们已经学会了当事情不顺利时如何不放弃。

最终,从事这项业务只是充满乐趣和充实感

因此,我们开始扩大规模。

从这一点来看,我们能做的任务只有三类:

  1. 修复损坏的东西。
  2. 无论什么都能给我们带来新客户。
  3. 无论什么都可以帮助我们减少支持上所花的时间。

我们在扩展方面遇到的问题在于,我们试图做一些事情,就好像我们的产品与市场相契合,但实际上却没有。

通常,业务扩张意味着你已经拥有一个或多个小规模的销售/营销渠道。你需要投入更多时间和金钱来拓展这些渠道。你会一直这样做,直到发展成本超过潜在产出。

但事实并非如此。

我们仍然不确定我们的客户是否更靠近酒店餐厅、市中心的旅游景点或当地的咖啡店。

Google Ads 的某个随机场所会直接注册并使用该服务,无需任何询问或帮助。与此同时,我们花了两天时间为伦敦一家当地餐厅制作定制二维码,并为 60 道菜品拍摄照片,结果却无人问津。至少他们给我们提供了一次。

事情进展不太顺利。

我还记得给亚洲炒菜工打电话时肾上腺素飙升的感受。可怜的、忙碌疲惫的管理员根本听不懂我在说什么。拜托,我能回去写代码吗?

我们花了几个月的时间寻找我们认为的客户,并寻找一个可扩展的渠道来获取他们。我们尝试了各种方法,包括电话营销、上门拜访、邮件营销、广告、搜索引擎优化、传单、推荐、合作等等。

大约在那个时候,我开始意识到我不再喜欢我们所做的事情了。😬

首先,我不太关心我们的客户。我一个做餐饮的朋友都没有。我个人对餐厅的运营方式以及员工的生活状况不感兴趣。

我关心的只有我自己,以及像我一样的人,他们除了其他事情之外,还会去餐馆。但付钱的不是顾客,我们也找不到合理的方法来改变这种现状。

其次,我开始对开发者这个职业感到厌倦。一开始,我学习了一些关于运行无服务器函数、使用 AWS 或优化图片的知识。但二维码菜单服务,连同它的所有特殊功能,最终都只是一个 CRUD 应用而已。

这本身没什么问题。日复一日地开发一款既有趣又充满挑战的应用是不现实的。互联网上大多数应用都是一些花哨的CRUD应用。

然而,编程一直以来都是我的避难所。在忙了一天手心冒汗的电话推销后,我可以去那里,享受做自己真正擅长的事情。但不知何故,编程不再是我的避难所了,我不想为了好玩而把事情弄得更复杂。

不喜欢这个项目的另一个表现是,我不再想和别人讨论它了。我感到羞愧,但又不知道为什么。我为自己感到羞愧而感到羞愧。

2021年就是这样。我们一直在努力寻找产品与市场的契合点。每周都感觉突破就在眼前。

有些方法有效,但大多数方法无效。

那一年,我们的客户群从 50 人扩大到了 150 人左右,MRR 增加了两倍。

在大多数情况下,我们发现了一千种行不通的方法。我经常会想起这些来安慰自己,让自己看起来好像在取得进步。

更重要的是,我们反思了导致我们走到今天这一步的关键转折点;反思了
那些让我们不断朝着错误方向挖掘的偏见和盲点。又或者,方向本身是正确的,只是我们执行得不好?我不得而知。

漫长的新年假期过后,我们一致认为项目进展不顺利。我们不知道该怎么办,但确实很没动力。

再见蓝天

(我住在乌克兰。)

2月24日到3月底之间发生的事情,我记不太清楚了。它浓缩成了一段模糊的记忆,充斥着警笛声、午夜末日滚动的画面,以及不断移动的景象。

我只能说,我很幸运能够在美丽的利沃夫市,一边喝着新鲜的过滤咖啡,一边在一台高档笔记本电脑上写这篇文章,我的身体各个部位都恰到好处地悬挂在正确的位置。

这篇文章不是关于战争的,我当然也不是遭受战争最深重苦难的人,但你可以想象,这样的经历可能会让人更多地反思自己的人生选择。

经过一番反思,我清楚地意识到,是时候翻开新的一页了。

幸运的是,就在我用完维持了我近两年半的积蓄的时候,我们的生意开始产生足够的利润,让我不用再去找工作或兼职了。

我们共同决定保持业务运营,并对仍需我们关注的部分进行高度自动化。但我们不再投入任何新的精力。

我们终于可以自由选择下一步了。所有“想做什么就做什么”的焦虑瞬间又回来了,更何况我又不知道明天的现实环境会发生什么。

未吸取的教训

看起来,运行 SaaS 应用程序的两年半时间应该让我对如何正确地运行它有了更多的了解。

但事实并非如此。

最好的情况是,我从一无所知变成了对自己在做什么有所了解。同时,这也让我对自己的无能感到更加安心。

它彻底打破了那种认为必须先精通某件事才能真正去做的幻想。如果你是心脏外科医生或飞行员,这种想法就不太合理了。但说到在网上做一些傻事,比如我的情况,我发现这种“只管去做”的积极态度才是最有成效的。

第一课:找到你关心的用户

我认识到,能够与我的用户建立深厚的联系对我来说至关重要。

过去几个月,我和十几位从未谋面的开发者聊过天。我的天哪,这对比太明显了。

我们可以聊上几个小时。我理解他们,他们也理解我。感觉就像两个孩子在讨论玩具。我太喜欢了!

与经营餐馆的人相比,我的态度有明显的不同。

尽管输入花括号并不是我唯一的兴趣,但感觉自己是“部落的一部分”让我想以一种完全不同的方式做出贡献。

这也使得实际使用你所制作的东西变得更加容易。

在公司工作时,我总是渴望改进我和团队使用的工具。我不知道为什么。我并没有运用我的技能解决问题,而是想要改进技能本身。我更想思考和讨论我们如何做,而不是我们做了什么。

这个认识让我清晰地认识到:我想为那些让我感到兴奋并愿意交流的人做事。即使我还没有项目计划,我也想了解他们。

第 2 课:二阶效应

无论您从事什么项目,总会有一些比项目本身更长久的成果:获得的技能、结识的人、打开的大门。

事实证明,在选择做什么时你可以(并且应该)考虑到这一点。

有了Foodba,我就没有了。因此:

  • 我获得了很多我不会使用的领域知识(食品行业)。
  • 我没有获得任何可能成为我未来客户、合作伙伴、员工、雇主等的联系人。
  • 我没有增加我的“运气表面积”。

这很糟糕,因为当我停止在 Foodba 上工作时,感觉自 2020 年以来并没有太大变化。我感觉自己没有获得任何惯性。没有不公平的优势。没有王牌可打。

这次,我可以做得更好。至少,我可以进入一个领域,在这个领域里,我可以做更多项目,创造超越任何具体努力的持久价值。

例子?你正在看呢。

蒂姆·费里斯 (Tim Ferriss) 曾在他的播客中说过一句话,让我印象深刻:

即使失败了,我是否可以培养一些技能和建立一些关系并将其运用到其他事情中?

第三课:选择正确的挑战

我想要挑战,但不是任何挑战。

企业家为了完成任务不惜一切代价的能力常常被浪漫化。这当然是有充分理由的。

然而,我意识到我根本不想不惜一切代价去成功。做我喜欢的事情(大多数时候)对我来说在很多方面都更重要。

有些技能我不想学,有些活动让我想放弃。比如打电话推销,处理大量运营工作,或者写 SEO 优化的营销文章。

这些都不是坏事,只是不能给我带来满足感。

与此同时,我也很高兴接受大量艰巨的挑战:

  • 写作
  • 积极为社区服务
  • 建立我自己的社区
  • 令人难以置信的技术问题
  • 在公共场所建造,同时保持原汁原味

回避我不喜欢的事情并不意味着我会放弃那些如果我去做就能获得最佳效果的机会。我很乐意把这些事情委托给别人去做。我只是想确保这不是早期阶段必须做的事情。

启动开源开发工具

最后,各个部分组合在一起:

  1. 我喜欢制作工具
  2. 科技界是我的部落
  3. 它符合我选择的挑战

对我来说,科技行业不同于其他任何领域。

它本身就很残酷,但同时也带来独特的回报。

竞争非常激烈,但相当注重精英管理。

我相信那里仍然是狂野的西部。

所以,我决定尝试一下。我会尽我所能,为我的部落贡献一份力量,同时明确地做我最喜欢的事情。

其中包括几件我从未做过的(可怕的)事情:

  1. 开始一份时事通讯和这个博客
  2. 探索社交媒体作为创造价值的平台
  3. 在公开场合建设的同时尽可能保持诚实
  4. 终于,我终于可以做一个我一直以来想要的工具了,100% 开源

Impulse.dev:迈出第一步

四月份,我发表了自 2018 年以来的第一篇公开文章:
写 HTML 很烂,No-code 也无济于事

它带来了 2 万次页面浏览量、168 条 HN 评论和 40 个电子邮件订阅者。太棒了!

这看起来可能没什么,但对于一个不习惯公众关注或批评的人来说,这确实令人紧张。

两个月后,我发布了第一个 alpha 版本并录制了 42 分钟的演示(我知道!),可在impulse.dev上找到。

幸运的是,我之前的创业伙伴也加入了我,所以那段时间我并不感到孤独,也不觉得工作太多。

我尝试在《使用 Impulse 让编写 HTML 变得不那么糟糕》中写有关我们的 alpha 版本的文章,但是没人读过。

当你花费几个小时(或几天)精心将你的想法记录成文字,然后什么也没有发生时,你会觉得没有什么值得再做了。:) 但是,嘿,这是一场非常漫长的游戏,对吧?

不管怎样,我现在就在这儿,一边写这篇文章,一边思考这是否是一个好主意。

我省略了很多关于构建 Impulse 的细节。这段新的旅程值得我写更多文章,而我已经写了 3000 字了。:)

我还没谈到的最后一个话题是钱。所有运营开源项目却没有获得大型科技公司大力支持的人都会告诉你,靠开源谋生非常困难。他们说得对。我想在以后的文章中详细讨论这个问题,但这绝对是一个长期问题。

跟随我的旅程

如果您喜欢这篇文章,那么您可能会喜欢后续的文章。

使用下面的表格订阅新闻通讯,并在 Twitter 上关注我

如果您使用 TailwindCSS,您可能会发现impulse.dev很有用!

下次见!🙌

附言:
我花了一个多星期什么都没做,就写了这篇文章。写作真是太难了。如果你能读到这里,谢谢你

文章来源:https://dev.to/kirillrogovoy/i-quit-my-business-to-start-an-open-source-dev-tool-7c4
PREV
使用 Dagger.io 和 KitOps 构建 MLOps 管道 使用 Dagger 和 KitOps 构建 MLOps 管道的步骤 与 MLOps 集成 接下来会发生什么? 结论
NEXT
启动 Cube.js 模板 📊 - 构建分析仪表板和应用程序的最简单方法