Closed-source vs. open-source add-ons

dbeachy1

O-F Administrator
Administrator
Orbiter Contributor
Addon Developer
Donator
Beta Tester
Joined
Jan 14, 2008
Messages
9,267
Reaction score
1,738
Points
203
Location
VA
Website
alteaaerospace.com
Preferred Pronouns
he/him
[Discussion continued from this thread. I created a new thread for this so we don't steer the other thread off-topic.]

neither is that of the XR1, for that matter :hmm:


would have made my life easier... but then again, that's Dan and Doug's call in the end... :rolleyes:

To perhaps clarify some reasons behind closed-source add-ons, I can't speak as to Dan's reasons, but in the XRs' case if I would open-source all 65,000+ lines of code we would quickly have a flood of XR clone vessels of widely varying quality, and support would become quite difficult if not impossible.

Secondly, and on a more personal note, the XR fleet looks good on my resume (and Coolhand's and Russ' resumes as well), and the second the code would become open-source we would lose 90% of that. It's not "compensation" per se, but having a nice bullet point on your resume is certainly valuable. :tiphat:

Thirdly, a complex Orbiter add-on requires several thousand hours of work, and TBH that's a lot to give up by open-sourcing all the code after it's already done. :)

I've worked on some open-source projects in the past (non-Orbiter-related), and in my experience those projects work best when the code is open-source from the beginning. :cheers:
 
As long as it's well maintained, and there are three of you (accidents...), it's perfectly fine.
 
Not only accidents but loss of interest, too (AutoFCS, anyone?)
 
I rather want quality stuff (what the XR series is now) then a lot of non-quality stuff
 
Last edited:
the main reason i go with open-source with my G42, is so that if anyone has a good idea, or gets a head-start on something i had in future plans, i can integrate it into the original concept...

and also, if someone has a very specific request, which i may even not agree with, it's in that persons power to make it by himself if he chooses to... minimizing the pressure on attending personal demands, and also, if anything prevents me from completing my work (job, real-life, you name it...) it won't be a total loss :hmm:


i, for one, do not see any personal loss in sharing the code (as long as proper credits are given)... i made it for learning, not for profit, so if others can learn from it as well, it'll have served an even larger purpose than what i intended....


but that's my point-of-view... obviously, each developer has his own take on this type of thing... there's no "right" or "wrong" in this case, i guess... as long as nothing's getting stolen, that is :thumbup:
 
The problem is there are a few folks who endorse and actively practice plagiarism, and they can spoil the whole show. I'm combatting plagiarism at work, wouldn't want to do the same in my spare time.
 
well i'm in agreement 100% with doug, no surprises there.

and at least as far as my meshes are concerned, i want to hang onto them... Both the XR2, my mesh, and the XR5 - russ' mesh are entirely new works...

The XR1, the DGIV, and moaches own Delta-star, are all derived from the delta glider, which raises issues of ownership anyway... For myself, i wanted some protection for my work that i share for free, doug was happy to provide even though it made his life more difficult... as far as the xr2 mesh is concerned, its not only not open source but locked so you cant edit it or export it to a 3d app.

I've had work stolen several times so i tend to hang onto the source files these days, as its an entirely new mesh, built to a professional standard, and all my own work, not at all derived from an existing mesh unlike many models so i think thats fair.

Open source, or just having the mesh unlocked is great for all sorts of reasons, primary one for me being to educate others...

but its gutting when stuff you've worked for a long time on and given away for free ends up being sold on a 3d store site, or in some chinese browser game or an android app or something... and even if its not sold, people are :censored: awful at giving credit where its due... I've seen tons of xr2 skins that don't mention me at all, even though its clearly derived from, and sometimes just a colour adjustment of, my work... not sure whether thats due to pride or ignorance.

so, err, anyway, essentially, if you're a beginner and learning stuff, its not as important and you might even learn faster, or perhaps you're a seasoned pro but you don't care... fair enough.

but i think you're mainly only going to get quality work from professionals for free provided there are at least some guarantees that you can hang onto the work and at the very least have a unique 'product' thats all your own and cannot be cloned easily, and therefore the work retains some personal value at least ... but i suppose that last bit is really re-iterating what doug already has said..
 
Last edited by a moderator:
Open sourcing is excellent in my opinion. First, it allows people to experiment with your stuff. Second, it allows people to learn from your stuff. For someone who learnt Orbiter add-on making by looking at the code of others, it feels very good when someone emails me saying that I have helped them learn something new by releasing the source code.

Also, if for some reason you are not there to maintain your add-on, others can do it for you. Look at the great add-ons like Attitude MFD, or Burn time calculator, or the spaceshipone MFD, or transx. Attitude MFD got modified by tblaxlad, transx by agentgonzo, burn time by topper and kwan32, and spaceshipone by joshb. Chris's original attitude MFD code has helped people in other areas too, like the Relativistic Warp MFD 1.5.

You never know where your code will end up helping someone. On the other hand, look at Vespucci, Helios, AutoFCS. Great add-ons, but useless now.
 
(...)
but its gutting when stuff you've worked for a long time on and given away for free ends up being sold on a 3d store site, or in some chinese browser game or an android app or something... and even if its not sold, people are :censored: awful at giving credit where its due... I've seen tons of xr2 skins that don't mention me at all, even though its clearly derived from, and sometimes just a colour adjustment of, my work... not sure whether thats due to pride or ignorance. (...)

oh dear... i know how that feels! it's happened to me before :facepalm:

remember "The 737 Experience" for FS2004? - i made that as freeware, and due to the nature of FS models, it was the 3d equivalent of "closed-source"...
well, that didn't stop some chump from "compiling" it into some "awesome addons dvd" and proceeding to sell that on ebay, under the lame pretext of "you're paying me for compiling job, not for the addons themselves".... the dimwit, what a nerve :suicide:

nope... closed-source (in whatever form) does not imply piracy protection...

it's just one less thing to get stolen...


but it doesn't end there... in a closely related incident, involving that same addon aircraft, i got an email from some guy claiming to have been ripped off by me - apparently, he was the original uncredited author of the 2D-panel background image i had included in the package...
funny thing was (as i replied to him) - i did NOT make that panel, i downloaded it as redistributable freeware made by someone else... and seemingly, THAT was the one who really had ripped off his work...
i then apologised, and removed the offending panel from the .zip, which was re-uploaded with a note to the SimViation staff...

i haven't heard from that ever since....


so may the :probe: help us all... as for every honorable individual on this earth there are n^2 utter bafoons to make up for it :yarly!:

but luckily for us, Orbiter and FS players are usually educated folks, which are quite capable of not reciprocating such unprobely behaviour - and the offenders eventually give up and go bother someone else (usually on EA-games forums)

so i don't worry much about that type of stuff... freeware is freeware... getting ripped off sucks, we all know, but when you live in Brazil, you kinda even get used to it
 
Just my two cents here: Open source add-ons and closed source add-ons are a matter of taste of the developers AND the popularity of it.

A popular add-on is more likely to find developers, than a unpopular. Next you need people of the same skill level. It doesn't matter if you have something open-source, if you are still the only one who can understand it.

And then, you need to understand that open-source is not about "releasing the sources". That is the final act of the drama. In reality, it is about enabling other people to work with your code, create their own add-ons derived from it and permit them to take part in your development process, in which they are not permitted to simply overwrite your code and make you unemployed, but in which you, as original author and still owner of the artistic ownership of the program, decide what gets included and what is against the trademark of your add-on.

Open-source does not mean that everybody would be permitted to make a new "Deltaglider XR-5" or even just a "Deltaglider XR-x". The name is reserved to Dough, and nobody else is permitted to use such names for his ideas. But you are free to email your changes as diff to Dough, make Dough impressed enough to include the changes, and see your work getting included in the official "Deltaglider XR-5" evolution and changelog.

It is a common misconception that you "give your code away" in open-source. I know that many people here do just that. Just zip it into the package, somebody else will find out how to use it. In reality, your responsibility for your add-on will never ever cease. You can have other people do the work now, but you will still be remembered. And even worse, before you can go open source, a lot of paperwork has to be done, because as said above, you need to enable people to work with your code:

1. You need to document your code with comments as good as possible.
2. You need to write source code documentation, usually by doxygen, to give new developers a map of the universe behind your code.
3. You need to write documentation about the important aspects in your code, that doxygen doesn't represent well enough. A manual for a source code developer.

Without this three things, you are not open-source. You have just made your source public. Imagine somebody gives you blueprints for a car, without telling you how to read the blue prints or how to put the pieces together later. They are not better than decorating your walls then. And the same applies to source code: Without proper documentation, it is just decorative.
 
Open-source does not mean that everybody would be permitted to make a new "Deltaglider XR-5" or even just a "Deltaglider XR-x". The name is reserved to Dough, and nobody else is permitted to use such names for his ideas.(...)

Real life example: OpenOffice. The trademark belonged to Sun, so after Oracle's takeover it belongs to Oracle. The code itself is LGPLed and Oracle can't change the license now, so the community (in simple words) branched OO into LibreOffice.

As far as documenting code is concerned, you said, Urwumpe, that the code should be documented, which is true, but in the same time you said that your dev team has to be able to keep up with you. If you dealt with morons, even the documentation would not help them, and if you dealt with professionals, they wouldn't need your docs. Of course the docs help all the people between the two groups, but the code is my priority after all.

You never know where your code will end up helping someone. On the other hand, look at Vespucci, Helios, AutoFCS. Great add-ons, but useless now.
Yah. An undermaintained closed source addon is a non addon. Another real life example - because CamShake's code was being made public by Redburne, and he lacked time himself, I could fix it to make it work in Orbiter 2010.

[EDIT]
Helping others with your code is another pro of FOSS, but using this argument to a closed source dev may be a bit too much. He may not care about it as much as he cares about his own interests, but surely it's a thing to consider, if he still doesn't know that he may help others :)
 
Last edited:
If you'd deal with morons, even the documentation would not help them, and if you deal with professionals, they don't need your docs.

Nobody who works with me is a moron, first of all. And even if he objectively was a moron before he joined my team, it would be my failure if he stays a moron along the way.

And even professionals are humans, who have not always to time to do decipher old code before they can start to work, so having proper documentation is never a waste of time. Of course you can over-document something. Of course you can also have real morons, who come to you with the words "I don't need to read the docs, I am talented."
 
There's a fine distinction between scientific- (reason-) based IP, which I prefer to make open source, and art-based content. For formulae (which were not mine to start with), a sensible requirement is to keep proper credits and trace the original source. But _art_ items where the soul is poured into a masterpiece are altogether different. I seriously envy people with 3-D modelling/drawing talent :cheers:
 
To perhaps clarify some reasons behind closed-source add-ons, I can't speak as to Dan's reasons, but in the XRs' case if I would open-source all 65,000+ lines of code we would quickly have a flood of XR clone vessels of widely varying quality, and support would become quite difficult if not impossible.


And for that reason I hope Orbiter doesn't become open-sourced...

The responsible thing to do when abanding development of an addon or a project in general is to pass the code on to someone active, but only under the condition to keep it closed-source. That maintains both the quality and reputation of work.
 
Back
Top