前段时间有人找我,请我推荐一个编程语言专家给他的公司。我问他要做什么,他说要设计一个 DSL,作为网络安全系统的“规则语言”。于是我就再次想起了多年前那个关于 DSL 的故事,记录于我 2017 年的文章《DSL 的误区》网页链接https://www.yinwang.org/blog-cn/2017/05/25/dsl
我没法推荐我认识的专家给他,因为我之前的同学,最差的也都在开发 Rust 语言编译器,或者在 C++ 的 language committee。没人想设计这样的 DSL。当然我也不想做这个事。
之前中国某名企找我,想请我做高级顾问,指导他们设计网络安全系统里的“规则 DSL”。我了解了一下,最后也没答应。为什么搞网络安全的总想设计这样的语言呢?我不明白。我不想卷入任何类似项目。希望这些网络安全公司都先看看我的文章《DSL 的误区》再来找我谈话。
然而《DSL 的误区》中提到的 DSL 的作者,居然在之前的公司坐上了 Distinguished Engineer 的职位。继续像当年一样,成天吹牛,装模作样,显示自己懂这懂那,不做任何有价值的实事,尽在各种项目上添乱。这种人对于我来说就是民科,后来靠着那张嘴混到这种位置。我当年居然和他们共事了几个月,想想都觉得是不该发生的。
我发现这种人总是满口的 functional programming 之类的口号,而且他们特别在乎 Haskell 那样的语言。这样领导们就会以为他们很厉害,继而委以他们无法胜任的任务,最后无法收拾。
当然,这 DSL 一直以来都是公司里的头痛问题。甚至后来有个 VP 离职的时候明确告诉大家:我们不需要这个 DSL,它从诞生以来就是一个麻烦,没有任何意义。
对的,当我看见它的第一眼就知道是一个错误网页链接。https://www.yinwang.org/blog-cn/然而这个错误持续到现在,而且继续存在,流传到很多其它公司……
这样的公司终于走向了没落,被新兴的竞争对手远远抛在脑后。最后,有点本事的人都不愿意为他们工作,纷纷离职,剩下一些只会吹牛的 Director 和 Distinguished Engineer 们。各种裁员和宫斗剧,演出一系列丑陋的故事……
为什么我知道这么多呢?因为我现在就在这个公司。是神安排了我回来,让我目睹这一切,让我确信了自己当年的直觉和判断全都是正确的,让我再次地认识到我是谁,我该做什么。
这一切就快结束。我下个月就会离职,我不会再为任何公司工作。