Ruby 怎么就是网红了? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
FrankFang128
V2EX    问与答

Ruby 怎么就是网红了?

  •  2
     
  •   FrankFang128 2022-04-07 17:15:45 +08:00 3964 次点击
    这是一个创建于 1335 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先聊下我最近看到的一篇叫做《不要学习「网红」编程语言》,里面提到 Ruby 和 Rails 的衰落,并且告诫大家慎重学习 Ruby 。

    我看完真的挺想吐槽的……

    Ruby 和 Rails 是网红?

    首先,最近十年中国的网红编程语言怎么排也排不到 Ruby 吧?最红的 Python 已经被培训机构卷成红海,排名第二的网红我不知道应该选 Javascript 还是 Java ,曾经红极一时的 PHP 现在怎么也是网红前三吧?最近一年的网红当属 Go 和 Rust 这对兄弟了。可 Ruby 何时在中国成为网红过?我觉得这篇文章的作者应该是捡软柿子捏,找了个最不红的 Ruby 吐吐槽,可能是以为中国的 Ruby 程序员已经死绝了,可惜我就是 Ruby 程序员……

    好吧,不讲国内只看国外,Ruby 确实在国外红过,但 Ruby 在国外也还没死啊。

    Tiobe 语言排名中 Ruby 还排在 Rust 、Dart 、Lua 、TypeScript 、Clojure 前面。

    如果是看趋势,那 PHP 的颓势妥妥地超过了 Ruby:

    Stackoverflow 提问量

    Google 搜索热度

    所以在我看来,Ruby 在国内从来没红过,在国外也不是死得最快的,作者只是挑了个粉丝最少的怼。

    不推荐学 Ruby 和 Rails ?

    其次,不知道作者为什么不推荐学习 Ruby 和 Rails 却推荐 Node.js 和 Python 。我虽然也不是很推荐大家学 Ruby on Rails ,但是我「更」不推荐 Node.js 和 Python 。

    • Node.js 的 Express 是借鉴了 Ruby 的 Sinatra ,为什么我这么说?因为这是 Express 的作者 TJ 在 Express 1.0 beta 的发布日志中说的原话

      Yesterday I released Express 1.0.0beta, a Sinatra inspired Node web development framework.

    • Python 的 Flask 据说也是受 Sinatra 启发而开发的。(我并没有找到原话)

    • Node.js 的 Yarn 借鉴了 Ruby 的 bundler ,以及 Rust 的 Cargo 还有 npm

    • Node.js 的 SASS 就是从 Ruby 社区拿来的

    • Node.js 的 Sails.js 后端框架试图模仿 Rails 但是失败了

    Ruby 社区有太多经典设计值得程序员搬运到其他语言了。

    如果有人叫你不要去看 Ruby / Rails ,我猜是他不知道 Ruby / Rails 里有多少宝藏。

    学 Ruby 和 Rails 的正确姿势

    读到这里你可能认为我的意思是推荐大家「学」 Ruby 和 Rails 。但并不是。

    我的意思是推荐大家用其他语言去「抄」 Ruby 和 Rails 。

    毕竟用 Ruby 和 Rails 的商业公司很少,所以我推荐大家用 JS 、GoLang 、Rust 、Java 把 Ruby 和 Rails 里面做得好的东西抄袭过来。

    但「抄」的前提是你要了解 Ruby 和 Rails 。

    所以你一定要看看 Ruby 和 Rails 里的宝藏,虽然你大概率不可能靠 Ruby 和 Rails 吃饭,但你可以靠「抄」 Ruby 和 Rails 晋升。你没有听错。比如我就曾在阿里巴巴看到有后端用 Java 和 Groovy 造出了一个类似 Rails 的框架,极大地提高了开发效率,广受好评,最后晋升(真事儿)。


    后面是我的新项目课介绍,就不贴在这里了。

    14 条回复    2022-04-16 00:24:55 +08:00
    FrankFang128
        1
    FrankFang128  
    OP
       2022-04-07 17:20:44 +08:00
    刚发帖就沉底,应该是触发了什么规则了
    goofish
        2
    goofish  
       2022-04-07 17:42:35 +08:00
    OP 现在不搞前端培训了吗
    putaozhenhaochi
        3
    putaozhenhaochi  
       2022-04-07 17:53:47 +08:00 via Android
    方应杭不是搞 js 的吗
    Ziya
        4
    Ziya  
       2022-04-07 17:54:22 +08:00
    没看懂,不推荐 Python 的原因是“Python 的 Flask 据说也是受 Sinatra 启发而开发的”?
    FrankFang128
        5
    FrankFang128  
    OP
       2022-04-07 17:55:49 +08:00
    @xhldtc 搞的,平时还要用 Ruby 、JS 做开发。
    Leviathann
        6
    Leviathann  
       2022-04-07 17:56:04 +08:00
    grails 好像就是仿的 ror
    不过 groovy 现在也没什么人用
    时间终将证明动态类型语言只是类型系统不够强大时的妥协
    FrankFang128
        7
    FrankFang128  
    OP
       2022-04-07 17:56:41 +08:00
    @Ziya Python 我了解的不多,就只说了 Flask 。
    FrankFang128
        8
    FrankFang128  
    OP
       2022-04-07 17:57:15 +08:00
    @putaozhenhaochi 平时还要用 Ruby 、JS 做开发。
    NathanInMac
        9
    NathanInMac  
       2022-04-07 18:00:13 +08:00
    Rails 的工程化实践在十几年前就是业界非常领先的,我很庆幸解除过 Rails ,了解了他从路由到数据库管理到 worker 的一系列设计思路,虽然现在早就不用 Rails 但是像楼主说的那样,Rails 有非常多其他框架语言值得学习的东西,Rails 的那些 Conventions 也引导着用户去学习了很多最佳实践
    6IbA2bj5ip3tK49j
        10
    6IbA2bj5ip3tK49j  
       2022-04-07 18:05:32 +08:00   1
    Ruby 已经算个过气语言了。
    anonymousar
        11
    anonymousar  
       2022-04-07 18:23:07 +08:00
    没什么人用 用的人还一直吹
    nine
        12
    nine  
       2022-04-07 18:31:17 +08:00
    Rails 做 web 开发、后台开发、API 开发,目前还是无敌状态。

    只是不要用它默认前端那一套就行了。
    zythum
        13
    zythum  
       2022-04-07 20:12:23 +08:00
    Ruby 算是语法糖鼻祖了吧。看了很多现代语言特征都有 Ruby 的影子。
    agagega
        14
    agagega  
       2022-04-16 00:24:55 +08:00
    今天的 Ruby/Rails 有那么点「人人皆说抽象话,无人识得李老八」的状态了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5225 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 01:24 PVG 09:24 LAX 17:24 JFK 20:24
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86