For me the choice is between open source and keeping it only on my hard drive. I doubt that I would be able to market what I do effectively. Also by open sourcing my apps it forces me to make the code cleaner than I otherwise would. And I get testing for free.