Patents on software-related inventions
Traditionally, patent protection was awarded only to technical inventions, such as light bulbs, shavers, medicines and so on. After computer programming became viable, and protection of computer programs became desirable, most countries decided that software was too abstract or intangible to be patentable, and copyright became the dominant form of protection.
In the last ten years, software has become a big part of almost every electronic device. Although it was definitely possible to obtain patent protection for a piece of hardware that performed a certain technical function, patenting software that did the same thing was more difficult, if not impossible. The various Patent Offices received large pressure from applicants to permit software patents (or "patents on software-related inventions") to compensate for this perceived lack of protection. This pressure eventually made it possible to obtain patents on almost every technique that can be implemented in software.
Unfortunately, the field of computer programming is primarily documented in textbooks and source code. Journals and electronically published articles being much less prominently available. This made it difficult for patent offices to assess the novelty of inventions. This has resulted in quite a number of patents being granted for inventions considered to be obvious by experts in the field. Software patents are therefore a sensitve topic of discussion.