“Better” is kind of subjective here, but I would go with open source (been in that play since Blender got open sourced. And the Cycles integration for Rhino is also open source). You can pick a license that requires derivative.works to explicitly mention you, and retain all copyright notices etc.
In case of an approximation/cp-decreasing algorithm it might be a good idea to start open source. I agree. As I said if I find time and motivation I will start such project, because I really believe in the use for Rhino and I already coded some variants.
Generally seen its a more difficult question. And a dilemma.
Because the big drawback of open source licensing is that practically nobody cares about different types of free licenses as long as if its not obvious stealing. But even then, how would you be able to enforce your right if the thief is sitting in another country, or if they are too powerful? In Front of a court, you are nothing more as sailor on a stormy sea. Your fade is in “gods” hands.
So I always have seen obfuscated c# as something in between. Allowing fast development, but with a basic protection. My personal interest is nothing more as creating “opportunities”, maybe getting invited somewhere, meeting other people. Nobody truly works for free. Everyone has some intention; monetary or not. But as I pointed out in my other post about worklife-balance. I really ask myself if open source really leads to any personal benefit. Because if people can simply copy and paste, they don’t care about you anymore.However if you provide a free-to-use software, but encrypted code it might be different. Since people need you for further or specific development.
Moved these messages to a new topic to keep the original clean.
Just wanted to add that enforcing licenses can be handled through the Free Software Foundation and its laywers.
This is and will always remain an interesting problem.
i was just writing as it got split
anyway @TomTom i am sorry if this may sound like preaching but i can see how concerned you are for being acknowledged and at the same time willing to share your time and your efforts. i think we that we should not mix our wish for appreciation with our wish to fulfill our ideas, too many concerns about being appreciated block our spirit to proceed.
when you look at mandala works from Tibetan Buddhists who spend weeks on creating those complex artworks just to carefully destruct it again one may ask what was gained from it.
its sharing time, where the question of the one becomes the answer of the other. like open source like finding love instead of greed. many can harvest from such efforts.
if you want to get rich get rich.
Why am I greedy if I say I like to share my work for free, but I don’t want everybody being able to copy and paste my code? Everybody does little mandalas somehow. One person likes to play computer games, other people like bungee jumping, some puzzle. None of these tasks have any gain in a monetary way. I also think that its one of the most human properties to search for acknowledgement in a very wide sense. Even Buddhist are somehow searching for this.
But coding is also work. Some of this work is not even fun. And if a Buddhist plants potatoes, he still don’t like it if others steal them, although he will try to accept this. But you know, if I have the choice of having a nice summer day at a lake, having a romantic dinner with my wonderful girlfriend, or by simple doing nothing what would me make to start coding next to my fulltime job, increasing my daily hours spend on the computer up to 3 more hours, just for getting complains about a software bug here and there?!
i didnt mean to say you are greedy what i meant is that you are already thinking about something which people can share time and efforts on but at the same time you are expressing concerns about money and ego. those 2 do not fit well together 2 different concepts, choose one.
it pays to remember that in rhino there are many paths to a similar outcome, decompiling c# is childs play and reworking a solution so that it isn’t a copy (once you understand the workflow) has many multiple pipelines. Opensourcing exact code in any language that does a specific job directly I can understand but in rhino saying sweep2 with a straight crosssection or lofting between two curves can be the same result, its not hard at all to change something to appropriate it without it being a “copy”.
if you doing it for rhino just accept its gone when you release it, most likely will be on CGPERSIA 3 days after release anyhow. make your money in licencing updates and service/support.