RubyTuesday Ruby SH 薄荷聚会有感

hewe · 2016年05月23日 · 最后由 michael 回复于 2016年05月24日 · 4119 次阅读

我参加了这么聚会,但是有一个感觉,难道我们做ruby的,只是用rails做web开发吗?难道就没有做其他的吗? 会上讨论的几个topic,基本都是关于rails的,请大神指导。

PS:目前我只是用ruby做一些自动化脚本和公司的架构对接,活着做一些小的工具。

共收到 24 条回复

@lgn21st 一直想在会上问的,没好意思。

答案其实可以很复杂,我开个头,这个问题并非只有我能回答。

首先,用 A 做 B,这个选择应该由 B 来导向,如果做 Web 开发,Rails 是不是一个好的选择呢?我觉得是,但并不是唯一选择。

其次,用 A 做 B,有的时候取决于你对 A 的掌握程度,如果对 A 掌握的足够熟练,能解决 B 的问题,那么选择就是合理的。

最后,除了用 A 做 B,还能用 A 做什么,这个我们很少讨论,但是 Rails 几乎只能用来做 Web,但是 Ruby 适用的场景非常多,远远超过 Web 本身。

但愿Ruby能丰富你的人生,而非限制它

我非常想用Ruby做科学计算,可是根本没库 每次写Scipy感觉都被艹了一样

可以看下 https://github.com/rails/arel 已经跳出了 web

目前 Ruby 大部分应用以 Web 开发为主,而 Web 开发中以使用 Rails 为主,这个现状导致每一次 Ruby 的会议或者活动通常需要有 Rails 一席之地,不过这次活动的 topic 并不全是 Rails 啊,:)

但是 Rails 并不是 Ruby 的全部,还有很多其他选择。首先使用 Ruby 做 Web 开发,除了 Rails,还有 Sinatra,Grape,Padrino 和 Hanami 等等供选择。另外不做 Web 开发,Ruby 在测试,系统管理等等也有成熟应用,比如 Cucumber,Chef,Puppnet,Homebrew,CocoaPods,不过确实不多。

Ruby 其实是一门年轻的老语言,虽然 Ruby 诞生于 1993 年,但是 Ruby 在世界范围内被人熟知大概是 2006 年 Rails 获得 Jolt Award,在 2006 年 Rails 开始火起来时( github, twitter 等一批知名的网站就是在那段时间内用Rails 开发出来的),Ruby 才开始被人们熟知,也就是说从 93 年到 2006年,整整13年时间 Ruby 默默无闻,相当长一段时间没有人知道有这样一个语言存在,这可能是造成 Ruby 的应用领域比较狭窄的一个原因, 为什么 Ruby 会有这么长的一段沉寂期,这应该是其他原因造成的,而不是 Ruby 自身的原因,总之是金子总会发光,Ruby 以后会不会在其他领域爆发这个还真说不定。另外说一句,我最开始玩 Ruby 不是用 Rails 做 web 开发,而是为一个叫 RPG Maker 的游戏框架写 Ruby 脚本玩。

Ruby 在其它领域的现状,主要不是 Ruby 语言本身,而是领域相关的社区及资源远远不完善。

与 Ruby 目前的圈子组成也有相关,在 Web 领域,Ruby 开发者自然当仁不让。但在其它领域,要么是 领域专家不了解 Ruby,人家自然用自己熟悉的 语言 做项目, 要么是 Ruby 开发者( 因为主要集中在 Web ) 不了解其领域,无法用 Ruby 来写该领域的项目。( 不是说没有人,只是相对 Web 领域, 其它领域的 Ruby 开发者占比太少). 互为因果吧,结果就是现状: Ruby 在强项领域一直很强,在弱项领域一直很弱

Python 的很多领域的库, 用 Ruby 不能实现吗? 当然能。那用 Ruby 来实现一个吧, 呃....... 这方面不懂啊。 ;)

领域相关的社区及资源还是需要一步步来, 先有项目,然后再逐步完善吧。其实 Ruby 能做很多事情。

#3楼 @beiwang 其实我用的虽然不是很多,只是在合适的时候,用这个东西。

三大动态语言里前景最不明朗的一个

@skhizein 其实还有一个原因,其他领域一般都已经有很成熟的选择,比如 Python 在科学计算方面。就算用 Ruby 实现一套也没有本质的提升,所以大多数该领域的人会选择学一门新语言而不是拿着 Ruby 造轮子。

今天Hackernews最热也谈到了这个

https://news.ycombinator.com/item?id=11749203

#12楼 @adamshen 三大动态语言是哪三大?

#14楼 @jojoma 我是有感而发,巧合了。

#6楼 @vincent 谢谢vincent,我能说我也叫vincent嘛。。。

#3楼 @beiwang 好的,谢谢。

#15楼 @larryzhao

哈哈。看上次TIOBE的排名,不算世界上最好的编程语言, 应该是ruby、python和nodejs吧。

#13楼 @darkbaby123 所以说这是互为因果嘛。因为 Ruby 在该领域没有好的选择,只能选择其它更成熟的。反过来,由于很少有人会在该领域选择 Ruby,因而 Ruby 在该领域也会越来越萎缩。

#20楼 @adamshen 哈,那猜的没错

这不是个问题,去知乎钓鱼吧

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册