Python web app. (advice sought)
tim at tdw.net
Mon Jan 15 10:32:31 CET 2007
On 15 Jan 2007 00:52:33 -0800, Torabisu <tpawley at gmail.com> wrote:
> Duncan Smith wrote:
> > Hello,
> > I find myself in the, for me, unusual (and at the moment unique)
> > position of having to write a web application. I have quite a lot of
> > existing Python code that will form part of the business logic. This
> > relies on 3rd party libraries (such as numpy) which would make porting
> > to e.g. IronPython difficult (I would imagine). I was thinking LAMP
> > (the P standing for Python, of course), particularly as I was originally
> > encouraged to go for open source solutions.
> > The application will provide some basic statistical analyses of data
> > contained in database tables and associated plots (R / matplotlib /
> > graphviz). There will also be some heavier duty Monte Carlo simulation
> > and graphical modelling / MCMC. The user(s) will need to be able to set
> > model parameters; maybe even tinker with model structure, so it will be
> > very interactive (AJAX?).
> > I've had a look at Django, Turbogears and Plone, and at the moment I am
> > torn between Turbogears and Plone. I get the impression that Turbogears
> > will require me to write more non-Python code, but maybe Plone is more
> > than I need (steeper learning curve?). Maybe Turbogears will lead to a
> > more loosely coupled app. than Plone?
> > The disconcerting thing is that others on the project (who won't be
> > developing) have started to talk about a LAMP back end with an IIS front
> > end, .NET, and the benefits of sharepoint. The emphasis is supposed to
> > be on rapid development, and these technologies are supposed to help.
> > But I have no real familiarity with them at all; just Python, C and SQL
> > to any realistic level of competence.
> > Any advice would be greatly appreciated. I have to do much of the
> > statistical work too, so I need to make good choices (and hopefully be
> > able to justify them so nobody else on the project makes inappropriate
> > take too long. The physical server will initially be a multiprocessor
> > machine with several GB of RAM. But we also have a cluster (I have no
> > details, I only started the project a week ago). So any advice
> > regarding parallelisation would also be appreciated (or, in fact, any
> > useful advice / pointers at all). Thanks.
> > Duncan
> I was in a similar boat a while back, needing to make a decision on
> what to use for our web development. I had worked with Plone
> previously and found that for our needs it wasn't going to work. Our
> web development was quite specific and didn't fit ideally into the
> standard content management realm. I also looked at Django and
> TurboGears, installing and working with each. I eventually went with
> Django, and I've really enjoyed working with it. Was a personal choice
> and I'm sure our development would have been as successful if I'd
> chosen TurboGears.
> If you want the strength of persistent layers, MVC, templating etc etc
> but want to stay away from the heavier frameworks, another possibility
> is http://webpy.org/. Very simple to implement, lightweight yet still
> fairly full of features.
Don't overlook Karrigell either, with a tiny learning curve its
always worth consideration, especially if you need rapid development
and a web server that will sit on top of your exising .py modules.
More information about the Python-list