I sense an EU-US battle on the horizon
Bloke's right, though. A clean room implementation can't be subject to the copyright of the original code as it isn't...the original code.
In a far-reaching decision for the software industry, the European Court of Justice has decided that the functionality of software – as distinct from the actual code – is not covered by copyright. The decision concludes a long-running court case first brought by SAS against World Programming Limited (WPL). WPL had gotten …
The problem there is that patents are MEANT to temporarily protect new ideas. The crux of the issue is that "new" in this context should imply "non-obvious" and the functionaries who collect money for showing up at the US patent office are incapable of turning down obvious solutions.
Three cheers for common sense! Now we just need someone to either tear the US Patent system to pieces or teach them what prior art means and we'll all be able to get back to creating things without living in fear of legal action because some bastard has managed to get a patent on the use of the letter 'k', the ability to display information on a screen, rounded corners, etc.
Not just the US. I worked for a US company and the French provably abused one of our patents, so that's a two way street. Device was a pulse damper for a single piston pump that had a separated reservoir for the compressible fluid. Ours was round, theirs was V-shaped. But as any student of basic physics knows, the shape is irrelevant to the compressibility of the fluid, and that's where the innovation for the device was. Previous techniques in the industry simply used a longer tube to generate a dead load to damp the pulse.
Now, whether or not either of those innovations were non-obvious is a whole different question.
Whilst it wasn't me who downvoted you, I'd still have to say this.
Given that API doesn't necessarily need to be descriptive and can in fact be misleading on purpose. (i.e.int Maths.Add(int a, int b) doesn't need to give you addition of a+b)
Where is this *expectation* of functionality at all?
If software functionality in the form of plain English as appears in a manual or javadoc cannot be copyrightable. Then API cannot be copyrightable, the API itself is merely akin to a description that there are 2 holes on a human being and one of the hole returns shit. I don't see how I can sue other human beings with the same 2 holes and shits as well.
There was no expectation of uniqueness in API from the very beginning. I can't believe we're even having this argument.
there are 2 holes on a human being and one of the hole returns shit
There are many more I/O interfaces on a human than you give credit for!
*Caffeine/cookie input hole
*Music input holes (balanced pair)
*Cooling/ventilation holes (pair, side by side, odd design)
*Spent cookie exit hole
*Forked process exit hole
There is also the spent caffeine liquid exit, though I'm not certain that counts as a "hole". In half of the available models, it is combined with the forked process hole, perhaps as a cost-cutting measure? There is also the cute-person-detector input (balanced pair), however those are not holes when the sensors are in place.
They'll have to be pretty clear about what function means.
If look and feel are part of the function and a knock off exactly copies the function is that OK?
What about sound/video? If a program was to completely reproduce the sounds/pixels of some music/video then is that Ok? If so, I can see a huge loop-hole for music/video piracy.
I suppose it would be possible to legitimately recreate some video provided it was implemented entirely independently using nothing more than the description of what the thing was about (note: not "reproduce the sounds/pixels" as that is COPYING).
If you doubt me, "Snakes on a Plane" -> "Snakes on a Train" (and pretty much everything else by The Asylum is a "reimplementation" of a big screen movie). Similarities? Yes. Copy? No.
So to take the example of software - function xyzzy() takes two parameters which are memory addresses, and it returns a CRC-32 of the contents between those addresses. Your function xyzzy() is therefore to take two addresses and CRC-32 the contents. How you do this is up to you.
Likewise, for the movie - there's an enclosed mode of transport, and a lot of snakes. Pretty much make up the rest (but, sorry Asylum, the "real" movie has Samuel L. F***in' Jackson - how can you hope to compete?).
tl:dr - not a loophole at all, implementing the same functionality is NOT copying; pirating stuff is (unless it's "Be Kind Rewind").
>> there's an enclosed mode of transport, and a lot of snakes".
> Is that what 'Snakes on a Plane' is about? I'd been wondering...
He's pulling your leg. It's actually an educational film in which Samuel L Jackson teaches analytic geometry. The title refers to coplanar curve segments.
"The number of motherfuckin' inflection points indicates the order of the motherfuckin' curve!"
"Or cyclone vacuum cleaners..."
That depends. Does a machine (used in a coal mine) that sucks in air containing coal dust and separates said dust from the airflow by means of dual cyclones count as a vacuum cleaner? If so then these are not the cyclonic vacuum cleaners that you are looking for.
Essentially, this says nothing directly about patents. It just means that the longer-lived copyright protection cannot apply. And there are a huge number of questionable software patents.
I don't think it makes a lot of difference. Though stuff patented in 1998 should be seeing protection expire around now. On the other hand, some look and feel elements might be protected by other long-lasting IP methods. Whatever the options are, the problems come from abusive, rent-seeking, human behaviour.
"I believe IBM owns Lotus now, and Corel owns Wordperfect"
Not sure who own NewScript these days, but I first saw it on a TRS-80 in the late 70's (maybe very early 80's). And IIRC that was a port from a mini or mainframe.
Also, IIRC Lyons (of tea fame) were the first with computer based payroll and stock management.
No-one has commented yet that the British court failed completely to follow the common sense approach here.
Seems crazy, but when it comes to legal matters I take my hat off to the European courts every time - now if only we could get the same quality in the European parliament - hmm, but then it would have to attract people other than failed national politicians...
I'm hoping someone can explain what I'm missing rather than flame...
As a developer, I need to get paid. In order to get paid, I come up with ideas, which my company puts to market and charges our customers for.
If my idea is copied by a rival company, then sold at a cheaper price, our customers go to the rival company, my company doesn't get paid, I don't get paid, so no new ideas appear. Equally no new blood comes into software development, as the pay will become even worse.
I'm struggling to see why hardware ideas (Dyson cyclone for example) are offered patent protection, where as software ideas aren't? Ideas are ideas surelly?
"I'm struggling to see why hardware ideas (Dyson cyclone for example) are offered patent protection, where as software ideas aren't?"
I guess it's because the cyclone functionality is essentially to 'suck' - how one gets something to to suck is patentable, but the act of 'sucking' surely isn't.
That is (obviously) an over simplification. Dyson never got a patent for a 'cyclonic vacuum cleaner'. The first cyclonic vacuum cleaner was patented in 1928, Dyson's patent was for a particular configuration of cyclonic vacuum cleaner i.e. cone angle, inlet point and angle, having two cyclones separated by a shroud (dual cyclone) etc.
To answer the original question - why no software patents - the description of Dyson's cyclone in their patent is very specific (e.g detailing cone angles etc), there are many ways to build a cyclonic vacuum cleaner without infringing the dual-cyclone patent. These differences are visibly obvious to a lay person (and hence to a jury). But software's functionality is (by definition) non-specific. Any piece of code that performs some function can be implemented in many different ways, with different languages, different chip architecture etc. Ultimately all these different implementations are expressions of the same mathematical/algorithmic idea, so by granting software patents you are allowing the patenting of ideas with too broad a scope e.g. like patenting 'separation of dust from air', which would clearly stifle innovation. Worse, the differences in implementation of the broad idea are invisible to lay people, judges, and the monkeys at the patent office. If you try and explain the differences, these people will fall asleep in front of you, and will wake up thinking you have copied someone else's invention just because your software does something similar to someone else's
PS The function of a cyclone isn't to 'suck', it is to separate dust particles from the air.
Yes.
What they have said is that you can't copyright something that says (using the example of another recent story) "produce a process that takes sea water as an input, and produces fresh water and brine as outputs" (which is a functional specification).
You can patent the method for doing this (reverse osmosis, for example) but that does not prevent someone from using evaporation or distillation to have the same effect.
I know that this would be a patent rather than copyright in this example, but the concept is the same.
Thus the code you write for your product is protected, but the description of what it does isn't. This has been fundamental in the concept of black-box testing and modular design for many decades, and changing this would break almost all modern industrial processes.
Just imagine not being able to replace Oracle with DB2, because the function of J/ODBC was subject to copyright, or even worse, not be able to port from UNIX to Linux because the interface to the C library was subject to copyright.
'If I clean toilets for a living and someone comes along and does it cheaper, why should they be allowed to do that!? Eventually I will have to clean toilets for free and there will be no new toilet cleaners coming into the industry.'
There is no shortage of new software ideas any more than there is a shortage of toilet cleaners. Try and find someone to clean your toilet for free.
If you aren't able to compete with the rival company that copied your idea then you go bust, welcome to capitalism...
By having the idea first, you get a natural head start and if executed well you can maintain that market leading position for quite some time, especially if you continue innovating and bringing out improvements because all your competitors will always be 1 step behind. People will still pay a premium for the leading brand, and will also pay a premium for the latest product, plus you have economies of scale on your side... The iPad is a good example here, it has features (the screen for instance) not available in other tablets, its the current market leader and commands a premium price compared to the many cheaper competitors.
On the other hand, if you bring out an innovative product but then never improve it instead trying to milk it endlessly, you deserve to be forced out the market by a cheaper competitor.
Note that they can copy your idea, but not your exact implementation... There are plenty of companies implementing the idea of a car, a television etc... Competition is a good thing for consumers, and we consumers outnumber developers massively.
Also, even if commercial development of software dies over night there will still be plenty of paid work for developers... The vast majority of software is not developed to be sold, its developed to be used internally or developed as a way to help sell another product (eg hardware drivers).
This is the way it's been in the US for years. You may recall that Lotus tried to sue Microsoft on the grounds that Microsoft violated the Lotus copyright regarding the behavior of spreadsheets. The US courts threw that one out back in the early 90's. The various owners of WordPerfect have been trying for years to sue Microsoft with no joy. So, it seems this is the EU playing catch-up.
And to the early posters: this is a copyright issue not a patent issue.