Ruby survives on affection, not utility. Let's move on.
Archived version: https://archive.is/20251204034843/https://www.wired.com/story/ruby-is-not-a-serious-programming-language/
https://www.wired.com/story/ruby-is-not-a-serious-programming-language/
Ruby survives on affection, not utility. Let's move on.
Archived version: https://archive.is/20251204034843/https://www.wired.com/story/ruby-is-not-a-serious-programming-language/
32 Comments
GreenKnight23@lemmy.world · 27 pts · 252d
it's hilariously depressing how most people hate on Ruby because of the shit Rails does.
also, Sheon Han(the author), is a corpo-shilling hack that writes predominantly fluff pieces for his silicon valley friends and neighbors.
don't believe what he writes because he only gets paid when his opinions garner traffic.
want to know why Ruby still has a following? same reason why Java is still holding on. Same reason why COBOL and FORTRAN is still going. because it works and people still use it.
FizzyOrange@programming.dev · 1 pts · 250d
None of the points in the article about the flaws of Ruby are because of Rails. In fact the article says the exact opposite - the only reason Ruby is still relevant is because of Rails!
GreenKnight23@lemmy.world · 1 pts · 250d
you're wrong. none of the points in the article say anything at all. the pillars that hold up the lies are
Sheon Han worked at Twitter. doubtful he was there between the 2011-2014 rewrite. I also doubt that he's done much of anything with ruby since he was fired from Twitter after Musk destroyed it. especially so since he's taken up freelance writing since 2021.
Sheon Han is attempting to stay relevant by desperately attacking a language he barely uses and hasn't touched seriously since at least 2021.
you're better off ignoring him and "journalists" like him.
FizzyOrange@programming.dev · 1 pts · 250d
Nobody said that.
Nobody said that.
I don't think Ruby's performance has significantly changed since then, so yes. Still bad.
Nobody said that.
Nobody said that.
More straw men than a scarecrow convention.
GreenKnight23@lemmy.world · 2 pts · 249d
did you even read it?
FizzyOrange@programming.dev · 2 pts · 249d
Yes I read and understood it. :-D
I probably shouldn't reply since apparently you're still working on learning how to copy text...
Yes indeed, if you actually read his text, Ruby isn't bad because Python/JS are good. It's bad because it has failed to add static type checking. Python and JS are simply examples of languages that didn't fail in the same way.
That quote says absolutely nothing about Matz or DHH making Ruby bad.
No, the text says that Ruby persists despite its badness due to inertia and nostalgia.
How can you accuse me of not reading it when you're pasting literal quotes that contradict you? Insane.
xxce2AAb@feddit.dk · 23 pts · 252d
Maybe if I could read the article I'd have something to say about that. I guess we'll never know, and that's probably for the best.
BrikoX@lemmy.zip · 10 pts · 252d
Archived version: https://archive.is/20251204034843/https://www.wired.com/story/ruby-is-not-a-serious-programming-language/
xxce2AAb@feddit.dk · 5 pts · 252d
Thank you.
xxce2AAb@feddit.dk · 15 pts · 252d
Disclaimer: I'm not Ruby programmer. I evaluated it once, saw no particular reason to use it instead of Python and promptly forgot about it.
With that said, the specific criticism(s) are:
Poor performance. Sure. Ruby does appear to be somewhat slower than Python, but I'm more concerned about the peak memory consumption which is admittedly frequently pretty terrifying. Mind you, if I need high performance, I'm not likely to be using either Ruby or Python. It's fine for automation scripts, rapid prototyping or experimentation, hypothesis validation, moderate data processing, analysis and visualization, but yes: If you build your (supposedly) hyper-scalable website on Rails or use it for the system software for your embedded device, you're going to have a bad time. Every tool has its place (except Brainfuck). Don't use a hammer when you should be using a screwdriver.
The above also covers the railing against rails, about which I have no further comment as I've never used it. Maybe it's nice, but if you're working on something with more concurrent users than your homelab automation UX, there's undoubtedly better alternatives.
...And that appears to be it. So it boiled to down to "performance". Does that in and of itself make Ruby "not a serious programming language". Well, if it does, then the same applies to Python. Does it mean that there's probably a better alternative for any given application? Probably yes.
PokerChips@programming.dev · 6 pts · 252d
You actually get stupider using rails. This is a fact.
FizzyOrange@programming.dev · 2 pts · 250d
You forgot about the lack of static type hints. That's a serious flaw.
If you ignore the performance and lack of static types, then I don't think there's too much wrong with Ruby but apart from Rails there isn't really a compelling reason to use it over Python either. And that's not saying much!
xxce2AAb@feddit.dk · 1 pts · 248d
Eh. Almost every tool has its place. I use Python for all my automation needs, a niche in which it serves perfectly well. Surely you wouldn't argue that Rust or C++ would be a more appropriate alternative in that kind of role because they're statically typed. Then there's other things - I enjoy having Jupyter Notebook on hand for rapid prototyping, sanity checks or quick testing of ideas, plotting etc. It certainly beats using Octave, at least in terms of ergonomics. Most of my recent C++ projects uses Python generated Ninja scripts as the build system, and so on. It is possible there's something out there that would serve those needs of mine better than Python? Sure, but if so, I don't think I know what it is.
FizzyOrange@programming.dev · 2 pts · 248d
Not C++. Rust hopefully, when
cargo scriptis stabilised!Until then I strongly prefer Deno (which is also statically typed) for ad-hoc scripting. Python is surprisingly bad for that use case despite it being super popular for it because:
xxce2AAb@feddit.dk · 1 pts · 248d
I agree that Python's handling of 3rd-party dependencies is cumbersome, especially for scenarios that would have otherwise been trivial. However... The use-cases I'm referring to in my context have no need for anything outside the standard library. I'm literally talking about using Python as a shell script alternative, more or less.
...Which is admittedly the lowest of bars. It's hard to be less ergonomic or more arcane than Shell script - unless one resorts to the Dark Arts of Perl or APL.
This is the first time I've heard of Deno, but I'm not sure that having to install a 110Mb JS VM + runtime is more convenient in my context than simply using Python which is already guaranteed to available on any system I use and does all I need. Is Typescript a better language than Python? Perhaps. Does that matter for my use-cases? No, not really. I definitely wouldn't use Rust - or any other compiled language - for scripting. While I haven't had time to look at Zig as much as I'd like, I do adore the language so far - I can definitely see myself transitioning from C++ to Zig, and likely will to the extent I'm able. Still don't see it as a Python replacement though (again, for my use-cases - I'm emphatically not arguing that there isn't plenty of projects implemented in Python that could have benefited from being written in Zig or Rust instead).
If you have any other suggestions for viable alternatives, I'm open to suggestions though.
MonkderVierte@lemmy.zip · 3 pts · 252d
No problem with 3rd-party scripts and frames blocked.
Seriously, this lets me read more articles than with only adblocking.
xxce2AAb@feddit.dk · 2 pts · 248d
Huh. The thing is, I do block 3rd party scripts and frames by default (umatrix).
6nk06@sh.itjust.works · 22 pts · 252d
Paywalled clickbaity trash of an article.
BrikoX@lemmy.zip · 7 pts · 252d
Archived version: https://archive.is/20251204034843/https://www.wired.com/story/ruby-is-not-a-serious-programming-language/
6nk06@sh.itjust.works · 12 pts · 252d
Yep, it's trash.
partial_accumen@lemmy.world · 13 pts · 252d
Ruby was the most approachable language I found and sheparded me from my limits of bash scripting and Windows batch file scripting into the next level.
The author derides Ruby's easy readability and syntax because it has issues scaling to large enterprise applications. I don't disagree there is a performance ceiling, but how many hundreds of thousands of Ruby projects never rose to that level of need? The author is also forgetting that Ruby had Rubygems for easy modular functional additions years before Python eventually got pip.
I don't write in Ruby anymore, and Python has evolved to be much more approachable than it was when Ruby was in its prime, however if someone came to me today saying they wanted the easier programming language to learn that could build full applications on Linux, OSX, Windows, and the web, I'd still point them to Ruby with the caveat that it would have limits and they would be better served by Python in the long run.
Feyd@programming.dev · 3 pts · 252d
I still prefer perl over either tbh
Ephera@lemmy.ml · 9 pts · 252d
Hmm, I don't have too large of a sample size, but I don't feel like Ruby programs are buggier than Python programs, on average. Not being the language for programming beginners and data scientists, probably aides that impression, though...
FizzyOrange@programming.dev · 2 pts · 250d
Not buggier than Python is a really low bar.
Ephera@lemmy.ml · 2 pts · 250d
Perhaps, yes. 😅
It was a diplomatic way of saying that I doubt the author's assessment that Ruby's tooling is worse than Python's. Partially, because Python's tooling has traditionally been terrible (even if it's been improving in the past two years, from what I hear). But yeah, partially because I do not see Ruby programs being as buggy as they insinuate here...
entwine@programming.dev · 2 pts · 251d
I think it was that back when it was relevant (but replace data scientists with web devs)
I never got interested in the ecosystem myself, but I've run into it every now and then. I feel like it's in the same place as PHP today: still used a lot for legacy reasons, but you'll get weird looks if you start a new project with it and you're under the age of 40
Ephera@lemmy.ml · 2 pts · 251d
Sure, but if programs from that era are still around, chances are the maintainer is quite experienced by now and has fixed all the funky behaviour. 🙃
Ten years ago, a university buddy of mine discovered Ruby and you might've thought a miracle happened from how excited he was for it. But yeah, that was also the last time I met someone in real life who was excited about Ruby. 😅
maub@slrpnk.net · 2 pts · 251d
The article starts with a lie, imprinting for computer users and the importance for UX is discussed for at least 20 years, see: Baby Duck Syndrome(wikipedia).
One can only think of something like this as "their own little theory", if they are uninformed in both programming and psychology which, after reading this stain of an article, is not far fetched. The correct psychological effect to point out here would be Dunning Kruger (wikipedia).
Kolanaki@pawb.social · 2 pts · 252d
I don't use RPGMaker because I didn't care for Ruby and afaik, they still use it as the scripting language.
erytau@programming.dev · 1 pts · 252d
I belive in newer versions they have switched to JS and C#
FizzyOrange@programming.dev · 1 pts · 250d
This mirrors my feelings about Ruby. Especially the lack of type hints. It's a huge problem when trying to work on large Ruby codebases, e.g. Gitlab or Asciidoctor. Easily doubles the time it takes to get anything done. Sometimes I've tried to make a change to Gitlab but had to give up entirely simply because it's impossible to follow the control flow.
That's very rarely a problem with statically typed languages. (It can happen with excessive use of interfaces that are resolved at runtime but it's much less common.)
So aside from Rails I can't really see any reason to use it over even Python, let alone actually good languages like Rust, Go, Typescript, etc.