On Tue, Feb 5, 2013 at 8:40 AM, James B. Byrne byrnejb@harte-lyne.ca wrote:
One must think in terms of plugins when considering RubyGems. Firefox 10 ESR is packaged for CentOS as an rpm but most of the addons that make FF valuable to me are plugins obtained directly by FF from the Mozilla repository or from trusted third parties.
And have you ever had problems with FF - caused by plugins? Who hasn't?
These addons are not provided as rpms from RH and never will be. RubyGems serve much the same purpose as FF addons and they are implemented in a similar fashion; an extension belongs to the application and not to the system.
Sure, but the kernel is like that too with a bazillion modules and drivers written by a whole bunch of people. And there are really, really good reasons that you don't just grab any of it straight from the developers and let it have its way with your servers - you run code that has been carefully vetted and all tested together.. Perl and CPAN is similar - if you want to devote your full time to it, you can probably keep a system running for a few years with a bunch of libraries updating directly from CPAN, but things will break randomly and you'll have to fix them yourself, where that rarely happens if you use rpms that someone else keeps in sync when the CPAN module authors refactor things.
As for not getting 'it' right, whatever 'it' is, Ruby is not a single implementation. The baseline is the MRI but there exists several alternative implementations including one written in Java. Each of these serves a different user audience while providing a common syntax.
That doesn't make it sound any more reliable - which is the real question here. What are the odds that letting a system update itself in combinations that have probably never been tested together and across platforms that aren't tested in development will keep working for any length of time. Does the gem installation process perform any testing to verify correctness? Is it transactional so an update or new install failure will back out to the previously working setup? RPM and yum aren't perfect but the thing that makes them work is the human management of the combinations of things that are added to a repository and the testing for their particular platforms. If someone is going to give up that human layer of testing and vetting, there should be some better assurance than "a lot of big sites make it work" that it is actually usable. Not everyone wants to throw a full-time admin at making a language work. And when even enthusiasts say old versions are not usable it doesn't inspire confidence.