Linux. The open source, Unix-like operating system runs on many types of computer hardware.
Apache Web server. Apache runs on most Unix-based operating systems, some Unix/Posix-derived systems such as BeOS, a few Windows versions, and several other OS types. It is the most popular software of its kind, running 69.6 percent of Web servers, according to a July 2005 survey by NetCraft, an Internet-services company.
MySQL. This relational database management system (RDBMS) is based on the Structured Query Language. About 6 million applications use the technology, according to parent company MySQL AB.
The RDBMS is used in a range of settings, including data warehouses, e-commerce systems, and distributed applications.
Scripting languages. LAMP works with dynamic, open source scripting languages such as Perl, PHP, and Python. Businesses and IT professionals are increasingly looking to scripting languages because of the advantages they offer, explained Andi Gutmans, vice president of technology at PHP vendor Zend Technologies.
Traditional, low-level programming languages require annotating an application with information that makes compile-time checking possible. Instead of using these annotations, dynamic languages work with information available at runtime.
In general, traditional languages tend to offer programmers more flexibility with and fine-grained control over code. Also, scripting languages, often interpreted, can execute slowly and consume more memory when running.
However, supporters consider scripting languages to be easier to learn and use; faster to write and debug; more efficient, with a single line of code often performing the work of many lines of low-level code; and portable, with scripts usually being able to run on different platforms with few modifications.
Tim Bray, Sun's director of Web technologies, said some scripting languages, such as Python, can be easier to learn than Java, but others, such as Perl, are harder. In addition, he said, Java is more effective for many types of programs because it offers better threading, memory management, APIs, and other capabilities than most scripting languages.
Cost. The shift toward LAMP is in part a reaction to high commercial software prices, explained MySQL AB's Urlocker. Open source software is either free or low cost compared to proprietary software, he said.
Of course, companies sometimes must pay for customer support for open source products they buy from vendors. Users also sometimes must pay developers to make sure the software work in their systems and to add features, explained Clint Oram, vice president of open source for SugarCRM, a vendor of open source customer relationship management applications.
Microsoft argues that because it designs and integrates the components of its development environments so that they will work together, they entail a lower total ownership cost than open source approaches.
Analyst Stephen O'Grady with Red Monk, a market-research firm, said the total ownership cost argument between LAMP and commercial approaches is difficult to resolve because it depends on various factors such as in-house expertise, the cost of outsourcing development and maintenance, available resources, and the existing infrastructure.
Open source. One key argument reflects some long-standing disputes over the relative merits of open source and proprietary software.
Proponents contend that because anyone can review, modify, and work with open source software, developers can improve and fix the technology faster. For example, users have translated SugarCRM's products into 24 languages.
Proprietary software goes through a slower and more deliberate development process. Microsoft controls all work on its software, while Sun—with input from vendors such as BEA Systems, IBM, and Oracle—uses its formal Java Community Process to develop Java technology.
Proprietary software proponents say this offers advantages, such as careful, coordinated development of applications designed to work together.
Robert Brewin, Distinguished Engineer with Sun Developer Tools, said that his company's approach provides an industry-standard, robust, scalable, and well-rounded stack that can be used for many purposes such as client development, security, and highly scalable server-side processing.
Critics contend that commercial software frequently locks users into one vendor's products. "Fear of platform lock-in is one of the major reasons that the open source movement has become so popular," said MySQL AB's Urlocker.