Server side newbie

Peter Hansen peter at engcorp.com
Mon Jan 30 06:41:49 EST 2006


jimlewis at emachineshop.com wrote:
> Thanks for the various replies. They all seem to lead to a lot more
> learning. I thought Python was supposed to make it easy to build web
> apps. It appears after going thru the learning curve for Python I need
> to learn unix, a framework, brush up on HTML and so on. It's like being
> caught in a spider web of web sites with endless tools. And the sites
> assume everyone knows the lingo - just connect the cgi to the
> mod_python and install to apache setting the path to  ... - sure.
> Someone should invent a way to automate all this. My python app fully
> describes the UI and behaviour so it seems possible. 

The problem is more the web's than Python's though Python _could_ have 
significant additions that would overcome the hurdle.  You are correct 
that given the current state of affairs you can't just magically make a 
GUI program show up on the web effectively.  There are a wide range of 
technical reasons for that, most of which have nothing whatsoever to do 
with Python.  Most any other language would be the same (though there 
may in fact be one or two special cases where this magic 
interoperability is supported... might be interesting to hear of them).

Also, just as writing a GUI with Python requires some basic knowledge of 
GUI programming, hooking anything interesting to the web requires a 
basic knowledge of some web stuff.  Not mod_python, certainly, and 
technically you don't need to know anything about apache either, but 
even if you took a more direct route, there are two inescapable facts 
that will block you given your apparent current level of knowledge.

One is that you pretty much have to know about HTML at some level to be 
able to generate dynamic output for web clients. (Even if you use a 
canned framework to do the grunt work, it's unlikely you'd be able to 
use it effectively without understanding what it was doing under the 
covers.)

Secondly, you'd need to know how to get a basic web server set up and 
available through your ISP.  Whether that involves running something on 
your own computer and using a dynamic DNS service, or installing 
something that will run in whatever non-standard environment your own 
ISP provides, or something else, is a question we can't answer.  (At 
least, without more background, and you provided none that is useful in 
your first posting, just the vague "my site" which means nothing to us.)

Regardless, you are certainly correct about a number of things.  One is 
that more learning is required.  Does that really surprise you?  Another 
is that this _could_ largely be automated, though not for all possible 
GUI features (and certainly not when you haven't even told us which GUI 
framework you used), as the web and standard GUIs have an incompatible 
architecture.  The final result, most likely, would be much easier than 
what exists now, but there's a good chance *you* would still have gotten 
to the same roadblock, since you wrote your program first and only 
*then* asked "how do I hook this to the web?".  Generally, if you 
haven't planned properly in advance, you'll find yourself stuck with 
more learning and more work when you come to the next requirement in the 
list.

-Peter




More information about the Python-list mailing list