Contract Case Could Hurt Reverse Engineering
An anonymous reader writes "InfoWorld has an article about how a 'U.S. Supreme Court decision could call into question a common practice among software companies: studying competitors' products to improve their own offerings.'"
That's when I would start to get REALLY worried about "reverse engineering".
So they play with the finished product and copy what they see (roughly) -> fine, as long as you don't violate anything protected by patents. No clause in a EULA could be upheld that would prevent that. It has nothing to do with what can be put in a EULA, but rather, what can be determined as permissible in such an off-hand context.
But to have errors duplicated in the system: I assure you would not be duplicated in a UI unless the coders copied the exact methods behind the UI. Hence they have legitimate claims that there is something fishy going on.
There's matching behavior, and then reimplementing without first understanding. The latter is 1) irresponsible 2) lazy, 3) contemptable, and those that practice should not be protected by reverse-engineering rights. I claim that shouldn't be called reverse-engineering, but something else.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Isn't this more of a issue of Look and Feel?
I also like how they say the GUI is a trade secret.
(appended to the end of comments you post)
When I was a programmer in Computer Science 101, someone copied one of my programs, and I was accused of cheating. When I went to talk to the professor about it, I confessed that I had helped another student explaining that I told him how to get a particular graphic to work properly. He replied that in that instance, I had done nothing wrong that algorithms are free to share. I was absolved (the plagiarism was different).
But I still think algorithms should be public domain! If you own a company, and you have a particularly cool algorithm you want to hide, you should have to either obfuscate or encrypt the machine code. There is absolutely no reason that algorithms should be protected IP.
Computer Science is a weird mixture of science and engineering. A lot of the theoretical and some of the applied work is very scientific, while most systems work is very much engineering. Scientific discoveries are not generally patentable, inventions are.
The compromise I propose is this: allow source code to be copyrighted, but deny the patentabilty of algorithms. As anyone who has programed knows, even with a detailed algorithm and specification, there still is a lot of engineering required to complete a finished product. That engineering work would still be protected.
http://yetanotherpoliticalrant.blogspot.com
Bowers had offered to work with Baystate in the late '80s, but the company had rejected his offers [...] Baystate also pressured CAD software company Cadkey not to distribute Bowers' product, and later, Baystate purchased Cadkey and shut Bowers out of the market [...]
This sounds familiar; Find your biggest competitor, buy out their potential investors & then 'borrow' their technology. I do feel sorry for Bowers in all this! He mortgaged his house 10 years ago to fund the marketing of his software & he still hasn't received a dime from Baystate.
Meeker noted that Baystate had reproduced a handful of errors in Bowers program
Yup, that's a problem. It's hard to rationalize something like that... then again, judges aren't always tech savvy & they have been convinced that software DVD decoders must digitally copy a DVD in order to play it, thereby making DVD playback on a PC illegal. I'm sure Baystate's lawyers tried to argue that in making a 'similar' GUI to Bower's program, they ran into the same bugs by accident - or by design - or something else just as ludicrous.
Don't get me wrong, I'm all for capitalism; But decompiling your competitor's software is not the same as merely using ideas that seem to work well for your competitor.
I can see one way companies might get around this is to encrypt the software, and have decryption initiated by the 'I agree' button. The DMCA would then be invoked against anyone who wrote their own installation program. Even then, is it cut and dried whether an alternative installation system is covered by the DMCA?
Is installing a piece of software one has just bought an act of copyright circumvention? You're not circumventing copyright, just the contract the author has attached. One could argue that you can't use a work without agreeing to the author's contract, but hasn't the author already made a contract with you by accepting your money?
When yo look at someone's compiled code, you are seeing that which you were not meant to see.
What is it that you are not meant to see? The are distributing it, and yet they dont want you to see it?
Tim, while i can see you are trying to express something here, I think you need to get some more fully formed thoughts out.
Lets begin, you claim companies have NDAs to prevent people from seeing their 'code'. I can only assume you mean source code, as when you send a product out the door everyone gets to see the object code. Now if a competitor is disassembling a product they not only (usually) haven't seen the code but aren't under NDA. So the point is moot.
As for theft, well this is a really different thing than what is generally termed 'reverse engineering' If they were 'pure theft' they would change all the names and release it as their own product (which sadly does happen). However R.E. is meant to dissect the inner workings as to recreate the 'black box' if you will. This has been decided to be legal a bunch of times.. please see Compaq vs IBM (PC bios) and Connectix vs sony (playstation emulator).
Technically speaking yes.. disassembly would be 'for their own benefit', the benefit of making a compatible system. Familiarity with the terms it really vital here.
Even though Bower's won the case in part on the premise that Baystate broke the EULA and reverse engineered his CAD template system, it seems the more important issue is that Baystate was found guilty of infringing on Bower's 1990 patent. It only served to bolster the patent infringement case and gain the sympathy of the court that Baystate apparently ignored the EULA and set out to purposely reverse engineer the "trade secrets" in Bower's product.
However, if the patent didn't exist would Bower's have ultimately won this case based purely on the reverse engineering clauses in the EULA? I suspect not.
It seems that this case doesn't seem to offer a good precedent for preventing the common practice of reverse engineering through a EULA because so much of it is tied up in the patent infringement aspects of the case. Also, the article makes it seem that Baystate so closely copied the UI that they could have infringed copyrights as well which only serves to make the case even more ambiguous with regards to reverse engineering.
It would be more interesting if these other aspects of the case didn't exist and Bower's had simply tried to sue Baystate on the fact they violated the EULA by having two weeks of reverse engineering his product in their development schedule -- even if he couldn't point to specific trade secrets of his being used by Baystate in their product.
Therefore, I doubt this case will even put a dent in the common practice of reverse engineering competitors products.
BTW, IANAL so don't sue me if you get sued.
Reverse engineering is nothing more than the common theft of intelectual property.
Here in Australia, reverse engineering of software is actually my legal right.
The only reason the competitor could possibly have for dissassembling the binary code would be to copy it for their own benefit.
Absolutely. And to be honest, why not? Fixing your software bugs (because you won't) and improving the interoperability of my software (with yours) are definitely for my benefit.
In regard to the wider issue, the courts here in Australia would by no means automatically agree to the legality of an EULA that placed 'undue restrictions' on my common law right, especially when those restrictions can be seen to be anti-competative. In this particular case however, after having read the article and assuming that the information given was accurate, I think the American courts made the right decision. To be honest, this actually appears to be more an issue of software component theft (exact reproduction of errors in a UI?), than one of reverse engineering.