V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhaojun1998
V2EX  ›  程序员

谈裸辞和开源的体会

  •  9
     
  •   zhaojun1998 ·
    zhaojun1998 · 275 天前 · 9289 次点击
    这是一个创建于 275 天前的主题,其中的信息可能已经有所发展或是发生改变。

    谈裸辞和开源的体会

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

    个人情况

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

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

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

    开源

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

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

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

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

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

    裸辞和生活

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

    说了很多,又好像什么都没说,也没有什么朋友适合说这些事,就当树洞分享分享下自己的经历吧。最后感谢下 v2 ,这是目前为止我最喜欢的论坛了,没有之一,有一种早期互联网的氛围(虽然我这个年龄也谈不上这个词,哈哈)

    98 条回复    2022-10-20 20:56:32 +08:00
    magicZ
        1
    magicZ  
       275 天前
    作品链接不发一下?
    zhaojun1998
        2
    zhaojun1998  
    OP
       275 天前   ❤️ 25
    @magicZ
    不想当认为是来做广告的,就不发了,就当看个热闹。
    defunct9
        3
    defunct9  
       275 天前 via iPhone
    鼓掌👏。
    jdhao
        4
    jdhao  
       275 天前 via Android
    楼主好年轻,加油,可以学好英语,找找国外远程工作
    storyxc
        5
    storyxc  
       275 天前
    能靠独立开发一个月挣 7k 很牛逼了,支持一下 op
    micean
        6
    micean  
       275 天前
    身体要紧
    开源项目有收入不错了
    不过还是得找工作才行
    公司的项目别上头,有害健康
    liuWeiyi98
        7
    liuWeiyi98  
       275 天前
    同样 98 的, 楼主很厉害了, 有需要可以交流一下
    ccagml
        8
    ccagml  
       275 天前 via Android
    厉害了
    xiangxiangxiang
        9
    xiangxiangxiang  
       275 天前
    感谢分享,同想了解一下楼主做的可以挣到钱的开源项目
    Kaier
        10
    Kaier  
       275 天前
    加油ヾ(◍°∇°◍)ノ゙
    zhaojun1998
        11
    zhaojun1998  
    OP
       275 天前
    @micean 感谢,是的,现在想想是不应该上头。
    fzdwx
        12
    fzdwx  
       275 天前
    加油加油!
    lixon166
        13
    lixon166  
       275 天前
    开源比公司赚的多吗
    zhaojun1998
        14
    zhaojun1998  
    OP
       275 天前
    @lixon166

    开源收入不到公司收入的一半
    threebr
        15
    threebr  
       275 天前
    厉害了
    zmy2000
        16
    zmy2000  
       275 天前
    加油,给你投个币。
    makelove
        17
    makelove  
       275 天前   ❤️ 2
    有女朋友还是适合找个班上比较稳,否则容易分手,不单是收入上还有心理状态会比较急

    ps. 中药还是别吃了,还是连续几个月的吃,当心吃坏身体(其实想明白中药是骗局不难建议细想一下终身受用
    bojue
        18
    bojue  
       275 天前
    开源产品来说这收入可以了,我认识的好朋友,自研几款产品半年多了才 2K
    tbg
        19
    tbg  
       275 天前 via iPhone
    加油
    Divinook
        20
    Divinook  
       275 天前 via iPhone
    楼主很厉害!
    hst001
        21
    hst001  
       275 天前
    开源项目能有 7K+/月 已经算优秀了,如果以后能有更多收入转成全职维护应该是比较理想的吧
    ChrisFreeMan
        22
    ChrisFreeMan  
       275 天前
    自由时间还能利用的如此充沛和有价值,我很羞愧,我真是懒癌晚期没救了。
    tsln
        23
    tsln  
       275 天前 via Android
    楼主很勇敢!我提两次离职了,画的饼越来越大,吃的也是越来越饱
    薪资达到了本地上游部分,但是公司没几个开发,实在太累了
    经济压力顶着心理压力…我还得在这继续绷着。
    项目难做,需求无理,五险一金没保障
    ps. 同 98 ,同专科
    sillydaddy
        24
    sillydaddy  
       275 天前 via Android
    看了下楼主的项目,先给个👍
    楼主做事有板有眼,有前端,有后端,有文档,有主页,甚至还有用户论坛。执行力没得说。

    关于楼主的作品,有一点我没太搞明白,那个授权给不同类型的网络,如域名,局域网等等,是什么意思呢?用户部署到自己的服务器还要连接楼主的服务器走一遍授权吗?纯属好奇,没别的意思。
    darkengine
        25
    darkengine  
       275 天前
    如果能有 7K+/月 那是相当不错了,这可是半躺平的收入啊
    James369
        26
    James369  
       275 天前
    应该发挥优势,趁胜追击。
    如果能扩大开源产品的用户数量,比如增加其它平台的推广,或者增加广告的投入。
    如果用户能够增加 2 倍,3 倍,是不是意味着有 2 倍,3 倍的收入增加?
    opentrade
        27
    opentrade  
       275 天前
    惭愧惭愧,我做不到对提 issue 用户的这份耐心
    eryajf
        28
    eryajf  
       275 天前   ❤️ 1
    很厉害了,今年的经历有点相仿,我是 4 月份离职,在家待到八月份,期间一直写东西,也开源了几个项目,没有往收益上考虑,然后上周刚找了工作,回来上班了。

    回头看,还是挺开心有这样一段的,陪陪家人孩子,身体也恢复了,精神也松快了。

    祝福顺意!
    zhaojun1998
        29
    zhaojun1998  
    OP
       274 天前
    @sillydaddy

    是你说的那样,这样各有利弊吧,目前还没想到更好的离线授权方案。
    弊端:就是我服务器挂了,会影响所有用户的使用。所以我购买了高防御服务器并提供了验证服务器的高可用。
    优点:就是对用户简单,因为有离线授权文件的话,还需要单独放置到程序中。而且对开发者来说授权可控,避免离线授权文件被传播。

    最近也在找寻安全可靠的离线授权方案,来避免对用户产生使用障碍。
    sillydaddy
        30
    sillydaddy  
       274 天前
    @zhaojun1998
    嗯,我看 macOS 上的很多软件也是初始化的时候,连线授权一次,比如 Figma:网页上登录账号后,浏览器端唤起 native 程序,就完成了 native 程序的授权。
    focuxin
        31
    focuxin  
       274 天前
    当时也是通过 z-file 这个项目关注大佬的
    ryan4yin
        32
    ryan4yin  
       274 天前 via Android
    我也分享下我去年裸辞的一点体会,跟你有些类似,都觉得辞职后心情也好了,身体棒了哈哈

    https://thiscute.world/posts/end-of-the-first-round/
    ryan4yin
        33
    ryan4yin  
       274 天前 via Android
    大佬跟我是一年的,不过早我一年毕业,看了你的 github ,很牛哇
    zhaojun1998
        34
    zhaojun1998  
    OP
       274 天前   ❤️ 1
    @ryan4yin

    感谢分享,很多方面感同身受,愿我们都跳出自己的「围城」,去外面的世界看看。
    ixx
        35
    ixx  
       274 天前
    可以可以 我以为文末会有个二维码啥的 😅
    zhaojun1998
        36
    zhaojun1998  
    OP
       274 天前
    @ixx

    不不不,我也不喜欢那种,要真诚,讲故事就是讲故事,宣传就是宣传.
    chrawsl
        37
    chrawsl  
       274 天前
    很厉害了,比我强多了
    zhangyichent
        38
    zhangyichent  
       274 天前
    我之前也裸辞过一把。。。当时刚好赶上创造 101 ,nba 总决赛,世界杯。。。几个连着看,唉好爽啊,快乐的日子一去不复返啊
    chensuiyi
        39
    chensuiyi  
       274 天前
    想了解下开源项目授权怎么做的,如何避免盗版?
    ma836323493
        40
    ma836323493  
       274 天前
    楼主可以试试做产品,有产品的潜能
    zhaojun1998
        41
    zhaojun1998  
    OP
       274 天前
    @chensuiyi


    首先不能分发 jar 包了,java 很容易反编译,我是使用了 xjar 来加密 jar 包,并禁止 arthas 等程序以调试模式接入。

    然后给用户设置授权码,用户部署后,去后台填写授权码,访问核心功能时根据授权码去授权服务器验证授权(这个请求要注意加密,不能明文传输,防止被抓包),成功后缓存一个记录,缓存期间就不去读取验证服务器了,知道缓存过期再重复上述动作。

    注意点是,要保证你的授权服务器高可用,且避免被攻击以后下线,不然对用户来说就无法使用了。
    lei2j
        42
    lei2j  
       274 天前
    开源项目有收入就强过很多人了
    WonderCc
        43
    WonderCc  
       274 天前
    佩服大佬,我 99 年的,也想着自己写一个开源项目,向你学习
    ccppgo
        44
    ccppgo  
       274 天前
    能有业余收入已经强于 90%人了, 加油楼主
    fateNight
        45
    fateNight  
       274 天前
    突然发现咱两好像 18 年就认识了😀
    zhaojun1998
        46
    zhaojun1998  
    OP
       274 天前
    @ma836323493

    我还是更喜欢做开发,哈哈哈,做产品需要与很多人沟通,我还是独一些,更喜欢自己一个人做一些事。
    zhaojun1998
        47
    zhaojun1998  
    OP
       274 天前
    @fateNight
    是么,在哪认识的啊
    anonymousar
        48
    anonymousar  
       274 天前
    开源项目有收入并且还不低 真的很强。
    linuxsuren
        49
    linuxsuren  
       274 天前
    很开心开源面对面能给各位有点启发!
    qinze113
        50
    qinze113  
       274 天前
    给楼主点攒,要向楼主学习
    Cloudpods
        51
    Cloudpods  
       274 天前
    支持 up
    zhaojun1998
        52
    zhaojun1998  
    OP
       274 天前
    @linuxsuren

    很棒的节目,对我启发很大。
    zhw2590582
        53
    zhw2590582  
       274 天前
    这么年轻就这么牛批吗
    在 zfile 里看到了 artplayer ,也甚是欣慰
    zhaojun1998
        54
    zhaojun1998  
    OP
       274 天前
    @zhw2590582

    没想到在这里还能遇到 artplayer 的作者,您的项目非常完善,给了我很大的帮助,非常感谢。
    flashBee233
        55
    flashBee233  
       274 天前
    楼主很厉害了,值得学习
    OMGZui
        56
    OMGZui  
       274 天前
    厉害了
    zhw2590582
        57
    zhw2590582  
       274 天前
    @zhaojun1998 感谢捐助,中午可以加个鸡腿了
    ZeroDu
        58
    ZeroDu  
       274 天前
    zfile 可以
    ZeroDu
        59
    ZeroDu  
       274 天前
    后面可以,换成 go 重写
    zhaojun1998
        60
    zhaojun1998  
    OP
       274 天前
    @ZeroDu

    换语言近期就算了,精力不够,Java 也挺好的
    veve
        61
    veve  
       274 天前
    优秀
    1002xin
        62
    1002xin  
       274 天前
    远离中药,这东西没什么用,只会对你的肝脏造成很大的负担
    RobertWu
        63
    RobertWu  
       274 天前
    牛逼,比我年轻,比我厉害
    NoString
        64
    NoString  
       274 天前
    牛皮哈,楼主加油
    doppler
        65
    doppler  
       274 天前
    不裸辞还能叫年轻人吗
    GhostOffer
        66
    GhostOffer  
       274 天前
    同龄人觉得楼主实力好强!
    nojsja
        67
    nojsja  
       274 天前
    OP 可以专门写一下对开源盈利方面的经验,这个大家会比较关注
    TateLiao
        68
    TateLiao  
       274 天前
    大佬牛逼
    XiaoGouBa
        69
    XiaoGouBa  
       274 天前 via Android
    小哥留个联系方式!
    zhaojun1998
        70
    zhaojun1998  
    OP
       274 天前   ❤️ 1
    @nojsja

    这个不通用的,大概就是上面我说的其他几点:

    - 对用户首次部署 /使用友好,功能人性化。
    - 不做已经有的东西,复刻没有意义,就算做好了,你也改不了用户的使用习惯,得不偿失。但如果你有一个不错的点子,且还没有人做过,那可以尝试下。
    - 热爱且坚持
    - 真诚不作恶,不做营销式宣传,不做标题党,安心做好项目就好了(虽然这可能有悖于盈利本身)

    但这些都需要大量的时间和精力,如果是为了赚钱而做开源项目,大概率还是会失败,实话讲,我并不为了赚钱(虽然这话有点扯),这点钱相对于工资太少了,且付出了三年的业务时间的经历,如果想从头开始以这个为生,先想想,自己是否能接受至少半年甚至一年没有回报。
    zhaojun1998
        71
    zhaojun1998  
    OP
       274 天前
    @XiaoGouBa

    你要干什么~,已经有女朋友了 o(*////▽////*)q
    NebulaGraph
        72
    NebulaGraph  
       274 天前
    开源有这收入不错了,只要不是一线,基本可以自给自足不用为生活发愁了
    plk403
        73
    plk403  
       274 天前
    96 我是废物
    cweijan
        74
    cweijan  
       274 天前
    哇, 看了你之前的帖子, 原来是 zFlie, 不错不错, 不过说一句, Java 其实加密也可以破解的, 读取运行时 JVM 的 class 就能反编译了.
    zhaojun1998
        75
    zhaojun1998  
    OP
       274 天前
    @NebulaGraph

    额,在北京呢,房租就 2600+
    Xhack
        76
    Xhack  
       274 天前
    @defunct9 老杜吗
    go522000
        77
    go522000  
       274 天前
    鼓掌。
    NebulaGraph
        78
    NebulaGraph  
       274 天前
    @zhaojun1998 那也还行吧,一般房租不到收入一半,生活还是能过的
    cyrbuzz
        79
    cyrbuzz  
       274 天前
    🐂🍺。
    liouliuliu
        80
    liouliuliu  
       274 天前
    好强啊,同 98 感觉自己是 fw 。点个👍!
    Daiwf
        81
    Daiwf  
       274 天前
    厉害啊,能分享下平时怎么学习的么。
    usedmasks
        82
    usedmasks  
       274 天前
    感觉技术很强
    binfun
        83
    binfun  
       274 天前
    牛掰
    godfunc
        84
    godfunc  
       274 天前
    xjar 如果不拿走 key (xjar 文件) 不是可以解密 jar 吗?楼主怎么做的?
    zhaojun1998
        85
    zhaojun1998  
    OP
       274 天前
    @godfunc

    魔改了下 xjar ,这个具体不方便透露了
    BenbenXiong
        86
    BenbenXiong  
       274 天前
    想去看看世界
    balabalaguguji
        87
    balabalaguguji  
       274 天前
    很牛,有没做推广呢?现在全靠开源来用户?
    hankai17
        88
    hankai17  
       274 天前
    咨询一下卤煮 我曾经改 upx 但最终还是不能达到可执行文件加密效果 可有通用的方案分享一下?
    Jin2018
        89
    Jin2018  
       274 天前
    行动力很强👍
    zhaojun1998
        90
    zhaojun1998  
    OP
       274 天前
    @balabalaguguji

    暂时没做其他推广,只在 v2 发过几次,基本是全靠开源来用户
    zhaojun1998
        91
    zhaojun1998  
    OP
       274 天前
    @hankai17

    upx 可以加密成功的啊,我就是 upx 加密的,没有加任何参数
    littlewey
        92
    littlewey  
       274 天前 via iPhone
    为你开心,from 开源面对面 思为
    kelvin_fly
        93
    kelvin_fly  
       273 天前
    哈哈,这就是早期互联网的产品~
    kkkiio
        94
    kkkiio  
       273 天前 via iPhone
    楼主很厉害,我也裸辞过 3 个月,计划没这么明确,学了点 MIT 基础课,也没能写个开源项目,如果有人想效仿裸辞,我建议是定个具体且执行难度低的方案,例如项目应该是开了头而不是等到裸辞后再构思。
    RainCats
        95
    RainCats  
       273 天前
    97 ,同写 Java ,话说好奇是开源了哪个方面的东西,可以挣到钱
    xiaoz
        96
    xiaoz  
       226 天前 via Android
    楼主您好,请教下。开源版和捐赠版你是同时两个版本分开维护,还是合并为一个项目的呀?
    zhaojun1998
        97
    zhaojun1998  
    OP
       225 天前   ❤️ 1
    @xiaoz

    分开维护的,基于捐赠版开发,再通过 git 补丁或 jetbrains 家的代码比对来合并,还挺麻烦的,目前没找到更好的办法,只能尽量让代码结构保持一致。
    xiaoz
        98
    xiaoz  
       225 天前 via Android
    @zhaojun1998 感谢,分开维护确实挺麻烦的,我也没想到比较好的办法。
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   753 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 21:30 · PVG 05:30 · LAX 14:30 · JFK 17:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.