> I find that most of what people call hardware and software is for the purposes of that discussion indistinguishable.
Hardware and software are quite easily distinguishable. Hardware is specific physical matter arranged into a pattern to accomplish some goal. Software is an abstract concept, which can be embodied as a pattern in matter but is not tied to any specific matter or form of representation. To use an example any child can comprehend, wooden blocks with the letters "A", "B", and "C" carved into them are hardware. The letters "A", "B", and "C" themselves are software.
> I think maybe a lot of people don't understand what "hardware" engineering is like. You don't tinker with matter; you work at a keyboard. For the purposes of testing your invention, you use an existing, not very interesting, process to convert your software to something physical.
Indeed, and any hardware produced by that method should be, in my opinion, no more patentable than software. This sort of work, while undoubtedly useful, does not advance the state of the "useful arts" patents are meant to encourage. The result is merely a new device, not a new technique.
> Drugs were mentioned above as patent-worthy because they are hardware. They're software. The part where you express a drug as a pill and put it in someone's mouth is a fairly small part of the invention process; if we could download a drug into a test subject through the retina, the drug wouldn't be much less costly to invent.
As an outsider, it seems to me that one usually doesn't patent the drug itself, but rather the process of manufacturing or administering it, or perhaps of testing for conditions where the drug is applicable. As a rule, you're not supposed to be able to patent the actual chemical structure, for much the same reasons that you're not supposed to be able to patent abstract math. Of course, alongside software, pharmaceuticals are another politically-charged area where the normal patent rules have been bent and twisted almost beyond recognition, so there may be some exceptions.
> There are two fundamental functions of patents: 1) provide a way for an inventor to recover the costs of invention; and 2) provide an incentive for an inventor to disclose his invention. I don't see that hardware vs software or algorithm vs machine has any bearing on those purposes.
I don't doubt that patents achieve those purposes (*any* reward system would, whether expressed as an outright grant or prize, or a monopoly as with patents). However, patents also have a cost. Their purpose, first and foremost, is to benefit society. If the costs of patents outweigh the benefits, it doesn't matter whether the purposes you list are achieved. It is doubtful whether most patents are actually cost-effective; studies have repeatedly shown that they tend to *inhibit* innovation rather than encourage it. However, when a patent is issued over the abstract solution which either has no need to be reduced to practice, or which anyone could reduce to practice using existing well-known methods, the benefits of disclosure are less, and the costs to society in penalizing independent discovery and incremental improvements are far greater.
> There already exists an obviousness test for patentability which ought to cover most of the objectionable software patents.
You would think so, but if the existing rules were followed we wouldn't *have* software patents. The problem (at least so far as software patents are concerned) isn't the rules, it's the application of those rules within the patent office.