公司Rust团队全员被裁,只因把服务写得「太稳定」:“项目0故障、0报警,那养着3个Rust工程师没用啊”
reddit原帖:https://www.reddit.com/r/rust/comments/1kp74t2/rust_success_story_that_killed_rust_usage_in_a/
翻译版:https://mp.weixin.qq.com/s/skFp8vh5z0kYb4jTuM9WNA
不确定是真是假,但是感觉真实性挺高的(
这个了解了下事情来龙去脉,对原团队感到惋惜吧,他们没有做错什么
有点营销号的感觉 最近好多公众号在发 制造焦虑
并不是这样,要我说用任何语言都不可能写出bug free系统,要写出高质量的代码,完全不在于语言,而在于测试覆盖率以及对算法理解是否深入
我感觉rust确实更容易写出安全的代码
单元测试覆盖确实是很好的办法,但基本上所有语言上了多线程以后测试都极其困难,rust也不例外
至于bug free,这个项目比较小,所以写出来也是有可能的
而且rust的调试体验极差,线上调试困难,调试体验不如成熟的Java或者C++
这个确实没得说(
但是cpp真的线上调试体验很好吗(这个我不太了解
你对Rust for linux有什么看法,我感觉就是画蛇添足,写底层的东西必然会使用到大量的 unsafe(),那rust最大的卖点已经没了,你说一个语言,如果你最安全的部分是靠“不安全”撑起来的,那你到底安全在哪?
我对rust in linux没什么看法(
目前似乎也不是全用rust,底层操作固件硬件肯定是需要unsafe的,但是这块可以交给c来实现
我不确定目前是什么情况
好像之前在微信公众号刷过类似的文章
我始终坚信一个语言不可能万能
rust目前确实存在rewrite everything in rust这种行为(
至少我不是很认可
目前rust的是计划写一些新的驱动,和文件系统,也是是跨语言调用复杂,接口设计费劲,调试难度变大,还得维护两套代码,还要用一堆unsafe,所以我觉得和直接用C语言没有区别,引入Rust只是增加维护成本
但是万幸现在都是opt-in, linux很多老维护者都是反对的
只要你的代码不变动,那么任何语言都有这个问题(毕竟你不可能一直创造bug)
如果你的代码有变动(新功能),那么bug一直会被创造
我看文章里面的意思主要是rust完成的太快,几乎没迭代过程(
而且也没有留下什么bug,所以开发完就无所事事了
我也不知道为什么有的公司会放弃成熟的Java/Go/C++架构去用Rust,rust很多底层库都是unsafe, 你的代码写安全了,但是底层库不安全,你库炸了,胶水跟着炸
这就是业务固定对程序员不好的地方,任何语言都会
或者说与语言无关
Rust开发周期比Go/Java长好多,因为一直要和编译器斗智斗勇
对很多公司来说,安全不重要
能用很重要
其实我个人来说我宁愿写的时候和编译器斗智斗勇也不愿意写完java调试一整天()
也看项目吧