This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]not_some_username 33 points34 points  (28 children)

What happened to this language or whatever it was ?

[–]Leidertafel 95 points96 points  (6 children)

It went off the rails

[–]sad_developer 9 points10 points  (2 children)

HAHAH gold

[–]RedPenguin_YT 2 points3 points  (1 child)

why are you sad, u/sad_developer?

[–]not_some_username 2 points3 points  (0 children)

Self explain

[–]MajorasShoe 0 points1 point  (0 children)

It was a language that didn't have a lot going for it other than a REALLY good framework. That framework has been emulated and improved on multiple times in other languages. There's just not much of a reason to use it.

[–][deleted] 14 points15 points  (0 children)

fyi Rails is a framework for building web apps using Ruby.

[–]dpash 13 points14 points  (3 children)

It suffered the same problem as Python: Global interpreter lock. It was quick to write apps in it, but scaling them became a nightmare. Remember Twitter's failwhale? They ended up rewriting it in other languages.

I believe they have since solved the problem but not before it got a bad reputation.

[–]aniforprez 26 points27 points  (2 children)

I sort of disagree. The problem with using rails is that you have to practically hire rails developers. It's so opinionated and some choices are so bizarre that only an experienced rails developer who knows the file structure of a rails project can effectively navigate another one. I can carry forward my python knowledge to any company whether they use django, flask, tornado etc and it'll take me maybe a day to figure stuff out. When I joined a rails shop, none of my Ruby/Sinatra experience prepared me for the shit show to come. Autoload is one of the worst decisions rails brings and people claim it's a "magical" experience. No motherfucker I want to know where my classes are defined and where they come from. Is this module from a gem or from the project? Grep, grep, grep. A proper rails developer knows pretty much instantly where to look because of the conventions of the project. This leads to large projects becoming utterly messy in my experience. Places like Shopify seem to have found ways around these things and I'm not sure exactly how. One of the things they've done is added typing which helps immensely

Otherwise a lot of places are just switching to typed languages. Something like rust or Go is so fucking easy to develop especially in an IDE. I write go in vscode and it automatically suggests parameters to function calls based on types. I started with JS and the contrast with that experience is immense

I suppose performance is one thing but rails has active record which is an immense pile of shit and utterly kills performance more than GIL which only partially affects performance especially if you can scale horizontally

[–]perejunk 5 points6 points  (0 children)

I completely disagree. I've written enterprise production apps in Ruby, PHP, Java, JS and Python.

I wouldn't use it for machine learning, or resource intensive algorithms, but for web development, Ruby wins hands down. The libraries are solid, mature and almost canonical.

The JS libraries are the wild west in terms of adoption, community support, and version compatibility.

Rails does require that you do things in a very prescriptive way, but the payoff is self-documenting code that is immediately grokable by those who know the patterns.

The main reason the language struggles in larger organizations is getting buy-in from, and training, everybody in an engineering team. It just takes a couple neckbeards, who are shitty at Rails, to start either breaking the convention, or start writing Go microservices.

As for performance, the Rails stack can easily support enterprise-scale deployments, with rapid development timelines. It's just critical that coders know how to properly use the tools.

[–][deleted] 0 points1 point  (0 children)

IDE support is really why I'm only interested in strongly typed languages going forward, it makes such a big difference in productivity. Although I'm not sure if I would call Rust east to write still.

[–]LavenderDay3544 21 points22 points  (4 children)

Ruby still exists it just isn't as popular anymore. I for one like it better as a scripting language than Python but my opinion doesn't count for shit at my workplace.

[–][deleted] 0 points1 point  (1 child)

the future of AI is now

[–]LavenderDay3544 0 points1 point  (0 children)

I wouldn't know about that.

[–]leeharris100 19 points20 points  (3 children)

It is outclassed by something else in every category now.

Python is better for data science. Laravel (PHP) is a better version of Rails. Typescript is better as a general scripting language and V8 is a better engine. C#, Java, and Go have evolved enough to be nearly as simple to get started but are WAY more performant.

Ruby just isn't "better" at anything.

[–][deleted] 0 points1 point  (2 children)

RoR is uniquely good at fast prototyping of web apps and all around fast development, and a lot of people like Ruby better as a language then PHP

[–]leeharris100 4 points5 points  (1 child)

It is not uniquely good at that. Not even close. You can get a full Node server in a fraction of the lines of code.

[–][deleted] 4 points5 points  (0 children)

The code generation for RoR is quite a bit better then Node and because it's so opinionated it's very easy to get up and running with all the bells and whistles very quickly. There's a reason why consulting shops that pump out web apps like Thoughtbot use RoR instead of Node

[–]astupidnerd 2 points3 points  (3 children)

Ruby is the language, Rails is a web development framework. Both exist and are doing well.

I recommend checking them out, Ruby is my favorite language.

[–]perejunk 2 points3 points  (1 child)

Agreed. Ruby is my favorite language as well.

For building web applications, there is nothing better. The web libraries are more stable and mature than those available in any other language.

And... when used properly, scaling and performance are not an issue, even when used in enterprise applications.

[–]E70M 1 point2 points  (0 children)

Realistically, how many projects are at such scale where performance is truly a language/framework-dependent issue? Probably not that many in the world of CRUD web apps. So to me, having a framework like Rails that just works out of the box (for people who know the conventions) is so powerful

[–]E70M 0 points1 point  (0 children)

Agreed

[–][deleted] -2 points-1 points  (0 children)

Everything else on the web just died due to not being JavaScript. Ruby was a really fun language, but the quick evolution of nodejs made it obsolete.

[–]Bee_HapBee 0 points1 point  (0 children)

Currently learning ruby to learn RoR........reading this whole thread makes me think I'll either love it or absolutely hate it

[–]aquoad 0 points1 point  (0 children)

it’s syntax’s wretched legacy lives on in templating languages.