(1) "Virtually" is significant here, and so is the implied context - the universe of ideas that prevail at the present time, as opposed to in the middle of the dark ages, for example.
This patent is certainly less trivial than most, but like most things in computer technology it is not much of an "invention". The basic idea here is content / representation separation in document generation, something that goes back to the first automated business information systems. The idea of sticking a section like this in the middle of another document is about as exotic as the notion of include files and macros, which also go back decades prior.
In the early 1990s the idea of active content and embedded objects was all the rage. In fact Microsoft has been sued on those grounds before, by someone else who pulled out an idea that was "in the air" at the time. Not because it was an "invention", but because it was commercially practical.
Virtually every idea in computer science has been thought of decades prior, and the only reason long expired patents aren't already held on them is because the level of computing power didn't make them commercially practical at the time. These folks appear to have an excellent implementation of inline xml expansion, but it hardly ranks as an "invention" of the sort that no one would independently come up with for years to come.
And that is one of the basic problems with the patent system - give a company a twenty year monopoly on something that is at best a couple years advance on the prior art. The patent system is made for fields that experience a basic technological changeover about once a century, not fields that do that every ten years or so.
That is why the claim that they "ripped off our technology" has about as much credibility as the claim "I played a heretofore unknown chord on the piano". A minor twist on something bouncing around in the heads of computer scientists for decades prior at best.
I completely agree. I hope Microsoft wins on this point, because it will make the patent system slightly more sane. More bad patents will be overturned. (I should mention that it is "hear, hear", not "here here", by the way).
Unisys has been slogging their large scale x86 machines running Windows Datacenter Edition as mainframes for almost a decade.
Few people take that claim seriously, any more than they would believe a claim that a 32 CPU Sun or HP server was a "mainframe". Such machines are just mid range servers with a larger than usual number of CPUs.
The basic difference is that mid-range servers (system software and hardware) are more "commodity-ish" (and much less expensive) than true mainframes where companies spend on the order of ten times as much just to gain additional advantages in reliability, availability, and serviceability. If you don't spend at least $1M on a computer it probably isn't a mainframe.
Even if you do, by convention Unix is a mini-computer operating system, and Windows Server even lower down the scale, and systems running those operating systems aren't generally considered mainframes no matter how much extra RAS effort is put into them.
Amazon does not have tax free status. Sales and use taxes are paid for by the purchaser. In-state retailers collect the taxes on behalf of the government. Amazon and other out of state retailers are not required to act as tax collectors for states they do not have a substantial business presence in.
I bet that stupid voluntary use tax would be dropped post haste.
"Voluntary tax" is an oxymoron. If you don't pay use tax on out of state purchases, you are giving Amazon the very advantage the article decries.
And yes, if the states are serious, they should audit a handful of individuals each year and require them to pay any unpaid use tax, and make sure it makes the news. Otherwise they are giving Amazon an unfair advantage over in state retailers. At the very least they could run a couple of public service announcements on the subject every once in a while.
Make up things a lot? The number of new web applications of any significance written using Perl has probably been minimal to non-existent for about a decade now.
Because prior art only counts for what it teaches or enables one of ordinary skill in the art to do.
That is ridiculous. This patent teaches exactly *nothing*. Any well educated sixth grader could have written down everything unique about this patent twenty years ago. The technology to do so was well known fifty years ago. This patent has enabled exactly nothing except government endorsed fraud and deception.
It should be clear by now, that perhaps with the tiniest of exceptions, patents are among the most economically destructive inventions in human history. Real property has clearly defined boundary lines, and is not subject to independent invention. Patents on the other hand rarely describe anything remotely inventive, and are purposefully so positively vague that know one knows whose patents they are violating without a multi-million dollar court fight. If a small company loses, it is usually fatal. There is no safe harbor in the patent world except not to try.
Unless you are a patent attorney, and then you can grow rich off profiting from the misery and impoverishment of others. That's a nice business you have there, wouldn't want to see anything happen to it...
It depends on your data. If you don't really care about ACID all that much, or are willing to do it manually, or are storing immense quantities of largely read only data then "NoSQL" is fine. There are a number of areas where it is not fine.
Serious relational database have distributed transaction coordination so you can atomically commit transactions on multiple databases. When "NoSQL" databases add that sort of thing then perhaps accounting or ERP system developers might be able to use them without committing professional suicide.
To say nothing of the vastly superior query capability of nearly any relational database, which are reason #1 why most large line of business systems cannot be written (or rewritten) using NoSQL without more than doubling the development effort required. Nobody is going to write something like PeopleSoft or SAP using a "NoSQL" database anytime soon.
What is much more likely to happen is that horizontally scaling relational databases will become much more common, and much more cost effective. There isn't _any_ principled reason why a relational database cannot be designed to run just as effectively as any NoSQL database, under similar constraints. It is just that people like Oracle and IBM currently want to charge the GDP of a small country to do so.
I guess if you are building a business bigger than eBay, then relational databases may not do the trick anymore. If you lack imagination anyway.
See here for more information. And eBay is not the only one. I wouldn't put mission critical data on a garden variety noSQL database unless I really really hated my customers and planned to go out of business fast.
Garden variety NoSQL is great for data you can mostly throw away and no one is going to sue you as a result. Facebook, Twitter, Google. Perhaps not so much for financial transactions. If the knowledge leaked out that any bank was using a typical not-particularly consistent, nor particularly durable NoSQL system for transaction data, a run on the bank would soon ensue, at least from anyone advised by anyone who had a clue.
Unfortunately, many of these things are only learned through hard experience, working on multiple database platforms and then trying to port what works on one to an alternative.
The biggest difference I already mentioned - symmetric multi-node scalability for a single database. So called "shared nothing" database clusters (different nodes host different tables or table partitions) have been common in proprietary databases for many years. I believe there are variants of PostgreSQL out there that can do that.
Oracle pioneered symmetric "shared everything" relational database clusters with Oracle Parallel Server in the late 80s. I understand IBM did the same thing on mainframes with DB2 on Parallel Sysplex a few years later. PostgreSQL doesn't do symmetric clustering yet, but I imagine it will a few years down the road.
On paper, DB2 (for example) is the rough equivalent of Oracle. In practice, developers and DBAs run into enough obstacles doing simple things like alter table operations that Oracle is much easier to administer once it is set up properly. In addition, in Oracle you can do all sorts of database administration operations online without interrupting running applications. More recent versions can rebuild an index while there are active transactions against a table, for example.
My PostgreSQL experience is a little old. The most annoying problem I had was that numeric types needed to match in queries for the optimizer to work properly. I would join a SMALLINT column to an INTEGER column or literal and the index would be ignored. That may be fixed, I don't know. Oracle by contrast uses a uniform NUMBER type comparable to DECIMAL in most databases for everything, which is very convenient. You can increase the numeric precision or scale of any column in constant time, for example. DB2 traditionally required a table export and reload to do this.
If you store integers in 16 bit fields, it is usually tricky to change them all to 32 bit fields without at least stopping all transactions and rewriting every row (which is what PostgreSQL does). Oracle uses variable precision BCD number storage for everything to avoid that problem. I don't know if active transactions can run against a PostgreSQL table while a column type is being altered or not. In any case, you get the idea.
Oracle has an outstanding cost based query optimizer, that can handle views that are built on top of several other layers of views without much of a problem. I haven't tested that in PostgreSQL lately, but what I could really use with the latter are updateable views that filter on session variables. Oracle has PL/SQL "packages" that can store session specific state. Views can refer to package variables such that they limit the rows delivered to a user in that session, which is extremely handy for making virtual private databases.
There are just lots of these kind of things which have been added to Oracle simply due to a very high end client base willing to pay very high rates for the latest and greatest "enterprise edition" stuff. If you don't need the EE stuff, and don't need lots of cores, Oracle is just about as expensive as any other proprietary database, including relatively weak databases like MySQL (now that Oracle owns it) or commercially supported/tweaked versions of PostgreSQL like EnterpriseDB.
Their RAC database is impressive in that there are no other major databases that support Infiniband, but other than that their software is ancient, slow, archaic and uncompetitive.
You don't seem to be particularly familiar with the merits of the Oracle database server, which is still at least a decade ahead of all of its competitors. I like PostgreSQL, but in most respects it is just starting to achieve the level of flexibility that Oracle had with the release of Oracle 7 some seventeen years ago.
The special thing about RAC is not Infiniband, it is that RAC is one of the only symmetric multi-node relational databases available. The IBM equivalent was until recently only available on mainframes. I am not aware if there are any others.
If that were not the case, given the cost, there would be no new major applications designed around Oracle at all. Or DB2 for that matter.
It is extremely unlikely that any of these plaintiffs claims under the Electronic Communications Privacy Act and the Stored Communications act will hold up, simply because they appear to be completely inapplicable to the sharing of profile information on individuals, anonymized or otherwise.
The laws almost certainly govern disclosure of the contents of person-to-person messages and possibly the contents of some Facebook postings, but I seriously doubt that Facebook et al have been distributing the contents of messages to their advertising partners.
Furthermore there are no laws that appear to restrict the practice of "referrer headers" with Google search. Google search is not a communications service. You communicate with Google, it returns a list of links to click on. When you click on the link you are now communicating with the website, not Google on your behalf. Even if Google were a true intermediary here, disclosure of information about a communication by one of the parties to the communication is not against the law.
It looks like to me these folks are throwing a bunch of dubious claims against the wall and seeing if anything will stick. The likelihood that they will succeed under current law appears to be nonexistent.
The big mistake that Microsoft made was adding features / behaviors to a version of their web browser that they did not plan on supporting forever afterward. The only straightforward way for Microsoft to remedy the problem is to add an IE6 compatibility mode to IE8 and 9.
I don't know the details of the behaviors of IE6 that many of these web apps depend on, but it can't be that hard. They have all of this compatibility mode infrastructure already set up to support IE7, how hard can it be to add support for another version?
2. The fools who trust in their own optimization skills
You must be a Java programmer. If the Linux kernel developers adopted that attitude, Linux systems would run ten to hundreds of times slower on certain workloads.
Yes, that is a separate problem, with patents rather than copyright. We would all be better off if all patents except perhaps pharmaceutical patents were eliminated. Most of them are the worst kind of joke.
The problem is that Harmony (the library that Google uses) is licensed under the Apache license, which is not compatible with the GPL. Of course in principle Google could just switch to OpenJDK source code, or persuade the copyright holders in Harmony to relicense under the GPL, and all would be okay, so far as copyright claims are concerned.
Not exactly. Technical interfaces have been held to be immune from copyright protection, so in principle you can copy them all you want (assuming you copy only the essential elements, etc.)
If the logic in Baystate v. Bentley Systems (1997) is followed by the court in the Oracle case, Google will be held harmless from claims of copyright infringement deriving from the copying of interfaces and APIs. See here, here and here.
In Baystate v. Bentley Systems (1997), a district court held that technical interfaces including programmer APIs are not copyrightable under the scenes a faire and other copyright doctrines. If this logic is followed by the court in the Oracle case, Google will be held harmless from any claims of copyright infringement.
This all despite the creativity that went into the API design in the first place. The practical benefit of not proscribing the copying of technical interfaces should be obvious. If such copying was proscribed, no one could make compatible software without permission of the original manufacturer anymore. File formats themselves might be protected to the degree that in the absence of any patent, it might be illegal to write code that reads and writes your own data.
if the ITU has nothing to say about it, TFA wouldn't exist.
Two problems: (1) The ITU deciding what is "3G" and what is "4G" is a naked power grab. They only have the authority to decide what is "IMT-2000" and "IMT-Advanced". Nobody is advertising their devices as "IMT-Advanced".
(2) "IMT-2000" and "IMT-Advanced" are not technical standards, they are wish lists. The ITU (which is a worthless bureaucratic waste of time and energy) is now into the business of deciding which technologies are wish list compliant or not.
The ITU invented the terminology and defined what it means
Sorry, No. ITU did not invent the term "3G". It invented the term "IMT-2000". "3G" doesn't even appear on any of the relevant documents. Not only that, the work of the ITU is so content free that it could disappear tomorrow, and no one would notice the difference.
(1) "Virtually" is significant here, and so is the implied context - the universe of ideas that prevail at the present time, as opposed to in the middle of the dark ages, for example.
This patent is certainly less trivial than most, but like most things in computer technology it is not much of an "invention". The basic idea here is content / representation separation in document generation, something that goes back to the first automated business information systems. The idea of sticking a section like this in the middle of another document is about as exotic as the notion of include files and macros, which also go back decades prior.
In the early 1990s the idea of active content and embedded objects was all the rage. In fact Microsoft has been sued on those grounds before, by someone else who pulled out an idea that was "in the air" at the time. Not because it was an "invention", but because it was commercially practical.
Virtually every idea in computer science has been thought of decades prior, and the only reason long expired patents aren't already held on them is because the level of computing power didn't make them commercially practical at the time. These folks appear to have an excellent implementation of inline xml expansion, but it hardly ranks as an "invention" of the sort that no one would independently come up with for years to come.
And that is one of the basic problems with the patent system - give a company a twenty year monopoly on something that is at best a couple years advance on the prior art. The patent system is made for fields that experience a basic technological changeover about once a century, not fields that do that every ten years or so.
That is why the claim that they "ripped off our technology" has about as much credibility as the claim "I played a heretofore unknown chord on the piano". A minor twist on something bouncing around in the heads of computer scientists for decades prior at best.
I completely agree. I hope Microsoft wins on this point, because it will make the patent system slightly more sane. More bad patents will be overturned. (I should mention that it is "hear, hear", not "here here", by the way).
Unisys has been slogging their large scale x86 machines running Windows Datacenter Edition as mainframes for almost a decade.
Few people take that claim seriously, any more than they would believe a claim that a 32 CPU Sun or HP server was a "mainframe". Such machines are just mid range servers with a larger than usual number of CPUs.
The basic difference is that mid-range servers (system software and hardware) are more "commodity-ish" (and much less expensive) than true mainframes where companies spend on the order of ten times as much just to gain additional advantages in reliability, availability, and serviceability. If you don't spend at least $1M on a computer it probably isn't a mainframe.
Even if you do, by convention Unix is a mini-computer operating system, and Windows Server even lower down the scale, and systems running those operating systems aren't generally considered mainframes no matter how much extra RAS effort is put into them.
not that anyone does that
Every self-respecting, law abiding tax payer does that. Too many are scofflaws, unfortunately.
So, is Amazon's tax-free status unfair?
Amazon does not have tax free status. Sales and use taxes are paid for by the purchaser. In-state retailers collect the taxes on behalf of the government. Amazon and other out of state retailers are not required to act as tax collectors for states they do not have a substantial business presence in.
I bet that stupid voluntary use tax would be dropped post haste.
"Voluntary tax" is an oxymoron. If you don't pay use tax on out of state purchases, you are giving Amazon the very advantage the article decries.
And yes, if the states are serious, they should audit a handful of individuals each year and require them to pay any unpaid use tax, and make sure it makes the news. Otherwise they are giving Amazon an unfair advantage over in state retailers. At the very least they could run a couple of public service announcements on the subject every once in a while.
Of course 95% of Slashdot is stuck using Perl
Make up things a lot? The number of new web applications of any significance written using Perl has probably been minimal to non-existent for about a decade now.
Because prior art only counts for what it teaches or enables one of ordinary skill in the art to do.
That is ridiculous. This patent teaches exactly *nothing*. Any well educated sixth grader could have written down everything unique about this patent twenty years ago. The technology to do so was well known fifty years ago. This patent has enabled exactly nothing except government endorsed fraud and deception.
It should be clear by now, that perhaps with the tiniest of exceptions, patents are among the most economically destructive inventions in human history. Real property has clearly defined boundary lines, and is not subject to independent invention. Patents on the other hand rarely describe anything remotely inventive, and are purposefully so positively vague that know one knows whose patents they are violating without a multi-million dollar court fight. If a small company loses, it is usually fatal. There is no safe harbor in the patent world except not to try.
Unless you are a patent attorney, and then you can grow rich off profiting from the misery and impoverishment of others. That's a nice business you have there, wouldn't want to see anything happen to it...
It depends on your data. If you don't really care about ACID all that much, or are willing to do it manually, or are storing immense quantities of largely read only data then "NoSQL" is fine. There are a number of areas where it is not fine.
Serious relational database have distributed transaction coordination so you can atomically commit transactions on multiple databases. When "NoSQL" databases add that sort of thing then perhaps accounting or ERP system developers might be able to use them without committing professional suicide.
To say nothing of the vastly superior query capability of nearly any relational database, which are reason #1 why most large line of business systems cannot be written (or rewritten) using NoSQL without more than doubling the development effort required. Nobody is going to write something like PeopleSoft or SAP using a "NoSQL" database anytime soon.
What is much more likely to happen is that horizontally scaling relational databases will become much more common, and much more cost effective. There isn't _any_ principled reason why a relational database cannot be designed to run just as effectively as any NoSQL database, under similar constraints. It is just that people like Oracle and IBM currently want to charge the GDP of a small country to do so.
I guess if you are building a business bigger than eBay, then relational databases may not do the trick anymore. If you lack imagination anyway.
See here for more information. And eBay is not the only one. I wouldn't put mission critical data on a garden variety noSQL database unless I really really hated my customers and planned to go out of business fast.
Garden variety NoSQL is great for data you can mostly throw away and no one is going to sue you as a result. Facebook, Twitter, Google. Perhaps not so much for financial transactions. If the knowledge leaked out that any bank was using a typical not-particularly consistent, nor particularly durable NoSQL system for transaction data, a run on the bank would soon ensue, at least from anyone advised by anyone who had a clue.
Apache, not Sun or Oracle or IBM is the big name in Java.
Apparently, Apache needs to start applying for defensive patents, or it is not going to be the big name in anything.
Unfortunately, many of these things are only learned through hard experience, working on multiple database platforms and then trying to port what works on one to an alternative.
The biggest difference I already mentioned - symmetric multi-node scalability for a single database. So called "shared nothing" database clusters (different nodes host different tables or table partitions) have been common in proprietary databases for many years. I believe there are variants of PostgreSQL out there that can do that.
Oracle pioneered symmetric "shared everything" relational database clusters with Oracle Parallel Server in the late 80s. I understand IBM did the same thing on mainframes with DB2 on Parallel Sysplex a few years later. PostgreSQL doesn't do symmetric clustering yet, but I imagine it will a few years down the road.
On paper, DB2 (for example) is the rough equivalent of Oracle. In practice, developers and DBAs run into enough obstacles doing simple things like alter table operations that Oracle is much easier to administer once it is set up properly. In addition, in Oracle you can do all sorts of database administration operations online without interrupting running applications. More recent versions can rebuild an index while there are active transactions against a table, for example.
My PostgreSQL experience is a little old. The most annoying problem I had was that numeric types needed to match in queries for the optimizer to work properly. I would join a SMALLINT column to an INTEGER column or literal and the index would be ignored. That may be fixed, I don't know. Oracle by contrast uses a uniform NUMBER type comparable to DECIMAL in most databases for everything, which is very convenient. You can increase the numeric precision or scale of any column in constant time, for example. DB2 traditionally required a table export and reload to do this.
If you store integers in 16 bit fields, it is usually tricky to change them all to 32 bit fields without at least stopping all transactions and rewriting every row (which is what PostgreSQL does). Oracle uses variable precision BCD number storage for everything to avoid that problem. I don't know if active transactions can run against a PostgreSQL table while a column type is being altered or not. In any case, you get the idea.
Oracle has an outstanding cost based query optimizer, that can handle views that are built on top of several other layers of views without much of a problem. I haven't tested that in PostgreSQL lately, but what I could really use with the latter are updateable views that filter on session variables. Oracle has PL/SQL "packages" that can store session specific state. Views can refer to package variables such that they limit the rows delivered to a user in that session, which is extremely handy for making virtual private databases.
There are just lots of these kind of things which have been added to Oracle simply due to a very high end client base willing to pay very high rates for the latest and greatest "enterprise edition" stuff. If you don't need the EE stuff, and don't need lots of cores, Oracle is just about as expensive as any other proprietary database, including relatively weak databases like MySQL (now that Oracle owns it) or commercially supported/tweaked versions of PostgreSQL like EnterpriseDB.
Their RAC database is impressive in that there are no other major databases that support Infiniband, but other than that their software is ancient, slow, archaic and uncompetitive.
You don't seem to be particularly familiar with the merits of the Oracle database server, which is still at least a decade ahead of all of its competitors. I like PostgreSQL, but in most respects it is just starting to achieve the level of flexibility that Oracle had with the release of Oracle 7 some seventeen years ago.
The special thing about RAC is not Infiniband, it is that RAC is one of the only symmetric multi-node relational databases available. The IBM equivalent was until recently only available on mainframes. I am not aware if there are any others.
If that were not the case, given the cost, there would be no new major applications designed around Oracle at all. Or DB2 for that matter.
It is extremely unlikely that any of these plaintiffs claims under the Electronic Communications Privacy Act and the Stored Communications act will hold up, simply because they appear to be completely inapplicable to the sharing of profile information on individuals, anonymized or otherwise.
The laws almost certainly govern disclosure of the contents of person-to-person messages and possibly the contents of some Facebook postings, but I seriously doubt that Facebook et al have been distributing the contents of messages to their advertising partners.
Furthermore there are no laws that appear to restrict the practice of "referrer headers" with Google search. Google search is not a communications service. You communicate with Google, it returns a list of links to click on. When you click on the link you are now communicating with the website, not Google on your behalf. Even if Google were a true intermediary here, disclosure of information about a communication by one of the parties to the communication is not against the law.
It looks like to me these folks are throwing a bunch of dubious claims against the wall and seeing if anything will stick. The likelihood that they will succeed under current law appears to be nonexistent.
The big mistake that Microsoft made was adding features / behaviors to a version of their web browser that they did not plan on supporting forever afterward. The only straightforward way for Microsoft to remedy the problem is to add an IE6 compatibility mode to IE8 and 9.
I don't know the details of the behaviors of IE6 that many of these web apps depend on, but it can't be that hard. They have all of this compatibility mode infrastructure already set up to support IE7, how hard can it be to add support for another version?
2. The fools who trust in their own optimization skills
You must be a Java programmer. If the Linux kernel developers adopted that attitude, Linux systems would run ten to hundreds of times slower on certain workloads.
Hello FAT32 and associated patents.
Yes, that is a separate problem, with patents rather than copyright. We would all be better off if all patents except perhaps pharmaceutical patents were eliminated. Most of them are the worst kind of joke.
The problem is that Harmony (the library that Google uses) is licensed under the Apache license, which is not compatible with the GPL. Of course in principle Google could just switch to OpenJDK source code, or persuade the copyright holders in Harmony to relicense under the GPL, and all would be okay, so far as copyright claims are concerned.
Google has the motto "don't be evil" for a reason. By "evil" they clearly mean unethical, unfair, or malicious, in addition to illegal of course.
Not exactly. Technical interfaces have been held to be immune from copyright protection, so in principle you can copy them all you want (assuming you copy only the essential elements, etc.)
If the logic in Baystate v. Bentley Systems (1997) is followed by the court in the Oracle case, Google will be held harmless from claims of copyright infringement deriving from the copying of interfaces and APIs. See here, here and here.
In Baystate v. Bentley Systems (1997), a district court held that technical interfaces including programmer APIs are not copyrightable under the scenes a faire and other copyright doctrines. If this logic is followed by the court in the Oracle case, Google will be held harmless from any claims of copyright infringement.
This all despite the creativity that went into the API design in the first place. The practical benefit of not proscribing the copying of technical interfaces should be obvious. If such copying was proscribed, no one could make compatible software without permission of the original manufacturer anymore. File formats themselves might be protected to the degree that in the absence of any patent, it might be illegal to write code that reads and writes your own data.
if the ITU has nothing to say about it, TFA wouldn't exist.
Two problems: (1) The ITU deciding what is "3G" and what is "4G" is a naked power grab. They only have the authority to decide what is "IMT-2000" and "IMT-Advanced". Nobody is advertising their devices as "IMT-Advanced".
(2) "IMT-2000" and "IMT-Advanced" are not technical standards, they are wish lists. The ITU (which is a worthless bureaucratic waste of time and energy) is now into the business of deciding which technologies are wish list compliant or not.
The ITU invented the terminology and defined what it means
Sorry, No. ITU did not invent the term "3G". It invented the term "IMT-2000". "3G" doesn't even appear on any of the relevant documents. Not only that, the work of the ITU is so content free that it could disappear tomorrow, and no one would notice the difference.