Live data from Hacker News

How TaxCloud Stole My Code and How I'm Doing Something About It

hovercar.in

41–50 of 50 posts

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#41
post #29
post #21

I'm curious what license you're using (since there's no mention in the readme). It seems clear that you wrote this to be open source and help people. Since there's no license information, third parties (ie, people who aren't you) should assume that they have no right to use it (that it's proprietary since there's nothing offering other rights). You've said it's open source, but under what terms can I (or TaxCloud) us…

"You haven't explicitly licensed your code under any license and so, to be conservative, third parties should operate under the assumption that the code is proprietary" I would have guessed that without an explicit license, open source is free for anyone to take/modify/reuse. After all, it is open source. In other words, the default would be the most permissive license. You suggest it is the opposite - that without a…

> I would have guessed that without an explicit license, open source is free for anyone to take/modify/reuse.

That would only be true if the copyright holder explicitly places their creation in the public domain.

Open source does not mean 'I get to re-interpret copyright law in a way that suits me'.

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#42
post #26

The author writes about his love of contributing to open source, but since his code has no license this may not even be open source code at all. The author should put some kind of license with his code so that it is used the way he wishes. If he wants credit, there are attribution licenses out there. GPL may help to get contributions back to your code. Different licenses will have different results. Also, hypothetica…

> if the official API was GPL Assuming APIs are copyrightable to start with. There is no broad ruling that they aren't (except maybe in EU: http://www.groklaw.net/article.php?story=20120502083035371 ) but Oracle tried to claim copyright on APIs and failed.

Isn't the Oracle case more about the definition of an API (what I would consider to be the header files, for example), versus this, which is more of an implementation of an API, though?

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#43
post #39

Earlier quoted context omitted.

Correct. No license implies copyright.

Copyright exists regardless of license. So to say "implies copyright" isn't exactly true.

In terms of material implication, the only way that proposition can be false is if there was a copyright license but there was no copyright.

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#44
post #29

Earlier quoted context omitted.

"You haven't explicitly licensed your code under any license and so, to be conservative, third parties should operate under the assumption that the code is proprietary" I would have guessed that without an explicit license, open source is free for anyone to take/modify/reuse. After all, it is open source. In other words, the default would be the most permissive license. You suggest it is the opposite - that without a…

Under the Berne convention, all works produced in any signatory country are automatically subject to copyright: http://en.wikipedia.org/wiki/Berne_Convention_for_the_Protec... Wikipedia says "A typical software license grants an end-user permission to use one or more copies of software in ways where such a use would otherwise potentially constitute copyright infringement of the software owner's exclusive rights under…

It is true in the sense that there are conceivable ways to use FOSS without accepting the licence. There are common ways like dual-licensing (if the license is GPL and the company has all the copyrights they can still sell me a different license) or even fair use (someone could create a parody of FOSS and publish it).

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#45
post #11

Looking at the examples it's really hard to know if this stuff was copied. How else would you write this sort of stuff? This seems like really simple, straightforward code. A lot of it seems to be about creating a hash based on a well-defined data type. Is there some other way of doing this that makes sense in Ruby? Similarly, he points out similar variable names. If you have a variable containing an API key what do…

A few things stand out as distinctive in terms of Ruby style. For example, for self.send "#{sym}=", val , I'd much prefer to see send :"#{sym}=", val . And "sym" is a poor choice of variable name semantically when it's really referring to an attribute name. If I were writing this, I'd probably have a single hash that defines the SOAP names and internal names then dynamically create those accessors and dynamically cre…

Valid point. When I first looked at the code I knew the initialize code was fairly common, but then I noticed the unnecessary require. I started to explore a bit more and noticed that the style changes from the copied code[1]. They also place their require statements immediately after module declaration[1]. Not to mention the use of single quotes vs double quotes.

1 - https://github.com/donnen/TaxCloud/blob/b036594969f045660a79...

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#46
post #39

Earlier quoted context omitted.

Correct. No license implies copyright.

Copyright exists regardless of license. So to say "implies copyright" isn't exactly true.

The author (or his company) always has the copyrights (if it is not sold) and thus can license it any way(s) wanted, for example und open source licenses. Authors in certain countries can also release their code into the public domain -- that would be the only situation where there is no copyright involved anymore.

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#47

What do you really expect from them? Being vague isn't helping the situation. - If you just want attribution and an apology, ask for that. - If they dont know what you want, they may just remain silent. It was probably a lower-level mixup, some programmer was in a hurry, had too many tickets under his name, and rushed out a solution. The company was probably unaware. Making veiled references to some action you might…

If hurry means more than 8 months. I edited the post to include the date I contacted them (August 24, 2011). The writing style for the copied code vs additional code they wrote is inconsistent.

https://github.com/donnen/TaxCloud/blob/b036594969f045660a79... vs https://github.com/donnen/TaxCloud/blob/b036594969f045660a79...

Re: How TaxCloud Stole My Code and How I'm Doing Something About It

#48
I think the arguments here are weak. Using a builder is extremely common in API wrappers like this (I just did this myself wrapping an API in Ruby). In the second example, the code you pointed out was similar really wasn't that similar. Someone else made a good point: because this is an API wrapper there's really only a limited number of ways to do things.

Still, there's a good chance that someone looked at it to see how you did things -- these things are hard to prove. Regardless, I think your response is a bit over the top? Does it warrant this nasty blog post, or could you have just emailed the dude and said, "Hey, I noticed you guys may have been inspired by my code, a lot of appeared similar. I am licensing under GPLvXXX [or whatever your license is] and it requires some attribution if you guys did use some of my code." I suspect they would have happily given it to you. If they refused, well, then maybe then would have been the time for the rant. :)

No offense, but the way you handled this, you are coming off like some guy having a temper tantrum on the internet, instead of a developer with valid grievances handling this maturely.

Post reply on HN