Web Frameworks Excessive Complexity

Andriy Kornatskyy andriy.kornatskyy at live.com
Wed Nov 21 13:23:32 EST 2012


Richard,

Thank you for the comment.

I have examined web frameworks for PEP8 and CC metrics already. Results are here:
http://mindref.blogspot.com/2012/10/python-web-pep8-consistency.html
http://mindref.blogspot.com/2012/11/python-web-excessive-complexity.html

Same applies to performance benchmarks:
http://mindref.blogspot.com/2012/09/python-fastest-web-framework.html
http://mindref.blogspot.com/2012/10/python-web-routing-benchmark.html
http://mindref.blogspot.com/2012/10/python-web-reverse-urls-benchmark.html
http://mindref.blogspot.com/2012/10/python-web-caching-benchmark.html

and template engine related:
http://mindref.blogspot.com/2012/10/python-templates-benchmark.html
http://mindref.blogspot.com/2012/07/python-fastest-template.html

If there are any other metrics we can gather automatically I will be happy to run them.

Thank you for your interest of wheezy.web. Before you buy:

Demo application source:
https://bitbucket.org/akorn/wheezy.web/src/tip/demos/template
Demo application live:
http://wheezy.pythonanywhere.com/

Tutorial:
http://packages.python.org/wheezy.web/tutorial.html
Finished:
https://bitbucket.org/akorn/wheezy.web/src/tip/demos/guestbook

Try understand what is cache dependency and how you benefit of using it with content caching. Try relate it with web caching benchmark from above and imagine 99% of your web application content is served out from cache, even it is dynamic (you control content cache with cache dependency).

Thanks.

Andriy Kornatskyy

----------------------------------------
> To: python-list at python.org
> From: richard_hubbe11 at lavabit.com
> Subject: Re: Web Frameworks Excessive Complexity
> Date: Wed, 21 Nov 2012 09:49:39 -0800
>
> On Tue, 20 Nov 2012 20:41:42 +0300
> Andriy Kornatskyy <andriy.kornatskyy at live.com> wrote:
>
> >
> > Cyclomatic (or conditional) complexity is a metric used to indicate
> > the complexity of a source code. Excessive complexity is something
> > that is beyond recommended level of 10 (threshold that points to the
> > fact the source code is too complex and refactoring is suggested).
> > Here is a list of web frameworks examined: bottle, cherrypy,
> > circuits, django, flask, pyramid, pysi, tornado, turbogears, web.py,
> > web2py and wheezy.web.
> >
> > You can read more here:
> >
> > http://mindref.blogspot.com/2012/11/python-web-excessive-complexity.html
>
> You are the author of wheezy.web right? Can't blame you for trying to
> market your product. The conclusions, or lack of, are meaningless to me.
> I have to get in and drive the car before I go all in and buy it.
>
> I'm looking at different technology right now on which to base a site.
> I tried pyramid and after install it consumed 92MB of disk. It seemed
> large and it turns out that it installed its own version of python.
> Seems more complex to me, yet another python on disk.
>
> Anyway if you're really serious about making a point that complexity
> matters you'll have to measure many more things than loc or cc.
>
> Did you look at the number of commits to the same file over time?
> Etc. Number of authors for same file? Etc., etc. Number of security
> fixes? There must be a correlation between complexity and insecurity.
> Maybe check for randomness of the code. Not sure how, maybe
> look for strange, non-idiomatic uses of the language.
>
> I'm no computer scientist and I'm sure there are volumes on all this.
>
> Then there's also the social side, how much discussion takes place
> about the software? Does more discussion mean more problems?
> More project vibrancy? You could check for vocab, etc.
>
> I'm gonna take a look at wheezy.web.
> >
> > Thanks.
> >
> > Comments or suggestions are welcome.
> >
> > Andriy Kornatskyy
> >
>
>
> --
>
>
> --
> http://mail.python.org/mailman/listinfo/python-list
 		 	   		  


More information about the Python-list mailing list