Why companies should make available their modified open source code

Sometimes I think about why I create open source projects at all. Sometimes it is a bit ungrateful. If you think about it - in most cases other people profit from it. Just think about how much gpl violations there must be for example. GPL Violations is spotting some of them, but I think 99% of all hidden copyright violations will never be discovered. Companies really only look at their profit - that's why they exist. If they find some free code on the web and they can turn it into money they'll do it. Ok, why not. But most of them will never think about contributing anything back again. Too bad. Especially if you think about the fact that they would profit from this. Their enhanced code would be merged with the development version of the open source project they used, and become even better in this way, so they can create even better software from it again. Otherwise they will always have to stick with the version of the sourcecode they used when they started their project. But I think most companies don't even think about it.

seven comments, already:

So I guess the question we all want to know is if Altova uses GPL’ed code, is so have they modified it, and have they given back. I think they have released there xml parser if I am not mistaken?
TSM - 06 04 06 - 01:48

Well, as always there is two side to these issues

To make a good example, Irrlicht is released under a license that does not require the “giving back” from people that use it. This, to me, is a good thing. I give back what I think is useful, but keep private that which I think is are the elements that turn Irrlicht from a “renderer & scene-graph” into a unique tool/game people want to use (and, just as importantly, pay for).

Remember, that open-source is not “unique” in this respect. A company willing to rip off an open-source project is probably just as likely to rip off a proprietary one if they can. The factor they are taking into consideration is not “right or wrong” but “Will we get caught, and if so what are the consequences?”

What I am trying to get at is if you want to enforce companies to open-source their changes to your code, you need to choose a license that reflects this. The dual to this is that people are less likely to use your code when you restrict their freedom this way. All in all though, you haven’t “lost” anything when companies don’t contribute back REGARDLESS of the license, as they were unlikely to contribute to the project in the first place. Give people the option of using your code without FORCING them to open theirs, and you’ll find more people use your code. The chances of a developer contributinig something back increases with the size of the userbase. Not all proprietary developers are ungrateful, thieving bastards. Some of us will give back what we can, but need to keep some things private in order to ear a salary!
—EK
Eternl Knight () - 06 04 06 - 04:19

I wasn’t writing about Altova at all, I changed the text above if it might be misleading a bit. But btw: the xml parser is closed source too, as far as I know.
And it’s right, I’ve chosen zlib just because most people don’t want to release their changes as I can fully understand. I just think it would be nice if they would sometimes. For Irrlicht, Intel for example did this, and it was really nice. Maybe you’re right, I could write that wish down into the license.
niko - 06 04 06 - 07:58

Well, I think that where something big comes out of the “active” Irrlicht community – you find that there is a release of changes.

For example, there is a decetn starter package for ODE + Irrlicht in the MyWorld project. Spintz does a good job adding in changes / fixing bugs in IrrSpintz. IrrWizard is awesome as a quick start for people in creating FPS games using Irrlicht. And so on.

I think, also, you have to look at the project structure as a reason for lack of contributions. By this, I am not referring to code, but to developer control. Irrlicht is completely controlled by you. Which is not an issue really – the project has been relatively successful under your control :) The thing about that is, there are alot of contributions & bug fixes that have been made and posted online (or on the forums) that never make it into the next Irrlicht version. Given the percieved rarity of these contributions being used and not (percieved as) ignored – there is not much incentive to actually contribute.

Personally, I think this is the biggest reason for OGRE’s success to be honest. However, this can be contrasted with Crystal Space which while pretty cool, has nowhere near the community of OGRE. So mileage on that issue varies :)
—EK
Eternl Knight () - 06 04 06 - 09:06

yep, I know about all that, but I wasn’t talking only about irrlicht, just in general. :)
niko - 06 04 06 - 21:35

Believe it or not, I’ve come across quite a few developers/engineers that hate open source. They’ll use it constantly( anyone does that claims google is they’re most useful development tool, I know I do ). But they won’t contribute back, because they feel it takes money away from programmers.

But as you say Niko, the more that gets put back into it, the better it will be in the long run.
spintz () (link) - 09 04 06 - 00:54

I think the reason that Open-Source projects are awsome are for little guys like me who can gain experince making games and who know, wedge their way into the industry.

Trust me, if a game I make using Irrlicht gets famous, I will be redirectiong traffic to the sites like some crackwhore! :-D

Thank a million,
—Jordan
Sidepocket () (link) - 11 04 06 - 15:59


Name:  
Remember personal info?
yes
no
Email (optional):
URL (optional):
Enter "layered" (antispam):
Comment:Emoticons / Textile

  ( Register your username / Log in )

Notify: Yes, send me email when someone replies.  

Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.
Note: If you type in your email adress above, it will be visible to other visitors, although it will be hidden for bots using javaScript.