Patents on mechanical things are OK
Patents on software, which is essentially the expression of an idea, are not appropriate - software is in any case perfectly adequately covered by copyright.
So many "ideas" or scraps of knowledge, logical processes or semantic conventions are now "patented" that it is impossible to write anything more than the most trivial application without infringing someone's "patent". If you write software, do an exhaustive patent search for anything you may have infringed (and accept the viability of each patent) you will find that you have "infringed" hundreds, if not thousands of "patents" - because the vast majority are so vague that almost anything could infringe them or so trivial that there is "prior art" going back to Gutenberg and beyond.
Imagine in John Boyd Dunlop had been able to patent the IDEA of using rubber in tyres to cushion road-shock. Imagine if the Wright brothers had patented the flying machine, the CONCEPT of heavier than air flight or Coanda the objective of the jet engine. Etc.
Patents are designed to protect inventions, not concepts and computer programs are well and adequately covered by copyright.
"If people had understood how patents would be granted when most of today's ideas were invented, and had taken out patents, the industry would be at a complete standstill today. I feel certain that some large company will patent some obvious thing related to interface, object orientation, algorithm, application extension or other crucial technique. If we assume this company has no need of any of our patents then the have a 17-year right to take as much of our profits as they want."
Bill Gates on patents in 1991
Mac