Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
Programming Software IT Linux Technology

Contributing To a Project With a Reclusive Maintainer? 162

Posted by Soulskill
from the pulling-a-davis dept.
zerointeger writes "I am still fairly new to programming in C, but I was asked to extend an open source authentication module by my employer. The project is complete, testing has been done and it works as designed. The extension/patch I have created is fairly robust, as it includes configuration options, help files, and several additional files. The problem is that I have been unable to make contact with the current maintainer about having this feature added. I think the only reason I'd like to see this included is to prevent any patching of later revisions. A few others I have spoken with agree that the patch would benefit administrators attempting to push Linux onto the desktop, as we have done at the University that employs me. Has anyone else submitted patches/extensions to what seems to be a black hole?"
This discussion has been archived. No new comments can be posted.

Contributing To a Project With a Reclusive Maintainer?

Comments Filter:
  • Fork it! (Score:5, Funny)

    by Anonymous Coward on Saturday August 08, 2009 @04:16AM (#28994747)

    It's open source, so fork it and become the maintainer of the new version. When yours becomes more popular you will be famous, get offered large consulting fees, be able to afford blackjack and hookers, etc.

    • by Anonymous Coward on Saturday August 08, 2009 @05:03AM (#28994885)

      Welcome to the OSS world, where maintainers disappear off the face of the earth, "unfun" parts never get updated, and projects die out to leave only stale Sourceforge pages dating back years.

      • by characterZer0 (138196) on Saturday August 08, 2009 @07:19AM (#28995245)

        Better than a programmer disappearing off the face of the earth leaving code he wrote on a workstation backup in a closet somewhere, were it will never be able to be used by anybody else.

        • by some-old-geek (1329305) on Saturday August 08, 2009 @08:43AM (#28995567)
          My confidence brimmeth over.
        • What happens if SourceForge goes under?

          • by Pharmboy (216950) on Saturday August 08, 2009 @08:25PM (#28999715) Journal

            What happens if SourceForge goes under?

            You will hear about it here first. And by hear about it, I mean /. will disappear, since they are owned by the same company. Just to be safe, I think we all need to do a little:

            wget -m -p www.sourceforge.org

            and maybe add it to cron.daily, to be extra safe. ;)

          • by rs79 (71822)

            "What happens if SourceForge goes under?"

            Archive.org?

            • Re: (Score:3, Insightful)

              by X0563511 (793323)

              Nope. SourceForge is all AJAX-y and PHP-ized.

              Archive.org only works properly with static pages.

          • by Eudial (590661)

            Not a particularly big impact. There are a multitude of websites that well, freeload off sourceforge and similar sites. They strip project websites of enough information to make a summary, download all versions of all programs, and then they present it on their own (more or less ad laden) website.

            They are naturally free to do this, since most of the information they're harvesting is copyleft, and I guess the day an asteroid/wayward ICBM/incompetent idiot reduces sourceforge's servers and backup servers to a

        • Re: (Score:2, Insightful)

          If it is important enough then it may be written again. If it is not important enough then a stale sf.net page provides testimony to how unimportant it was.

          • Importance is relative. It may well be really important to a bunch of people who have no idea on how to write it again (or, for that matter, on what FOSS even is - they only know "free").

        • by westlake (615356)

          Better than a programmer disappearing off the face of the earth leaving code he wrote on a workstation backup in a closet somewhere, were it will never be able to be used by anybody else.

          Not by much.

          The documentation of said code - if it survives at at all - might as well be written in Mayan.

          The code is hack work - that solved some oddball problem for Smith & Jones, Ltd. Suppliers of Stainless Steel Flatware To The Queen Since 1953.

        • Better than a programmer disappearing off the face of the earth leaving code he wrote on a workstation backup in a closet somewhere, were it will never be able to be used by anybody else.

          Why? Are we all pack-rats?

          Writing new code would take a certain amount of effort. Making sense of the code and trying (and failing) to locate the maintainer also takes a certain amount of effort. How do we know the first is always greater than the second?

          Proliferation of dead projects also clutters search results, and should make it harder to find the live projects.

      • Re: (Score:3, Insightful)

        I prefer stale sf projects to scientific papers that say they modified X (e.g. ns), but never show the code.

      • by HeronBlademaster (1079477) <heron@xnapid.com> on Saturday August 08, 2009 @01:49PM (#28997357) Homepage

        You know... you can request a takeover of defunct Sourceforge projects...

    • Re:Fork it! (Score:5, Insightful)

      by petermgreen (876956) <plugwash.p10link@net> on Saturday August 08, 2009 @06:26AM (#28995107) Homepage

      While forking is an option it can be a lot of work for little reward if noone picks up on your fork.

      I'd say the first thing to do is try to figure out the following (some of theese will probablly overlap in thier answers)

      1: Why is the maintainer not responding? is it because they dont like your patches, because they are overworked or simply because they are no longer involved in the project at all
      2: are other users of the project experiancing similar problems.
      3: is the project included with major linux distros (debian, fedora, suse etc) and if so what are they doing.
      4: when was the last upstream release and does it look like there will ever be another one.

      If you do fork you don't want to do it alone, if at all possible you want to get the distros and as much of the userbase on side as you can first.

      • Re:Fork it! (Score:5, Insightful)

        by wigaloo (897600) on Saturday August 08, 2009 @08:26AM (#28995513)
        Another reason why the maintainer might not be responding: It's August, and people are on vacation and otherwise doing family-related stuff. Most open-source projects are done as a hobby, and in general August is a terrible time to submit patches to these kinds of projects. Wait until September and try again.
        • by icebike (68054)

          I think its entirely possible the reason for the absence of response is in the first seven words of the original post.

          Code quality counts. Its hard enough to write clear and maintainable C code, (once described as a language where your entire code base becomes obsolete when your programmer walks out the door), without having to rewrite huge sections into the format compatible with the rest of the project.

          just sayin....

    • Seriously, if the current maintainer (in name only - sounds like he/she's lost interest, or to use the modern euphemism, is "too busy"), can't be bothered to fulfill their responsibilities the project should be taken away from them.
      • by Provocateur (133110) on Saturday August 08, 2009 @06:50AM (#28995165) Homepage

        the project should be taken away from them

        No need to be uncivilized about it. There should be a ceremony, with flags and banners and trumpets and horses. The bold new developer's name should be announced with accompanying fanfare, and he shall kneel in front of the wizened author (who should have put out his cigarette before these solemn rites). The sword edges should be dull, lest angry words from jealous unrecognized forkers be heard and needless violence ensue. I should stop now before this starts affecting my English henceforth

      • Yes and ... (Score:5, Funny)

        by OeLeWaPpErKe (412765) on Saturday August 08, 2009 @09:02AM (#28995677) Homepage

        and politicians who don't represent the will of the people after the election should be impeached, disbarred ...
        and companies who sign a contract and then go broke should still pay and fullfill the contract ...
        and orphans should never get cancer ...
        and all programs should be open source ....
        and I should get paid for this
        and ...

        sorry - just getting frustrations out

    • Re:Fork it! (Score:4, Informative)

      by Directrix1 (157787) on Saturday August 08, 2009 @10:39AM (#28996099)

      Or you can upload it to a website, or the wiki if the project has one. Just make sure people understand what project it is useful with. I wouldn't fork immediately. Forking should be something you do as a last result because you feel you definitely need to take the project in a different direction (or a direction at all). BTW, why don't you mention what the actual project is?

    • by iwein (561027)
      Good idea, but make sure you check the license first.
    • by Eskarel (565631)

      Why on earth would he want to do that?

      He did this patch for work, his motivation for submitting it is not having to maintain it in parallel. All he did was add a feature, why would he want to pick up the whole damned thing?

  • by BadAnalogyGuy (945258) <BadAnalogyGuy@gmail.com> on Saturday August 08, 2009 @04:18AM (#28994757)

    Sometimes OSS is a lot like butch lesbians. Take your question, for example:
    Has anyone else submitted extensions to what seems to be a black hole?
    Yes, sometimes a strap-on is precisely what is needed to fill a black hole.

    But I digress.

    What is the specific project you're fixing up? Is it fairly frequently updated by the maintainer?

    That is really the point I think you need to figure out. If the maintainer has disappeared and does not update the package, then there's really no point in involving that person at all. He isn't the maintainer; you are. The only problem is, as you pointed out, if the package is updated and your patches aren't included, you'll need to provide patch updates to any of your users.

    However, that said, what is more important to you? This package or your time? You don't work for the project, you work for your employers. Release this patch to whomever you like and give them the source. There's no reason you need to kill yourself trying to keep it updated if it works great for you now on the project version you targeted.

  • by Anonymous Coward on Saturday August 08, 2009 @04:19AM (#28994759)

    If its patches is applicapple to Linux, try to send to some of the Linux Distributions. They usually have good contacts to the upstream maintainers, and even if they have not, have ways to record some changes and share them.

    (And that is where people that may take over upstream also most likely will look for patches)

  • by Bananenrepublik (49759) on Saturday August 08, 2009 @04:20AM (#28994761)

    Since your employer paid you to create the patch, and since your employer will save money by not having you maintain a fork indefinitely, you should lure the maintainer with the strongest argument of all: money, paid by your boss.

    • by Sun (104778) <shachar@shemesh.biz> on Saturday August 08, 2009 @07:25AM (#28995279) Homepage

      There were several cases in the past where I tried this. I cannot recall a single time where offering money brought back from the dead an otherwise MIA maintainer.

      The theory is solid, but I have never managed to see it work in practice. Perhaps their spam filter ate my "I WANT TO PAY YOU MONEY" email.....

      • There were several cases in the past where I tried this. I cannot recall a single time where offering money brought back from the dead an otherwise MIA maintainer.

        The theory is solid, but I have never managed to see it work in practice. Perhaps their spam filter ate my "I WANT TO PAY YOU MONEY" email.....

        I have done this, and it has worked exactly 50% of the time. OK, I did it twice, and it worked once. :) But it really worked well that once!

        • by rs79 (71822)

          I donated money once and all of a sudden my three week old question about a brokenness was answered with a workaround.

          Looks like OSS, acts like Microsoft. But 3X as expensive.

          But hey, who uses SSL anyway?

      • by dcollins (135727)

        That's interesting and useful information and I'm glad that you presented it here.

        "The theory is solid..."

        Well, apparently it's actually not -- more like it comfortably feeds into a lot of Slashdot free-market superstitions.

        • Re: (Score:3, Interesting)

          by Sun (104778)

          Perhaps I should point out that when the maintainer is not MIA, but otherwise disinterested, this might actually work quite well. Never had a chance to pay someone else in this way, but did have the privilege to receive funds in order to solve a specific bug in one of my projects.

      • That's interesting and good to know your anecdote; thank you.

        I have some ideas on why it may never have worked.

        Offering someone money to incorporate your changes is akin to offering short-term paid work. This is because they will have to do some work - and because when they accept the money, they are duty bound to do what you've asked.

        Most people do not work as freelancers, and cannot take new short-term jobs easily. They also do not know how to respond to money offers as a freelancer would.

        Remember, most

        • by Sun (104778)

          I'm curious, what sort of amounts have you offered? I have offered money too, but it has always been "feel-good" amounts to express gratitude afterwards, and did not require anything to be done; it was never enough to pay seriously for work.

          I don't recall ever getting to the point where amounts were even discussed. Most often I was not offering to pay to include a patch I already made, but to have the bug resolved (and, in one case, I was offering money to either get a redistribution license for a freeware+

          • Not getting a reply can be as simple as the author didn't have time to reply. They may be too busy with life to respond to every email.

            When a project is not active, the author probably only works on it once every few months for just a few hours on a rainy weekend, if they've looked at it at all in the last year.

            Also, something like 'chntpw', I wouldn't be surprised if that gets far too many mails from annoying users, and also the author may have worried about legal liability if they sell it, as it can be c

      • Maybe in today's economy, this theory will work better than it did 2 years ago?
      • Re: (Score:3, Interesting)

        It worked for me. I think the title of my email was "I'd like to send you $500"

        I got a reply the next day. Within one week he had $500 and I had software with the additional functionality I needed. The functionality was included in the future release of the package and everyone benefits.

        There is truth to the saying "Money Talks"

        • by Sun (104778)

          Your title would have about a 50% of working had the project been mine. If the spam filter let it through, I would probably have read the message. If it marked it as spam, I would have been highly unlikely to have read it when scanning for false positives. I would probably assume this was a Nigerian scam of some sort.

          At the very least, you need to put the project's name in the title.

          Shachar

        • It helps if you do not use a domain name that ends in ".ng"
        • by rs79 (71822)

          "It worked for me. I think the title of my email was "I'd like to send you $500"

          I got a reply the next day. Within one week he had $500 and I had software with the additional functionality I needed. The functionality was included in the future release of the package and everyone benefits.

          There is truth to the saying "Money Talks""

          Jesus. And I felt like a whore for sending a pizza to the Internic to actually make an urgent change in less than a week in 1995. (it worked btw, for instant changes you had to s

  • by quitte (1098453) on Saturday August 08, 2009 @04:20AM (#28994763)

    talk to the package maintainers of a couple of distributions instead. packages.debian.org packages.ubuntu.com etc. should help you find the maintainers email addresses.

  • Just fork it (Score:5, Insightful)

    by Anonymous Coward on Saturday August 08, 2009 @04:24AM (#28994783)

    Either the official maintainer has lost interest, in which case you can simply fork the project, or

    I am still fairly new to programming in C (...)
    ...University that employs me...

    He looked at your code, and decided that some noob at a university wasn't worth flaming. This is a fairly common attitude among open source projects. You'll quickly develop a very thick skin.

    • Re: (Score:3, Informative)

      by Chemisor (97276)

      Well, now, I disagree that such an attitude is common. I have never received such treatment by any project maintainer and would not myself do it for my projects. Whenever someone contacts me about a project I maintain, I always reply, even if it's to a total n00b.

      • Re:Just fork it (Score:5, Interesting)

        by TheRaven64 (641858) on Saturday August 08, 2009 @07:33AM (#28995309) Journal
        Same here. One of our most active developers now was a complete n00b when he joined the project. I recently committed a big chunk of code to one of our core libraries written by someone who was a bit of a n00b. That took three rounds of code review, but at the end we got some really nice code and he became a lot less of a n00b, so everyone was happy. I could have written the code myself, but since there had been a TODO comment in the file that I added two years ago telling me to, it was probably not something I would have done for a long time.
    • Re: (Score:2, Insightful)

      by Thad Zurich (1376269)
      Am I the only one that finds the statements "new to programming in C", "asked to extend an open source authentication module", and "testing has been done and it works as designed" to be utterly incompatible? Come to think of it, "authentication module" should be incompatible with "C" in any context, to say nothing of "new to programming" and "authentication module".
    • by crossmr (957846)

      when I was a college student I needed the wireless for Fedora to support cisco LEAP. I can't recall what I was using at the time..it was Fedora 4, I think nswrapepr or something. I actually haven't used linux in awhile now as I moved to Korea and anything other than internet explorer is illegal (as I type this on firefox I have a friend watching the door). But long story short I fired off a message saying LEAP authentication was not working, very quickly someone, maybe the maintainer or someone able to chan

  • Publish patches (Score:5, Informative)

    by KarlH420 (532043) on Saturday August 08, 2009 @04:37AM (#28994803) Homepage
    Publish the patches on the project mailing list, forum, or on your own website or blog. The most important thing is to get the patches out there. That will open it up to peer review and discussion. From there you have the possibility of linux distros picking up the patch and using it. Eventually the project may pick up your patches. A fork would be a last resort.
    • Re:Publish patches (Score:5, Insightful)

      by TheRaven64 (641858) on Saturday August 08, 2009 @05:20AM (#28994931) Journal
      Exactly. A lot of people have suggested a fork, which implies that they didn't read the question. The submitter already has a fork, maintained by his company (well, most likely just him). He wants to avoid the cost of maintaining a fork by getting his changes merged upstream. Unfortunately, he didn't give enough information for us to give the right answer.

      Is the maintainer replying to other mails on the list and just ignoring this patch? Presumably he already sent the patch to the list, or there would be no way of getting it accepted (an email with attachments from someone who is not an existing correspondent is likely to be blocked as spam). Are other people on the list interested? Do any of them have commit access?

      If other committers like it, then get one of them to commit it; the maintainer, if he wakes up, can always revert it. If no one else has commit access, are other people active contributors? How do they get their patches accepted? If the maintainer isn't replying to them either, then maybe he can persuade some of them to maintain a fork and accept his patch.

      If the maintainer is awake and alive but just doesn't like his patch, then his best bet is to make a simpler version that exposes some public interfaces that allow extensions like his to work and to publish his code as an unsupported plugin.

      • I don't think he's already forked it. He has a privately held altered copy, and possibly makes the source available somewhere.

        "fork it" implies you might have a different app name, hosted separately (even if "separately" just means a different zip file). In other words, not just changes the code. Forking implies becoming the new maintainer and setting up a way for users to get feedback to you instead of the original fork.

        Of course, it's much easier to just get it included "upstream". If the base maintai

  • by Anonymous Coward

    Personally, I'd try to contact the current maintainer, if any, first. Failing that, you could take over maintainership, fork the project, or simply publish your patches and update them as you would likely anyway. If you promise to maintain your patches people will expect you to do so, so you should be careful as to what you promise. Of course, unmaintained patches are much less attractive for others to use than fully integrated and supported ones.

    List your options, choose wisely. Acquiring butch lesbians op

  • by BadAnalogyGuy (945258) <BadAnalogyGuy@gmail.com> on Saturday August 08, 2009 @04:43AM (#28994823)

    I saw you wrote this:

    The extension/patch I have created is fairly robust, as it includes configuration options, help files, and several additional files.

    Your definition seems to mean "complete" or something along those lines. However in actual industry usage, robustness is a measure of software quality as tested. You may be providing a lot of configuration options, help files, and several additional files (what does this mean?), but are you providing well-tested, exception-proof code?

    What is your test matrix like? What is the MTTF among your users? How many users are actually using it?

    The patch you provide can be the most beautiful set of files ever created, but if the maintainer needs to fix all the bugs you created because you didn't test anything except the most obvious cases, then you aren't helping.

    Something to keep in mind as you graduate from university programming to actual industry programming.

  • by kevingolding2001 (590321) on Saturday August 08, 2009 @04:49AM (#28994843)
    ... tty layer was it?
  • black hole (Score:3, Interesting)

    by speedtux (1307149) on Saturday August 08, 2009 @05:12AM (#28994911)

    Are you saying that mail to the maintainer remains totally unanswered? Is there any activity on the mailing list? Or are you saying that the maintainer is simply not responding to your request to include your particular patch?

    I maintain several open source projects, and there are many reasons why I might not include a patch: I may not understand it, I may not want to maintain it, it may break other features, it may conflict with future changes, it may violate the coding standards, the license may be unclear or incompatible, the patch may have been generated incorrectly, etc.

    I think Launchpad actually has one of the best systems for dealing with this because it allows anybody to submit patches and new versions and the community can vote on and select patches.

    • Re: (Score:3, Insightful)

      by Aladrin (926209)

      And how long did he wait? Maybe the maintainer is on a vacation. People have lives, and he's under no obligation to answer immediately.

    • by gbjbaanb (229885)

      I think Launchpad actually has one of the best systems for dealing with this because it allows anybody to submit patches and new versions and the community can vote on and select patches.

      I like this, Sourceforge should implement it immediately!

      I also think there are a lot of OSS projects out there that that have fallen into disuse (I don't refer to the popular ones), perhaps SF should have a policy of only accepting projects that have 2 owners, like a chairman and secretary for a public company, so there is

    • by 6Yankee (597075)

      I maintain several open source projects, and there are many reasons why I might not include a patch: I may not understand it, I may not want to maintain it, it may break other features, it may conflict with future changes, it may violate the coding standards, the license may be unclear or incompatible, the patch may have been generated incorrectly, etc.

      But you'd still have the courtesy to send a short email to that effect, wouldn't you?

  • Fork it. (Score:4, Informative)

    by imbaczek (690596) <imbaczek&poczta,fm> on Saturday August 08, 2009 @05:31AM (#28994953) Journal
    Use something like git and maintain your changes in your branch which you can push to e.g. github (substitute hg and bitbucket where appropriate). You'll have the added benefit of easy merging with upstream.
  • by Sun (104778) <shachar@shemesh.biz> on Saturday August 08, 2009 @05:52AM (#28995023) Homepage

    We ended up forking - mawstats [lingnu.com].

    Deliberations over whether to fork jawstats was a hard one. The extension was part of a project done for a client of ours. We ended up deciding that we did everything we could to contact upstream, and it was either fork or keep things to ourselves. Luckily, the client (who is the one paying the actual money :-) agreed, and this is the result.

    If you have no choice, then you have no choice.

    Shachar

    • by dannycim (442761)

      Off-topically I have to say that "Shachar Shemesh" totally rolls off the tongue. :) Cool name. Oh, and there's a misspelling on your front page; it's "Know-how", not "know how".

      • Fixed the spelling (punctuation, actually) mistake. Thanks.

        Regarding the name, I'll quote from my old home page [shemesh.biz]. I'd just give the link, but I suspect this site will not remain in the air for much longer (most of it is quite out of date), so I'm quoting here:

        Once upon a time, I had a simple, very easy to understand, name. My given name had three letters, as well as my family name. It was clear to anyone hearing my name how to spell it, and to anyone seeing my name written how to pronounce it.

        Without anyth

  • Death. (Score:4, Insightful)

    by MMC Monster (602931) on Saturday August 08, 2009 @06:09AM (#28995069)

    FOSS has no way to deal with a project's sole maintainer dieing. Especially if the maintainer uses a pseudonym on the web. If the maintainer has a real name, try to get a hold of him via phone directories, etc.

    If you can't get a hold of him after a reasonable effort, certainly fork the code.

    The main issue then becomes, when can a new maintainer take the trademark/name of the old project without expressed permission of someone who cannot be reached in a reasonable time period and may be dead?

    • Re: (Score:3, Informative)

      by Lumpy (12016)

      Yes it does. you set a dead-man switch. Just because the lead developer is too lazy to do such a thing does not mean it's a failure of OSS.

      Plus, where in OSS does it say that I cant take over a project? check out the last CVS and continue. I bet there is a system in place at sourceforge to take over a project there if the devs on it's admin list are non responsive.

      If anything it's closed Source that does not have away to deal with the maintainer dying. Most Close source people are paranoid that someone wi

      • In my (very limited) experience, most small projects are not set up with dead man switches. Most programmers (as most humans) are not prepared for their own untimely deaths.

        Not a big deal, since a fork is easy enough. The point is, if it is a well known project, the trademarks are likely owned by the individual (as opposed to owned by the EFF and contracted out to the individual maintainer).

    • Re: (Score:2, Insightful)

      by Jorgensen (313325)

      FOSS has no way to deal with a project's sole maintainer dieing.

      Sorry - this is too far from the truth to be caused by mere ignorance...

      Obviously, FOSS cannot revive the maintainer (but neither can proprietary software projects). But in FOSS projects, the death of a maintainer will not (by itself) force the death of the project. The only thing that kills FOSS projects is lack of interest.

      Anybody can step up to the plate and take on the role of maintainer, simply because the code is still available. If nobo

      • by mrmeval (662166)

        Or they wrote the program using some dos based C compiler that links to a several proprietary libraries which have no documentation. The libraries have no upgrade path as the companies no longer exist. The C compiler is I think an MS one with an unknown addon package.

        Of course the company had a down turn and let the person go and 10 years later they need the code 'fixed' to work on windows. I'm happy to say it won't be done by me. :)

    • Re:Death. (Score:5, Interesting)

      by adamkennedy (121032) <adamk@c[ ].org ['pan' in gap]> on Saturday August 08, 2009 @10:02AM (#28995935) Homepage

      > FOSS has no way to deal with a project's sole maintainer dieing

      Perl does.

      As usual CPAN has a long-established and regularly used method for dealing with issues like this. There's a process of handing off namespace control to new maintainers when previous maintainers go silent or die. With 7000 developers in the system, our experience is that a few dozen are going to die every year (although I imagine this will slowly increase as the median age creeps upwards).

      In practice, we tend to see one significant case of death or death-like symptoms a year that requires a little more hand-holding to do proper module hand-off.

      In the last few years, we've lost the maintainer of Perl's Tk bindings, a significant DateTime contributor, and a few years ago one of the largest CPAN authors quit programming to become a missionary in Japan and asked for new maintainers for all his work (that would be the "death-like symptoms" part).

    • by belmolis (702863)

      That's because FOSS programmers live forever.

  • Holidays (Score:5, Funny)

    by Anonymous Coward on Saturday August 08, 2009 @06:11AM (#28995075)

    If the maintainer is French, don't expect an answer untill september 1st,

  • by inflex (123318) on Saturday August 08, 2009 @06:59AM (#28995177) Homepage Journal

    I'm the creator/developer/maintainer of a lot of OpenSource projects and sometimes you just can't seem to keep up or you find that life outside of OpenSource keeps dragging you away from getting around to applying patches.

    To be fair a lot of the patches I receive are very minor and could be applied in seconds as well as verified but then there's also the whole update announcements process and all the documentation changes too. After a while you find you get to spend a couple of hours every 3 months on a project where you cobble together all the patches, sort out the docs and lump-release it. Yes, it's a bad way of doing things but often when the code is a decade old there's not a lot of compelling drive behind maintaining things at a prompt rate... .especially when you're already scratching to keep up with all the bills and other "real life" things (partners, cars, social comittments blah blah blah).

    Anyhow, don't take it personally, just send another message periodically and eventually the maintainer will either snap or something. . . .a lot of us simply forget, yes, it's as simple as... now where did I put my coffee? :)

    • I routinely take a few weeks to reply to mails if I cannot reply quickly and they require some work to be done. Naturally, some of those I wanted to respond to get lost in the infinitely extending inbox.

      Despite my poor replying record, I still spend an average of >10 hours per week dealing with email. And I am not a maintainer of any (public) open source project; I simply participate.

      I favour the Linus Torvalds method of inbox flow-control: if it's important, send the maintainer the same mail again aft

  • Similar Story (Score:4, Interesting)

    by markus_baertschi (259069) <markus@3.1415926markus.org minus pi> on Saturday August 08, 2009 @07:13AM (#28995233)

    I've lived a similar story a while back. I was using a perl module from CPAN for a customer project. During the implementation I found some bugs/limitations. After getting in contact with the maintainer he sent me some patches to fix my problems. I used those and my project went into production.

    A couple of years later we did migrate the application to a new server and I reinstalled the perl modules from CPAN. I found that the patches I got never made it to the CPAN repository. I still got the original patches and used those to get my project shipshape again.

    In parallel I tried to get in contact with the original maintainer, but I never got a reply. It looked like he dropped off the planet. After a while I applied for co-maintainer status of the module on CPAN. This was granted when I could plausibly demonstrate that I tried to talk to the original maintainer. Since then I'm now the 'official' maintainer of the module and do integrate patches and help users.

    We don't know about your modul en and its infrastructure (homepage., mailing list, etc.). Perl modules live on CPAN, so it is a good start to start there. You'll have to see where your program lives and go from there.

    Markus

  • by ugen (93902) on Saturday August 08, 2009 @09:42AM (#28995841)

    I used to open-source everything I do. No more. My current project is closed-source (but free) application. While there are quite a few users, very few butt in with "extensions" that they feel absolutely must be there. No forking either - you don't get to take the results of my work, add a few things and distribute, creating confusion and incompatibility, which lead users to other products all together and hurt me (I don't care about the other guy). Don't like my design? Write your own damn product, it is a free country and you have access to gcc and vi :) just like I do.

    Incidentally, in my experience with open-source projects significant majority of user response email consisted "feature requests", usually written in demanding "you owe it to me" key. Now with a closed-source application, no such thing and quite a bit of feedback begins with "thank you for the great product" :) Now that's good motivation, and it keeps me working.

    • Re: (Score:3, Interesting)

      by Dhalka226 (559740)

      You're certainly free to distribute your software however you please, but if these were your feelings about open source software --

      I used to open-source everything I do. No more. [. . .] No forking either - you don't get to take the results of my work, add a few things and distribute, creating confusion and incompatibility, which lead users to other products all together and hurt me

      -- then I honestly don't understand why you ever decided to open source anything to begin with. You seem actively bitter about

      • by Abcd1234 (188840) on Saturday August 08, 2009 @12:11PM (#28996679) Homepage

        You seem actively bitter about the possibility of forks while explicitly choosing a license that not only allows them, but makes it so simple that it basically encourages them.

        Actually, I think it goes deeper than that.

        Most people don't *want* to fork projects. Your average contributor is a career developer who's probably being paid to do something else entirely, and only contributed to the project because they needed some functionality to get their job done. Alternatively, they're hobbyists, in which case taking on the responsibility of maintaining a fork isn't something most people are interested in.

        Instead, the reason forks happen is because the maintainer is, for some reason, hostile to the wishes of some not-insubstantial portion of their user base. In this particular case, it appears the OP is actively *annoyed* by people requesting features. Well, big surprise that, in such a situation, people are likely to fork your codebase: given the option between maintaining your own fork or dealing with a hostile maintainer, forking is obviously the best solution. And so the OP, rather than, say, being less hostile to and more cooperative with his user base, chose to simply take his ball and go home.

        Fundamentally, it's an attitude problem: some people see software development, and OSS in general, as a collaborative process, and enjoy working with others, accepting contributions, etc. Others, however, see users and potential contributors as a nuisance and something to avoid. Big surprise if the latter group choose to obviate OSS in favour of a closed development model.

    • by Abcd1234 (188840) on Saturday August 08, 2009 @12:05PM (#28996637) Homepage

      I used to open-source everything I do. No more. My current project is closed-source (but free) application. While there are quite a few users, very few butt in with "extensions" that they feel absolutely must be there.

      Great, so in a case like this, where a user created valuable new functionality, you wouldn't benefit. Instead, you'd be stuck doing the work, or refusing to do so, in which case you'd lose a customer who'd be forced to move to a different product, instead.

      Basically, rather than ignoring useful patches, you now have to ignore users requesting useful features, who then just move on when you say 'no'. Yeah... that's much better.

      No forking either - you don't get to take the results of my work, add a few things and distribute, creating confusion and incompatibility, which lead users to other products all together and hurt me (I don't care about the other guy).

      How is that a product of being OSS? The issue, here, is very simple: a maintainer that's either non-responsive or MIA. If the maintainer were responsive, the changes would be added to the existing product, and everyone would be happy: the originator wouldn't have to maintain a separate tree, the maintainer wouldn't have to write the code themselves, and the other users would benefit.

      In fact, in this particular case, closing the source only does one thing: fucks the customer, as they're now forced to find something else, since they can't just take the code and alter it as they see fit.

      Now with a closed-source application, no such thing and quite a bit of feedback begins with "thank you for the great product"

      I'm sorry, but I have to call "bullshit", here. Whether or not you get feature requests has absolutely *nothing* to do with the license the source code is under. Either way, you have users with ideas about how the product should work. The only difference is that, in the case of closed source, the user can't just contribute code back to you. Instead, they have to wait for you to decide their idea is worth implementing (and then live with whatever implementation you come up with). That sounds like a lose-lose proposition to me.

      • by Kjella (173770)

        I'm sorry, but I have to call "bullshit", here. Whether or not you get feature requests has absolutely *nothing* to do with the license the source code is under.

        But I suppose the prospect that you could fix it yourself or find someone else with the same itch leads to a more hostile approach than when the closed source maintainer is your only hope of ever adding it to the product...

    • Re: (Score:2, Interesting)

      by uid7306m (830787)

      I like to think that my bug reports and feature requests are helpful. Certainly I intend them that way, though I suppose it's easy enough to imagine some maintainers think otherwise.

      There isn't a sharp line between feature requests and bug reports. Personally, I take the liberal stance and say that "if it confuses the user, it's a bug", but some differ. Some strange people even write specifications and believe that "

      • by JohnFluxx (413620)

        > I take the liberal stance and say that "if it confuses the user, it's a bug", but some differ.

        Heh, as a open source programmer, I hate people like you :-D

        I jest, but bugzilla (etc) are tools to aid me. A way for me to categorize bugs and try to organize what I need to work on, and provide a way for users to contact me.

        It is most annoying when users start arguing over whether something is a wish or a bug. I cannot deal with every single issue that people report, even if I agree with it, and I need a

  • by desertcrevasse (619379) on Saturday August 08, 2009 @09:56AM (#28995903)

    We are involved in a similar effort to add features to mod_auth_cas. While the project maintainer is far from unresponsive, it's clear he has other responsibilities and attends to the project as time allows. We are making demonstrable progress toward having our features merged into the project, but the process has taken longer than anticipated. What has worked for us:

    - Be Professional
    We followed the recommended procedure for submitting the patch, have been responsive in addressing questions, and have tweaked the patch when asked. Throughout we've maintained an attitude of humility, which makes friends and influences people.

    - Be Patient
    Provide adequate time for your submission to be evaluated. Like so many open source projects, the maintainer probably handles the project in his "spare" time.

    - Be Assertive
    Inquire about the status of your submission regularly via communication channels the project provides. The frequency of your inquiries should be reasonable; nags are easily dismissed. Inquiries that express a sincere willingness to be part of the solution are particularly effective. Also, you may consider contacting other folks personally that may have influence upon the project. If you can't get the maintainer's attention, maybe you can get the attention of a trusted colleague who will encourage the maintainer to take a look. I believe this point in particular was helpful in getting our patch reviewed and acted upon.

    Good luck. From a cursory review of your project goals, it sounds like your contributions would be sincerely valuable for pam_krb5. I'm pretty sure we could make use of it at our University.

    M

  • by Animats (122034) on Saturday August 08, 2009 @11:19AM (#28996317) Homepage

    The Python world suffers badly from this problem. There are many add-on modules for Python that are written in C. The interfaces for databases, SSL sockets, and similar things one needs for basic web applications are third-party modules in Python. In most cases, the module has one maintainer.

    The C API for Python changes with each release of Python, and modules have to be updated and rebuilt for each platform. This process lags years behind Python releases. Often, the needed changes are minor, but short of forking and taking over maintenance of the module, there's no way to get them done fast.

    There have been amusing moments. At one point, the maintenance organization for a module used in business applications was a World of Warcraft guild. At least they got stuff done.

    • Re: (Score:3, Insightful)

      by dkf (304284)

      [Bang! There goes the modpoints...]

      The C API for Python changes with each release of Python, and modules have to be updated and rebuilt for each platform.

      That's stupid. If you were - as a community - to commit to a stable ABI then the modules would only need rebuilding when they are to take advantage of a new piece of API. That in turn allows developer effort to be spent far more wisely in areas where it can make a good difference. (The Tcl community has been doing this for a decade.) You can even leverage this to strengthen your packaging technologies too, but that's getting off-topic.

      This process lags years behind Python releases. Often, the needed changes are minor, but short of forking and taking over maintenance of the module, there's no way to get them done fast.

      That's why a production module shouldn

  • Again another instance of why there needs to be some organizational standards and not just coding standards to the structure of FOSS projects. Every time I bring this up on Slash, I get my head bit off; but with all the noobs suddenly finding FOSS and jumping in to start and run projects it is becoming an increasing problem in FOSS. I suspect because those with the experience are progressively spread thinner. Every week there is another story on slash about some project or another where the top guys went AW

  • by br00tus (528477) on Saturday August 08, 2009 @12:07PM (#28996649)
    I once wrote a patch for a program on Sourceforge that was only a few lines but had taken weeks to figure out, and it definitely improved the package. I wouldn't call the maintainer reclusive, he was more like a cuckoo clock who would show up once a year, work like crazy on the program, then disappear again. After I wrote the patch he disappeared. A few months later, I was busy myself and forgot about it. Two and a half years later I started getting e-mails from his projects mailing list again where he was saying he was putting out the new version. He had already updated a bunch of files in the CVS, so I redid my patch against the latest CVS and made noise about my patch again. Well, he included most of it in his next release. Until then, it was sitting in the patches part of Sourceforge for anyone who would be very serious about the program to see.

    People get busy in their real lives, and open source projects are usually a low priority next to putting food on the table, trying to get laid etc. Another problem is the paucity of good developers involved in open source projects relative to the number of people using them. There is a definite learning curve in these languages. I have been working with C language for 20 years now (initially making small programs to make C programs compile on my particular OS) and on some level I still don't really understand pointers and memory - in fact I know I don't because I missed those questions on a recent examination.

    Some people have been saying to fork it, but then you have to take on the burden of all of that. I would say definitely think before doing a fork, are there enough developer man-hours (person-hours) out there, including myself, over the next several years that will work on this project that will make a fork necessary? You don't want to fork a dead-end project into something that's just going to become another dead-end project. On the other hand, if there's a multi-year commitment from yourself (and maybe others) and the maintainer has disappeared completely for weeks and months on end, then maybe a fork is in order.

  • I'm the author of a number of patches to a number of OSS projects, mostly security related. So, I would love to know what this "authentication module" is. Sounds like it might be PAM or maybe Apache related?

    Over the last year and half or so, a major OSS routing package, Quagga, was largely on "auto pilot". The maintainer was not being responsive and outstanding patches were piling up and releases were over due. This project was, in and of itself a fork of an earlier project, Zebra, that had gone stale a

Our policy is, when in doubt, do the right thing. -- Roy L. Ash, ex-president, Litton Industries

Working...