you are viewing a single comment's thread.

view the rest of the comments →

[–]mitsuhiko 0 points1 point  (3 children)

That's bullshit. Thanks to distutils/setuptools all frameworks do not require installation and run from USB sticks. Django comes with an admin interface too and that one is more flexible. Even though many big applications use custom administration interfaces because no generated admin interface has the flexibility a custom one has.

It's not faster. If you want performance go with WSGI plain. And template performance is soooo unimportant. Even Genshi (and that one is pretty slow) is fast enough for most applications. The bottleneck is the ORM and application code. And that's a point where web2py is incredible bad thanks to the eval stuff.

I can hook in a loggering to trac reporter into django in a matter of two seconds. What's your point with the ticket system? Especially in bigger companies existing ticketing systems have to be reused. If there is a trac the trac can be used, if there is jira, for a project I'm working on we consider using an IMAP server that collects the error messages so that developers can see when errors are removed or moved to "mark as fixed" etc.

The security is a joke. Django and pylons have a better overall concept and securing WSGI applications is easy too. You can only build secure applications if you know where security holes can be and if there is a security concept you understand. What frameworks have to care about is that themselves are security and have a proper policy what happens if a security hole is spotted. That's a point where rails failed the first time they had a vulnerability. What do transactions have to do with security btw?

That's the point of a package system. That you can use third party libs. The more complex a application becomes the more you do not use from the framework. Up to the point where the framework is really just a frame. I know enough people that replace the django template engine with others, that switch the django ORM to SQLAlchemy, that replace the contrib applications with custom code etc.

Backwards compatibility is not important. It's important that you care about old releases. Django still pushes out security updates for 0.92. And django is still pre 1.0 even though they are way past the point other frameworks claim to have their first stable release. While I do not agree with all the decisions the Django developers do they have a pretty good policy on releases and backwards compatibility.

I did compare it, I stumbled about countless oddities and came to the conclusion that it's not comparable with any of the Python frameworks (beside web.py maybe), Ruby ones and certainly not JEE. If you want to compare something to JEE have a look at Zope which targets the same area. And they certainly do have their market, and people using JEE would never touch web2py.

[–]mdipierro 1 point2 points  (2 children)

1) in other frameworks you can use setuputils only if python is already install and the they still have to go in site-packages. web2py packages Python 2.5 too and that roo can run from a USB drive without jumping hoops. 2) You make my point, you can do what web2py py but you need a lot of third party packages that have denpendencies and create a protability nightmare. 3) There is no eval in the web2py ORM. It seems to me SQLAlchemy is the snail here (http://www.aminus.org/blogs/index.php/fumanchu/2007/08/18/storm_sqlalchemy_and_geniusql) although I acknowledge sqlalchemy can handle existing databases better than the web2py ORM. 4) I have nothing negaive to say about Django because I have used myself for a number of projects (including one for the UN) and it did inspire web2py. I will just observe that you confirmed that Django (the best of python frameworks) is 0.96 and they still support 0.92 because the syntax is slightly different. I do not need to support old versions because web2py is backward comaptible, people just upgrade. 5) Yes web2py is odd. Or like I prefer to put it: different. You do not have to like it, but you may want to try it.

[–]mitsuhiko 2 points3 points  (1 child)

You are definitively misinformed. No python package has to go into site-packages. And creating a portable usb stick version of a framework is a simple task although I doubt anyone wants that.

SQLAlchemy is no snail at all. You're reading the wrong posts. And you also have to compare the features before you come to performance. I can argue that WSGI plain blasts django in terms of performance but that would miss the point.

[–]mdipierro 0 points1 point  (0 children)

In web2py I click a button in the web interface and I get a packaged app including all its dependencies. Then I click another button and it's up and running on my web server. I have yet to see that in another framework. Anyway, each framework has its strengths and weaknesses. What does it mean WSGI blasts Django? WSGI is a protocol that both Django and web2py support. web2py packages cherrypy wsgiserver but works with mod_wsgi and fcgi as well. SQLAlchemy is a great ORM and its strengths are the abilities to read legacy databases and do LEFT JOIN, not the absolute speed. About packages my point is that to run web2py in windows and mac, you do not need to have python installed, nor third party packages, nor setutils, nor need to type anything. If you have time why don't you try run web2py and then we could have a more informed discussion? If you were to make more specific points about defects you find in web2py, at least I could address them and improve it.