"Lets go" is not an accurate title, "abandons" would be a better word.
He's written good code and it sucks that he's burning out, but it's not cool to ignore questions and not even try to find a maintainer. Capistrano is used by nearly every Rails project, abandoning it is grossly irresponsible.
Why is it "grossly irresponsible" of me to take this action? Are lives going to be lost or injured as a result? Will the economy suffer? Will my leaving this project result in a health epidemic?
I've never made any promises about the project. I never claimed that I would be around for ever. I never said I would ignore questions, either -- just that I would ignore emails sent directly to me. But I'm going to remain on the mailing list, and will remain about as responsive there as I have (and I'm, by far, the most frequest poster there).
Why not look for someone to take over as maintainer? I'm sure an appropriate person in the community would step forward.
This is the traditional method in most open-source communities... particularly where there are canonical distribution sources such as the rubyforge gems.
I don't believe that's effective, especially for projects like Net::SSH and Capistrano where the hacker-to-user ratio is so low. If someone wants to step forward and maintain Capistrano, they'll do so, and the community will organize around them because they'll show they have the passion to do it. If no one steps forward, then an appointment would have failed anyway, because obviously no one has the necessary passion to maintain it, and it might be better for it to die and make way for other alternatives. Either way, appointing a successor would be futile.
Even if no one steps forward, would that be so bad? Capistrano works perfectly well for the vast majority of folks. It's not like I'm leaving behind a legacy of mostly-broken software. :)
i don't think it's as much an issue of organizing around that new person as it is organizing around the new home for the software, regardless of who is maintaining it.
if i want to update my installed version of net::ssh, can i go to the project's homepage and download a new version or do i have to look through a dozen forks on github to find out which one looks to be the most maintained and hasn't broken anything?
And for what it's worth: I wasn't trying to yank your chain, or be one more bit of stress in your life. I didn't know you'd stay on the mailing list, that's good of you.
Setting up the website, writing docs, writing the mailing list, taking improvements -- you might not have made an explicit promise to be immortal and support capistrano and all western civilization in perpetuity, but your actions led people to believe they could rely on you.
We could, and did rely on the code he produced. But that doesn't mean anyone believed they could rely on him. If he had said, "You can rely on me", you might have an argument. Your bad for reading too much into it.
From the blog post:
> For Capistrano, I will continue to follow the mailing list, and might appear in the #capistrano irc channel from time to time, but I am no longer the maintainer of these projects.
He kind of came out and said it.
Sorry to jump on the beatdown bandwagon, but there really is no defense for your attitude here.
Because a lot of people relied on you and you left them hanging. You can beat up on the straw man about killing people, but ditching the project isn't cool.
Sure it is. Jamis did this work for free, he doesn't owe you or anyone else any of his time to continue to maintain an application that he has burned out on.
Open source software gets abandoned all the time. This is only being discussed here because Jamis took the gentleman's approach and informed everyone that he was stepping down.
People say there isn't an entitlement mentality amongst people these days, but this kind of reaction is pretty compelling evidence that there is.
Open Source just doesn't work that way. People move on. I'm sure for an appropriate price you could find someone to continue to support the software.
It's one thing if people fall back on things they've explicitly promised; it's another if someone just honestly says, "I don't have the time and energy for this anymore."
I disagree with you, but I think this is a common enough viewpoint that it shouldn't just modded down into oblivion.
To state the obvious, he owes you nothing. The source code is there. If this were proprietary software and the vendor went bust, would you expect its employees to show up for work every day and support former customers for free? Now consider that Jamis has been doing just that this whole time!
He does owe the community of users something. He didn't write docs, set up a website, set up a mailing list, etc. because he just thought it was a fun hack he was tossing out there, he was building a community of users. All he owed was a "Hey, anyone interested?" blog post before dropping it. I didn't know he was still going to answer questions on the mailing list -- that in and of itself is probably enough.
I'm not a heartless bastard or a useless eater, I just think it's not cool to ditch people you encouraged to rely on you. It's not at all unreasonable if he's burning out, but that doesn't make it classy.
If you're this traumatized by my decision, then honestly, I blame you (and people like you) for my burn out. Where were your contributions to the library, your documentation patches, your discussions of better ways to implement things? Have you been in the IRC channel, daily, helping people troubleshoot problems? Have you posted frequently on the mailing list in response to questions? If you're so dependent on Capistrano, where have you been? If your silence was because it all "just worked", then why are you so disgusted now? It all still "just works".
As for the "Hey, anyone interested" blog post: I've tried that before, on other projects. People don't respond to those. No one volunteers to be hit on the head with hammer repeatedly for no other compensation than a few slaps on the back. You have to really, really, REALLY want to do it, and a blog post is a bad way to ask for passion. Passion is discovered when you realize you need something, and it's not there (or not ENOUGH there). By dropping out, I've created an environment where people have to really examine their use of Capistrano and decide how passionate they are about it. Passionate enough to pick up where I left off? We'll see.
My decision was the right one. I stand by it. There has already been a post on the mailing list by a couple of programmers who have the credentials and the passion, and are willing to carry the torch. Maybe they would have responded to a blog post. Maybe not. But they've responded now, and now the community can either support them, or look elsewhere. My official sanction has nothing to do with it.
I am sorry you (and a handful of others) are frustrated. I wish it hadn't come to this. But honestly, it's not my problem anymore. (And my! How wonderful to be able to say that!)
It really seems like the Ruby community does this to people who do great things. Another good example of this is Zed Shaw/Mongrel.
However, I'd have to say, being a loyal user of capistrano, I am not sure that I could have brought anything meaningful to the table regarding its architecture or decisions, it was just a great piece of software that I used, and will continue to use.
Jamis, thanks for all the hard work you have put in these libraries. You have made my life so much easier and I will be forever grateful for that.
I'm sorry to hear that you burned out and I hope that you will quickly recover.
I respect your decision and I believe you did the right thing. Your health comes before a few folks that are not willing to put the effort to fix things that bother them about the libraries.
You've already done way more than was required of you. Thanks!
I'm constantly baffled by how people like you can reasonably be disappointed a Jamis for giving a great piece of software away for free. Is this how you would treat a person who gives you a gift? By complaining that he stops giving gifts? How can you even look at yourself in the mirror without thinking that you've done him injustice?
Yeesh. Jamis wrote great code and has been rightly praised by commenters for it. I'm not trying to negate that, just suggest he could've hung it up better. Not every discussion is sbout black and white, I'm not trying to tear down every good thing he's done.
Sounds more reasonable than your other post, but I still hear an overwhelming sense of entitlement.
He is doing more than Microsoft did with VB6, but for free. He did us all a favor by releasing it and spending a tremendous amount of time on it. It is open source, you can do whatever you want with it. The free labor of love he bestowed upon the world is MORE than classy, regardless. PERIOD.
If your neighbor shovels your driveway once, I suggest he is cool for doing it, not uncool if he does not do it next week. Capistrano has saved me personally scores of hours of work. So thank-you Jamis.
Yeah, this neighbor, Jamis, just parked an automated snow blower in your driveway that just sits there and waits for the snow, and when it does snow, it just goes into action and clears the whole thing, and your side walk, and then also cleans up after itself.
Capistrano is one of the greatest parts of Rails development/deployment. Thanks Jamis for ALL of your hard work. I am sorry I didn't say Thank You sooner.
He's written good code and it sucks that he's burning out, but it's not cool to ignore questions and not even try to find a maintainer. Capistrano is used by nearly every Rails project, abandoning it is grossly irresponsible.