So writing code is a very intimate thing. You spend hours and hours thinking very hard about a problem and then finally solve it. Once you do, you work out all of the bugs and such. After tons of hard work, you finally have something you're proud of that can be released or used with other code someone else has worked very hard one.
This is a special thing to me. I really enjoy this process. Everything about it is great. The problem solving, the perfecting, the design, everything.
I don't know how I feel about selling this. I mean, I just labored away on this code and I'm really proud of it. I understand that I can sell the rights to someone to use, which is fine. It just feels wrong to have worked on something for a really long time and then someone else owns it and I'm not allowed to do anything with something that I made. I know that the money is the trade off. It just feels like I made a baby then sold that baby.
I know that this is how I make money, but I don't like it. This is why I started open sourcing as much as I can so I, and the entire community, can benefit from my hard work.
I don't really have a conclusion, just that I'm going to try to avoid it as much as possible. There's a lot of inner struggle with all of this. Just thought I'd share my two cents.
Update May 20, 2012: The thing that bothers me is writing code and selling you the code so you can sell a product. Writing code for a product and then selling that is awesome. I'm not totally against it. It's just weird. Whatever.