Вы можете выложить код на всеобщее обозрение, но в лицензии написать что все модификации должны быть доступны автору программы и не могут использоваться в коммерческом секторе.
Вообще вы сами вольны устанавливать условия использования вашего кода.
Другой вопрос что выставив код, вам будет очень сложно отследить его использование сторонними разработчиками в своих продуктах, и даже если вы узнаете о таком использовании (когда нарушается ваша лицензия), хватит ли у вас сил, средств, времени и т.п. для того чтобы заставить человека соблюдать лицензию ?