Well, we’ve had a good starting response to the OGRE on consoles survey, close to 100 respondents already, most of which have been quite positive. Hopefully that will continue and we can see really what the community thinks of the idea and whether it’s financially viable. There have been a few negative comments, which I was braced for, and I’d like to deal with the most common ones here now.
Fear 1. Commercial options mean less time for open source OGRE
One thing that a few people have mentioned is that they feel that offering a commercial system on top of what OGRE provides would somehow lessen the time spent on core OGRE, because commercial licensees would get preferential treatment. Whilst the latter is somewhat true (you’re not going to ignore a paying customer), it completely overlooks one critical fact: commercial options that supported the OGRE team would mean more time for OGRE.
Right now we all work in our spare time. That’s hard - we all have lives, most of us have wives and many have children, and there’s always pressure on our time. We still find time to work on OGRE even given these restrictions, while we hold down a full time job too. Whilst OGRE is a labour of love, if doesn’t bring in any money for it’s creators, development will always remain a part-time hobby, with all the inherent irregularities in resourcing that implies.
If OGRE was our full time job though - even if commercial licensees did get preferential support, it would still mean more time for OGRE and good news for the OGRE community as a whole. Even if only 50% of the time was spent on the open source aspects (and that a very, very low estimate), it would be more time than we have now. So these fears are unjustified. Take a look at an extreme version of this - MySQL. Does MySQL as open source suffer from commercial options being available? No - quite the opposite; having them available makes it possible for them to have programmers working on it 9-5 every day, every week, and the open source community benefits greatly from that.
Fear 2. It will mean fragmentation of the software
The other concern I’ve seen is that this would fragment the OGRE product into a less maintained open source version and a better maintained commercial version. Again this is unfounded. I specifically made it clear that if we did this, OGRE remains LGPL, and the alternative license is just an option. They are still the same product. Plugins specifically for consoles would have to be closed source because of the NDAs, but as you’ve seen, we abstract all concepts back to the core with everything we do, and any custom console version would rely absolutely on the robustness and features of the core. Therefore it’s in everyone’s interest that the core stays robust, well maintained, and continues to improve. It will never be the case that the LGPL version of OGRE is less functional - because there is no ‘LGPL version’ - they are one and the same. The only things that will be closed are the things that are specifically for consoles, and those are no use to you unless you are developing for them anyway.
Yes, we already know we have to get approval from major contributors for a dual-license option, thankyou. 😀But there’s no point opening that can of worms if there isn’t enough demand to make it worth going down this route, hence why the survey is being done first. It’s also worth noting that our Contributor License Agreement, present since 2002 and linked on the patch list since then, makes it clear that whilst we don’t ask for copyright assigment from contributors (I’ve always disliked that idea - I think contributors should continue to own their code), we do ask permission to redistribute contributions in any form. Arguably this covers offering alternative licenses so long as we keep the LGPL as the default; but we’d still approach people anyway to get their official endorsement.
Commercial options would mean less community contributions?
Some people have commented that they would be less likely to contribute if the project had a commercial license available as well as the default open source license. I’m not too surprised at this; most of the more extreme reactions are from the purist end of the open source advocacy spectrum. Some people think everything should be open source, full stop - and they’re entitled to their opinion of course. But I’ve observed that most of the people who take this view don’t have to make a living from software themselves, because they’re either students or academics. Often they’re only open source ‘consumers’, rather than producers or contributors and like having everything for free. Well folks, some people have to earn money to eat. Pure open source doesn’t put food on the table unless you can live off support like Red Hat / JBoss, and that only works for very mainstream business applications; for most everything else it’s unsustainable. The open source ‘consumption’ community is very lucky that there are lots of talented people giving some serious work away for free because they like to do it, not because they get paid - but if you expect this to mature into something truly great, you have to accept that money has to get involved sometime, or people are going to starve or be forced to go do something else which does provide food; neither of which helps the open source project in question. If you think that serious open source can thrive without the support of commerce, my advice is to wake up from the rhetoric and see the real world around you. Or aim for a university tenure post where you won’t have to be concerned with the real world anymore 😉 But seriously, open source and commercial interests can and should be mutually supportive.
Proportionality & perspective
One particular comment I had to laugh at (and sorry if this is you, or if I’ve taken it the wrong way, but it tickled me): “The community doesn’t earn anything for their efforts, so why should someone else.”. Community is all about giving and receiving - but for some of us the give:receive ratio is higher than others, and your right to feel aggreived by someone else making money should be proportionate to that. Over the the last 5 years, I’ve given up literally thousands of hours of my time creating a work people can use for free. I can confidently say I’ve put in more hours in this time than anyone else in the community by one or two orders of magnitude. I’ve used my own money to buy tools, hardware, domain names and other things which are all used mostly for the benefit of OGRE. From this, I’ve seen people making money out of deploying OGRE-based products. If anyone should feel out of pocket or hard done by, it’s me - not that I do, I did it all very willingly and I’m glad OGRE’s being used for commercial ventures; resenting other people exercising their business sense is just jealousy, which is a wholely negative and pointless emotion. Other core devs have similarly invested huge resources in OGRE for no personal gain. In this context this comment just seemed arrogant to the extent of comical petulance; ‘If I don’t benefit from it, neither should anyone else’. If I or other core devs had had that kind of attitude, there wouldn’t be an OGRE to argue about in the first place.
It also assumes that all members of the community are equal and should have an equal say in the direction of the project. Some people seem to have a romantic idea that open source development is a perfect anarchy where everyone and anyone contributes equally to make the beautiful whole which just magically comes together. Let’s not kid ourselves - all serious open source projects are primarily maintained and driven forward by a very small number of key people, surrounded by a larger group of on/off contributors, surrounded an even larger group of ‘consumers’ who don’t contribute very much at all. Go to any open source project in the world and you’ll find this pattern. Projects that don’t have key, highly driven people at the centre, or that lose them, tend to lose momentum, wither and die. Lots of other contributors may exist, adding individual features here and there which is all very welcome; but very, very few of them would be willing or able to actually run the project if the core wasn’t there. You only have to look at NeoEngine for proof of that - once our major competitor if you can believe it, now mostly a ghost town since the main developer decided he had to go make a living. People who shriek ‘pure FOSS (Free and Open Source Software) or nothing’ would do well to heed that lesson. I’ve said this before on this blog but I’ll say it again - extremes of view, both in the direction of anti-FOSS and pro-FOSS are utterly unrealistic; save the extremes for radical clerics, the rest of us will deal with the practical world by realising a cooperative balance is required.
Anyway, I don’t want to get too hung up on the few negatives; like I say there have been lots of supportive comments from people so far. We’ll be letting the survey run for quite a while to give the maximum number of people chance to contribute their thoughts, then we’ll make a judgement on whether this idea will fly, or dive screaming into the dirt ;). Of course the whole thing is wildly ambitious, so lets not have too many illusions about the chance of it becoming reality. But, as Anatole France once said said- “If you don’t fail once in a while, you are not aiming high enough.” 😀