Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×

The CVS Cop-Out 486

NewsForge (also owned by VA) has a short piece attempting to call into focus one of the major complaints of end users, the "CVS cop-out". From the article: "One of my biggest pet peeves with open source software is what I call the CVS cop-out. It works like this: I criticize (accurately) some shortcoming of an open source application either in an article or in conversation, and someone responds with, 'That's not true! That feature was fixed in CVS four weeks ago!' [...] I bring up the CVS cop-out not because I have an answer for it, but to air it out. Sometimes, giving a problem a name helps to foster discussion that leads to resolution."
This discussion has been archived. No new comments can be posted.

The CVS Cop-Out

Comments Filter:
  • by LordEd ( 840443 ) on Saturday May 20, 2006 @01:33PM (#15372591)
    ...was fixed 4 weeks ago! Didn't you get the memo?
  • by OpenSourced ( 323149 ) on Saturday May 20, 2006 @01:34PM (#15372595) Journal
    Your check is in the mail too.
  • by rivaldufus ( 634820 ) on Saturday May 20, 2006 @01:35PM (#15372598)
    "It's already fixed in subversion..."
  • by AEton ( 654737 ) on Saturday May 20, 2006 @01:35PM (#15372600)
    Is it hard to write one of these?

    "Hi [nane of guy on mailing list whose criticism makes him sound like an asshole],
    Thanks for your comments about functionality XX. The development team is aware of this problem, and we committed a preliminary patch for the bug to our source-control system about a month ago. We're still working to make sure that this feature fits in with the rest of the system without any trouble, but if all goes will, you should see XX improved in our next point release.

    We really appreciate user feedback -- thanks a lot for talking to the YY team!
    Best,
    me"
    • by djmurdoch ( 306849 ) on Saturday May 20, 2006 @01:42PM (#15372635)
      I suspect that that is the response this guy received, but he wants an argument.
    • by hbo ( 62590 ) * on Saturday May 20, 2006 @01:44PM (#15372641) Homepage
      That's the ticket!

      It's only a cop-out if the developer/development team leaves it at "fixed in source". Given the parent's approach, it isn't a cop out, since the full scope of the solution (fixing in source and releasing, eventually) is presented.

      It's normal for software users to be impatient with the time it takes to produce quality stuff. In the closed-source world, that impatience often turns to frustration as the user's requirements are ignored, or copped-out on, by the vendor, whose internal process is completely opaque. With open source, there is at least the ability to check whether the "fixed in CVS" statement is actually true. And if you really, really can't live without the fix, you, or someone you hire, can take that source patch and apply it to a local copy. You lose external support that way, but at least you can solve your immediate problem.

      • Sure, after the redundant bug reports, redundant feature requests and user-support requests, I sure do feel like spending some extra time on digging up the exact revision a bug got fixed and perhaps even write a nice lengthy mail with a patch attached.

        Or perhaps not, it's time i could spend better. (Like posting on /.)
    • Then again, the developers the author's complaining about are probably the same ones that, when approached with a problem in the code, say "Well, submit a patch then."
      • Hey, as soon as Joe User decides to start treating Jill OSS Developer as though *she* owed *him* something, the "so submit a patch" comeback becomes perfectly acceptable.

        Most users are OK. But you do get those who treat the dev team (whatever the project is) as though they are idiots who need to do what they're told NOW.
    • by Murmer ( 96505 ) on Saturday May 20, 2006 @01:53PM (#15372684) Homepage
      That's great, but a lot of projects don't even put out point releases; they're just in a constant state of CVS flux, and there's consequently no way at all for the user to tell what's been fixed when, to know what problems they've got or what problems have been solved. FFMpeg, I'm looking at you.

      In fact, awesome, the FFMpeg people come right out and say [sourceforge.net] that if you're not using CVS to basically screw off and leave them alone.

      They're not alone in this.

      • by dubl-u ( 51156 ) * <2523987012@pota . t o> on Sunday May 21, 2006 @03:07AM (#15374837)
        In fact, awesome, the FFMpeg people come right out and say that if you're not using CVS to basically screw off and leave them alone.

        And I confess to some sympathy for that. One of the things that stops me from releasing more of my code is that producing a nice, friendly, well-packaged distribution is a lot of work.

        And honestly, that work can be pretty unrewarding. I help maintain a web-based service used by hundreds of people daily. We pay a few thousand bucks a year to keep it going, and put in a fair bit of time. We get maybe two thank you notes a month, but if it's ever down or buggy, we get a couple of complaints an hour, some of them frothingly rude.

        Now, whenever I use or download something I like, I take ten minutes to write a little note to the people who make it. I encourage everybody to do that; it makes a big difference.
        • We get maybe two thank you notes a month, but if it's ever down or buggy, we get a couple of complaints an hour, some of them frothingly rude.

          Yes, that's indeed quite annoying sometimes, when making free (as-in free beer, mainly) software. Users still think they're like "paying customers" (at least they behave like they are), being very demanding, impatient, rude, etc.

          Fortunately I hardly ever received a really rude reaction, except for some that were actually more funny than rude. :-) But users who reopen
    • by Carewolf ( 581105 ) on Saturday May 20, 2006 @01:57PM (#15372711) Homepage
      Well. What kind of response did you expect when response that is has been fixed in CVS is not enough?

      Fixed in CVS means:
      1. We agree with you criticism
      2. We have _already_ done something about it.
      3. You can expect the fix in the next release.

      The only time such an answer is not 100% perfect is when you are just looking for things to criticize to make them look bad. Then it is very unsatisfactory that it has already been fixed.
      • by lukas84 ( 912874 ) on Saturday May 20, 2006 @02:22PM (#15372783) Homepage
        It depends on a lot of circumstances.

        Fixed in CVS may also mean the following:

        We fixed this problem in our unstable development tree, which you can't deploy at a customer, or anywhere else. Also, we won't backport this patch to the current stable release, because we don't have time for this. So we basically leave you with your problem, until our unstable development tree at some time maybe gets released.

        And this problem isn't restricted to OpenSource at all.
        • by Anonymous Coward
          So what do you suggest? That every project must generate a "stable" release for every single patch that goes into CVS, or that every single patch must be back-ported to the "stable" branch and then generate a "stable" build?

          Seriously, this whole argument is fucking bullshit. I say this as someone who has to manage a big project; a single release takes us weeks to generate and test, and this clown is whinging because I don't have the time to release more than once every two months if I'm lucky? What an
          • So what do you suggest? That every project must generate a "stable" release for every single patch that goes into CVS, or that every single patch must be back-ported to the "stable" branch and then generate a "stable" build?

            Seriously, this whole argument is fucking bullshit. I say this as someone who has to manage a big project; a single release takes us weeks to generate and test, and this clown is whinging because I don't have the time to release more than once every two months if I'm lucky? What an ass.


            D
        • by khasim ( 1285 ) <brandioch.conner@gmail.com> on Saturday May 20, 2006 @03:36PM (#15373005)
          We fixed this problem in our unstable development tree, which you can't deploy at a customer, or anywhere else.
          Nothing gets code from "unstable" to "production" faster than testing.

          I'm running Dapper on test machines at work right now so that I can help find bugs. When it is released as "production", I will know that the bugs that are important to me are fixed.
          Also, we won't backport this patch to the current stable release, because we don't have time for this.
          You would not believe how hilarious that is.

          Try this approach: "I will pay you $200 (US) to backport that one patch for me."

          Then see what kind of response you get. Personally, I've always found that offering to pay someone to do work that I require works unbelievably well.
          So we basically leave you with your problem, until our unstable development tree at some time maybe gets released.
          Again, as the end user, you really have two options in that case:

          #1. Grab their code and start testing so it gets to "production" faster.

          #2. Pay one of their developers to backport the patch to the last "production" version.

          This is where Open Source really rocks. You (the end user) can really HELP the developers produce the code you want to use.
      • by soft_guy ( 534437 ) on Saturday May 20, 2006 @04:26PM (#15373160)
        No it means:

        1. I saw a bug one time that sounds similar AND
        2. Someone made some changes to that general area of the code SO
        3. I'm gonna call it fixed until proven otherwise.
    • by El Cubano ( 631386 ) on Saturday May 20, 2006 @02:02PM (#15372722)

      We're still working to make sure that this feature fits in with the rest of the system without any trouble, but if all goes will, you should see XX improved in our next point release.

      Which is how it should be. One thing the article says which struck me, What justification is there for ignoring the long-standing tradition of "release early, release often?"

      Basically, he is complaining that they are not releasing early enough/often enough. I hate to break it to him, but not every project is a mozilla with daily snapshots or a Debian with a huge network of dedicate autobuild machines. Some projects are small and have only few core developers. Many of those people may have "real" jobs which leaves them only spare to work on their pet OSS project. He also seems to think that they bug should be fixed right away becuase it affects him. But then, isn't that how it always is?

      "The bug that affects me is the most important and should be fixed immediately. I mean, I reported it yesterday. Why is the new point release fixing this grevious bug not out today?"

      I guess if you have a bug that nukes your entire filesystem or something like that, you have a legitimate gripe. However, the vast majority of bugs are not serious at all.

      This guy just has unrealistic expecations.

      • Without naming names I know of a high profile project that has had serious known issues for over three years without a release, although that it has been known for almost all of that time, and was fixed in the CVS tree years ago. The problem is very real; by not releasing often, or even at all, and not fixing obvious bugs quickly, it makes the project look abaondoned. The problem in this case is that the project is used as a major component of our applications, and there is no reliable forward planning on g
        • If you commercially depend on an OSS project that doesn't deliver releases, there's only one thing to do: fork it. Get the cvs version, commit it to your own cvs, test it, and finally build a release from it. Yes, this code will never move again, but it's back under control until you find a way to get rid of it.
    • by Jeffrey Baker ( 6191 ) on Saturday May 20, 2006 @02:02PM (#15372726)
      A related and much worse problem is when the developers refuse to consider your bug report because you failed to test is against the latest CVS. "Well that's interesting but 2.7.92-pre2-test19-rr-gg-123 is over 16 minutes old. Could you please retest with ..." and that sort of thing. That is a true copout because the developers know damn well they haven't addressed the problem specifically, so there's no reason to believe that it's resolved in newer code. But it does give developers an excuse to delay addressing the problem.
      • another good one (Score:3, Interesting)

        by r00t ( 33219 )
        I see this all the time:

        "Get an account on our obscure bug database, wade through numerous options which do not relate to the program but which you are required to fill out..."

        No, I do not want yet another account. Debian gets this right: anybody can report a bug via email. (though the system needs to be upgraded to not require custom email headers for certain obscure features; many modern clients like Evolution/Thunderbird/GMail won't do that)

        Usually the search interface is broken too, without full body-te
    • by tacocat ( 527354 ) <tallison1&twmi,rr,com> on Saturday May 20, 2006 @02:18PM (#15372769)

      This is certainly a PC response and only slightly better than the response, if any, you would receive from proprietary software. Of course, proprietary software would have a response more akin to "It's in the next release." which is essentially what is described herein.

      I think a claim that the issue has been addressed and not yet released is a bit of a grey area between the ideologies of Release Early, Release Often and a perception of great stability in software (It Just Works). It can be argued that the OP is a whiney-ass cream-puff who wants what he wants when he wants it. Just as easily it can be argued that a statement with an inferred attitude of "It's in CVS alread, quit yer bitchin!" really is just an example of what always happens when the developer community and the user community approach each other.

      Users want everything now but bitch about daily installs/builds. Which means that a CVS "fix" won't do them any good in the first place since they only use the "released" versions. Meanwhile the developers are doing what they can to fix things on the time they have but would like to have a release be something that's more stable than buggy. After all, their name might be on it.

      Personally, the fact that it's being addressed in CVS means that they know about it, they fixed it, and it's coming soon to a package near you. If this is unacceptable at least you have the option of pulling the CVS version ahead of the released package version. If this is all too much to handle than think of things in terms of a proprietary software product. The bug, if serious enough, will be fixed at the next major release in 6 to 12 months. That's the alternative. Open source allows you to put yourself in between these two ends of the spectrum. If you are going to call CVS a cop out, then go to the other end and keep quiet.

  • by smackjer ( 697558 ) on Saturday May 20, 2006 @01:35PM (#15372601) Homepage
    This isn't unique to open source. How many times has Microsoft told us to upgrade because of the enhanced security in the latest version of Windows?
    • by diamondsw ( 685967 ) on Saturday May 20, 2006 @01:44PM (#15372640)
      However, Microsoft and other upgrades are binaries, and installable by end users. Telling a normal user to download source code, ./configure, make, make install (and you better hope nothing broke in the autoconf) doesn't cut it. Downloading a nightly binary, that would be acceptable (see the WebKit project for a great example).

      This is particularly egregious in projects that never release final binaries except once a blue moon. It's even better when CVS is down, as SourceForge was for a while last month, and FFMpeg is as of this post...
      • by tonsofpcs ( 687961 ) <slashback@NOSPAm.tonsofpcs.com> on Saturday May 20, 2006 @01:50PM (#15372674) Homepage Journal
        Read: Nightly Builds [slashdot.org]
        Not everyone releases them, but those projects that do, "hey, that was fixed yesterday, visit the nightlies page (e.g. http://nightlies.videolan.org/ [videolan.org]) and grab the latest"
        • Not everyone releases [nightly builds]

          Sounds like a job for the Sun Grid.

          But seriously, for some kinds of projects, I can see the appeal to the end-user but it requires a certain level of commitment from the developer(s). On the other hand, it gives them the option to have as first response to a bug report "Try the latest build."

          I think different projects are more or less appropriate for nightly builds - and this also depends on the audience. For a while I was doing my own automated nightly Mozilla bu

      • by Znork ( 31774 ) on Saturday May 20, 2006 @02:04PM (#15372731)
        "However, Microsoft and other upgrades are binaries, and installable by end users."

        Of course, the Microsoft equivalent of 'it's fixed in CVS' is even less useful to the end user, as the end user quite likely neither has nor will get access to the Windows source code.

        The project devs are not the end packager. If you submit your bug reports to the project devs, the CVS fix is what you get. If you want a binary end-user fix, then submit your bug report to your packager who can provide you with a binary, and propagate the bugfix upstream.

        There's a reason the package systems allow patch-the-pristine-sources and build functionality...
        • by swillden ( 191260 ) * <shawn-ds@willden.org> on Saturday May 20, 2006 @03:20PM (#15372957) Journal

          Of course, the Microsoft equivalent of 'it's fixed in CVS' is even less useful to the end user, as the end user quite likely neither has nor will get access to the Windows source code.

          Bah!

          Damned lazy users always whining about how they can't get what they want and thinking developers should just hand it to them on a silver platter.

          Look, there's a simple, easy process that you can follow that will allow you to obtain the benefit of fixes found in Microsoft's source repository system. The steps are utterly obvious to anyone who gives it *any* thought at all, but just because I'm a nice guy I'll spell them out for you:

          1. Get a master's degree in CS from a top tier school.
          2. Acquire significant expertise in developing the sort of application whose fix you are interested in.
          3. Learn what sorts of personal and intellectual characteristics Microsoft likes to hire, and acquire those characteristics.
          4. Move to Redmond, Washington.
          5. Wait for the group that develops the application you're interested in to get an opening and apply for it.
          6. Get hired.
          7. Be promoted to the point where you have access to the source repository.

          See what I mean? It's so *easy*, and yet stupid, clueless lazy users just won't put forth any effort to resolve their own problems.

    • by notque ( 636838 ) on Saturday May 20, 2006 @02:52PM (#15372875) Homepage Journal
      This isn't unique to open source. How many times has Microsoft told us to upgrade because of the enhanced security in the latest version of Windows?

      This isn't unique to large software companies.

      Anyone who has worked in a software company for any ammount of time knows this. Software has bugs. The difference with open source is they may already be fixed in CVS. A lot of times in other companies it's a new problem and will be fixed in months.

      We're trying to tell you, be happy. It's fixed. It'll be out soon. We care.
  • new versions (Score:2, Insightful)

    by Anonymous Coward
    do you really want a new version put out for each bugfix. maybe a few versions a day.
    then you would be complaining about how many versions there are instead.
    • Re:new versions (Score:3, Insightful)

      by tonsofpcs ( 687961 )
      It's called a nightly build. Many projects have this, usually around midnight or 1am in the project's home country's timezone or in one of their choosing based upon userbase.
  • BS (Score:3, Insightful)

    by republican gourd ( 879711 ) on Saturday May 20, 2006 @01:37PM (#15372609)
    So its a problem, when you are talking to the developers, for them to say that it is already fixed and where you can get the fix? If this is a business concern, you should take it up with the people you are paying for support (if they exist).

    "Wanting to be a parent and handhold hundreds of strangers" isn't on the list of pre-requirements for someone to be an open source developer. There quite frankly isn't physically enough *time* for that sort of thing.
    • Re:BS (Score:5, Insightful)

      by mikeplokta ( 223052 ) on Saturday May 20, 2006 @01:44PM (#15372642)
      The problem is that developers (open source or not) tend to think that "committed to CVS" == "fixed. Once it's been tested, documented and released, then it's fixed -- until then, a fix is simply in the early stages of development.
      • Re:BS (Score:4, Insightful)

        by ivan256 ( 17499 ) * on Saturday May 20, 2006 @01:57PM (#15372704)
        I don't think you're right. The problem is that you take it to mean they think that committed to CVS is the same as fixed. They mean actually mean: "I've taken care of it as much as I plan to for the moment. I heard you, so stop bothering me."
      • Re:BS (Score:3, Insightful)

        by Zed2K ( 313037 )
        Exactly! Which the open source developers would know if they actually took responsibility for their open source work. Most of them don't. They do if for free and expect people to just "accept it" and then when people don't they pull out the whole "well its free" cop-out.
        • I think you missed out on the whole "THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
          PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
          OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
          MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
          TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU" part in almost every OSS license. (Quoted verbatim from the GNU GPL v2)

          This means, in effect, that they do not have any responsibility to you, period. You can
          • Re:BS (Score:3, Insightful)

            by llefler ( 184847 )
            That too is a cop-out. There is a difference between taking responsibility for a project and being legally responsible. If they want us out there promoting their product, they need to take some responsibility for addressing bugs and feature requests. What would happen if Debian, Mozilla, or Samba (for example) said "our license doesn't require us to fix any bugs, and we just don't feel like it". Open Source is described as a community, so while you might not be legally responsible, you might have some obli
      • Re:BS (Score:4, Insightful)

        by 0racle ( 667029 ) on Saturday May 20, 2006 @02:00PM (#15372720)
        Fine. Then check out the patched sources and start testing it.

        The article is specifically about OSS developers and is just another instance of people using freely available and developed software believing that the developers owe them something. For OSS, developed as a hobby in the free time of its devs, committed to CVS is fixed unless you can show otherwise.
        • Re:BS (Score:5, Interesting)

          by hey! ( 33014 ) on Saturday May 20, 2006 @04:30PM (#15373179) Homepage Journal
          Fine. Then check out the patched sources and start testing it.

          Which is not an answer for most users. They need regular, predicable releases they can plan around.

          The article is specifically about OSS developers and is just another instance of people using freely available and developed software believing that the developers owe them something. For OSS, developed as a hobby in the free time of its devs, committed to CVS is fixed unless you can show otherwise.

          Some OSS developers may be hobbyists, but in terms of the most economically significant software I suspect the most are supporting themselves directly or indirectly as a result of their work. At least I beleive most people would like to. And for the ones that are supporting themselves through F/OSS, some users must be supoprting them, if not necessarily the whiniest. This is the same in closed source software too; the whiniest PITAs are usually not the ones who are paying the bills.

          Speaking as a developer of over twenty years, the attitude you are taking here is not a result of the novel moral relationship of the OSS develoepr to the freeloading user. It's been a common trait of our species since we climbed out of the digital equivalent of the primordial slime. Most developers want users. In the same way that the aristocracy wants servants: they should take care of us, not the other way around. Like any good servant, they should be for practical purposes invisible; the brandy and cigars (or soda and chips) should just appear as if by magic, and they should not burden us with their problems and especially not their opinions about how we should use our time.

          In your heart of hearts, you know you deserve to be taken care of, because you grace the world with your magnificent artistry. It's a scandal that the MacArthur "genius" grants have overlooked you so long.

          On the other hand, most of us have learned that working for The Man sucks. The Man has the temerity to look at us as servants. Free and Open Source is attractive because we can take our blood sweat tears and inside knowledge with us if we need to ditch The Man. But being in business for ourselves isn't quite the right niche either. Every user become The Man. What's worse is they view us the same way we view them.

          Which creates a new economic niche for companies dealing in OSS. They can make a living making sure all the spoiled, self-centered parties involved don't end up throwing furniture and stomping out of the room, despite the fact it's in everyone's interest they cooperate and compromise a bit. In fact, it's better that they don't end up in the same room at all.

          In a sense, that's what companies with Linux distros do. They test a bunch of patches to to a variety of software, decide which ones are best and how how they are best packaged. Then they offer regular, predicatble and tested updates, rather than showering the end user with continual updates, which is in effect what the CVS tree is. Companies are also increasingly being formed around individual projects as well.

          The main difference between open source and closed source companies is that for practical purposes the open source companies down own the product, even if by legal technicality they're the copyright holders. That means that users get the same benefit as the developers. If they don't like the service, the test and update policies of the company, they can walk away from the company without losing their investment in time and knowledge.
  • by kevin_conaway ( 585204 ) on Saturday May 20, 2006 @01:38PM (#15372611) Homepage
    Do you want hastily written software or do you want software that works?

    Any non-trivial software complication is extremely complex. Fixing bugs can create new bugs. Fixing those bugs can introduce even newer bugs, ad infinitum.

    By placing code in CVS, it gives the developers a way to measure their progress but also allow users to test the code.

    Want bugs fixed faster? Quit bitching and start testing.
    • by chill ( 34294 ) on Saturday May 20, 2006 @02:12PM (#15372750) Journal
      Want bugs fixed faster? Quit bitching and start testing.

      Typical I-have-no-life-but-my-project response.

      Here is the typical "test" from a user perspective.

      1. Website has dire warnings about stable vs unstable, so user gets stable version.
      2. User finds bug and reports it. Often they provide no useful information other than "feature X doesn't work".
      3. Odd are, user just e-mailed someone which means this now needs to be entered into development bugtracking system, like bugzilla. User is pointed to bugzilla and/or proper bug reporting method.
      4a. If the user is worth a damn, they will attempt to report it properly.
      4b. Other users bitch about FOSS software quality and leave to flame on /.
      5. User spends days trying to figure out the proper way to report a bug via bugzilla. Here is a tip to developers -- Bugzilla is NOT USER FRIENDLY AT ALL if you are not a developer. It sucks like a Dyson. If you're a developer, KNOW WHAT YOU ARE DOING and use it daily, it is great. If not, it is a bitch.
      6. User offers to test, gets development version.
      7. User finds out that all the real action is in CVS/Subversion and spends the next 6 weeks trying to figure that mess out.
      8. User finally gets CVS source, takes the next few days trying to understand the code.
      9. By the time user understands the code enough to make a change, someone else has changed something and they have to resync. Loop to 8 at infinitum.

      Moral of the story? Testers are NOT developers. If you want quality TEST people then never EVER send them to Bugzilla and never EVER give them CVS/Subversion. Give them a SIMPLE form to fill out for reporting bugs that can then be parsed by someone who knows Bugzilla or your bug reporting system.

      Don't assume testers have a development toolchain. Don't expect them to use CVS or compile/link anything. Give them a .tar.gz or .zip of an executable. THAT they can test.

      If you're moving so fast in development that this is unreasonable, then don't be asking for non-development testers.
  • Is this really a problem? Nathan would lend more weight to his argument and coined term "CVS Copout" had he given at least one concrete example. First, Nathan explains this "copout" isn't really a problem for big and well-supported applications and projects like Firefox (duh).

    So, he cites:

    At the complete other end of the spectrum is a kind of app that we all love to hate, the audio player. The task of the audio player is so complex that almost all of them rely on a mountain of I/O and processing libraries to support the dozens of sound formats, metadata, synchronization and modification, effects, and management that we all expect.

    But that level of complexity just about guarantees that when a bug hits Rhythmbox and robs it of its ability to play *.m4b files (to make up an example), the mass market won't see *.m4b playback in Rhythmbox again for six or more months.

    So his "example" of this problem is by his own admission, made up. It would be nice to hear of a real life example when airing grievances to an international audience.

    Finally, Nathan proposes it better to make available for alpha and beta testing the development branches of CVS projects. I thought in many cases that was already true. Regardless, that idea would provide relief to a tiny fraction of the population, still there isn't anything (IMO) wrong with the idea.

    As for his made up example, he submits that if perhaps there were a bug that stopped Rhythmbox from playing mp4 files it could be four to 6 months before the pipeline provided relief. I doubt it. For mainstream and widely adopted and popular formats I see fixes turn around in a couple days... e.g., when gaim suddenly lost contact with Yahoo chat protocols, a new release was available the NEXT DAY.

    Giving a problem a name and identifying it is the first step to solving it. Is this one?

    • You want a real-life example? Gaim. They don't even bother with cop-outs anymore. There's zero response to any kind of "when" question. I understand "it's ready when it's ready," but the total lack of communication is just stupid.

      A lot of you have noticed that while we typically release every three weeks, we haven't had a release in a while. We've shifted all our efforts to finishing Gaim 2.0.0. Gaim 2.0.0 has a ton of great features, fixes every problem you've ever had with Gaim, makes drastic chang

      • Except for the regular updates and multiple Gaim 2.0 beta releases in that time?

        Meanwhile, we're going to be going through the *second* Summer of Code without a stable release including some of the major accomplishments, like file transfers actually working.

        To quote the famous owls: O RLY?

        What's this then? [sourceforge.net] Or the fact that I was just transfering files over GAIM via Oscar last night?

        This, of course, is ignoring the fact that Oscar file transfers are totally undocumented by AOL meaning they had to be reverse

  • by gru3hunt3r ( 782984 ) on Saturday May 20, 2006 @01:40PM (#15372622) Journal
    (Speaking on behalf of open source developers everywhere)

    You're right, next time we'll respond with "Screw you, if it's really that important -- fix it yourself and provide binaries to everybody on the Internet"

    First they want free software.
    Then they want good software.
    Now they want good, free, software - instantly.

    F*cking users.

    • Re:Oh .. I get it. (Score:2, Insightful)

      by basic0 ( 182925 )
      I have a bit of a 1980s Steve Jobs attitude towards software and developers: if it doesn't work or if it sucks really bad, don't release it to the public. Maybe *you* think you're programming something for yourself, but when you post it to this website and that website and get it included in Linux distros, end users will be using it and expecting it to work. If you can't take the heat, etc...
    • Re:Oh .. I get it. (Score:3, Insightful)

      by rbarreira ( 836272 )
      I know that was a joke, but it made me think of something anyway:

      People should only develop free (as in beer) software IF THEY REALLY WANT TO. If you're not prepared to not get anything from it, don't do it. If someone complains politely about a problem and you feel angry or make an angered reply, it's because you should have never done it for free or no longer want to do it.
  • Hmm.... (Score:5, Funny)

    by Newer Guy ( 520108 ) on Saturday May 20, 2006 @01:41PM (#15372625)
    And I thought this thread was about a drug store chain getting rid of their security officers......
  • or whatever version control system you use another is when it is integrated and released in a tested release. There are a myriad of things that occurs in a version control system and not all modifications are what you want in a release.

    Some fixes are more critical than others and has to be prioritized during a build. The good thing is that as soon as it is in the main branch of a version control system then it's in and will pop up sooner or later.

  • by Anonymous Coward
    It's a way of saying that there is no need to bring a problem in front of the developers. The bug is fixed, so it doesn't need their attention anymore. Every software has release cycle problems: Users would love to get a fix for a problem right away, if they think it's an important problem. On the other hand users want to update as seldom as possible, because updates are time consuming, even the ones which you don't install. The balance is hard to keep, and with Open Source it's a little harder because user
  • Excuse me? (Score:5, Insightful)

    by ivan256 ( 17499 ) * on Saturday May 20, 2006 @01:45PM (#15372645)
    Users are the lifeblood of an open source project, and bug reports are the white blood cells. Even when there are dupes, they're a good thing.

    Users are *not* necessarily the life blood of an Open Source project. Most of these projects are developed to scratch an itch of the person who wrote the software. Users typically are the people who came along for the ride thanks to the developer's good will.

    When somebody doesn't like an article this guy writes, are all the duplicate e-mails bitching about it a 'good thing', or do they just drastically reduce the usability of his e-mail account while giving him more work to do when he could have been writing?

    You think the 'CVS cop-out' is bad? It's the incessant demands of users that are the reason I don't even put my name on code I release as Open Source anymore. I'll fix the bug or add the feature when the lack of fix/addition is getting in my way. Until then, the code is open; add the change if you care that much about it. And if nobody uses it because I'm not bending over backwards for them, well, I could care less because I'm not out to win a popularity contest. What more do you want from a guy beyond a BSD license anyway?

    The problem isn't the 'CVS cop-out', it's the 'Take Over the World Myth'. Users of Open software are under some crazy impression that most of it is written in order to take over as much market share as possible. People who write about open source are using a different definition of 'win' than people who write most open source software.
    • Re:Excuse me? (Score:3, Interesting)

      by Aladrin ( 926209 )
      I also disagree. Users are generally not the lifeblood of an open source project.

      I have never written any free program for anyone but myself. I always get paid when someone else is the target.

      I have, however, given the program away for free while and after using it myself. I felt SOME obligation to them to fix bugs as the appeared, but nothing like I would feel for a paying project. I only felt that way because I genuinely like to help others.
  • by jnik ( 1733 ) on Saturday May 20, 2006 @01:45PM (#15372646)
    "If you use the CVS, don't expect support." Public CVS access is great--it gives people an opportunity to try out new things and invites outside developers. But it's really only part of "release early, release often." Keeping a stable version reasonably up-to-date keeps users happy (which in turn results in more contributors to your project) and, in my experience, results in better code. Plus, it reduces support headaches.

    The duo of "use the CVS" and "we don't support CVS" says "I twiddle with this code but I don't care to have anyone using it"--which is fine, but be honest about that. Or appoint someone to handle stable releases.

  • Seems to me this is easily solved by developers saying "That feature is coming, we're working on it" instead of "It's already in CVS! Stop complaining!"
    • The problem can also be solved by users making that translation in their head, so those of us who would consider a CVS build if appropriate aren't screwed out of useful information.

  • by avalys ( 221114 ) on Saturday May 20, 2006 @01:47PM (#15372657)
    The most annoying is:

    "That problem is fixed if you install Bob Smith's modified version of libsomething, that breaks several other applications and is only available from his slow, unreliable, often-unavailable personal website, then recompile our application using the three misformatted patches some yahoo posted to our mailing list across seven months back in the spring and summer of 2003. No, we don't have links to the posts, don't you know how to use the archive search?"

    And of course, they have no plans to integrate any of these changes into their codebase: why should they, when the solution is so easy?

  • by rklrkl ( 554527 ) on Saturday May 20, 2006 @01:49PM (#15372661) Homepage
    Saying it's fixed in CVS is fine, providing there's regular releases afterwards with those CVS fixes in. I reported a problem with cscope [sourceforge.net] to the maintainers of that package (resizing the window causes the application to exit immediately - a pretty major flaw for a stable release) and was told that "this was fixed a long time ago in CVS". Yes, I even sent them a one-line fix (ignore SIGWINCH signal) as a temporary measure too, so I did try to get them to fix their stable version without having to roll out the CVS-based one instead.

    Now, yes, they do have regular CVS snapshots I could try (which they actually warn against using!), but the most frustrating thing is that the last stable release - containing this crashing bug they've known about (and already fixed!) for potentially years - was in September 2003, which is *far* too long to go without rolling in CVS fixes and producing a new stable release.

    If developers don't regularly release new stable versions (at least every 6-12 months), then it's discouraging to end-users to even bother reporting fixes - it gives the impression that the project is dead and you won't see a new version for years, if ever.

    • This is not uncommon. I know of a Apache project that has had books written about it, which hasn't had a release since 2003. It is still very much in active use, and there has been a major bug in it since 2003 and a fix for about as long in CVS, but no release. Fair enough if one of the dev team doesn't feel like doing something, but for active projects with several develoeprs on a major project, its important to release.
  • by patio11 ( 857072 ) on Saturday May 20, 2006 @01:50PM (#15372668)
    ... make sure your budget makes it on the screen. Any effect/costume/acting/writing that isn't reflected on the screen doesn't exist in any way that matters. Similarly, and my own project was as guilty of this as anyone, anything which doesn't eventually make it into a release might as well not exist. We had some awesome functionality which just never managed to make it into the main branch, and our users would post feature requests saying "We want X! Give us X!", and we'd say "Hmm, well, we hope to get around to integrating it in the next release but in the meantime you can do the following hacking on your system to get this working" and the users would say, quite rightly, "Thats fricking voodoo, get back to work". Here's some other things OSS as a class could stand to do better (exceptions, of course, exist):

    1) Install programs which are as easy to operate as the standard Windows ones. i.e. "click next until it terminates" should get you a usable program deployed in our best guess of a most useful default configuration.
    2) Documentation. Any documentation, at all.
    3) Documentation which isn't four releases out of date.
    4) Documentation which is actually written in the end language of the user (oh that has caused some hilarity at the office, let me tell you).
    5) Documentation which matches the program as released (ever been told to click the fourth option in the rightmost pane on a setup menu which just doesn't exist?)
    6) More regular releases. Lots of the business world, in particular, could use a nice solid schedule to plan around, but it would be nice to tell home users "While your current version will work, if you come back every 6 weeks you'll get new goodies".
    7) Simplification of the bewildering array of options for downloading packages into something end-users can wrap their heads around. Has anyone done usability testing with non-technical people to see if they understand the whole "stable/dev/nightly" thing that a lot of OSS projects use? Seems to me that could probably be simplified as "Recommended" vs "Everything else".
    • "other things OSS as a class could stand to do better"

      You mention documentation a lot. The only to do that right for the end user is to have expert users write the documentation, not the developers. The end users are usually the lazy bunch of an OSS projects, hence the end-user documentation sucks. To 'fix' that, the expert users of the software of the project need to chip in and make documentation. If there are many expert users, and no small group is willing/able to do the whole thing, then a Wiki can be
  • switching to the Subversion cop-out... its more efficient and that way you could cop-out even further .. "well I fixed that bug but it was in an atomic commit with all the other pointless bugs you have discovered and in the middle of it the power went out and I don't want to resubmit until I'm sure its safe"
  • by Todd Knarr ( 15451 ) on Saturday May 20, 2006 @01:55PM (#15372691) Homepage

    The writer's probably familiar with the same thing in hardcopy publishing: a magazine prints an inaccuracy, realizes it after publication but before the magazine hits the stands, and puts a correction in for the next issue. Once the magazine hits the stands everyone in the world starts writing in about the error, and the only thing the magazine can say is "We know, we've already written the correction and it'll be in the next issue.". Their statement isn't a cop-out, it's a simple fact.

    Same with the "It's been fixed in CVS.". The developers know about the bug, they know how to fix it, they have fixed it, and there's not a thing they can do further until the next release version with the fix in it goes out. Often the fix is intertwined with other changes so it's not a simple matter of applying a small patch and releasing a bugfix version, and there's always testing to make sure the fix doesn't break anything else (and fixing the breakage if it does). Plus, if they do decide to go back, remember that they're already well along the way to the next release. Coding's been done, all that work has to be interrupted, put aside, then picked up once the bugfix is out. That can cost more time than actually fixing the bug did. I deal with this all the time at work, where a bug that takes me a couple of hours to diagnose, fix and test can, when it pops up in production near the mid-point of development for the next version, cost me half a week or more of development time. Needless to say I try to avoid that kind of costly backtracking unless the bug's a true world-shaker that absolutely can't be lived with.

    The "It's been fixed in CVS." can be translated roughly as "Yes, we know about it. We've fixed it. Every bit of time you make us take repeating this is time we can't work on getting the fix into your hands.".

    • Same with the "It's been fixed in CVS.". The developers know about the bug, they know how to fix it, they have fixed it, and there's not a thing they can do further until the next release version with the fix in it goes out.

      But what they should do, if it's a serious bug, is fix it in the current stable branch and do a new point release that includes that bug fix. The CVS might have hundreds of new features and take months or years to arrive whilst those using the stable version are waiting. If a project

  • So someone's peeved that whatever they're complaining about is already fixed, but hasn't magically appeared on their computer? Or is it just that their whine has been found to be pointless?

    In the former case, write a script to update from CVS and rebuild every night. Or every hour, if that keeps you happier.

    In the latter case, here's a tissue...
  • The only real alternative is to provide untested software (such as an automated build - and that's assuming the automated nightly build actually succeeds in building).

    Manual testing is required for releases because fully automated testing, including things like unit tests, are only useful to a limited extent.

    Users are a lot more annoyed by untested software that is liable to crash, exhibit unexpected buggy behavior or trash their data, so it's a case of like it or lump it.

    I suspect the root of the problem i
  • Fast fixes are the whole point of CVS. You shouldn't get pissed off because Open Source isn't as screwed up as the stuff that M$ puts out.

    If there's a real CVS (the drugstore) copout it's that I can't find the one use camcorders for all those neat Make projects [google.com] you can do with them.
  • My take on the article was the author is looking for binaries rather than a source code pull, as that is what the typical 'user' wants. For the most part, he would be right. What was missed is if you take the time to figure out how to download a nightly, you can probably figure out how to compile it as well. Most of the projects I work on do a nightly build from the code repository. In some cases, like FireFox in the early days, I would set up my local environment to snag and built a clean cut each morn
  • by biglig2 ( 89374 ) on Saturday May 20, 2006 @02:17PM (#15372767) Homepage Journal
    But... Linux is not Windows. Seriously.

    With Windows, you get fixes/upgrades when the binaries are released. With Linux, you can wait for the binaries, or, if you are comfortable with compiling, you can get fixes/upgrades slightly sooner. It's a feature, not a bug.

    If you are prepared to spend some time and have some time practicing compiling from CVS (and it's not all that hard to do) then bonus! You get fixes a little early. If not, wait for the binaries, and the really cool thing? Double bonus! You still get the fixes earlier, because open source delivers fixes faster than closed source!
    • You also gain the skills of using CVS and a compiler.

      I'd really suggest that novice linux users out there spend a couple of hours learning enough CVS or SVN to get their favorite package's souce-tree, and then learn how to compile it (probably just ./configure; make install)

      You'll learn a bit about your machine and the linux environment, comilers and versioning tools are useful to know about even if you don't write code, and if you do, you're one step closer to knowing enough to help out on OS devteams.
  • In the community the deployment pipeline often gets neglected. I know this problem myself. You keep dev'ing at the project and tend ignore end-user ready deployment. And they have to fuss about with old versions. Luckyly we're seeing a break in this trend with OSS projects getting into competetive marketing [rubyonrails.org] and end-user management [joomla.org].
  • We need to retrieve code patches that were posted to CVS three months ago. This is not a joke. We can patch the code after we get back. You must bring your own computer. Functionality not guaranteed. I have only done this once before..
  • In closed-source-software, when you complain that feature foo is broken, you get told "That will be fixed in version bar.x.y". They've already fixed the bug in their SCM but you won't know that until bar.x.y comes out and you buy the upgrade, or your maintenance agreement allows you to retrieve that version when it's released.

    In open-sores software, the SCM system is transparent and hence, if you were told "that will be fixed in version bar.x.y", you will say "but it's fixed in CVS! I want a release now!

  • Ignored or completely unknown.

    It means someone has spent the time to make an issue known.. (ie a PROPER bug report, not a random complaint without real info on some completely random message board). The issue has been addressed and is currently fixed. CURRENTLY fixed does not mean it has been an official release but the code has been fixed or written.

    It means it will be released inthe future, but if it is that big of a deal a patch can be made. Otherwise you have to play the waiting game, but atleast at
  • by swillden ( 191260 ) * <shawn-ds@willden.org> on Saturday May 20, 2006 @03:48PM (#15373042) Journal

    Users are the lifeblood of an open source project

    Let's see, how can I put this nicely? Oh, yes, I know:

    Bullshit!

    Lifeblood is that essential element which nourishes and sustains all parts of an organism. Users do not do that for open source projects. Having been involved in a few projects myself, I can tell you what the *real* lifeblood of a project is: developer interest. As long as there is a community (which may be a single person) of developers interested in a project, and willing to donate their time and energy to it, the project grows and develops. As soon as that interest disappears, the project stops. Period.

    User's aren't completely irrelevant, of course. The fact that users exist provides some (weak) incentive for developers to keep going and their feature requests and bug reports can provide a nice stream of ideas that catch the developers' interest. And a large userbase provides a large supply of potential developers who may cross the line from just using to lending a hand. OTOH, a large userbase also provides a large supply of potential obnoxious whiners who tend to piss off the developers to the point they find something different to do, so it's not all positive.

    Pure users are by far the least important part of the community, from the perspective of moving the project forward, because -- gosh this is complex, difficult stuff to understand -- they *don't* move the project forward!

    I know users are often annoyed by the realization that they're powerless unless they choose to invest their own time, effort and brain cells. That's understandable, really, no one *enjoys* being an irrelevant leech (no matter how kindly viewed), and we're accustomed to the commercial world where by giving money in exchange for stuff we put ourselves in a position of (some) control.

    That's not how it works with F/LOSS, though. Pure users are utterly powerless and have no real standing in the community, because they have contributed nothing. Those who regularly contribute good, detailed, reproducible bug reports are adding value, and they have some standing and generally get good support from the developers. Those who offer to pay the developers money generally get outstanding support, though that doesn't happen very often. Those who put in lots of their own time to improve the software also get lots of support.

    But those who give nothing, but only whine about their pet issue, generally also *get* nothing. I understand they don't like that, but, really, what else can they possibly expect?

  • by Schraegstrichpunkt ( 931443 ) on Saturday May 20, 2006 @05:04PM (#15373296) Homepage
    Most of these people are volunteers! The ones who aren't are probably not working for you.

    Seriously, if you aren't happy for the support you're getting, I'm sure there are a lot of people who would be willing to help you with whatever problem you're having, for a fee. Heck, go to a meeting of your local LUG, or any other advocacy group, and you might even get help without paying anything!

    You are not entitled to be catered to. Grow up.

  • by blueZ3 ( 744446 ) on Saturday May 20, 2006 @05:51PM (#15373440) Homepage
    It seems to me that there are two differing views of OSS. When a developer says "they fix bugs and add requested features because they want their software to be useful" a user agrees, then complains when bugs aren't fixed or features added, and then in turn the developers complain about the complaints--because open source developers and users aren't even talking the same language.

    When developers say "I want the software to be useful" what they are really saying is "I want this to be useful to me." It's not a "screw-the-user" attitude (although sometimes it comes across that way) because a large number of the developers working on OSS projects just don't care about anyone else's problems. I don't mean that in a bad way--they aren't obligated to care, because they're (mostly) doing the work for themselves.

    Unfortunately, this isn't always made clear to users. Sometime projects are talked-up by developers on the basis of what they do and users think "Hey, that's cool, I'd like to try it out" without hearing (or thinking about) the fact that what they are really doing is using something that wasn't designed for them to use. Linux is like this (or used to be) where developers were saying "This OS is great. The software for it rocks" and then end users tried it out and started complaining "Hey, it won't play my MP3s" or "Hey, I don't want to edit image files from the command line." In some cases, these features (MP3s and image editing) were implemented by other developers who cared. But it doesn't seem to me that there are many developers who really care about "users" in the sense of "Joe sixpack"

    That's not wrong. It just leads to misunderstandings, because developers are thinking "I like how this works and any end users are other developers like me" and end users are thinking "This doesn't work how I expected, and the developers have the same expectations as I do"
  • by CptNerd ( 455084 ) <adiseker@lexonia.net> on Saturday May 20, 2006 @07:08PM (#15373634) Homepage
    The main problem I see with OSS is that the paradigm presumes that all users of OSS are also software developers. This may be true for users of glib, for instance, but is it really true for users of OpenOffice, or even KDE? The only way I see for OSS to really take off is for a break between open source software development and open source software support. Combining the two the way it's been done doesn't seem to be working all that well. They really are two orthogonal tasks, and the skill sets required really don't overlap much.

THEGODDESSOFTHENETHASTWISTINGFINGERSANDHERVOICEISLIKEAJAVELININTHENIGHTDUDE

Working...