Well StackOverflow put out their 2017 most loved languages list, now time for the most disliked. ^.^
URL:
In essence they scanned their huge dataset to determine the languages with the most negative associations, and in order from worst:
Absolute worst after a big jump
Perl
Delphi
VBA
Middling worst after another jump:
PHP
Objective-C
Coffeescript
Ruby
Then it goes into the lower area that most languages fall in after another empty jump. ^.^
I can definitely understand them, to be honest, though not Ruby, I thought it was fairly liked (though not its performance), but I’ve not been in its community much to really know. Why is it so hated?
The article also talks about the most disliked tags and some other things too, interesting read.
I’m also surprised by Ruby. Having worked with it for almost 10 years I do have some gripes but I definitely don’t hate it. I’ve always thought the ecosystem and community were pretty good. One of the reasons I like Elixir is that it fixes some of the things I didn’t like about Ruby.
Objective-C and Coffeescript deserve their spots though.
It’s easy to hate Ruby when you briefly dabble with it but don’t understand it. I did.
After my first encounters with Ruby devs on a project were guys who went on and on about beautiful code that in a single line…triggered 50,000 queries and crashed a web server…but got mad at me for deploying a fix and not caring that it broke a test which verified the bad behavior.
And I’ve been an advocate for kickboxing workouts ever since.
Coffeescript prompted massive improvements in the utility of JavaScript. Given the necessary evil of JS for most web projects I have to give CS some credit here.
In its time it was a huge improvement—though I suppose it was just as hated by JS purists then as well.
I can understand that people don’t like Ruby, because they might perceive this language as a silly language with weird syntax (assuming they have parentheses in their most favourite language) and much magic inside (how it can be that if something == 0 return true? etc.).
For me Ruby is really great language and obviously I could work in it again, but I do agree it’s quite magical that not everything is explicit and I preffer the clear picture. After all I definetely enjoy using Elixir (or Python long time ago) much more than Ruby. Still, I would not never put Ruby into disliked language. I have only one language I don’t like: Java (I know Java, but it’s really sloppy).
Yeah when coffeescript came out it was a lot better than javascript in many ways (those whitespace insensitivity was not one). But nowadays it should be dead. ^.^;
Big assumption being made is that tags is some kind of scientific valid meanss of determining what users like or dislike. I can choose Ruby to tag a dislike because I think jobs are declining yet still love the language itself. I might “dislike” Elixir because it has a much more narrow use compare to C but still love the language.
The fact that Javscript is not at or near the top is reason enough to doubt the analysis. Tirades again JS fill the programming world. I seldom hear anyone complaining against ruby Syntax. They may complain theres too much magic but thats Rails not Ruby.
If I was to speculate, I don’t think the dislike has anything to do with syntax unless readability is just aweful (perl). I would guess it’s language semantics. C# and Java are just under Ruby and a few things they have in common:
Yeah, people always hate the popular ones: Java, JavaScript and PHP for high level languages, if any of these are missing there is something wrong with the stats As for the worst kind, how can you hate Perl or Delphi? It’s like hating 80s hair or 70s music, I mean it’s possible but really hard
PS Cobol was hated before hating programming languages was cool:
The Tao gave birth to machine language. Machine language gave birth to the assembler.
The assembler gave birth to the compiler. Now there are ten thousand languages.
Each language has its purpose, however humble. Each language expresses the Yin and Yang of software. Each language has its place within the Tao.
I loved ruby until 1.8, but I hated what they did to it in 1.9, and I abandoned it at that point.
Why? They took a basic core abstraction (the string) and turned it into something monstrous. Since they didn’t even document the behaviour, I attempted to do so myself by trial and error and reverse-engineering. After about 200 test cases, I gave up.
You can hate Ruby also when you’re working with it daily Awful namespacing (when compared to Python or Elixir), if you do it wrong, it wont just fail, it’ll do crazy stuff, especially if you rely on magical autoloaders like Rails do. Awful libraries like RSpec, which can turn debugging tests into nightmare, and everybody uses it because everybody uses it.
Really, having write Python again for a week feels like a breath of fresh air, even if the app I inherited is nightmare with methods spanning over 100 lines