|
It might be useful to add a column for who submitted each version of an article.
This could be the author or a CP editor, or ( for a collaborative article ) one of the group members.
Nick
----------------------------------
Be excellent to each other
|
|
|
|
|
We have the information. I'll add a note to add it to the page
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
Trying to display the diff for two versions of an article causes ( my ) Chrome to hang.
Nick
----------------------------------
Be excellent to each other
|
|
|
|
|
Not Chrome, just one tab of Chrome.
It's done on purpose to show you just how good it is to be able to kill just a single tab without having to kill the entire browser.
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
Is that why you made it use 100% of a core?
That's how I knew which of my 30 Chrome processes I had to kill - thanks
Nick
----------------------------------
Be excellent to each other
|
|
|
|
|
Well the other browsers didn't have a problem with it.
Hmph.
(But it sucks because I did test. Suddenly it decides it's not going to put up with it? sheesh)
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
pls, plz, and urgent should all be filtered out in the style of web board profanity filters. I think it would be amusing. (And to be honest that is the point of CP, my own personal amusement)
Need software developed? Offering C# development all over the United States, ERL GLOBAL, Inc is the only call you will have to make.
If you don't ask questions the answers won't stand in your way.
Most of this sig is for Google, not ego.
|
|
|
|
|
I assume that any version of the word urgent, assuming it falls within 6 words of any of, please (or textspeak variants), help (or hlp), should be expanded to "Please help me - I'm a clueless dribbling idiot who is too lazy to think for myself, and think that this new fangled Google thing will never catch on".
|
|
|
|
|
You have no idea how tempting it is to just randomly replace words. Not just random words, but random words, randomly.
Pete O'Hanlon wrote: I assume that any badger of the movement urgent, assuming it falls within 6 yards...
Must...hold...back...
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
In my younger days as a Dev I would write Easter Eggs in my applications to change spellings of words. Randomly on start-up words for users I knew personally with a good sense of humor and anal about things would be misspelled. But then after just long enough interval to get a ticket in the system it would revert. That was a fun few weeks.
Need software developed? Offering C# development all over the United States, ERL GLOBAL, Inc is the only call you will have to make.
If you don't ask questions the answers won't stand in your way.
Most of this sig is for Google, not ego.
|
|
|
|
|
If I download Source Code for a Work which is CPOL licensed, and use it to create a Derivative Work and then distribute the Derivative Work (in its executable form, not source code) do I have to ask my customer to agree to the CPOL License?
Clause 5e says "ensure that anyone receiving such Executable Files and Source Code agrees that the terms of this License apply to such Executable Files and/or Source Code." But of course my customer has no knowledge of the CPOL license, only my derivative work.
Thanks
|
|
|
|
|
Your customer only has to agree that the Executable Files are subject to the License. Simply include a link to the CPOL in your documentation or a help screen.
In most instances wise clients would very much like to be informed as to the licenses covering any and all code used in their deliverable. It allows their legal people to review should an issue come up (or review before they use it) and could save them a lot of back-tracking. Even better, it will provide them with a definitive "what code did you use in this product" answer, since many companies hate the thought of using, or refuse to use, free code because they can't always be sure of their rights.
Which is exactly the reason we created the CPOL. We want developers and their customers to be very clear on where they stand and be able to use the code in commercial apps without fear.
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
One guy complained that his corporate lawyer interpreted CPOL in such a way as to prevent them from using code in a commercial app. I think I mentioned it here a while back.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
Yep - wehad a chat to find out the problem and updated the license to ease his concerns. It was a clause that was, to us, fine, but didn't add enough value to make it worth the potential hassle to over-cautious, bed-wetting type lawyers.
(I know, I know: that's their job. They are paid to think of every possible inconceivable tiny obscure thing that might, in a million years, potentially mean you may have problem. I just wonder how some of these guys make it through the day. Probably by staying inside their expensive Audis and BMWs. Sigh.
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
Recently I had the licence reviewed and the lawyers concensus was that CPOL is well written with the only foreseeable complaint being licence compatibility[^] in heterogeneous derivitive works.
Best Wishes,
-David Delaune
|
|
|
|
|
Would you mind forwarding your lawyers comments to me so that we can review them and if it makes sense amend the license. If there are kinks in the language we'd like to work them out if possible.
david --at-- codeproject.com
Thanks,
D
|
|
|
|
|
Chris, thanks for the clarification, but I'm still not clear. You say "Your customer only has to agree that the Executable Files are subject to the License". But which Executable Files? We would not be distributing Executable Files downloaded from CodeProject, but rather creating a Derivative Work which makes use of Source Code downloaded from CodeProject. Are you saying that Executable Files means the Derivative Work as well as binaries on CodeProject? That's not how the defition in the license reads to me. Sorry to be pedantic, I really need to get this clear.
|
|
|
|
|
The executable files refers to any executable files provided by the author of the CPOL'd code. If you were redistributing original downloaded exe's then you'd need to make sure the person receiving those exe's was aware they are subject to the CPOL.
Your derivitive work is a different matter. The important thing here is that if you are using CPOL code to create a new exe then you cannot create a situation where the author of the ode is more liable, or imply the author of the original code is offering a warranty or representation beyond what is represented in the CPOL
cheers,
Chris Maunder
CodeProject.com : C++ MVP
|
|
|
|
|
Thanks Chris, this is what I needed. We would not be putting any liability on the author.
|
|
|
|
|
I have to say, that clause in the license has caused me a lot of grief.
"ensure that anyone receiving such Executable Files and Source Code agrees that the terms of this License apply"
This really seems to imply that you can't redistribute the source or binaries (modified or not) without a click-through agreement before download. I've had arguments with people about it because it's clearly (in the context of the license and CodeProject) not what was intended, but why can't this be phrased more like similar terms in the GPL and other licenses which simply say the first half:
"You must include a copy of, or the Uniform Resource Identifier for, this License with every copy of the Executable Files or Source Code You distribute"
Strictly speaking, requiring us to ensure other people agree to the License is burdensome, legally.
Additionally, since the license states that we may distribute as part of a commercial distribution, it seems like that clause should really use the same phrase from section 3: "the standard version of the Source Code or Executable Files," in order to be clear -- assuming that's really what was intended. --
Joel "Jaykul" Bennett [MVP]
Lynch's Law: When the going gets tough, everyone leaves.
|
|
|
|
|
The purpose of that clause is to ensure there isn't a nice, big loophole.
Suppose you download some code. In order for you to use the code you must abide by the terms of use. Suppose you don't want to, for instance suppose you want to strip all copyright notices, claim it's your work, sell it and make a billion dollars. Without the clause in question you could download the code, give it to someone else, and that someone else has not been made aware of the license and so may breach it.
So saying, I'll talk to someone and see if we can make this more streamlined. The last thing we want to do is cause confusion or make it difficult for those using the license and licensed code.cheers,
Chris Maunder
The Code Project | Co-founder
Microsoft C++ MVP
|
|
|
|
|
Yep. I understand that, and I really appreciate your willingness to listen!
I think the problem I've been having convincing people to use code that is under this license is just the phrasing -- most open source licenses have a similar clause -- the phrasing of yours appears to put the onus on the downstream developer to ensure that anyone who might get a copy of this agrees with the license. For instance, the Ms-PL specifically states what's required of us:
(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software. (D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.
So the intent is basically the same as your clause, but they state that the requirement is just that I not distribute the source under some other license, and that I can fulfill this requirement by including a copy of the license with the source. That means that I can put the source on my public SVN server (for instance) without worrying about how I'm going to "ensure" that other people "agree" that the license applies. Joel "Jaykul" Bennett [MVP] <><
Lynch's Law: When the going gets tough, everyone leaves.
|
|
|
|
|
We've had a chat internally about how to address this and as a first step we're going to have another look over the license to see if we can find any other issues like you have mentioned, and then rework the wording to be less onerous. Clearly, being onerous isn't our intent, so we'll work to get that bit fixed soon.
Thanks for bringing this to our attention and apologies for the frustration this has been causing.cheers,
Chris Maunder
The Code Project | Co-founder
Microsoft C++ MVP
|
|
|
|
|
Chris Maunder wrote:
Your derivitive work is a different matter. The important thing here is that if you are using CPOL code to create a new exe then you cannot create a situation where the author of the ode is more liable, or imply the author of the original code is offering a warranty or representation beyond what is represented in the CPOL
I apologize for reviving this thread, but Kevin Draper's question is identical to mine.
Just to clarify, say I create a Derived work from the original code created by the author. I then only distribute the executables of the Derived work as a commercial product. I think what is being said here is that I don't need to include any notice whatsoever to the end-user of the presence of CPOL code in my product. Please forgive me if I'm mis-reading this- I do want to give credit where credit is due and follow appropriate guidelines.
|
|
|
|
|