I think it's better to OpenSource your program, like said everybody here, OpenSource helps the community, and another thing very important, it helps to a lot of devs when he/she are making his job, for example, you done an alogrithm for shape a terrain and another person don't know how to di it, if he/she watch the code and understand it, can collaborate and improve the code or make more things, it's just my opinion. In my class yesterday we started Object Oriented Programming but when i can do my tools i share it to the community and will do it OpenSource