It's imo an anti-pattern to have developers working on the same app use different
tool chains like that. If your organization can't decide on rvm vs rbenv, then
you have deeper problems than what binstubs are checked in to your repository.
and Second, if you are unable to use the same Ruby manager in production and development,
I feel bad for you. We rely on .rbenv-version to ensure that the same Ruby point
release is used in both places.
Now, say you don't force all your developers through the same toolchain, or you're not using the same Ruby manager in production and development. Given these opinions, how likely is it that at some point there's going to be a Rails design decision based on them which isn't so trivial, and which causes a lot of pain for anyone on the wrong side of them? The fear is that you could be organisationally barred from using Rails for reasons that have been totally irrelevant before now.These aren't the cut-and-dry truths that DHH is presenting, although I can see the logic in them, and I think this problem has only happened because of binstubs, which are a really bad idea.
Not aimed at anyone in particular.
Thats why Im always wary of programmers who join into a framework too quickly.
How long should a framework be given, then? Or is your point that anyone who picked Rails made a mistake precisely because it's an opinionated framework, and they aren't a DHH/37S clone?I use Rails, and its a nice framework. But I'm not a fanboy. Its just another tool for the job. Just like Django, Symfony, Flask, Sinatra, Laravel, Slim, etc.
Now, I'm not getting into a pissing match with you. We are arguiing the same point, just from two different perspectives. I do agree that Rails 4 is mature enough. But the culture is not. And that's what keeps Rails from replacing shitty Enterprise frameworks. A shame because Ruby is fun to write and very powerful.
In general, this is aligned with the author way of thinking and it also applies to stuff like languages (think C vs. Java) or even window/desktop environments (Fluxbox vs. Gnome).
[1]: https://github.com/rspec/rspec-rails [2]: https://github.com/cucumber/cucumber-rails [3]: https://github.com/thoughtbot/shoulda [4]: https://github.com/thoughtbot/factory_girl [5]: https://github.com/nulldb/nulldb [6]: https://github.com/notahat/machinist [7]: https://github.com/haml/haml [8]: https://github.com/josh/mustache-rails [9]: https://github.com/stonean/slim [10]: https://github.com/brasten/sequel-rails [11]: https://github.com/datamapper/dm-rails [12]: http://mongomapper.com/documentation/getting-started/rails.h...
[1] - https://github.com/RailsApps/rails-composer/#your-options
You can tell Padrino what you want during the creation of a new project.
You can tell Rails what you want immediately after the creation of a new project. Rails simply saves you time by having sane defaults. Convention over configuration at its best.
He's just trying to explain it to the masses. Maybe he's hoping that a few borderline whiners will catch a clue and decide to put up or shut up... maybe he's just venting.
Regardless, I sympathize with him. I love rails. I love where his leadership has taken the framework steadily over the years.
Just so you know, those 'borderline whiners' are mostly other members of the core team.
They never shut up. :)
Given the size and pop culture around Rails I think he gets to deal with more stuff than the usual maintainer. I mean, there are people who actively celebrate when there is a security issue in Rails. When github was hacked due to a foolish mistake people where celebrating! This is the sort of thing that keeps me from joining any Framework community. Fanboyism.