Loading...

分享下最近几个月裸辞或做开源项目的经历和感悟。

个人情况

我是 98 年,专科学历,学的 Java 。今年六月底从上家公司离职了,前公司是基于一套半低代码平台做外包的小公司,从 18 年毕业后 9 月份入职至今年六月,已经成了公司算"厉害"的人了,前端、后端、运维、售前等各种工作都做过。

不过一直埋着一些心思,一是公司的技术栈太老了( struts2 、spring 3.x 、hibernate 、...),二是我才这个年龄,在公司竟然已经是技术算很好的了,对我来说没有更多的上升空间了,每天就是处理各个项目上的杂事,实在是不甘心。虽说可以自学,但自学和项目实战还是有很大差别的。

也和公司老板谈过离职,说起来可笑,共提了三次离职,前两次都被饼给填下了,最后的导火索是在一个耗了好几年的项目上,每天处于极度的负面情绪中,实在心理防线绷不住了,就毅然的提了离职,说什么也不留下了,直到六月底正式离职。

开源

我还有一个从 19 年底开始写的开源项目,平时因为工作繁忙,有不少问题没改,还有鸽了大半年的需求。就决定离职后休息四个月,前两个月写开源项目,并写出一个捐赠版来维持基本生活。后两个月突击学习刷题,国庆后开始找工作。

项目用时两个月完全重构并正式发版,期间申请了软著,捐赠版也随之一起发售,并提供了较为宽松的授权绑定方式,正式发布后就开始有大量用户使用,也提出了很多问题,修改 bug 修改了一两周。

心得(仅代表个人观点,欢迎指正):

  1. 开源的项目要尽可能减少初始化配置,并提供引导性的设计来避免用户首次使用的成功率,这很重要。
  2. 文档要完善,并及时更新并发现错误,因为可能你文档上你的一个小小的错误,就会错误的额外消耗使用者很多的时间。
  3. 虽然文档要完善,但引用《黑客与画家》里的一句话: "你要明白,用户第一次使用你的软件的时候,不会预先做好功课,他们没有任何准备就开始用了,所以软件使用方式最好能符合用户的直觉,别指望用户去读操作手册"
  4. 要提供程序的自动化程度,包括编码,编译或其他工作,一旦发现有多次重复且繁琐的动作,就应当考虑是否可以自动化处理,人总是会犯错的,自动化可以减少犯错的几率
  5. 开源不易,绝大多数的开源项目都是没有任何收入且长期维护的,这需要很多耐心和坚持。有一次听《开源面对面》里的一个开源作者,对我影响深刻的的是说:小白很多,很多人的开源项目使用者甚至都不是计算机相关领域的,所以也不能对他们要求太多,比如必须使用英文提 issue ;提供完整的错误信息,环境信息,操作步骤等;且这位作者还会去主动使用社工手段找提 issues 的人的联系方式,使用远程操作或远程会议的形式帮使用者解答和处理问题。
  6. 谈谈收入,捐赠版已经发售正好一个月,除去支付平台手续费,服务器费用,净收入只有 7k+,这相对于工作的收入来说很少,而且和正式工作占用的时间差不多,从早上九点起床开始写到晚上九点休息。

原本计划两个月做开源,两个月学习,到今天为止已经做了开源整三个月,计划有点超出预期,但并不后悔,如果再选择一次,还是会选择离职并这么做,甚至会更早的提出离职。

裸辞和生活

  • 身体:在辞职前,有两三个月吃中药的经历,气阴两虚证,医生说这是操心太多,想太多导致的,这也是选择裸辞的原因之一吧。离职后中药也断了,身体感觉也好多了。
  • 焦虑:前两个月没有对裸辞或找工作这件事干到焦虑,不过最近开始有些焦虑了,因为时间上有点超出了计划,而且后年有结婚的打算,要赚钱买房,虽然女朋友很支持我的这些选择,但我还是不愿拖太久。
  • 技能:离职后有时间,学会了做饭,虽然做的不好,但也算一个傍身的技能。
  • 裸辞:如果你是顶梁柱,或者是家里的主要收入来源,还是不建议裸辞,风险很大。如果你是个还没成家立业且有自己想法,不甘于现状的,认真权衡利弊后可以选择裸辞,但要做好计划,准备好生活所需的钱。

说了很多,又好像什么都没说。希望大家都可以有机会脱离自己的小世界去外面看看

最后修改:2022 年 09 月 01 日
如果觉得我的文章对你有用,请我喝杯咖啡吧。