9 ms·
This decision does not lie well with me. Of course, the competitor agreed not to reverse engineer the software - under the definition "attempting to produce a
by rhn_mk1 9y ago
This decision does not lie well with me.
Of course, the competitor agreed not to reverse engineer the software - under the definition "attempting to produce a copy", they definitely did reverse engineer.
But does that mean that re-implementing the same interface is reverse-engineering? That would be scary and terrible for competition.
No software with a reverse-engineering clause could have a clone. Does Windows have one? If yes, Wine developers could not compare if a game works under Wine correctly.
What about APIs? Is it forbidden for US citizens to create NVIDIA CUDA clones now? If someone found a way to reproduce some Photoshop image filter, is it forbidden to compare the resuls? MS Word-produced files?
I really don't like where this is going. Thankfully, reverse engineering cannot be forbidden in the EU (unless I'm wrong).
EDIT: I guess my main gripe is that if the owners of proprietary "standards" which achieved monopoly can effectively forbid any alternatives, cementing the monopolies.
- andegre 9y agoAlong these lines, would Google be in trouble for Google Sheets, since it can take an excel file and load it?
- deleted 9y ago[deleted]
- evv 9y agoIANAL, but it seems that yes Google could be in trouble there, assuming that the Excel EULA prohibits reverse engineering, and also assuming that Google did actually use Excel to compare the behavior of opening different files. It also depends if Microsoft had published the xls[x] spec, and under what license.
- IMcD23 9y agoThe specs for the open-XML file formats (the newer XLSX) are open.
- lucideer 9y agoWhich means you're permitted to parse the files and handle them according to spec., which is notably different to handling them "exactly as Excel does" (e.g. in cases where the spec. allows implementation variance, which I believe are frequent with OpenXML formats), particularly where Google would be testing with Excel software in order to ape implementation specifics that are absent from the spec. That's the potentially worrying differentiator in this case.
- hydrogen18 9y agoThe older specifications are available as well, I don't think they have any specific requirements about their use. I think they called it CDF back then.
- ams6110 9y agoMight also be covered by one of the many cross-licensing agreements that no doubt exist between Google and Microsoft.
- gaius 9y agoNope, newer MS Office products write files as a fully documented XML format. Contrary to popular belief MS never deliberately obfuscated Office files; they were simply a raw dump of the internal objects as they were in memory. So obviously they would change between versions. Which made sense in the days when computers were a lot more resource constrained than they are now. Now with power and memory to spare, they can be encoded and decoded on the fly.
- azinman2 9y agoAnd that xml file is anything but structured in a plain and simple way. To understand it and all it does, it’s be impossible to accomplish in a way that people didn’t load a given file in excel and diff the two. Same for OpenOffice.
- _asummers 9y agoI wonder how much that has to do with excessive amounts of backwards compatibility for existing .xls and .doc files. I imagine a fresh implementation with no respect paid to existing sheets would be much better behaved. Anything that stands out to you as overtly strange in the format worth drawing attention to?
- rubidium 9y ago"excessive" to you is "core user need" to a product manager
- azinman2 9y agoOffice is a super giant set of products with a million function, years of versions each their own set of bugs, and decades of files of every kind and subset of features produced by users. I personally have almost never seen another word processing app, for example, 100% successfully load in a non-trivial document from a competitor. It’s just really hard, especially if the features don’t map 1:1, let alone fonts, model of layout, etc. Just the shear number of rendering quirks, subtle differences in math formula implementations, etc would be mind boggling. It’s hard to imagine a more insane (and boring) job. Kudos to Google for getting such impressive compatibility. Must have been insane amounts of man-hours to achieve. They at least have the ability to crawl the web, download docs and xls, and automate comparison. I’m not sure it’s even feasible otherwise.
- fcbrooklyn 9y agoMy first task in the industry, in the early 90's, involved writing to excel files. At the time I worked at microsoft, so you'd have thought they'd have given me the super secret documentation to the excel format. Instead, they gave me a book published by microsoft press, describing the BIFF format which is what they'd called the format, apparently dreaming that it might one day become a semi-open standard for spreadsheets. (there was no danger of that ever happening, the format was distilled madness, based on a million performance optimizations) Later they made the format a lot saner, but either way I'm pretty sure google would be fine.
- deleted 9y ago[deleted]
- tbodt 9y agoIn the EU, reverse engineering is allowed, but only for the purpose of making something that interoperates with the product you're reverse engineering, and does not compete with that product.
- deleted 9y ago[deleted]
- GordonS 9y agoDo you have a reference for this? It would really help me settle a recent argument with a work colleague who thinks that reverse engineering a SAP HTTP API is not OK
- twic 9y agoIt's apparently in directive 2009/24: https://en.wikipedia.org/wiki/Reverse_engineering#European_Union https://en.wikipedia.org/wiki/Reverse_engineering#European_U... I think you'd want to know about the case law before leaning too heavily on that, though.
- detaro 9y agoThe EU basis is Directive 2009/24. Given it is a directive, each member state has local laws implementing it, so the exact details might vary. http://eur-lex.europa.eu/legal-content/EN/TXT/?qid=1435057541496&uri=CELEX:32009L0024 http://eur-lex.europa.eu/legal-content/EN/TXT/?qid=143505754... Article 5 and Article 6 are the most interesting when it comes to reverse engineering, with 5 allowing to study an application while using it legally and breaking some protected rights for bug fixes and 6 allowing decompilation for some purposes.
- gmueckl 9y agoThis case of SAS vs. World Learning first went to court in the UK and from there to the CJEU which had a few substantial clarifications. These are quoted here in Wikipedia: https://en.wikipedia.org/wiki/SAS_Institute_Inc_v_World_Programming_Ltd#Court_of_Justice_of_the_European_Union_reference https://en.wikipedia.org/wiki/SAS_Institute_Inc_v_World_Prog... Does this help you?
- jVinc 9y agoThe main point here is that they acquired a license for the software with explicit purpose reverse engineering the language, even though the license forbid that. If they had "just" implemented a clone without getting a licence from SAS, then they likely wouldn't be in trouble. "Is it forbidden for US citizens to create NVIDIA CUDA clones now" No, but if you download a free piece of software with a license that forbids you from using it to create a clone of NVIDIA CUDA, and you agree to the license and you do just that... well then you breach the license you agreed to. It's not a blanket ban on every case of reverse engineering, just a case of WPL shooting themselves in the foot in an obvious manor.
- testvox 9y agoHow do you produce a CUDA clone if you can't explore any CUDA implementations or read any CUDA specs without first obtaining a licence.
- kazinator 9y agoYou get someone else to obtain that license and produce a detailed requirement specification which they then sort of leak in your direction. You then "clean room" implement, without having seen any original documentation or worked with the original device or software. That someone else is not connected in any way; i.e. you are not both subsidiaries of the same company, etc. E.g. your manager's uncle has a friend who works in some company where they have a CUDA license; arrangements are made and things are procured. The requirement specification is not traceable to a particular CUDA license key; there is nothing that can be proven about the identity of the source.
- phil21 9y agoSo you're just saying it's effectively illegal to reverse engineer pretty much anything. So long as the company in question put a magical paragraph of text in their EULA? I just don't buy this. There is literally no way to build a CUDA clone without testing output against both your clone and CUDA itself. With this reading, EULA's have effectively banned cloning any form of software.
- revelation 9y agoThe actual gripe here is that for physical products of any kind, of course companies routinely buy and completely take apart their competitors products. But in software make-believe land you can write any wish you have into an EULA. There are entire companies whose only mission is buying electronics, reverse engineering it into its constituent parts and producing a detailed report that tells you whats in it, how it's made and most important what it costs to make. That's possible because when you buy something, you own it. Only in software make-believe do we allow selling some very ill-defined "right to use" with no guarantees or rights. Protecting the inner workings of a product is precisely what patents are for.
- ConceptJunkie 9y agoOf course, the patent itself reveals the inner workings of the product. Or is supposed to. You trade the secrecy of your invention for protection from competitors.
- syshum 9y ago>>What about APIs? Is it forbidden for US citizens to create NVIDIA CUDA clones now? If the Google v Oracle case stands, API's are fall under copyright as such you have to have a copyright license to replicate them. That was the entire case, how google implemented the entire Java API with out using Java SO things like WINE, or any other implementation of an API that does not have the original author of the API's permission are violating copyright law
- deleted 9y ago[deleted]
- deleted 9y ago[deleted]
- ComodoHacker 9y agoAlso companies probably could use this to punish security researchers for discovering vulnerabilities in their products.
- charbunny 9y agoI feel like a key difference here is that there was a specific 'learning' version designed to bring someone trying to learn the language behind the scenes. While I can see the concern about this ruling being used in a broader context, I think there's a major difference between copying and experimenting with the prod version of the service and the one developed intentionally to give a behind-the-scenes view.