A New Program for the Enterprise
All it takes is one word to explain why software whose source code is open for the whole world to see is becoming so widely adopted by profit-seeking enterprises. And the word isn't "free."
Or, as Microsoft ceo Steve Ballmer once put it, "Developers! Developers! Developers!"
It's easy to forget that a big reason Microsoft reigns supreme on the desktop is the support its programs have enjoyed from software developers, both inside and outside the company.
Developers in the 1990s turned to Microsoft's Visual Basic programming language and Access database to quickly and cheaply prototype applications on the PC, or to create ad hoc solutions to problems that would take too long to solve with traditional development tools, such as the Cobol programming language for mainframe computers.
But the same characteristicsquickness and cheapnessthat once turned developers toward Microsoft tools are now beginning to turn them toward open source equivalents.
In particular, they are turning to the Python programming language instead of VB, and the mysql database instead of Access. Then, when they want to run their applications across multiple servers and the Web, they frequently are putting at least the first draft of their applications on the Apache Web server. And the whole shooting match runs on the Linux operating system.
Marc Andreessen, the one-time wunderkind who brought you the Web browser, explains it this way: The latest generation of developers coming out of college have cut their teeth on open source tools. Now ceo of the data center management software supplier Opsware, Andreessen says the companies that hire these young developers find they can use cheap Linux workstations for hard-core development of new code. Then, after the coding is done with Python and mysql, the head-scratching starts. Increasingly often, Andreessen says, executives see "the prototypes work so well that they ask, 'Why exactly do we have to move this to something else?'"
The answer, increasingly, is there isn't any reason.
These aren't sideshow applications, either. The Securities Industry Automation Corp., the technology subsidiary of the New York Stock Exchange and American Stock Exchange, uses Python alongside C and C++ to drive trading applications. Google uses Python code for components of its Web "spidering" engine. And the language is used for applications in drug research (by AstraZeneca), manufacturing (by Philips) and scores of other industries.
Opsware uses Python, too. "The first release of Opsware was partially written with Python," Andreessen says. "We just started moving over to Java in the last release."
Then there's the appeal of Python, which was authored in the 1990s by Guido van Rossum at a national research center in the Netherlands and at the Corporation for National Research Initiatives in Reston, Va. It lets developers write code in reusable chunks that can run across different operating systems, much like Java. But the Python faithful say its code is easier for most developers to understandthe language is based on the "pseudocode" often used by programmers to talk with each other about how to approach development tasks. And it requires a lot less of the usual housekeeping code, such as the setup of static variables and memory management, that other programming languages use. The bottom line: It makes developers more productive.
The appeal of tools like Python and mysql isn't limited to server and Web development. Mitch Kapor, founder of Lotus and head of the Open Source Applications Foundation, told an audience of Python developers in March that it's "just a matter of time" before open source becomes the predominant development model for all software.
While it's still a guess when that time will arrive, it's increasingly easy to visualize the day when Microsoftand Ballmeragain will be screaming for "Developers! Developers! Developers!"
Sean Gallagher is topic center editor for ziff davis internet, and former technology editor of Baseline magazine. He can be reached at Sean_gallagher@ziffdavis.com.