derp@example.com writes: > http://www.slideshare.net/vishnu/the-top-10-reasons-the-ruby-programming-language-sucks > > > Ruby clowns trying to say Ruby is Teh Bettar.  I love their language comparison that puts real Ruby code against made up not even good fakes from other languages. Dude I just this week ran into an issue with Ruby. So I upgraded Ruby along with other shit on my system. Not a major upgrade, not even a minor upgrade, a frickin patchlevel. Ruby asswipes decided to swap out the YAML parsing engine for a different one that's known to be entirely incompatible. Now YAML is their festering excuse for a markup language and users are encouraged to use it everywhere and take advantage of what I've come to find out is implementation specific shit ("in Ruby you can <<$%#@herp.id to achieve blah" not "if you use this specific parsing engine", doubtless because "parsing engine" is too big a word and would frighten someone away -- as well it should in this case -- from the "look you don't even have to *think* to use Rails!!1" tutorials they seem to favor) not to mention they have a fetish for pointlessly serializing things to and from text in inner loops. Anyway so I had shit break all over the place in 3 places: config file I wrote; code I had one of my guys write and was merging in, and some shit deep in the bowels of Ruby. Or Rails. Who the fuck knows because they love injecting shit into core libraries at runtime. They shrug off what this means for using 2 unrelated libraries together that both love this method_missing shit, and they don't even have a symbol packaging system like Common Lisp's which would prevent half of that. So because I was trying to merge when this happened I thought my guy wrote unportable code or it was a versioning thing. Took me 4-6 hours to track this bullshit down and then *compile my system Ruby differently* to make it compatible with one application. Best part: I'm sure some different implementation will break differently because of having this other YAML engine built in. Ruby is a halfway decent attempt at a language by a bright kid with absolutely no real world experience in language design whatsoever. Even its promoters argue for it, no joke, by saying "well don't be mean to Matz because he didn't know what he was doing when he wrote that part". I don't get the point of it when Perl exists but whatever. At least the Perlists have the decency to admit to an embarrassing hack when needed. And Rails. Ugh. Rails is a junk heap of claptrap clattering its way through the mistakes every other platform made and solved 20 years ago. It doesn't encourage bad practices, it *is* a bad practice. Since day one until actually very recently when it would spew pages and pages of skeleton code onto disk, instead of providing a library to call, and clog up your version control with irrelevancies. Now it's even more hilarious because instead of having half the application in some "gems" somewhere and half forked indefinitely from application to application, it's in these libraries that every application is supposed to download its own copy of (when it's not h4x0ring your system to be how it thinks would be nicer) and it leaves you of even less of a clue how things work when the "magic" isn't exactly what you want. Oh wait I forgot that means your problem isn't worth solving if it's not something Rails can do out of the box in a 3-line tutorial (because you know anything more than a lazy-ass README in the GitHub (always GitHub) project would be just asking too much, man). You know, these guys love shitting on PHP and Java (doubtless because that's all they know exists; hipsters are everywhere and these are just the programming variant; they aren't known for deep research into their fads and ironic slams) but shitting on PHP doesn't get you any points because everyone knows to shit on PHP, and you know what the Java community has going for it, despite the shitty language and their love of circle jerk pointless overabstraction, is a fetish for documentation; Javadocs are everywhere and projects tend to have a project site and an actual API guide of some sort. And the Ruby folks never getting around to defining their function argument syntax -- I'm not making this up; look it up -- means when you look at their docs good luck even figuring out what arguments a function takes. What a slimy yeasty overgrowth of disgusting fungus. I swear there are various platforms I truly have to say I despise but they are my go-to because they are frakking *predictable* and don't break everyone's work they need for a living because some douche thought 14.furlongs.in.18.fortnights was a cuter syntax or some similar nonsense. I won't name names because they'll nitpick but I can off the top of my head name 12 languages and frameworks that I can just sit down and *work* in and *produce*. Any Rails project ends up taking hours and hours of time a week just purely dealing with Ruby and Rails bullshit. I guess that would feel really productive and I could livemicroblog about how easy it was to spend an entire workday refactoring my whole application for some other pointless Railsisism. Problem is I don't make my living by wanking about Rails and I don't make my living making pointless HTML front ends with a single text field in 18 point Helvetica to a "backend" that doesn't consider any edge cases. I make my living Getting. Shit. Done. Rails doesn't help with that.