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.
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.
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.