Many a Windows user has downloaded a free screen saver, time synchronization tool or other free software only to find that software contained 'spyware.' Spyware is a type of software that monitors Internet surfing habits or worse; some spyware acts as keyloggers, trapping passwords, credit card numbers and other private information. The reason this happens as often as it does relates to the Windows Software Deployment model (Section 4). Since Windows does not include a compiler, software developers must assume they do not have one and therefore deploy software as executable binaries. The source code is not generally available, so the presence of spyware components in a program is only detectable after the code is executed; after the code is executed once, the damage may be done.
With Linux, on the other hand, many tools, utilities and applications are Open Source Software (OSS). Open source, often confused with ``free,'' simply means that the source code is available (even if the program is deployed as a binary, the source code is generally available). This means that many competent programmers can examine the program for integrity and flaws before it is run on their computers. This in turn generally implies that malicious programs get caught sooner.
Many Windows advocates argue that the only reason Windows has more problems with spyware and similar malicious programs is due to 'market share.' The argument goes that there are more Windows computers so Windows is a bigger, and more attractive, target for the malicious code producers. However, one major flaw in this argument is the Open Source nature of Linux installations. If Linux becomes a larger 'target,' that simply means even more eyes see the code of Open Source applications used on Linux. It is the Closed Source nature of Windows applications that make this type of spyware easy to deploy.