272 11.6 Summary
common sense. The Python language is similar to VB in the availability of
components (class libraries) that can do just about anything. They are gen-
erally written in C for best performance, and, unlike VB, they are almost all
free (no charge and source code available). Many of the most useful come
with the standard distribution. So, as with VB, Python is a language where
the general developer starts by finding and using classes rather than by
defining and building them.
Python runs on Windows, Linux, and the Mac; simple self-installing
binary packages are available for these platforms. Most Linux distributions
(e.g., Red Hat and SuSE) include Python installed, as does Mac OS X 10.3.
It also runs on any UNIX system and some others; less common platforms
may need a source code install.
The Windows version of Python is very powerful and a good place for a
Windows professional to start. It is easily downloaded (e.g., from
www.python.org); that download is self-installing and ready to go for most
purposes. There has been serious thought given to cross-platform compati-
bility, and it is a simple matter to develop code on, for example, Windows
that will run on Linux and the Mac (this book contains an example).
11.6 Summary
If we are interested in performance, the first rule is to get the basic architec-
tural choices right, using multiple commodity systems for price/perform-
ance, loose coupling using queuing to control peaks and failures, managing
resources carefully, and with database tuning using the specific features of
the available engines.
We can build open source applications with the three major architec-
tures, and many larger organizations will do this. If we want to choose .Net,
we can set up a Visual Studio.Net development environment and a Mono
(or DotGNU) development environment and build ASP.Net applications
with C#. If we want to choose Java, we can set up Jakarta Tomcat with
JDBC and our chosen database and build JSP applications. If we move to
an application server, we can use the open source product JBoss.
LAMP is a good choice for many applications even if you plan to use
Java or .Net for others. There are several ways to ensure interoperability,
including shared databases and Web services. LAMP applications can be
scaled and are inexpensive to deploy. The majority of business systems, with
databases of tens of gigabytes and hundreds of requests per second, suit the
LAMP approach very well, and the systems can be scaled up if necessary.
11.6 Summary 273
Chapter 11
The development environments, debuggers, and tools are powerful. Apache
is the most used Web server and PHP the most used Web development lan-
guage, so you are not sticking your neck out.
This Page Intentionally Left Blank

Get Open Source Software: Implementation and Management now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.