This is something I've struggled with for years. I still feel guilt over the projects I've abandoned in the past for various reasons. My first open source project was ringconnect, which would listen on a phone line for a specific pattern of rings and then connect to the local ISP and send an email with its current IP address. I wrote it so that I could connect to my home machine from campus without having to waste a quarter on a phone booth (the quarter is returned if the other side doesn't pick up). Releasing it as open source was almost an afterthought, but the result was a whole bunch of support requests that spanned almost a decade (the last requests I got were from someone in Africa who needed to keep computers in contact over regular phone lines). I felt so bad that I couldn't fix things anymore because I didn't have a modem...<p>Now I'm plagued with guilt because I am currently maintaining 3 major projects that are building up issue tickets, and I just don't have enough time to keep them all going the way I'd like to, yet I can't bear to abandon any of them (indeed, I have so many MORE ideas I want to bring out!).<p>What I do know is that I used to love receiving issue notifications, but now that time is really at a premium, I get a sinking feeling instead because I know that I'll have to pick and choose what I fix. I just hope that eventually I'll be able to get on top of things again.
This is a very interesting point (re: the guilt especially) - sometimes I'm almost dissuaded from releasing code because in the end it might have a net negative impact on my life.<p>There's even stories of people hunting down email addresses from git/SVN commit data and emailing about problems years later to people who only ever released the code as a "hey, this is interesting" attempt.<p>I'm not sure what the solution is - responsibility is important in any healthy open-source project, but sometimes I just want to release code as a way to potentially let someone else do a bit less coding, not as some well-maintained library attempt.
Don't know if github made things easier or harder. Want to contribute a patch? Fork the code, make your changes, do a pull request...<p>In the old days, we just sent a diff to the maintainer and that was that. It could either be accepted or it wasn't. It was quick and simple.<p>In the old days, opensource projects would also have a site, with downloadable artifacts, and wouldn't present the user with a source tree which may or may not work, and with millions of forks leaving the user doubting which is the official one.<p>It is a dumping ground of code.
Basically all of my code I've ever written (as someone who's yet to find an actual job coding) is "open source" simply because I use GitHub for everything, not necessarily because I <i>want</i> people to look at it ;)<p>I have a few projects languishing I'm concerned about - an aborted attempt at making an EmberJS build system using Grunt, an aborted attempt at making a localStorage adapter - that I still see being starred or even forked.<p>I wish GitHub had some way of marking a project as "inactive" with a big warning banner. I suppose I should go back and update the READMEs of those repos to note such, but it'd be nice to have just a checkbox to tick and get a big ol' warning without having to actually update the repo.
If one took the attitude of "this software works for me and you're free to use it if you like," there'd be no guilt or stress in open source. But we want to help others and/or gain reputation by solving their problems, too, which leads us to feel obligated to maintain it.<p>This is mostly a good thing, I think; without it, we'd have a lot of one-off projects with limited reusability.<p>But it's also valid to say "I no longer have time for this, anyone is welcome to take it over." It just takes a bit of emotional strength to do that.<p>(Dr. Nic in the Ruby community is aggressive about doing this.)
Love this article - really fantastic writing, and the doodles are a nice addition. I'm surprised I'm not seeing this rocket straight to the top. I have yet to host a very popular open source project, but this advice is great for if/when that happens.