[Tutor] Python social network / cms components?

Igor Choromanski igor.python at gmail.com
Thu Sep 9 21:34:49 CEST 2010


Hi,

After much research, I've come up with a list of what I think might be
the best way of putting together a Python based social network/cms,
but have some questions about how some of these components fit
together.

Before I ask about the particular components, here are some of the key
features of the site to be built:

- a modern almost desktop-like gui
- future ability to host an advanced html5 sub-application
(ex.http://www.lucidchart.com)
- high scalability both for functionality and user load
- user ability to password protect and permission manage content on
per item/group basis
- typical social network features
- ability to build a scaled down mobile version in the future

Here's the list of tools I'm considering using:

Google App Engine
Python
Django
Pinax
Pyjamas
wxPython

And the questions:

1. Google App Engine -- this is an attempt to cut to the chase as many
pieces of the puzzle seem to be in place.
Question: Am I limiting my options with this choice? Example:
datastore not being relational? Should I wait
for SQL support under the Business version?

2. Python -- I considered 'drupal' at first, but in the end decided
that being dependent on modules that may or
may not exist tomorrow + limitations of its templating system are a
no-no. Learning its API, too, would be useless elsewhere
whereas Python seems like a swiss army knife of languages -- good for
almost anything.
Question: v.2.5.2 is required by GAE, but python.org recommends 2.5.5.
Which do I install?

3. Django -- v.0.96 is built into GAE. You seem to be able to upgrade it.
Questions: Any reason not to upgrade to the latest version? Ways to
get around the lack of HTML5 support?

4. Pinax (http://pinaxproject.com) Rides on top of Django and appears
to provide most of the social network functionality
anyone would want.
Question:  Reasons NOT to use it? Alternatives?

5. Pyjamas and wxPython -- this is the part that gets a little
confusing. The basic idea behind these is the ability
to build a GUI. I've considered Silverlight and Flash, before the
GAE/Python route, but a few working versions of
HTML5 apps convinced me that enough of it ALREADY runs on the latest
batch of browsers to chose the HTML5/Javascript
route instead.
Question: How do I extend/supplement Python/Django to build an
app-like HTML5 interface? Are Pyjamas and wxPython
the way to go? Or should I change my thinking completely?

Answers to some/any of these questions would be of great help. Please
excuse my ignorance if any of this doesn't make much sense.
My last venture into web programming was a decent sized LAMP website
some 5-6 years ago.  On the desktop side of things,
my programming experience boils down to very high level scripting
languages that I keep on learning to accomplish very specific
tasks :)

Thank you all,
- igor


More information about the Tutor mailing list