How to demotivate people (Re: Making Debian Responsible For Its Actions)

In my Ruby packaging in Debian and Ubuntu: Mythbusting and FAQ, I wrote The Ruby developers (or expert users) community is generally very hostile towards Debian. Many harsh words and insults are used in discussions mentioning Debian in the ruby-core@ mailing list, and there are frequent recommendations to avoid the Debian packages and install from sources, which is quite demotivating (Actually, what prompted that blog post is someone calling Debian-specific changes unforgivable).

Zed A. Shaw just provided a very good example of that. Quoting the most juicy parts:

It’s simply a tactic to make sure that you are stuck on Debian.

If we look at this problem from an open source perspective, Debian is at a minimum being a horrible citizen.

What is happening is control is not aligned with responsibility. Debian has taken control of the software package and recrafted it for their very narrow set of system administrator users. However, they refuse to take responsibility for the defect and quality problems they create. Instead I end up being responsible for their mistakes, which is wrong.

If Debian is in control, then Debian should be made responsible. That’s the only way to get them to change it. If they don’t want to be responsible, then they should let me be in control.

I’m imagining a mass petition, maybe some funny ad campaigns, in-person confrontations meant to embarrass package maintainers, SEO tricks to get people off Debian, promotion of any alternative to Debian, anything to make them pay, apologize, and listen.

If you write software and you’re sick of Debian screwing up your gear, then shoot me ideas for how we can make this happen. I think that if enough of us band together to make Debian responsible for its actions we can actually get them to start asking us before they package our software to find out how we think it should be packaged.

On the technical part of the post:

The problem that Zed is experiencing is unknown to me, and also to the Debian and Ubuntu bug trackers. To my knowledge, rubygems doesn’t not require openssl or net/scp to work, and a simple grep through the sources kind-of confirms that. But of course, that blog post was written as a rant, not as a proper bug report.

My best guess is that the gem that Zed is installing requires openssl and net/scp. But of course, rubygems can’t just depend on all the libraries that applications or libraries installed via rubygems could possibly require. Regarding openssl, we had a problem in Ruby because of the licensing situation of Ruby (dual licensed GPLv2+ and Ruby license, linked with openssl, which might raise some eyebrows), so it was split off the main standard library package until recently (and, apparently, in the version Zed is using). For net/scp, it is not part of the standard library, and not a dependency of rubygems, so I don’t see why Zed expects it to be installed.

On the rest of the post:

Following my last post, several people volunteered to help with Ruby on Debian (and Ubuntu). In particular, Laurent Arnoud has been doing some fantastic work fixing the pkg-ruby-extras team’s RC bugs. Also, all the messages of support both in the comments of my last post were very much appreciated.

But I’m really wondering why the Ruby community generates so many poisonous people. All my work on Debian is done on a volunteer basis, and it’s really hard to get so much shit from it.

22 thoughts on “How to demotivate people (Re: Making Debian Responsible For Its Actions)

  1. If you’re in Free Software, you’ll get shit from someone.

    For the Mono team, the shit comes from outside the community rather than inside, but it’s the same feeling of utter dismay when someone spits on the hard work you do for free.

  2. Google “Zed Shaw Rails is a Ghetto” (and try to look for an old version, before retracted it and removed it from his blog.)

  3. I’m really wondering why the Ruby community generates so many poisonous people

    I have evidence which shows that Zed A. Shaw was maliciously produced by the Microsoft community and then was planted in the Python community. From there, he migrated over to the Ruby community for a while and then went back to the Python community although these days he seems to be more aligned with the C community.

  4. Don’t be discouraged by people wanting to rant. Debian is still one of the very best operating systems and in many cases makes upstream much more usable then the broken systems some upstreams would like to promote.

  5. Don’t listen to Zed’s insane rants. Just as KB suggested, see his original “Rails is a Ghetto” post for the kind of crap he writes. The people who appreciate Debian and your work may be quiet, but we far outnumber these jerks.

  6. It’s interesting to see how close Zed Shaw’s comments are from Jörg Schilling ones abou tthe harm that this weird entity named “Debian” is doing to hiw rok. That probably gives the answer about the consideration you should give to that kind of arguments.

  7. Lucas, I don’t know squat about ruby nor about the problem this Zed person has with the Debian team, but I’m all for Debian and everything it stands for. I have been using Debian for over three years now, and I do all kinds of crazy things to my Debian installation, but not once in all this while has the operating system died on me. And that’s sid I’m talking about. So far as I go, this kind of dependability is standing testament to all the hard and great work you guys do, so don’t let any of those rants get to you. Keep up the fantastic work.

    Greetings from India!

  8. embarrass package maintainers
    SEO tricks to get people off Debian
    promotion of any alternative to Debian

    I don’t know who is this Zed guy but he sound like complete idiot.

  9. Hey, just wanted to voice some support for the work you do. Technically, there’s always something that can be improved, but no one deserves an ill-informed, spittle-flecked rant like Zed’s.

  10. Hi Lucas,

    Gunnar Wolf mentions it in his blog post: Ruby is mostly used to build proprietary (web) software that is not meant to be shared. In such an environment it may be tolerable to update my in-house code to keep pace with API changes.
    So my opinion still stands that Ruby does not really belong in the free software world. Free software should not be written in Ruby. Leave Ruby to those Mac users.
    Instead of all the struggles to package Ruby just take puppet and those few other useful Ruby applications and port them to Perl / Python / C / whatever-is-really-free.

  11. Thomas Koch: following your argument, PHP should be removed from Debian long ago. Python is in the same category as Ruby when it comes to commercial, closed use.

  12. @anon – actually, Lucas appears to do a lot of actual *work* on the problem, something much appreciated.

    @Thomas Koch: for that matter, we should stop using x86 assembler because it has been used in way too much proprietary software. C and C++ too, while we’re at it. What a silly argument…

  13. Florian, though you are strictly correct, in my experience Ruby’s community has a habit of borderline hostility to the ideals of free software. They use free licenses, but when it comes to a decision between functionality or freedom, the Ruby community seems to squarely favour functionality. Worse than this though, they often have a tendency to belittle those who think otherwise.

    Sorry to any Rubyists who would distance themselves from this, it’s just something I observe in the culture.

  14. @David: I tend to agree. The decision to relicense Ruby from “GPLv2+Ruby license” to “BSD+Ruby license” can also be seen as a step into a more “liberal” direction.

    The use of github as the de-facto development platform for many ruby gems and apps is also an example of favouring functionality to freedom.

  15. I love Debian, and I love Ruby. I think the package maintainers do a wonderful, job but there will always be a conflict between developers and system maintainers.
    With my developer hat on, I have maintained independent builds of PERL and Ruby in /usr/local, and all my custom gems and CPAN modules which were not easily available with Debian were installed there. Due in large part to the excellence of Debian package maintainers, this type of thing is pretty much unnecessary today. Just with apt, I can choose the bleeding edge 1.9 MRI branch or the 1.8.
    However there is a problem with rubygems in Debian/Ubuntu meaning that it’s out of date and it does not work. This might have been fixed in Lucid. However the solution is to *uninstall* rubygems, download rubygems from, and install manually. Zed probably cut his toes on this process for a while and thus his inappropriate emotional reaction.
    Distros can’t be perfect, but Debian is pretty close. Package maintainers do a heck of a job. I intend to help by figuring out what the heck is wrong with libmozembed-ruby when I get more time. Please keep up the world-class effort!

  16. Ah lucas, i have no idea that how ZED came to his point and i don’t even wanted to know, i actually wanted to work which i enjoy and i know that you also enjoyed working with pkg-ruby-extras team.

    you keep enjoy what you doing .let them think whatever they want to.


  17. I think the disparity between getting it working, and maintaining a stable release affects many large frameworks with small maintenance teams, and possibly all of CPAN (controversial enough?).

    Often the folk involved in developing the frameworks earn their living installing and maintaining the framework as part of the service they provide, so a system that makes it easy to reliably, deploy, and maintain across N system would ultimately lower their consulting revenue. I’m not saying they are deliberately obtuse or obstructive, but their self interest and motivation are not necessarily aligned with the interests of Debian, or people who do desire or value easy deployment and maintenance, over the latest features. Just the way the world is, but yes it can be demotivating, as can be spending many hours ensuring one system has an equivalent set of CPAN packages to another, when I can do the same with Debian packages in a couple of commands.

Comments are closed.