Comment by throwanem
6 days ago
I was asked for an opinion and I gave one. Don't make too much of it. Rails devotees can't stand hearing a bad word about their baby, they always make a fuss.
6 days ago
I was asked for an opinion and I gave one. Don't make too much of it. Rails devotees can't stand hearing a bad word about their baby, they always make a fuss.
I've seen poorly-built code on rails circa 2014, and I've seen Rails done pretty well circa-2025. I'd say rails is pretty neutral. Saying it's PHP bad seems a bit much, but hey.
The worst code I've ever seen by a country mile though was a huge Python 2 code base written on an old version of Tornado circa 2012, a library that basically hacked the Python language to get code to run asynchronously, but you had to contort yourself into knots to get it. You couldn't just call other async functions/methods, you had to `yield func()` when calling them. To return from a function, you couldn't use `return` you had to throw an exception of type Tornado.Return. Absolutely insane way to write code.
Then all the business logic written on top of this bizarre framework was terrible. Half of the code broke the rules I just mentioned but still half-worked sometimes, but would perform terribly or have mysterious problems.
One of my greatest accomplishments was getting it all to Python3 then onto more sane async-style code.
I didn't say Rails was PHP bad, but if you'd asked I would say it is worse. Both have awful ergonomics that make mistakes easy, but at least with PHP it's hard to be foolish in a way that's very clever. Ruby meanwhile will happily hand you more than enough rope to David Carradine yourself before you really even notice, and the DHH/Katz crowd took full advantage.
And yet he double downs on the troll… Style points for the David Carradine reference though.
I reckon the negative reactions are at least partly down to your wording, e.g.
> there is no good work
> total lack of discipline
> impossible to build
This level of absolutism is problematic for a couple of reasons. Firstly it's ambiguous: a "total" lack of discipline would entail never releasing anything. This is clearly inaccurate, and the reader is left guessing what level of discipline is implied. Secondly, without more detail, most will assume exaggeration, given that RoR sees significant commercial use. You haven't provided compelling reasons to trust your judgement over anyone else's, so users are well-justified in raising counter-examples from their experience.
You also come off as dismissive of opinions and lived experiences that differ from your own; suggesting that anyone who disagrees is a "devotee", and that concrete counter-examples are meaningless one-offs. Having been on the sharp end of this dismissiveness myself, it mostly acts to drag the discussion down. Like, fair enough, maybe you're incredibly experienced, you want to make the world a better place by passing on your wisdom, and you're tired of dealing with half-baked takes. But belittling your fellow users is not helping. And again, from my own experience, you can be quick to say that a take is half-baked even when it aligns with scholarly opinion.
Yeah, everyone wants a treatise here, always and only on whatever they happen to disagree with. There's no kind of intellectual consistency more consistent than imposing an effectively unsatisfiable bar for standing to dissent, but letting whatever you like to hear slide without a second thought or question. Meanwhile detailed and substantive technical critiques provided by other users - critiques of the sort I learned a decade ago not to bother making - go totally ignored as I knew that they would.
I don't really see why I should take that sort of thing very seriously. Do you?
I think if you resort less to absolutist phrasing and knee-jerk insults, you might have more fulfilling interactions with other users. Perhaps that's not really what you're looking for when you post. It's difficult to understand why you post.
1 reply →