
本期《LaunchBox》我们邀请了DBinary老师。他是知乎13万粉丝的技术创作者是“二十二年强力工程师”。白天他做着一份与代码无关的工作业余时间则开发各种硬核有趣的开源项目。他造过编译器、GPU、变声器、调试器、行为分析器也做小游戏、游戏引擎、图形渲染、图像音频编码GitHub上获4000Star。技术之外他擅长写作和表达坚持画画十多年。他的逻辑很简单兴趣驱动。做开源不是为了变现但积累的声誉会自己找上门写文章不是为了涨粉但十多万关注者就这么自然来了学画画不是为了当画家只是做游戏时发现只有自己动笔才能画出想要的素材。“兴趣是第一生产力。你愿意在一个行业投入很多时间这个行业就不会亏待你。” 这是他二十二年的信念。22 年跨界深耕兴趣是最持久的驱动力您自称“二十二年强力攻城狮”横跨GPU、编译器、游戏引擎、图形渲染、数字信号处理等多个领域。是什么驱动您进行如此广泛的技术探索这些领域之间真的能融会贯通吗驱动我的核心就两个字爱好。这一行我做了二十二年见过形形色色的程序员。我发现那些真正厉害的、能在行业里走得深走得远的人几乎都不是靠“上班让干什么就干什么”成长起来的。他们都有一个共同点自驱。不管本职工作是什么他们下班以后一定会自己学东西、自己折腾项目。他们接触的领域不限于编程开发但一定会花大量时间去钻研自己感兴趣的东西。当然我并不否认对很多人来说写代码只是谋生手段说难听点就是“混饭吃”。这没什么问题每个人都有选择自己生活方式的权利。但如果你想在这一行做得久、做得深兴趣是第一位的。至于为什么能横跨这么多领域我的体会是学到深处你会发现这些知识全是融会贯通的。只是不同学科的叫法不一样但本质都一样。举个例子我们写程序有函数在信号与系统这门学科里一个函数就是一个“系统”。程序里的信息流、数据流在信号处理里就是“信号的传递”。不同的学科用不同的术语解释同一件事但底层逻辑是相通的。所以你会发现那些学得特别深的人好像每个领域都懂一点——其实不是他们学了所有东西而是他们掌握了底层规律换一个领域只是换了一套术语而已。开源项目从兴趣到声誉从没指望变现您的GitHub上有PainterEngine软件渲染引擎、SoundLab变声器、PeDoll行为分析器、ImageSigner图像频域签名器等一系列硬核项目。这些项目最初是出于什么原动力开始的这些项目会有收入吗还是回到第一点爱好。我的逻辑很简单每当我深入学习一个新领域怎么样才能证明我真正学会了最有说服力的方式就是把它做出来。项目做出来了你就不用再向任何人解释你的水平东西就摆在那里这就是最好的证据。所以“学东西”和“做东西”对我来说是一个自然而然、水到渠成的过程。我想深入了解一个领域我就会带着一个明确的目标——做出一个什么东西。然后去学习这个领域的知识最后把它实现。十几年前自己做游戏引擎在圈子里是一件非常酷的事情所以我就去做了引擎。后来写编译器、写操作系统相关的东西也很火我也去做了。七八年前网络安全热度很高很多人扎堆做二进制安全我也做了行为分析器、调试器这类工具。再后来数字音效、变声器、假唱检测这些话题很有意思我又去研究了信号处理和音频算法。我做的项目其实跟行业的趋势是重合的。但核心的驱动力始终是好奇心我对这个东西感兴趣我想搞懂它于是我就去学、去做。画画也是我的爱好我坚持了十多年。我做的很多小游戏美术素材就是自己画的因为我发现想真正表达自己心中所想的东西除了自己动笔去画没有第二种选项。至于收入我从没指望靠开源项目本身挣钱。但这些开源项目给我带来了非常可观的间接收入和行业声誉。举个最直接的例子我的知乎自媒体。我从来没有刻意运营过它只是坚持发技术文章、回答我感兴趣的问题。因为我的开源项目足够硬核写出来的内容有料慢慢就有人关注了。现在知乎粉丝有13万多每个月从盐选、活动奖励这些渠道拿到的收益有时候比我的工资还高。再比如我接的很多兼职项目、甲方合作几乎都不是我主动去找的而是别人通过我的开源项目或知乎文章主动找上门来的。他们看到我做过编译器、做过GPU、做过变声器觉得这个人能搞定难题就来找我了。所以我一直强调一个观点开源的直接价值不是挣钱而是建立行业话语权和声誉。你把一个有挑战性的项目开源出来别人看到了就会对你有一个认知这个人能做别人做不了的事。另外从职业发展的角度来看开源项目是非常有力的个人背书。很多靠谱的团队、负责任的HR在招聘的时候真的会去看你的GitHub。你做了什么项目、代码质量怎么样、有没有持续维护这些东西比简历上写什么“精通XXX”要真实得多。在您所有的开源项目中最满意的是哪一个遇到最大的挑战是什么这个问题其实有点难回答。因为我最满意的项目永远是我现在正在做的项目。过去的项目做完了对我来说就没有挑战了我就把它放在那里。如果非要说一个印象最深的可能是去年的项目在一块FPGA上实现了一个能渲染3D模型的GPU。你见过很多人用FPGA做CPU但很少有人做GPU。这个项目涉及的东西非常多信号与系统、图形学、RTL寄存器传输级设计、底层驱动、上层驱动加载纹理和模型……它几乎打通了计算机科学的各个层级。这类项目很少有人做过完成这个项目的时候还是很有成就感的。做这个项目过程中最大的挑战是调试。我们写软件程序的时候有编译器、有调试器你可以打断点、看变量、单步执行非常方便。但FPGA不一样你必须在电脑上做仿真仿真通过了再把代码烧录到FPGA板子上。然后你发现它工作不了。这时候你完全不知道问题出在哪里。这时得用逻辑分析仪ILA去抓信号波形看每一个信号在每一个时钟周期是什么状态然后对比你的设计预期一点点排查。这个过程极其繁琐而且大部分时候你抓到的波形跟你想象的不一样你又要反过来怀疑是不是自己的分析思路有问题。而且这种问题没办法问AI。AI只能给你一些车轱辘话比如“要仔细检查代码”、“要注意时序约束”之类的听起来都对但对你解决实际问题没有任何帮助。真正能解决问题的方案必须靠你自己去思考、去设计、去尝试。一种方法不行就换另一种一个一个去测试。AI时代底层硬功夫才是真护城河现在AI编程工具非常火很多开发者都在用。您怎么看AI对程序员这个职业的影响程序员还有必要去深入底层、亲手造轮子吗我经历过一个“Vibe Coding热恋期”。大概在几个月前我也觉得AI太强大了让它帮我写了好多代码。那段时间效率确实高。但是一两个月之后我主动降低了AI的使用频率。现在基本上只让AI帮我找Bug或者给修改建议很少让它直接生成核心代码。因为我发现AI写的代码我没办法维护。除非我每一行都自己看过、理解过。就像你高考的时候一道题你觉得自己“会做”但如果你不亲自写一遍你永远不知道自己到底能不能做对。代码也是一样不亲手写过这个能力就不属于你。而且对于我做的编译器、工控、网络协议、底层驱动这类项目需要对代码有非常精细的控制。你用自然语言去描述你要实现的功能跟直接写代码效率上其实差别不大甚至自己写还更快。因为这些领域的设计细节太多了你用自然语言描述出来可能比写代码还费劲。当然我的情况不一定适用于所有人。如果你做的是前端页面、小程序、简单的管理系统那可以大胆拥抱AI。所以我的态度是因人而异。做底层、做架构、做算法用AI就得非常慎重你只是想快速验证一个想法、做一个产品原型那AI是非常好的工具。您认为在AI时代程序员的“核心竞争力”会发生怎样的迁移哪些能力会变得更重要哪些会被弱化我的判断是程序员这个行业整体会萎缩初级岗位受到的冲击最大。因为大部分互联网项目其实用不到多高深的技术。简单的如 画画界面、做做数据增删改查CRUD、实现一些交互逻辑。这些东西AI做得又快又好。以后你再想靠做一个“企业管理系统”、“出入库小程序”去接私活价格会被压得非常低可能几百块钱就有人做了毕竟只是烧Token的事情。但是有一些类型的项目AI短期内很难替代第一需要长期维护的项目。一个工控系统要在野外跑一年不出问题这种项目不是写完代码就完事的。它需要你不断地根据现场反馈修Bug、优化、适配新的硬件。这个过程是在解决那些“还没有暴露出来的问题”而这些问题AI根本不知道它们存在。第二依赖行业经验的项目。比如你做一个医疗设备的数据采集系统你不仅要懂代码还要懂医疗设备的通信协议、懂电气特性、懂安全规范。这些经验是你在现场一个个坑踩出来的AI无法从公开数据里学到。第三底层和基础设施项目。编译器、操作系统、数据库、图形引擎……这些领域对性能、稳定性、可控性的要求极高AI写出来的代码很难达到工业级标准。所以我的结论是那种大风大浪都见过的老程序员价值反而会上升而那些只会写CRUD、调API的初级程序员日子会越来越难过。如果给年轻程序员一个建议我会说不要盲目追新框架、新概念。多花时间在那些经久不变的基础知识上例如数学、数据结构、计算机组成原理、操作系统、信号与系统。技术是有保值性的。我年轻的时候也喜欢追新学了很多当时很火的语言和框架结果几年之后这些东西就没人用了。那些基础知识经历了时间的考验它们不会随着某个框架的过时而被淘汰反而会随着你经验的增长产生复利效应。当别人还在学习新工具的使用说明时你已经能看透工具背后的原理这才是真正的护城河。软技能写作、表达与技术变现您在知乎简介里写“擅长吹牛”。技术圈常说“Talk is cheap. Show me the code”您怎么看“吹牛”的价值“吹牛”是每个技术人必须掌握的生存技能这不是开玩笑。不能说“我只会写代码”然后就一条路走到黑。技术能力要变成经济价值中间有一个必不可少的环节就是推销自己“吹牛”本质上就是这个能力。所以我认为表达能力、营销能力、沟通能力是技术人必须去学习、去提升的。不要觉得这是不务正业没有价值。你把时间投入到这里收益很可能比你死磕一个算法优化要高得多。就像高考你数学已经能考140分了想再提到145分非常困难但你英语只有90分花同样的时间提到120分要容易得多。你应该把时间投入到那些能带来乘法效应的事情上而不是在已经很擅长的事情上继续卷。那些真正厉害的技术人往往不是某一个领域做到99分而是多个领域都做到七八十分。而且这种“T型人才”抗风险能力更强。除了表达写作能力也很重要。我当过文学社社长学生时代就写小说比较注重文字表达。怎么写东西让人愿意看、而不是划走这是一门学问。写作得有自己的观点、自己的语言风格把硬核的内容用有趣的方式讲出来。对想要积累个人品牌、探索技术变现的程序员您有什么具体的建议我总结三条路径吧。第一做自媒体。知乎、B站、小红书每个平台的调性不一样得选对赛道。知乎偏图文、偏硬核适合技术深度内容B站偏视频、偏年轻化小红书商业变现能力强但不一定适合所有技术人。你不用全职做业余时间坚持输出流量收益、商单、盐选一个月几千块钱还是不难的。第二建立行业声誉让机会主动找你。我绝大部分的兼职项目、甲方合作都不是我主动找的而是别人通过我的开源项目或文章找过来的。他们遇到一个难题知道我做过硬核项目就来问我能不能解决。这就是行业声誉的价值。怎么建立声誉做开源项目、写有深度的技术文章、在行业社区里持续输出。第三考公考编。这个建议听起来跟技术没关系但我觉得很重要。不要把自己一辈子绑死在私企和大厂里早点做打算。公务员、事业单位、国企虽然工资可能不高但它能给你充足的时间和安全感让你能做自己真正想做的事。未来规划与给程序员的建议您未来有什么新的项目规划我一直在做新项目基本没停过。我现在在做的是一个编译调试系统知乎上已经发了一些预览版。这类项目的特点是GitHub上很少有人做过特别有挑战性。而且我这些项目是有延续性的。前一个项目做完它很可能会直接被用在下一个项目里。再下一个项目又可能用到上一个的成果。环环相扣越做越深。我的下一步目标是做一个跨平台AI Agent——像钢铁侠里的JARVIS那样可以在手机、手表、电视之间自由跳转随时随地为你服务。这听起来像科幻但技术上有很多底层问题要解决多设备之间的通信协议、统一的编译框架、不同硬件平台的适配……这里面的门道很深。我想去攻克这些问题。我的逻辑是AI会越来越强但总有它暂时做不了的事情。那我就去做那些事情做出来了再让AI去用。您如何看待程序员的“35岁危机”35岁危机的本质不是年龄而是资产结构单一和平台依赖。因为企业存在的唯一目的就是盈利。当社会总需求下降行业挣不到那么多钱了只能裁掉“性价比不高”的员工。很多在大厂拿高薪的程序员错把平台Buff当成了个人能力。你在大厂能拿30K、50K月薪不一定是个人值这么多钱而是这个平台、这个行业红利在给你加持。一旦裁员落到你头上你出去找工作发现小厂根本不愿意给你开同样的薪水这时候你才意识到原来我之前的高薪不完全是自己的价值。怎么检验自己的真实价值很简单假设自己净身出户不投简历不靠任何公司平台就靠自己的本事——做外包、做自媒体、卖自己的产品——你一个月能稳定赚多少钱如果你能做到几万的收入裁员根本影响不到你你就有了真正的底气。所以我一直强调一个理念程序员要尽早建立“多份资产”不要把全部筹码压在工资上。资产可以是个人品牌技术声誉、自媒体、开源项目、外包渠道、产品收益……任何能脱离平台持续带来价值的东西。对年轻程序员和刚入行的开发者您有什么建议第一如果不是真的热爱这行慎入。计算机行业的红利期已经过去了如果你看着代码就头疼、就犯怵趁早转行去干自己真正喜欢的事。第二如果你真的热爱那就投入时间。我不觉得自己有什么特殊的创造力。我只是把别人刷抖音、泡茶、钓鱼的时间花在了写代码和学技术上。你投入的时间越多产出就越大就这么简单。第三运气也很重要。不是每个人都有平等的资源。有些人每天在为吃饭挣扎有些人被家庭琐事缠身没办法投入大量时间。所以我不羡慕那些特别牛的人也不会指责那些选择躺平的人。每个人有每个人的活法没有对错。但有一句话我相信是真的你热爱这个行业愿意为它投入时间它总会用某种方式回馈你。可能是直接的经济收入可能是行业名气也可能是某个意想不到的机会。比如最近我在知乎开发者大会上展示的一个小游戏本来只是出于兴趣做着玩的结果被一家幼教机构看到他们主动联系我谈合作。兴趣是最好的老师而时间是最公平的见证者。选你所爱爱你所选然后把它交给时间。故事征集《LaunchBox》是程序员客栈推出的技术项目孵化平台致力于为全球顶尖技术创业者与极客开发者提供项目展示、推广与孵化服务。无论您的项目专注于AI、区块链、开源技术还是其他颠覆性创新领域LaunchBox都欢迎在此首发。欢迎大家推荐朋友或自己来参加我们的节目分享与对话是一件利他又利己的事。