Path: csiph.com!usenet.pasdenom.info!dedibox.gegeweb.org!gegeweb.eu!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!news.tele.dk!news.tele.dk!small.news.tele.dk!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.005 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'python.': 0.02; 'subject:Python': 0.06; 'explicit': 0.07; '"if': 0.09; 'cherrypy': 0.09; 'restarted': 0.09; 'django': 0.11; '(it': 0.16; '-tkc': 0.16; '[5]': 0.16; 'accuse': 0.16; 'from:addr:python.list': 0.16; 'from:addr:tim.thechases.com': 0.16; 'from:name:tim chase': 0.16; 'high-traffic': 0.16; 'python".': 0.16; 'scare': 0.16; 'skip:{ 30': 0.16; 'subject:user': 0.16; 'url:pocoo': 0.16; 'folks': 0.16; 'language': 0.16; 'wrote:': 0.18; 'url:default': 0.19; '(the': 0.22; 'frameworks': 0.24; 'skip:e 30': 0.24; 'looks': 0.24; 'environment': 0.24; "i've": 0.25; 'header:In-Reply-To:1': 0.27; 'chris': 0.29; '[1]': 0.29; '[2]': 0.30; "i'm": 0.30; 'url:wiki': 0.31; 'usually': 0.31; 'cgi': 0.31; 'perl': 0.31; 'anyone': 0.31; 'run': 0.32; 'everyone': 0.33; 'could': 0.34; "can't": 0.35; 'but': 0.35; 'there': 0.35; "he's": 0.36; 'done': 0.36; 'charset :us-ascii': 0.36; 'url:org': 0.36; 'subject:New': 0.37; 'too': 0.37; 'level': 0.37; 'performance': 0.37; 'work?': 0.38; 'to:addr :python-list': 0.38; 'contract': 0.38; 'anything': 0.39; "couldn't": 0.39; 'sure': 0.39; 'to:addr:python.org': 0.39; 'major': 0.40; 'subject: / ': 0.60; 'most': 0.60; 'mentioned': 0.61; 'entire': 0.61; 'high': 0.63; 'box,': 0.64; 'him,': 0.64; 'more': 0.64; 'here': 0.66; 'reply': 0.66; 'production.': 0.68; 'once).': 0.84; 'partial': 0.84; 'received:50.22': 0.84; 'good,': 0.91 Date: Sat, 9 Nov 2013 14:39:29 -0600 From: Tim Chase To: python-list@python.org Subject: Re: New user's initial thoughts / criticisms of Python In-Reply-To: References: <-JadnUirYuhUruPPnZ2dnUVZ8rSdnZ2d@bt.com> X-Mailer: Claws Mail 3.8.1 (GTK+ 2.24.10; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - boston.accountservergroup.com X-AntiAbuse: Original Domain - python.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tim.thechases.com X-Get-Message-Sender-Via: boston.accountservergroup.com: authenticated_id: tim@thechases.com X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 48 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1384029484 news.xs4all.nl 15941 [2001:888:2000:d::a6]:33284 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:58963 On 2013-11-10 01:27, Chris Angelico wrote: > > Is everyone happy with the way things are? Could anyone recommend > > a good, high level language for CGI work? Not sure if I'm going > > to be happy with Perl (ahhh, get him, he's mentioned Perl and is > > a heretic!) or Python. I would very much value any constructive > > criticism or insights. > > If by CGI you actually literally mean CGI, then most of us don't > have any experience with it. While there might be some die-hards in the group that would accuse you (the OP) of heresy, most folks here are pragmatics that will shrug and reply "if {Perl,PHP,Ruby,Pike,JavaScript,...} solves your problem, go for it. We just can't help you much unless it's Python". Much like I'm a vi/vim guy, but if emacs/Sublime/notepad/nano/ed/edlin/cat works for you, then go for it. Most of the major frameworks *can* be run as CGI (rather than FastCGI or WSGI), but performance is usually abysmal because the entire program is restarted for each request (whereas FCGI/WSGI have long-running processes that exact the spin-up cost once). It's more of a party trick or proof-of-concept than anything you'd want to put into high-traffic production. Django[1], CherryPy[2], Flask[3], web.py[4], web2py[5] all support deploying in a CGI environment (it looks like Pylons/Pyramid might too, but I couldn't scare up a link for explicit directions). I'm personally partial to Django because it offers so much out of the box, but I've done work in a couple of the others too (doing some CherryPy contract work currently). -tkc [1] http://joemaller.com/1467/django-via-cgi-on-shared-hosting/ [2] http://tools.cherrypy.org/wiki/RunAsCGI [3] http://flask.pocoo.org/docs/deploying/cgi/ [4] http://webpy.org/cookbook/cgi-apache [5] http://web2py.com/book/default/chapter/13