文章约 15 分钟阅读

03. 没人知道,我做过那么多失败的项目

最后更新:

03. 没人知道,我做过那么多失败的项目

如果有人问我,这十几年做过最成功的项目是什么,我大概会卡上一会儿。

可要是问我失败过哪些项目,那就容易多了。不用准备,我能一口气说出好几个。

我写过博客,做过开源项目,运营过网站,研究过 SEO,也试着把兴趣变成副业。每隔几年,我都会突然迷上一件事,然后投入几个月,甚至一两年,把它从一个模糊的念头,一点点做成可以运行的东西。

如果只看商业结果,其中九成大概都失败了。

有的网站上线没多久就关了;有的开源项目几乎没人用;有的博客断断续续更新几年,最后停在某一天,再也没等来下一篇文章。

照理说,这些项目早该被忘干净了。

奇怪的是,它们直到今天还会突然从记忆里冒出来。许多工作细节我已经想不起来,却还记得第一次登录 Linux 服务器时,终端里闪烁的光标;记得买下第一个域名时的兴奋;也记得自己憋了三天,最后只写出一百多个字的窘迫。

后来我才明白,这些失败项目真正留下来的,从来不是网站,也不是代码。

它们留下的是另一种东西:它们一点点改变了我理解产品、技术和自己的方式。

没有它们,我今天大概不会成为软件工程师,也不会写下这篇文章。


那一年,我拥有了人生中的第一台服务器

2009 年,我放弃了国内刚读一年的大学,来到日本,进入日语学校学习。

现在回头看,如果能重新选择,我大概会先把大学读完,再来日本。可二十岁出头的时候,我对未来没什么完整规划。只觉得墙外的互联网像另一片世界,而我想亲眼看看。

2011 年,我从日语学校毕业,考入横滨一所大学,重新开始大学生活。

我的留学生活没有电影里那么热闹。既没有每天精神抖擞地完成学业,也没有潇洒逃课、夜夜派对。每天节奏几乎固定不变:上课、打工、回家。

每月兼职收入不到六万日元。按当时汇率计算,大约七百美元。交完房租和生活费,基本剩不下什么。

真正属于我的,只有一台花一百五十美元买来的华硕笔记本。这里得感谢一位我一直很佩服的学霸哥哥。他来日本出差时,资助我买下了这台电脑。

它陪我打游戏,也陪我熬夜折腾各种软件。很多时候,我宁愿待在房间里研究电脑,也不想出门。

直到有一天,我偶然看到一个介绍日本旅游的网站。

今天再看,那套设计已经很普通了;可在当时,它新鲜又时髦。我对着页面看了很久,脑子里冒出一个念头:

原来,普通人也可以拥有自己的网站。

这个念头让我兴奋了好几天。我决定照着做一个,定位也很快想好了:给外国游客写日本旅游攻略。

现在回头看,方向没有什么问题。真正的问题是,我自己根本没怎么旅游过。

可二十岁出头的人,很少会认真考虑这种小事。我当时深信,只要先把网站搭出来,其他事情自然会跟上。

于是,当天晚上,我刷信用卡租了一台服务器。

后来我才知道,当时已经有不少服务商提供一键安装 WordPress。点几下鼠标,一个博客就能跑起来。我花钱之后才发现,原来世界上还有这么贴心的一条龙服务。

可服务器已经租了,总不能浪费。

我跟着网上的教程,从 Linux 学起,一行行敲命令,手动安装 Apache、MySQL 和 PHP。折腾几天后,我终于拥有了人生中的第一台服务器。

服务器预装了 CentOS,按理说,只要把需要的软件包装好就能运行。问题是,我当时根本不懂 Linux,唯一掌握的技能就是大胆尝试。

软件安装失败怎么办?

进入 VM 控制台,重装 CentOS。

又失败了怎么办?

再装一遍。

有段时间,重装系统几乎成了我每天起床后的固定节目。屏幕上风平浪静,我心里早已兵荒马乱。

后来,我又去 GoDaddy 买下一个域名:jaforeign.com

它由 Japan 和 Foreign 拼在一起。现在看,名字有点长,也有点土。但当时才疏学浅的我已经想不出更好的,只能凑合着用。

好消息是,服务器终于运行起来了,MySQL 数据库连上了,域名也成功完成解析。

我打开 WordPress 后台,新建第一篇文章。

光标不停闪烁。

而我坐在屏幕前,突然不知道该写什么。

网站成功跑起来的兴奋还没散去,脑子里却已经空了。


原来,写程序和做产品是两件事

我原以为,最难的部分已经过去了。

服务器都搭好了,还有什么能难得住我?

后来才发现,真正困难的事刚刚开始。

三天时间,我只写出一百多个字。

不是因为不会写,而是因为没有东西可写。每天除了上课就是打工,剩下的时间几乎都待在家里。我没去过多少景点,也没有值得长期分享的旅行经历。

网站存在,服务器运行正常,域名也能打开。

只是里面几乎什么都没有。

不到两个月,我关掉服务器,也放弃了那个域名。

如果只看结果,这是一次彻底的失败。但直到今天,我仍然觉得,那两个月没有白费。

正是在那段时间里,我第一次真正接触 Linux、LAMP、HTML 和服务器部署。也是从那时起,我发现自己对软件开发的兴趣,远远超过了经营旅游网站。

其实,我一直很喜欢旅行。只是受当时收入限制,独自生活时几乎没去过旅游景点。好在日语学校和大学会为留学生提供补助,组织集体旅行。我也因此去过几次东京迪士尼乐园。

直到今天,我仍然感谢那两所学校。

现在回头看,那个旅游网站真正留下来的,不是网站,而是我后来十几年的职业方向。

很多事情大概都是这样。

你以为自己在寻找 A,最后带走的却是 B。


第二次,我以为自己终于准备好了

很多年后,我已经成为软件工程师。

我开始觉得,第一次失败只是因为太年轻。现在的我有经验,也有技术,这一次总该不一样了。

2020 年,COVID 疫情刚刚开始。我利用下班后的时间,做了一个开源 CSS 框架,叫作 RotalaCSS

后来,我又围绕它搭建了自己的博客 Pitayan

这一次,我终于有能力把东西做好。代码越来越整洁,架构越来越成熟,博客设计也逐渐接近我理想中的样子。

甚至有两篇文章登上了 Hacker News 首页。

发布前补充文章链接与 Hacker News 截图。

那几天,我几乎一直开着 Google Analytics,看着访问人数不断刷新。

我以为,机会终于来了。

可流量退去后,我发现真正的问题一点都没变。博客没有获得持续阅读,项目也没有迎来稳定用户。

问题不只在产品做得好不好,而在于我仍然没有回答那个最重要的问题:

到底是谁需要它?


我花了十几年,才发现自己总在重复同一个错误

后来,我偶尔会把这些项目放在一起看。

jaforeign、RotalaCSS 和 Pitayan,看起来完全不同。

一个是旅游网站,一个是 CSS 框架,一个是技术博客。

可把时间拉长,它们失败的方式几乎一模一样。

我总是先想到一个自认为很酷的点子,然后立刻开始写代码。等产品做完,再回过头寻找用户。

旅游博客没有内容。

开源框架没有用户。

技术博客没有持续更新。

表面上,每个项目失败的原因都不相同。实际上,它们一直在提醒我同一件事:

产品最大的风险,往往不在技术,而在需求。

这句话现在看起来,像一句正确得不能再正确的废话。

可我真正理解它,却花了十几年。

自己的痛点当然可能有价值。但如果不提前验证,你做出的方案也可能只适合一个人——你自己。

代码写得再漂亮,架构设计得再优雅,页面做得再精致,也改变不了这件事。

没有真实需求,产品只是一场完成度很高的自我感动。


那些失败,后来都成了我的老师

如今,我已经不急着用“失败”定义这些项目。

它们没有赚到钱,也没让我出名。

但如果没有它们,我不会学习 Linux,不会开始写代码,不会接触开源,不会研究 SEO,也不会对 AI 和软件工程产生今天这样的兴趣。

后来,有朋友问我,为什么现在做新项目时,总喜欢先找人聊天,而不是急着打开 IDE。

有时,被我抓住聊天的人就是提问的那位朋友。

这不是因为我突然变聪明了,只是因为同一个坑,我已经用不同姿势掉进去太多次。

第一次,我没有内容。

第二次,我没有用户。

第三次,我没有足够的时间坚持。

这些问题看起来各不相同,却指向同一个答案:我总是急着开始做,却没有先确认,自己面对的究竟是不是一个真实问题。

现在,我越来越少问自己:

这个项目会不会成功?

我更愿意先问:

它解决的,是不是一个真实存在的问题?

因为我终于明白,代码从来不是产品的起点。

需求才是。


写在最后

如果你今天才认识我,你看到的可能是一个写代码的人,一个喜欢研究前沿技术的软件工程师,一个偶尔更新博客的人。

可如果把时间往前拨十几年,你会发现,这些身份并非一开始就存在。

它们都来自一个早已消失的小网站,来自一个只有两篇未完成文章的博客,也来自一个坐在华硕笔记本前、不停重装 CentOS 的年轻人。

后来,我又做过许多项目。其中大部分,都失败了。

它们没有多少用户,没有带来收入,也没在互联网上留下多少痕迹。几乎没人知道,我曾经为它们熬过多少夜,又对它们抱过多大希望。

可如果没有第一个失败,后面的故事也许根本不会发生。

那些项目没有成功塑造出产品。

却一起塑造了今天的我。

分享这篇文章

参与讨论

04. 从乐天到迅销:我学会先看组织,再谈技术

04. 从乐天到迅销:我学会先看组织,再谈技术

· 约 28 分钟阅读

从年薪300万日元的初创公司工程师,到乐天工作六年,再到迅销EC相关部门,回顾技术领导力、产品质量、工程自主权与组织责任链之间的冲突,并解释为什么换工作无法自动解决工程师职业迷茫。这不是两家公司的优劣评测,而是一名工程师重新理解技术、组织与个人成长关系的真实经历。

阅读文章 →
01. AI 让我的代码变好了,我却没以前那么快乐|工程师十年自述

01. AI 让我的代码变好了,我却没以前那么快乐|工程师十年自述

· 约 23 分钟阅读

一名没有计算机学位、在日本工作十年的前端工程师,回顾失败博客、会计转行、开源贡献与 AI 编程经历。当 ChatGPT 用不到三十分钟完成他手写一周项目的初版,效率提高了,创造的快乐却开始变薄。他由此追问:如果架构、细节和多数实现交给 Agent,作品还属于自己吗?AI 时代,工程师又该怎样确认创造的意义?

阅读文章 →