Path: csiph.com!usenet.pasdenom.info!gegeweb.org!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!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.017 X-Spam-Evidence: '*H*': 0.97; '*S*': 0.00; 'output': 0.04; 'cache': 0.05; 'frameworks': 0.05; 'framework.': 0.07; 'differently.': 0.09; 'frameworks,': 0.09; 'of)': 0.09; 'path,': 0.09; 'cc:addr :python-list': 0.10; 'static': 0.13; 'applies': 0.15; '"hello': 0.16; 'assumptions': 0.16; 'backward': 0.16; 'better?': 0.16; 'caching': 0.16; 'exceptions.': 0.16; 'frameworks?': 0.16; 'input.': 0.16; 'modularity': 0.16; 'patch,': 0.16; 'personally,': 0.16; 'url:packages': 0.16; 'fix': 0.17; 'differ': 0.17; 'usability': 0.17; '(or': 0.18; 'written': 0.20; 'thanks.': 0.21; 'together.': 0.21; 'driven': 0.22; 'made.': 0.22; 'work.': 0.23; 'this:': 0.23; 'project,': 0.24; 'cc:no real name:2**0': 0.24; 'feature': 0.24; 'cc:2**1': 0.24; 'cc:addr:python.org': 0.25; 'header:In-Reply-To:1': 0.25; 'cc:addr:gmail.com': 0.27; 'question': 0.27; 'core': 0.27; '(we': 0.27; 'initial': 0.28; 'run': 0.28; 'app.': 0.29; 'probably': 0.29; "i'm": 0.29; 'related': 0.30; 'framework': 0.30; 'code': 0.31; 'point': 0.31; 'url:python': 0.32; 'good.': 0.32; 'not.': 0.32; 'from:addr:live.com': 0.33; 'problem': 0.33; 'project': 0.34; 'list': 0.35; 'decisions': 0.35; 'path': 0.35; 'weekend': 0.35; 'continue': 0.35; 'there': 0.35; 'explain': 0.36; 'url:org': 0.36; 'should': 0.36; 'thank': 0.36; 'one,': 0.37; 'does': 0.37; 'why': 0.37; 'well.': 0.37; 'subject:: ': 0.38; 'some': 0.38; 'things': 0.38; 'sure': 0.38; 'performance': 0.39; 'application': 0.40; 'where': 0.40; 'your': 0.60; 'day,': 0.60; 'skip:u 10': 0.60; 'amazing': 0.61; 'first': 0.61; 'more.': 0.62; 'personal': 0.62; 'respect': 0.63; 'other.': 0.64; 'great': 0.64; 'here': 0.65; 'become': 0.65; 'due': 0.66; 'forward': 0.66; 'life': 0.66; 'below.': 0.68; 'quality': 0.69; 'analysis': 0.70; 'paper': 0.78; 'url:http': 0.79; '(imho).': 0.84; 'more:': 0.84; 'pain': 0.84; 'wish.': 0.84; 'good,': 0.91; 'from.': 0.93; 'mistakes': 0.95; 'imagine': 0.96; 'charset:windows-1251': 0.97; 'hands': 0.97 X-Originating-IP: [178.136.241.38] From: Andriy Kornatskyy To: Subject: RE: Fastest web framework Date: Tue, 16 Oct 2012 17:47:00 +0300 Importance: Normal In-Reply-To: References: , , <8b51748d-0517-4b1d-a0a6-e8fa06dd4b68@r10g2000pbd.googlegroups.com>, , Content-Type: text/plain; charset="windows-1251" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginalArrivalTime: 16 Oct 2012 14:47:00.0702 (UTC) FILETIME=[195FE7E0:01CDABAD] Cc: "python-list@python.org" , wuwei23@gmail.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: 79 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1350398889 news.xs4all.nl 6851 [2001:888:2000:d::a6]:44344 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:31408 Demian=2C Thank you=2C I appreciate your input. See below. > > Performance and effectivity are related metrics. Longer=20 feature list can not explain why it less effective. An answer to=20 effectivity question might be related to: > > - code quality (we have PEP8) > > Any static code analysis such as pylint or pyflakes? Yep=2C good start with any of those. > > - architectural decisions taken > > What (sample of) decisions? How do they differ from other frameworks? > How will they make my life better? The initial decisions taken while building a project might be wrong. Due to= continues backward compatibility=2C you can not change them even you wish.= Some projects die and same people start a new one=2C rethinking mistakes m= ade. > > - core team experience > > Not sure this is entirely relevant (imho). Engineers with great > experience on paper may still make poor decisions and output shoddy > work. Conversely=2C a new grad (or weekend hacker) may have a solid > understanding and output amazing work. The question is about the practical things you do daily. You might laugh of= your first project=2C you continue to move forward and got respect as it i= s now. Imagine you continue to fix your first program up to now=2C you will= probably write is somewhat differently. Same applies to frameworks=2C purs= ue effectiveness for more: users served=2C application hosted=2C etc. Some= =2C just can not. > > - historical path=2C etc. > > What does this mean? The frameworks are not written in one day=2C they have historical path with= many hands on it. This change it=2C not always right way. > > There is a problem with 3rd party code... it should evolve with=20 framework... so good one become a part of it. 3rd party UI things are=20 good=2C until you start `customize` them=2C patch=2C workaround=2C etc. Thi= s is=20 where pain come from. However=2C there are exceptions. Can you name few? > > [Disclaimer: personal opinion] I couldn't disagree more. A good > framework provides the glue for various subsystems to work amazingly > well together. Perhaps this is why I'm drawn to micro-frameworks and > the likes of Pyramid. No assumptions are made about *how* I'm going to > use the framework. Modularity is good. Do one thing and do it *very* > well. Caching? Use beaker. ORM? Use SQLAlchemy. That glue is usability case: recommendation how to use it with one or the o= ther. > > Let me state this: "wheezy.web let you design web application to=20 be able run it at the speed of `hello world`=2C even database driven one". > > This bothers me. It's misleading to newbies and it's just wrong. You > simply *cannot* have a database driven application run at the exact > same performance as a "hello world" app. For you=2C personally=2C let me point this again. N.P. Here is how: use content caching with cache dependency. Read more: http://packages.python.org/wheezy.http/userguide.html#content-cache =A0 Thanks. Andriy Kornatskyy =