views:

114

answers:

5

Long ago, I released a Visual C++ CPing class on codeguru. It was a really long time ago and the class demonstrated my lack of experience at the time, honestly.

Some time later, I did a search for my CPing class on google out of curiosity. While my article did come up, another page came up as well. I'd posted the lame class and forgot about it. Someone else picked it up and did what was needed.

I appreciated someone taking it over for me. I did not appreciate, however, the fake release history that implied he released the original class before my article. There were several indicators that told me we were not developing separately at the same time. Codeguru had this thing about your code compiling under Unicode and "warning level 4". These things, for example, made it onto the copycat's page.

Is there a 3rd party service where you can register information/code you released. This 3rd party would be able to provide the date of the release such that ownership can be proven. Code would be registered at the time of the release. (There would be nothing someone could do in my my situation obviously.)

I'm not looking for a legal-grade service but just something legit that I can reference if someone should try to poorly plagiarize my ideas.

+1  A: 

It's all in licensing. People must respect whatever license you choose to use.

Also, "mixed source" is a great way to go - like Apple does for OSX. They are open source in regards to most of the kernel, and various other parts, but they keep what they work the hardest on away from the public eye.

A good example of kinda-open-source is the e text editor. You should look at what they are doing: http://e-texteditor.com/blog/2009/releasing-the-source

They are doing exactly what you want, I believe.

Kenneth Reitz
The way I see it, if someone is willing to take the OP's code and not credit him for it, he'd also be willing to take the OP's code and remove any mention of its license.
Welbog
copyright still applies. call him on it.
Kenneth Reitz
That's some serious bait-and-switch - suggesting they're taking "basically a BSD license" followed by ***that*** fourth clause.
280Z28
+3  A: 

Short of patenting the code, there's no way to ensure ownership of anything, really.

Just look at rampant music and movie piracy as an example of the futility of trying to maintain ownership. You can rely on nothing more than asking people nicely to not be jerks. Or you can just not release the source code at all. There aren't any other real options.

Welbog
I used to think people would play fair myself. After many years I no longer release anything but trivial source without a source license, and that doesn't include the BSD, GPL, etc. style of "license." The Internet is a hostile place.
Bob Riemersma
+2  A: 

Welcome to the big bad world :(

Did you see the story on the internet about someone taking a demo about "my first iPhone app" and actually submitting it to the apple store? It was accepted and someone made money from the demo....

If you post source, then it can be taken. If you could find something in the time machine with a reference to it, then you might just be able to prove it, but otherwise if you put something on the internet, people will steal it.

I would imagine if you can find the guy and he's in a jurisdiction that you can sue him in then you have a legal recourse. But that's not small money, unless you're doing it on principle, so a cease and desist might scare him into putting back the real signature.

Spence
A: 

<IANAL> Ideas are not copyrightable or patentable (at least, by definition). Anything you write in the U.S. is automatically copyrighted unless the site's conditions require different rights. If you want to seek damages, you must register your code with the U.S. Copyright Office and the person's use must not be fair use.

On the other hand, copyright applies to a specific document and whether something is a derived work or is using established practice (there are only so many ways you can call standard APIs or write a for loop) is complicated.</IANAL>

Nothing in my comment should be construed as endorsing your goals.

<RANT> If you are going to share your code, share it. If you are concerned about someone doing stuff with your code, state your preferences upfront and hope that people will respect them. If you would like this guy to give you credit, contact him nicely and tell him you noticed some similarities with your earlier code and ask him if he wouldn't mind putting some remark acknowledging your contribution.</RANT>

Sinan Ünür
+2  A: 

How about posting it to usenet/google groups, where it will subsequently show up with some kind of timestamp? You just need to check that it's a server-side timestamp.

Another example of such a 3rd-party might be a lawyer (an IP lawyer might know how to answer your question, which I think was "How do I prove that I wrote it when I did?").

I've heard that the government copyright office too might be willing to register your copyright.


At least the few few links returned by http://www.google.ca/search?q=timestamp+server+document+copyright seem relevent to your question.

ChrisW
The server side timestamp is where I was going with this. If I could submit source to someplace (server) that would archive it and timestamp it, I could come back later and reference the 3rd party server later. This wouldn't be a free service and the company would have to be reputable. I've had this idea for a while but can't seem to search on the correct criteria or it simply doesn't exit (hence my query here).
Robert H.
You could go a step further. In the future, if you're releasing code out into the wild for others to use, why not put it up on SourceForge, Google Code, Savannah, Github, or some other free/libre/open source hosting site? The site will keep track of the history of your codebase and will be able to back you up in the event the origin of the code is disputed.
Christopher Parker