Why are mechanical engineers able to patent their devices, but computer engineers are not?
I understand the ramifications of software patents. But the problems with software patents are the same for patents in every other field. Why is software special?
Why are we narrowing the conversation to software? Patents for software, like any other field require research and development, they save time and money, they make things more efficient, they improve life for countless individuals, they do require risk, innovation, and yes reward to survive.
That's what patents are for. They are to reward the risk takers. In the case of software patents, the reward goes to the programmers who take the risk to write all the code that will be patented. They aren't "abstract" ideas, they are lines of code that are concretely typed into a computer. They convert information from one form to another. They control the physical world in previously unidentified ways.
To say software patents are invalid or software can't be patented really puts software programmers at a disadvantage relative to other fields of science and innovation. Why should pharmaceutical companies, civil engineers, mechanical engineers, and all other disciplines have the right to patent their inventions -- but not software engineers?