|
|
...should be free, without restrictions. I believe that if you want people to use your code but pay for the privilege, then you're welcome to post the code on your own web site. Using CP to promote your code, if you insist on profiting from it, either financially or otherwise, is wrong in my opinion. Having said that, I see nothing wrong with specifying in the header, a request that it might be nice to let the author know what use the code was...
As far as I'm concerned, this site is one for mutual co-operation and being as most of us work for commercial organisations, it's obvious that some code will end up in commercial applications. Is this wrong and anyway, what constitutes code that can be copyrighted unless it makes no use of any external functions? For example, while I might write a function consisting of many calls to Win32, MFC, etc., can I really claim the copyright? I'm guessing that if I unwrapped all the external functions I'd used, I'd probably find that the code I'd written, was pretty insignificant compared to the wealth of code that "my" code actually relied upon.
"Oh, I'm sick of doing Japanese stuff! In jail we had to be in this dumb kabuki play about the 47 Ronin, and I wanted to be Oshi, but they made me Ori!"
|
|
|
|
|
phykell wrote:
I believe that if you want people to use your code but pay for the privilege, then you're welcome to post the code on your own web site.
And what about those of us that do have our own web sites (hosting), and post the code in both places?
phykell wrote:
For example, while I might write a function consisting of many calls to Win32, MFC, etc., can I really claim the copyright?
Yep! Just because I wrote a poem or a novel using English, which could be considered a pre-existing library for communication, I can still copyright it because the work of the poem or novel is my own.
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
Who needs to license your work when you need a security clearence to view it? lol finally something i don't have to worry about. I love my MOS
Semper Fi
|
|
|
|
|
Which MOS is that? Do you know if the Army has an equivlent?
When I joined the army I wanted programming, but wound up getting
"Petrolium Labratory Specialist"
You try to impress people with 'hydrocarbons' and 'knowlege of petrolium laboritory testing and operations'
With an ASVAB score of 93, I should have gotten more...
|
|
|
|
|
Whops, sorry.
Curiosity got the better of me, this is a little off topic.
|
|
|
|
|
I'm 4067 Data Systems I'm sure the army has an equivilent but i have no idea what it would be. I thought all army people had guarenteed contracts I just got lucky i picked Data systems and got to be a programmer. Oh well when you're ready to reenlist maybe you should try the few and the proud.
|
|
|
|
|
I read recently that when a big company was bought out (it might have been a telcom, not sure), the buyer discovered they had to spend millions of dollars relicensing the software because the license wasn't transferable.
The software license was purchased. Requiring someone else to re-purchase the license just seems wrong. Because I feel strongly about this, if you buy a license to use MyXaml in a commercial app, the license specifically says that you may transfer it to another entity.
What do you all feel about restrictions on transfer of license?
Marc
MyXaml
Advanced Unit Testing
|
|
|
|
|
Marc Clifton wrote:
Because I feel strongly about this, if you buy a license to use MyXaml in a commercial app, the license specifically says that you may transfer it to another entity.
IMO, you have to be careful defining the word "entity", and you still have to place use limitations in the license... What is an "entity"? A single person, or an entire company (like a corporation, which is a legal entity)? I could see a single developer buying a license and the selling (transfering) it to a whole business entity.
I do not mind a transfer of license, but the license wording specifies the limitations on use. I always liked Borland's old "No Nonsense" license policy; it works like a book (IIRC): that one book can only be read by one person at any time. So you could install Turbo C++ on your home machine and your work machine, so you could bring work home, but the two of them could not be used at the same time. So even if the license was transfered to an entire company, it could not be used by all of its developers at the same time (at least, not legally).
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
Software should be used like a book. By anyone, at any place, but only by one person at any given time.
We had a similar discussion today at the company: an extern suggested to make a distinction between "PC bound" and a "floating licence" (the latter requiring a licence server).
We are in a lucky position that our product does require a hardware (and the price range and distribution market justify a dongle). So I see a PC bound licence as a reasonable obstacle for "pure" software. But making a floating license more expensive "because it allows wider use" is as sick as selling me a CD I can't play in my CD player.
we are here to help each other get through this thing, whatever it is Vonnegut jr. boost your code || Fold With Us! || sighist | doxygen
|
|
|
|
|
>one person
What about automation? Timed scripts at work say that perform various functions with the software while you are at home using the same software.
What happens if you run a few instances of Virtual PC and load the software into each instance? It is still one person at one place running the software.
And really the book analogy only covers a subset of applications. How does the analogy apply to IIS or Apache or SQL Server where you need CALs or per CPU licenses?
I get what you guys are saying. I just think the legal definition has to be tightened up a lot and that there is a need for other licensing types. We can't just apply "Software should be used like a book" to all software.
The intent is good but intent gets abused in court.
regards,
Paul Watson
South Africa
Michael Dunn wrote:
"except the sod who voted this a 1, NO SOUP FOR YOU"
Crikey! ain't life grand?
|
|
|
|
|
I know that that definition is outdated, but you could fix it up a little. But anyway it's suitable to "Mom Software" only, i.e. a typical end user desktop application. For Server Software, the "like a book" isn't applicable.
You could replace "one person" by "one person and on one PC".
Yes, PC, not CPU. He bought a box with software, and a box with a TV to use it. He's already confused enough how many of what thingies he needs to make the software work, so keep the number of thingies out of the price of the software.
Even if it involves an Application Server, Terminal Services, etc., it should look like a book to the end user.
And I don't think you can put this down in legalese. But the intent of "modern" software licencing strays far from the book path, and this is ugly.
we are here to help each other get through this thing, whatever it is Vonnegut jr. boost your code || Fold With Us! || sighist | doxygen
|
|
|
|
|
Well, I tried to bring this issue up a few times, and each time it seemed like no one was ready to discuss it intelligently.
Glad to see that it finally happened.
Now, my thoughts on this, for the few of you that would actually care, is that you, as the author and the person that actually DID all of the work, are the one to specify how it gets used. You should also be the one to specify if and how your work is to be acknowledged if/when it is used.
For example, if someone wrote a really nice image processing routine, they might be upset if someone used it with security camera software that followed around certain targets based on the color of their skin. Or if you wrote a pretty-damn-good spam-detection routine that nabbed 99% of all spam, you might be upset if a spam-tool author used it in their product to help their users author messages that are more likely to get through.
Also, if you use certain code in commercial products (as I do), you might want to prevent competitors from using it in their product. At the very least, most would want to be credited for your hard(?) work (even the GPL does this).
Some people would consider reasons like that reason enough not to share their code. But I believe in sharing, and once the licensing issue gets resolved here, I plan to start doing so again. (But until then I stick with my "Free Source Code License", which specifies how the code is to be used and how I am to be acknowledged if the code is used.)
When I use someone else's code, I contact them to ask if [1] I can use their code, and [2] how they would like to be credited, and I then [3] follow through. (They also get free licenses for the products.) I use myself as a metric for what I expect of others, so I would expect others to do the same (though this sets me up for disappointment more often than not).
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
James R. Twine wrote:
[1] I can use their code, and [2] how they would like to be credited,
I would prefer if this were stated directly in the code. People are sometimes hard to contact, and by stating it in the code, you have an "answer" that is consistent for everyone.
Marc
MyXaml
Advanced Unit Testing
|
|
|
|
|
Marc Clifton wrote:
I would prefer if this were stated directly in the code.
As would I. But when I last mentioned something like that, I got replies of not "buying into the spirit of The Code Project", or some other similar crap.
What people seemed to miss was that authors were doing that already. Hell, even some contest winners here had their own license or license restrictions on their submissions (like GPL)! I found it quite odd that my suggesting having authors place their own restrictions on their own code was against the "spirit of The Code Project", yet it was OK for someone who did exactly that to win a contest here...!
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
WillemM wrote:
I have tried to use many open-source components.
I know of several high-end GUI components for .NET. they are expensive closed source products. Their documentation is terrible. It's incomplete, inaccurate, and unless you use the designers, it's impossible to figure out how to use their product programmatically. I have wasted countless hours trying to get even the most simplest things working.
So, commercial components suffer the same plight. And you have to pick and choose based on support, both open source and closed.
Marc
MyXaml
Advanced Unit Testing
|
|
|
|
|
Yep, some closed source components have these problems, a very good example is the Xceed grid. You can't possibly get it to work with just a text editor.
"Every rule in a world of bits and bytes can be bend or eventually be broken"
|
|
|
|
|
yes, the problem is not the software license model (commercial vs open source), but rather that the software is written by programmers... now, as a programmer, what is the one thing i hate most? documentation! most programmers dislike writing documentation. there are plenty of commercial products that lack documentation. even VS.NET and MSDN... as soon as you want to get to some of the more hectic stuff, the documentation is seriously lacking...
on the other hand, i've seen some open source products with really first class documentation. mind you, most of those products run on linux, so it's no wonder a number of CPers haven't seen it!
--
Raoul Snyman
Saturn Laboratories
e-mail: raoul.snyman@saturnlaboratories.co.za
web: http://www.saturnlaboratories.co.za/
linux user: #333298
|
|
|
|
|
The last time I checked (a few months back now so it may well have changed) Axiom used XML comments so you can use Visual Studio and a tool like NDoc to build class/method documentation - and most include examples where necessary. You can also get information from the Ogre site that is basically the same.
Everybody is entitled to my opinion
|
|
|
|
|
As the author of a few dozen articles, I always had the mindset that the article was copyrighted by me (so others can't reproduce the article text w/o permission) but the code was freely usable with no credit/payment necessary.
This is, in fact, in agreement with my experience; one time I even started a new job and found that they had used some list view custom draw code from an article of mine. I thought that was pretty cool.
Any code I publish is going to get used anyway, so if I intended to make money off the code, it wouldn't be in an article to begin with. But now I'm wondering, with people and companies getting more aware of licensing, would it be a Good Thing to update my articles and code to explicitly state what rights I'm giving to the readers?
--Mike--
LINKS~! Ericahist | 1ClickPicGrabber | CP SearchBar v2.0.2 | C++ Forum FAQ | You Are Dumb
|
|
|
|
|
Michael Dunn wrote:
Any code I publish is going to get used anyway, so if I intended to make money off the code, it wouldn't be in an article to beign with. But now I'm wondering, with people and companies getting more aware of licensing, would it be a Good Thing to update my articles and code to explicitly state what rights I'm giving to the readers?
I think it would be a good idea.
I assume any code that hasn't got a specific licence is BSD licenced, so I give credit in my documentation. However I guess others may just treat it as public domain code. It would be nice if more authors specified their licence in the articles or in their code. Then at least if my project gets audited, I can point to the code licence rather than having to reassure the legal guys that the code is free to use.
Michael
CP Blog [^]
|
|
|
|
|
IMHO, yes, you should. Anyone that has been around a while knows what happens when some people are left to their own devices... Java, for example!
Seriously, I would make it clear what restrictions, if any, are on the code. Better to state the obvious than to let others make the wrong assumptions.
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
However, the question is not whether he should add a license to future code, but whether he should return to old articles and add a license to old code. My answer is, not really, because it is just extra work. The only valid license you could append to that code would be the “public domain license” anyway, so why bother (it’s already assumed). Just do add a license for future articles, as the other 2 posters have said.
Just my 2 cents
EnderJSC
|
|
|
|
|
EnderJSC wrote:
The only valid license you could append to that code would be the “public domain license” anyway, so why bother (it’s already assumed).
Why would a Public Domain license be the only one applicable? And moreover, why would it be assumed?
IIRC, these days (and in the US), works are copyrighted as soon as they are put to a medium. I believe this includes source code, so a copyright exists on it (owned by the author). In order to use the code, you would have to copy (reproduce) it in some form; in other words, infringe on that copyright. Unless, or course, there is copy in (or accompanying) the material stating it is in the public domain or grants a license, and the terms of that license, for use.
Of course, IANAL, and I could be wrong. If so, please feel free to site (read: provide an actual example of) the law, statute, or precident that would indicate so.
Peace!
-=- James
Tip for inexperienced drivers: "Professional Driver on Closed Course" does not mean "your Dumb Ass on a Public Road"! Articles -- Products: Delete FXP Files & Check Favorites
|
|
|
|
|
In this case, I am referring to library code.
Years ago, my previous employer paid a fortune per developer seat for the RogueWave tools.h++ (and other) C++ libraries. I estimate their libraries were about 5 times the average price at the time. Our justification was that it was decent code and we would only have to pay maintenance after the initial outlay.
After we had standardized on tools.h++ and used it throughout everything, RogueWave decided to change the license to require very high royaltees based upon the gross sales dollars of our application (of course, they still charged a fortune per developer seat). We pretty much had to upgrade due to compatibility issues with MSVC++.
It was a complete disaster. The senior development groups were discredited due to our error. Other groups went totally "Not Invented Here" - designing everything themselves even if they could have purchased libraries for a fraction of the cost of development.
I suppose the only strategy that would protect you would be that initial licensees should be immune to any future license changes.
Dale Thompson
|
|
|
|
|