这个问题很复杂,我用自己的项目 scheme-langserver (
https://github.com/ufo5260987423/scheme-langserver )为例说一下。如果说的不对、不成熟、没见识,我这个人缺点就是情绪化,希望能够友好的指出。感谢。
scheme-langserver 支持的语言是 scheme ,它本身有三个特点:1 )工业用得少; 2 )学术用的多; 3 )很多优秀的程序员都承认它很有吸引力。
一、开发 scheme-langserver 的必要性
编程技术是逐步改变人类的生活的,比如 2022 年的 scheme and functional programming workshop 就有一篇文章讲的是量子计算里面的 scheme 语言的用途( Scheme Pearl: Quantum Continuations )。也就是说,人类社会对于编程技术的需求是在广度和深度两个方面加强的。这就需要优秀的人,以及围绕优秀的人做配套的生产体系——实际上这就是学术界的作用,也就是上面的特点 2 。
然后大规模的工业化开发使用 scheme 实际上是高成本的:主要是 1 )代表着高技术和低技术开发人员的比例错配问题——就好像你在应届毕业生里面去找用 scheme 做主力开发的,我相信不但 java ,连 rust 的零头都不到。
但是,这些人和优秀的程序员肯定存在一定交集。而基于 3 ):永远有一些普通程序员有一个较好的 scheme 的编程工具,因为他们自己不论水平高低,都必然处在一个需要用 scheme 的环境中。且产业界不可能在这些人做成功之前来大张旗鼓的做这个领域。
实际上,目前 scheme-langserver 也是 r6rs scheme 这个被 lisp 程序员普遍接受和了解的细分领域唯一的语言服务器。而这个工作是我做的,我现在只需要把功能维护好然后等风来:等 3 )这部分人出来就好了。
二、如何自保
大厂不屑于抄是因为它们不屑于用;个人去抄的话,这方面很多资料实际上都是公开的,但是过去十年都没有人做出来笑。如果还有其他的情况我好歹青史留名了,这个的确没什么办法,我也不想在这个方面费太多精力。
这里一定要记住一个问题,当狗就只能吃盆子里给的,桌子上掉下来的你去捡说不好被踢一脚。
合同不要随便签,甚至就不要签:人家玩人心玩合同牛的很,你玩技术玩不过。真要用合同保证什么,让他们直接给钱,用捐的方式也好,用加密货币也好。别信任要和你签合同的人——你和你爸妈老婆孩子签合同么?签合同才有问题。
三、如何做事业
我的观点很简单,自己快乐就是赚,有人脉就是赚——比如学生用 scheme-langserver 写代码,那你就赚了,因为你影响了他们的一生。大不了以后再做点什么公众号什么的变现一下。
如果有人直接给,我可以请进家门吃顿饭,可以讨论一些更进一步的事情,甚至和代码无关的事情。也就是把用户当成自己的资源。
讲老实话,我们做开源是因为直接挣钱的生态位里面没有我们自己的位置。既然如此,拼的就是守株待兔,拼的就是蓝海。上红海去拼,没前途的。