日拱一卒无有尽,功不唐捐终入海”,时间长了,再小的进步也会产生价值,这就是意义所在。
最近开源搜索引擎 Typesense 作者写下了自己在开发时的心路历程,以下为原文翻译整理:
六年前我第一次开始使用 Typesense 时,我给自己定了一个简单的规则:
在每天上班前或下班后写一些代码。
很直白的一个目标,没有 DDL,没有 KPI,也没有里程碑。
我即将结婚,并且已经在全职工作了,我肩上的责任越来越沉,在这种情况下我只能用此方式来提高自身。
众所周知,从头开始构建搜索引擎并非易事,所以每天在空闲时间写一些代码可以让我不必应对额外的压力。
有些性能需要一个小时才能实现,有些性能需要几个小时才能实现,有时候完成一个性能甚至需要持续数周,但这并不重要,因为没有任何形式的截止日期。
回想起来,在过去的 6 年里遵循这一规则给我带来的收获是我不敢相信的,过程很漫长,但我坚持住了。
而在这个过程中,我的生活也引来了很多新的变化:我结婚了,有了一个女儿,也在抵抗中失去了所爱的人,因新冠肺炎经历了重大的健康问题...
不明白是从哪个时刻开始,Jason 和我已经能够从头开始构建一个开源搜索引擎了,以下是我们迄今为止旅程的简要总结:
- 2015 年:各种数据结构的原型设计和基准测试
- 2016 年:首次正式提交,构建核心模糊文本搜索引擎
- 2017 年:HTTP API,支持数字过滤和分面搜索
- 2018 年:客户端库、只读副本、Hacker News 发布失败
- 2019 年:赚到第一美元
- 2020 年:集群、Typesense Cloud、多个演示、Hacker News 成功发布 2021 年:全职投入 Typesense,撰写我们的第一篇博文 :)
我们踏上的路径与关于创办公司的几种流行的传统观点背道而驰,我们在一开始并没有辞掉日常工作立即开始全职开发 Typesense,没有寻求风险投资,也没有试图通过追逐高速增长来“垄断”市场。
我们没有可以利用的个人品牌或广泛的网络。直到第 5 年,我们甚至都没有赚到一美元,但我们的跑道几乎是无限长的。在这个长期的过程中,我们逐渐明白:只有当我们充分降低该选项的风险时,才能全职投入 Typesense。
如果您想通过推出自己的产品来获得一定的成功和独立性,并且希望降低风险的话,我的建议是:在一个永远有需求的大市场中获得一个想法,并开发一种适合一部分用例的产品。
选择一个并不主流的想法,并保证它在一个大型且最好是需求不断增长的市场中,这样可以大概率降低风险并且可以缓慢稳定地发展。
只要坚持下去,就会在某个时刻成功。
以 Typesense 为例:
我们从一个简单的想法开始:构建一个开箱即用并且使用感良好的搜索引擎,使搜索民主化。在我们刚开始时,我们就知道网站和应用程序总是需要搜索,而且这是一个需求庞大且不断增长的市场。
在我们慢慢构建 Typesense 的过程中,我们看到了其他几家公司也在为同一个市场发起攻击(这就是市场验证)。尽管如此,我们仍然有目的地继续前进,并从中更好地了解到了市场需求在缓慢增长。
在 Typesense 工作了 6 年,但我们的故事才刚刚开始。现在我和 Jason 都在全职开发 Typesense,我们期待着按照自己的方式去发展它。