[dfwPython] A Few More Forrester Survey Questions

Brad Allen brad at allendev.com
Sat May 19 01:21:41 EDT 2007


At 10:22 AM -0500 5/18/07, Jeff Rush wrote:
>I'm down to the wire here on answering the Forrester survey but am stumped on
>a few questions I hope someone can help me out with.
>
>1) What -existing- examples of the use of Python to create social
>    web applications are there?  These include chat, collaboration,
>    forum boards, and editable content pages, RSS feeds.
>
>    I know I use a lot of these, but under pressure I'm not coming
>    up with a lot of names.  Can you throw a few my way?

I believe youtube.com is written in Python...

Trac is a form of social collaboration for technical people working on
projects.

Obviously Plone is used for a multitude of social collaboration apps...


>2) How easy is it to install an application written in the language?
>    How is the application deployed?
>
>    I'm having some trouble understanding the difference between
>    "deployment" and "installation".  I suspect those words may
>    have a special meaning to Java developers (who designed the survey)
>    or to Big Corporate IT developers.  Ideas?
>
>    I can tell the story of distutils, python eggs and PyPI, and py2exe
>    and py2mumble for the Mac -- is there more to the story than that?

py2app for Mac

There is also the drag & drop approach; many Python apps don't
require an installer but can run standalone, especially since many
operating systems already include a Python install by default.

>3) What is the value of the language to developers?
>
>    Yeah, a very common, slippery question.  Toss me some good
>    explanations of why  -you- value Python.  Readable, free,
>    cross-platform, powerful.  What else?  I'll synthesize
>    something out of everyone's answers.

Learn once, use everywhere: web apps, GUI apps, command line scripts,
systems integration glue, wrapping libraries from other languages,

Wide range of scale: from quick and dirty tasks to large complex systems.

Wide range of skill: accessible to beginners, but supports advanced
concepts experienced developers require.

Practical syntax which emphasizes elegance and clarity through minimalism

Dynamic language features allow high level and flexible design approach,
boosting productivity.

Robustness - bugs in Python itself are rare due to maturity from long
widespread use.

No IDE required: you go far with simple text editors, but good IDEs are
available.

Good community support due to widespread use and open source nature.

Great as glue language, due to flexible options for calling external binary
apps

Mature ecosystem of libraries, both cross platform and platform native,
and good options for accessing libraries in other languages.

Professional opportunities: Python is in production use in a lot of companies,
who realize it costs less than static languages and is more generally useful
than PHP or Ruby. The only real competitor is Perl, which can be difficult
to manage due to readability problems.


Downsides:
Poor multithreading support for the multiprocessor age (Kill GIL!)
None of the Python web frameworks receive widespread use ala RoR or PHP






More information about the Python-list mailing list