Ruby 是一门具有强大生命力的编程语言。目前 Ruby 已经进化到了 3.x 版本。相比于 2.x 版本,Ruby 3.x 版本更加强大,更加灵活,更加简洁。关键是更快,最快是 2.x 的 3 倍。Ruby 开发团队还在持续改进 Ruby 的开发体验,以便更好地满足 Ruby 开发者的需求。
目前 Rails 已经演化到了 7.x 版本,7.x 版本,更加强大,更加灵活,更加简洁。借助于即将发布的 Ruby 3.1。Ruby Web 开发会持续流行。
相比于静态编程语言,比如 Go、Java,基于 Rails 的 Web 项目运行相对比较慢,但是它的开发效率更高,同样的需求,如果用 Java 需要一周左右的时间,在 Ruby 中,只需要 1-2 天就能搞定。
现在计算机硬件成本逐年降低,研发人力成本逐年升高,对于需要持续快速迭代业务的互联网产品,Ruby 是个非常好的选择。
我们可以通过搜索相关的招聘信息,了解当前市场上要求 Ruby 程序员需要具备什么技能:
我们也可以看出,企业招聘 Rub 开发者主要进行 Web 开发,企业中的 Ruby 开发者,通常不局限于后端开发,还要进行基础的前端 Web 开发,必要时还要进行服务器运维。简单说,企业需要一个解决问题的人。
相比于其他后端语言,Ruby 的学习门槛虽然不是最低的,也是较低的。Ruby 的语法是最简单的,更人性化。如果你具备基本的后端开发能力,比如用过其他编程语言比如 Java、Python 等 开发过 Web 后端,那你很容易转型为 Ruby 程序员。
Ruby 工程师目前还是比较稀缺,Ruby 是一门比较优秀的编程语言,尤其适合创业公司快速迭代业务,如果团队具有资深 Ruby 工程师,Ruby 也能抗住亿级流量。国内有很多千万级流量的基于 Ruby 开发的互联网产品。目前学习 Ruby 还是非常有前景的。由于市场上 Ruby 工程师比较稀缺,我所在的公司每次招聘 Ruby 工程师的周期都比较长。
大部分 Ruby 开发者都是先接触到 Rails,在使用 Rails 的过程中,遇到一个又一个坑之后,才去补足 Ruby 相关的知识。这个路径虽然符合现实,但是并不合理。Rails 是一个容易上手,但是很难驾驭的全栈 Web 开发框架,在没有良好的 Ruby 编程基础能力的情况下,更难驾驭 Rails。在实际工作和生活中,我见过很多 Rails 工程师,熟练掌握使用 Rails 执行增删改查操作,但是一旦涉及到 Ruby 核心知识,大部分都是一知半解。不可否认,Rails 是基于 Ruby 开发的 Web 开发框架。Ruby 的简洁性导致了大部分初级 Ruby 工程师直接跳过 Ruby,就能进行 Rails 开发。这会导致一些经验不足的工程师,后续遇到很大的成长瓶颈。
每一种编程语言都有其适合的领域。比如 Ruby 适合于 Web 开发,但不适合人工智能领域和科学计算。优秀的程序员,从不拒绝接触到更多的技能领域。如果你打算做人工智能相关的开发,建议你放弃 Ruby, Python 可能是一种更好的选择。如果你打算使用去做前端开发,建议你放弃 Ruby,JavaScript 是一种更好的选择。