瞎扯淡 再见啦,Ruby on Rails

imwildcat · September 07, 2023 · Last by losingle replied at October 20, 2023 · 4080 hits

由于今天 DHH 火速 merge 了这个 PR(https://github.com/hotwired/turbo/pull/971),感觉对这些年 Rails 的管理非常失望。水一篇博客: https://blog.wildcat.io/2023/09/goodbye_rails_zh/

最近也在被强迫使用 TypeScript。Ruby 和 JavaScript 用久了,总觉得 强类型(被博客带歪了) 静态类型提供的那些约束本该是程序员自己的意识,主动思考还是被动思考的差别罢了。我觉得程序员写代码时的思维应该是主动的、清醒的、活跃的,而不是被动的、怠惰的。

另外,没看明白什么叫“不能正确处理代码接口”?

Reply to qiumaoyuan

简单来说,就是接口的信息遗失了。调用者更容易出现错误,比如:

https://github.com/hotwired/turbo/pull/971#discussion_r1317383623

一直特别不习惯 TypeScript,感觉 JavaScript 足够了

尽管 PR 下质疑声一片,但从 PR 创建到 merge 不到 2 个小时,没有事先讨论,直接一个 breaking change。另外还有的代码感觉都没 review

查找替换,快速干掉😂

Reply to rennyallen

退一万步,即使他这么做是对的,但是 PR 里无视反对意见,直接合并,完全是滑天下之大稽。更不用说 PR description 只是一个干巴巴的链接到自己博客了。

锁 thread,不回复。完全是熟悉的味道。

Reply to imwildcat

评论区都炸锅了,只能给锁了。 https://github.com/hotwired/turbo/pull/972 Add TypeScript PR 直接被关了😂

确实一言堂了😅

就因为这个就和 Rails 拜拜了?虽然很激进,但是 Rails 还是我最喜欢的框架。

这事情和 Ruby on Rails 关系不大吧,毕竟这是个 js 库。

前后端分离好 monolithic 也好,TypeScript 好 pure JavaScript 也好,解决需求就好

换 Elixir + Phoenix 😎

附上 Elixir 课程:


附上 Phoenix 课程:

omakase 的副作用,還好我完全沒想法碰 rails 團隊的前端方案…

他删了,那你还能用 typescript 不

rails5 往后基本都是在前端上折腾了,不过我基本都用 api 模式了,不影响

Reply to qiumaoyuan

程序员写代码时的思维应该是主动的、清醒的、活跃的,而不是被动的、怠惰的。

说的太好了,写的慢不代表想的少,三年程序员码代码速度是最高的,因为他们写下代码的时候,就是在写代码。这种情况的确上 typescript 有助于提高质量。

Reply to imwildcat

不锁还能怎么办?DHH 明白对方要干嘛,但肯定不会妥协的,不如锁了,节省时间。(没有洗地的意思)

比较好奇怎么做大家才觉得妥当?核心团队做出 break change 的决定后,然后花几个月时间在社区说服所有人然后再进行?

而且这是 turbo 7 升 8 的"break" change,任何库升大版本都会有很多不兼容旧版本的改动,都会有不同意见,很正常的事。

Reply to mizuhashi

无聊的我都研究了。。。turbo 目前比较尴尬的地方在于,为了得到一个页面不刷新,导致其他前端库的调用都多少有问题,怎么说呢,有点得不偿失。

现在不都前后端分离么,不影响继续使用 rails 啊

Reply to ericguo

雀食,当年 ROR 之所以惊艳,就在于 ruby 与 java 本质上的区别。而现在他们持续折腾 js,不说在前端领域注定失败,但至少是难以超越其他前端工具链的,因为都是 js

看上去感觉是,官方与民间对这个开源项目的认知不同。

官方:我开源出来主要是为了展现实力,顺便让你们了解项目的功能性、安全性,除此之外,没别了,你们直接用就好

民间:我参与这个开源项目是因为我信仰 democracy,人人都可以发表意见……

Reply to ericguo

还有写不出来 10 行以内的简单方法可能也容易依赖这些特性吧。毕竟代码写得复杂,脑容量就不够了。

终于去掉了 TS

嗯,好久没这么热闹了,出了点动静。

代码不加 type 的都是好记性!不爱 Type 干嘛搞 Class 这个概念呀?都用 Object 得了。花太多时间来确定老代码的返回 Type。

其实这是一个积极的更新!ruby 社区也要与时俱进

一开始,的确是觉得 ts 挺好的,甚至是惊叹,但的确随着开发的进行,有时候看一些库源代码的时候,看到里面那些天花乱坠的类型声明,完全没有可行性,加上自己写代码时候,经常也会被一些类型绑住手脚,的确自己也越来越在反省,自己用 ts 对还是不对,说实话,是想打退堂鼓了。至于 turbo 的这个事情,感觉和我们并没有直接的多大关系,从之前 coffeescript 的走势看,我自己的开发里面前端已经脱离了 rails。

主厨精选

Reply to pzgz

其实看源码最大的问题时,ts 总是会跳转 d.ts 声明,导致看不到代码实现,只能看到函数签名

分享 DHH 最新的观点输出:

Reply to flask

Youtube

中文字幕翻译的很清楚

作为主要开发人员,换个语言,别人内部讨论好了,直接执行,又不影响使用有啥问题?为什么要失望?苹果公司推出新产品改了好多设计也没跟你商量,苹果的管理是不是也让你失望了。

Reply to benzhang

这种库用了就是影响了(到你 project 代码里了),哪天你需要追踪源码实现、覆盖原功能时,有 Type 声明的肯定帮你节省时间、也可能提高系统稳定性。

Reply to rupertqin

调皮哦![哈士奇指人😏 ]

42 Floor has deleted

TypeScript 的真名是 AnyScript

Reply to rupertqin

喷子就是多,已经不涉及技术了。DHH 的决定我不反对,库不好用我就不用,表达下技术观点某些人就涉及生活了。

Reply to haohaodehao

拿个简单易懂的生活举例,就骂人喷子?首先我没喷,第二,你先骂人

Reply to willx

你可以向下找实现

You need to Sign in before reply, if you don't have an account, please Sign up first.