Repackagers etc. need to support non-programming users of Ruby software.  A scenario like
this:

L. User is an expert on Choreography and Shoe Design employed by MGM and is using a
computer with a software package "Compu-Dance" which, it happens, is written in Ruby.   L.
User has a problem and goes for support.  On the web L. User finds out about RubyGems and
that there is a new version of activerecord or instiki and installs it into Ruby.  Things
go from bad to worse.  L. User is a great dance designer but a bit of an airhead about
computers and can't remember which package was updated.

The OS vendor and/or the application provider and/or the MGM system administrator, in
order to provide support, need to control the configuration on the user system.  They may
have some network management tools go out and inquire and reconfigure the users system.
Maybe they can detect the package change and restore the older version, fixing things.
But if parts of the system aren't under the control of whatever configuration tool they
expect, they are unlikely to be able to do this.  Remember, neither L. User nor the MGM
system admins nor the OS provider know Ruby.  Presumably, the software team that wrote the
app in Ruby still knows Ruby, but they might not be contracted for support.  

If they're smart, of course, they'll just delete and re-install Compu-Dance.  But this
leaves L. User with the original problem.  We can all get down on our knees and pray that
L. User will go to the app vendors web site, find a fix, and follow the instructions.  But
we can't really rely on that.

Think of all the employees in an insurance company or a call center re-configuring their
machines.

So IBM and MS and Sun and their corporate users all have tools and policies to control
configuration, and they aren't going to want to learn RubyGems to do that.  RubyGems is
probably only for developers and maybe power users.   People providing toolsets to
toddlers shouldn't be giving them a hi-power buzz saw, they'll only cut off their feet and
start crying for Mommy.

Warren Seltzer


-----Original Message-----
From: Austin Ziegler [mailto:halostatue / gmail.com] 
Sent: Thursday, September 22, 2005 5:03 PM
To: ruby-core / ruby-lang.org
Cc: rubygems-developers / rubyforge.org
Subject: Re: RubyGems TODO


On 9/22/05, Austin Ziegler <halostatue / gmail.com> wrote:
> To be clear, I *do not* think that we should encourage the manual
> unpacking and installation of gems and that if repackagers do that,
> they're doing something that is contraindicated and they're hanging
> their users out to dry.

I think some people may have missed this point. This is an important
point that I think cannot be ignored. Gems should be the preferred way
of installing gem packages and other packaging systems should use and
trust gems as much as is possible.

New items:

13. Make it dead-simple EASY to have precompiled binary gems. This is
    also something that I believe will help repackagers.
14. Allow for a signed install. This is *not* the same as a signed gem,
    but could be used by repackagers to make it hard to uninstall a
    gem installed by an external packaging system. That is, you might
    do:

      gem install rails-0.13.0.gem --sign <passphrase>

    Then, to uninstall version 0.13.0, you have to do:

      gem uninstall rails --version 0.13.0 --sign <passphrase>

-austin
--
Austin Ziegler * halostatue / gmail.com
               * Alternate: austin / halostatue.ca