What is it?
According to the
Tiobe
Community Index - based on hits on major search engines -
Python is now the seventh most popular
language, well behind Java,
C, Visual Basic, PHP and C++, but catching up rapidly with Perl. By
Tiobe's measure, Python had the largest increase in ratings of any
language in 2007.
Tiobe describes it as "especially beloved by system
administrators and build managers", and says "it has become the de
facto glue language at system level".
Along with PHP and Perl, Python is one of the alternative Ps in
the
Lamp
(Linux, Apache, MySQL) development stack. Available under an open
source licence, it is free to use, even in commercial applications
provided the terms of the licence are followed.
In contrast to Perl in particular, Python was conceived as a
small language core, with minimalist syntax and semantics, and a
large standard library. It is easily extensible using C, C++, Java
and others.
Like Perl and Ruby, it enables programmers to choose their own
approach - object-oriented, structured, functional or
aspect-oriented. There are Python implementations for Java and .Net
languages.
For organisations which distrust open source, there is a
commercial version, ActivePython, which combines an
industry-standard Python distribution with support and maintenance,
and also includes extensions for Windows users.
Where did it originate?
Python was created by Monty Python enthusiast
Guido van Rossum in
1991.
What's it for?
As a web development language Python has evolved from writing
basic CGI scripts to having its own web application frameworks,
such as Django and TurboGears, as well as the open source web
application server Zope, and the Plone content management
system.
Developers can use the Komodo IDE, or the PyDev IDE plug-in for
the IBM-backed Eclipse platform - which includes support for the
pure Java implementation, Jython. There's also the Wing IDE, which
was developed for Python. The standard library has many modules for
web applications, Gui development and testing.
Python has interfaces to open source databases like MySQL, and
commercial products like SQL Server and Oracle.
What makes it special?
Like Perl with CPAN, and the Ruby Application Archive, Python
has its own third party application repository. The
Python Package Index
currently includes around 3,500 modules, about half of them for
system management and software development, but with office and
business software, and over 200 scientific and engineering
applications.
How difficult is it to master?
Based partly on ABC, a language developed to help novice
developers, Python was subsequently involved in initiatives to make
programming more accessible, and its simple syntax reflects
this.
Where is it used?
Python is shipped with all major
Linux distributions. Python
users include YouTube, Google, Industrial Light and Magic and
AstraZeneca. Several City firms use Python.
What systems does it run on?
Windows, Linux/Unix, Mac OS X, OS/2, Amiga, PalmOS and Nokia
mobile phones. For .Net developers, there's IronPython.
What's coming up?
Python 3.0 is intended to fix all the flaws and inconsistencies
in the language. Scheduled for August this year, it will not be
entirely backward compatible, but is expected to co-exist with
Python 2.x for many years.
Rates of pay
From £25k much higher rates from City firms.
Training
Start at Python. There are online
tutorials aimed both at complete novices and experienced developers
looking to extend their portfolios.
See also Dive into
Python and Onlamp.