[web2py] Re: Why web2py? and not django?
On Jan 26, 6:51 am, Alfonso de la Guarda alfons...@gmail.com wrote: As an architect I have the power to choose the framework, but I would support it in more technical reasons, so that by sharing experiences, I will be happy to read their views, especially in management, deployment and DAL / ORM You should build an application, the same application, with both Django and web2py. It doesn't have to be a big thing, just try to cover a few of the basics. This is the only way to really know what the relative merits are. I did this, and I selected web2py, but in all honesty, Django and web2py are very close to each other. The thing that slightly tipped the balance for me was that it seemed easier to get stuff done in web2py. There were more conveniences.
Re: [web2py] Re: Why web2py? and not django?
On Wednesday 26 January 2011 10:53:34 cjrh wrote: On Jan 26, 6:51 am, Alfonso de la Guarda alfons...@gmail.com wrote: As an architect I have the power to choose the framework, but I would support it in more technical reasons, so that by sharing experiences, I will be happy to read their views, especially in management, deployment and DAL / ORM You should build an application, the same application, with both Django and web2py. It doesn't have to be a big thing, just try to cover a few of the basics. This is the only way to really know what the relative merits are. I did this, and I selected web2py, but in all honesty, Django and web2py are very close to each other. The thing that slightly tipped the balance for me was that it seemed easier to get stuff done in web2py. There were more conveniences. Having used both, I can say that web2py is indeed awesomely convenient with a great feature set, whereas Django has a hell of a lot of addons and extensions. Both are equally well documented and have nice communities. However, I'm not entirely sure how well web2py scales compared to Django, maybe someone can share some experience on that. I'd be interested in some successful deployment scenarios for bigger sites. -- Mit freundlichen Grüßen, Sascha Peilicke http://saschpe.wordpress.com signature.asc Description: This is a digitally signed message part.
[web2py] Re: Why web2py? and not django?
I'm oscillating between the two, myself. I find django more verbose than it needs to be and as the number of the applications grows in your project you'll be switching between files with the same name till your finger (or mouse) hurts. Web2py on the other hand has a poorer documentation and it does not have a administration interface customizable for the client. I'm also not sure about how well it scales outside of Google AppEngine. This frase taken from the documentation: Even if there are multiple web servers, there must be one, and only one, database server. worries me a bit. Apart from that I did not found any downsides for web2py. In my experience most of addons that I used in django was to supplement django's own deficencies as a webframework and not to add extra functionality to my applications. The top apps at http://djangopackages.com/categories/apps/ support my conclusion.
Re: [web2py] Re: Why web2py? and not django?
2011/1/26 rif feric...@gmail.com Even if there are multiple web servers, there must be one, and only one, database server. Where did you find this phrase? what context?
[web2py] Re: Why web2py? and not django?
In the book, chapter 11, Deployment Recipes. Of course, this isn't true because Web2py can connect to multiple DB servers. I think Massimo was trying to stress the importance of having all the data in one place, to be able maintain integrity of keys and relationships, and make sure queries return accurate and up to date data. On Jan 26, 2:10 pm, Bruno Rocha rochacbr...@gmail.com wrote: 2011/1/26 rif feric...@gmail.com Even if there are multiple web servers, there must be one, and only one, database server. Where did you find this phrase? what context?
Re: [web2py] Re: Why web2py? and not django?
Even if there are multiple web servers, there must be one, and only one, database server. I think this quote is out of context. I think it refers to GAE deployment. I'll check it later. On Wed, Jan 26, 2011 at 3:30 PM, villas villa...@gmail.com wrote: In the book, chapter 11, Deployment Recipes. Of course, this isn't true because Web2py can connect to multiple DB servers. I think Massimo was trying to stress the importance of having all the data in one place, to be able maintain integrity of keys and relationships, and make sure queries return accurate and up to date data. On Jan 26, 2:10 pm, Bruno Rocha rochacbr...@gmail.com wrote: 2011/1/26 rif feric...@gmail.com Even if there are multiple web servers, there must be one, and only one, database server. Where did you find this phrase? what context?
Re: [web2py] Re: Why web2py? and not django?
On Jan 26, 2011, at 8:30 AM, villas wrote: In the book, chapter 11, Deployment Recipes. Of course, this isn't true because Web2py can connect to multiple DB servers. I think Massimo was trying to stress the importance of having all the data in one place, to be able maintain integrity of keys and relationships, and make sure queries return accurate and up to date data. Right. A single *logical* database server that presents a single consistent view of the logical database. On Jan 26, 2:10 pm, Bruno Rocha rochacbr...@gmail.com wrote: 2011/1/26 rif feric...@gmail.com Even if there are multiple web servers, there must be one, and only one, database server. Where did you find this phrase? what context?
[web2py] Re: Why web2py? and not django?
If someone has access to correct it, he/she should explain it more in the book itself rather to spiritualize it here (as in: it is one spiritual db server expressed by multiple physical entities). On Jan 26, 4:35 pm, Jonathan Lundell jlund...@pobox.com wrote: On Jan 26, 2011, at 8:30 AM, villas wrote: In the book, chapter 11, Deployment Recipes. Of course, this isn't true because Web2py can connect to multiple DB servers. I think Massimo was trying to stress the importance of having all the data in one place, to be able maintain integrity of keys and relationships, and make sure queries return accurate and up to date data. Right. A single *logical* database server that presents a single consistent view of the logical database. On Jan 26, 2:10 pm, Bruno Rocha rochacbr...@gmail.com wrote: 2011/1/26 rif feric...@gmail.com Even if there are multiple web servers, there must be one, and only one, database server. Where did you find this phrase? what context?
[web2py] Re: Why web2py? and not django?
Hi Alfonso, web2py reduces your development and maintenance costs, compared to Django but you will find more difficult to find developers (it is newer and there is less of them). If you have developers already that is not an issue. Django assumes template builders are not programmers and does not allow full python power in templates. If you have designed who are not programmers you may share the Django view. If your designers are programmers they would perceive that as a limitation. In terms of speed they should be comparable. Django has an ORM, web2py has a DAL. The web2py DAL supports more complex queries than Django's and uses a very natural syntax (db.table.fieldvalue). The Django ORM is more limited in terms of queries (at least it was last time I used it) and has an odd syntax (Table.field__gt==value) but it does provide special APIs to handle many to many. The DAL tries to be as close as possible to SQL. The ORM tries to stay as close possible to an Object model. To me that is trying to put a circle into a square. When it fits great, some times it does not fit. Massimo
[web2py] Re: Why web2py? and not django?
I thought about this some more and I think you should assemble two teams (the web2py team and the Django team), ask them to choose a captain, and give both teams one assignment to complete in one day (give them a model and a point them to a layout online, no ajax). See who can do best in the time-frame provided. Massimo On Jan 25, 10:51 pm, Alfonso de la Guarda alfons...@gmail.com wrote: Hi, My development team is in a debate about which framework to employ, half like web2py and other like django. I found it interesting because we used both in projects and everything has worked out well, however, for this particular project must choose one of them. As an architect I have the power to choose the framework, but I would support it in more technical reasons, so that by sharing experiences, I will be happy to read their views, especially in management, deployment and DAL / ORM Saludos, Alfonso de la Guarda Centro Open Source(COS)http://www.cos-la.nethttp://alfonsodg.net Telef. 991935157 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4
[web2py] Re: Why web2py? and not django?
Massimo, Even if there are multiple web servers, there must be one, and only one, database server. This does appear to negate one of Web2py's best features, concurrent access to multiple DB servers. How about changing the book to read as follows (incorporating Jonathan's comment)?? Even if there are multiple web servers, there must still be a single *logical* database server that presents a single, consistent view of the data. -D
Re: [web2py] Re: Why web2py? and not django?
2011/1/26 Massimo Di Pierro massimo.dipie...@gmail.com The DAL tries to be as close as possible to SQL. The ORM tries to stay as close possible to an Object model. To me that is trying to put a circle into a square. When it fits great, some times it does not fit. Massimo Quote of the day!. -- Pablo Martín Mulone (mar...@tecnodoc.com.ar) http://www.tecnodoc.com.ar/ Paraná, Entre Ríos, Argentina (CP 3100). My blog: http://martin.tecnodoc.com.ar Expert4Solution Profile: http://www.experts4solutions.com/e4s/default/expert/6
[web2py] Re: Why web2py? and not django?
few people mention this, don't know why but it is huge. ORM's are a computational vietnam. it troubles my mind, how come so many good programmers don't have this notion and ORM's are actually very well seen. the relational model has its own way of working, its mindset, its optimizations. the object model works in a different way, its implementations have an higher sofistication for each data unit that knows all about itself and considers less fast searches as you can do with relational databases and its simpler way of storing things allows. the result of using an ORM is having a complex translation process from objects to SQL, then you get a second major loss because the generated is very bad, very generic, not specific. then, you a third major loss when you have to translate the resulset from SQL to objects again. many times, reality is much worse. if you make things like dog.getName() == cat.getName() the ORM will make select * from dog select * from cat put everything in memory and then make the search in memory. having an extremely optimizes relational database is probably worst than having simple files with pickles, really.. bottom line, you want to store objects and make queries over them, use object oriented databases. they exist, not by chance.. you have db4o in Java, ZODB in python. else if you want relational databases, use their language SQL or the smallest abstraction possible. On Jan 26, 3:50 pm, Martín Mulone mulone.mar...@gmail.com wrote: 2011/1/26 Massimo Di Pierro massimo.dipie...@gmail.com The DAL tries to be as close as possible to SQL. The ORM tries to stay as close possible to an Object model. To me that is trying to put a circle into a square. When it fits great, some times it does not fit. Massimo Quote of the day!. -- Pablo Martín Mulone (mar...@tecnodoc.com.ar)http://www.tecnodoc.com.ar/ Paraná, Entre Ríos, Argentina (CP 3100). My blog:http://martin.tecnodoc.com.ar Expert4Solution Profile:http://www.experts4solutions.com/e4s/default/expert/6
[web2py] Re: Why web2py? and not django?
On Wednesday, January 26, 2011 10:45:45 AM UTC-5, villas wrote: Massimo, Even if there are multiple web servers, there must be one, and only one, database server. This does appear to negate one of Web2py's best features, concurrent access to multiple DB servers. How about changing the book to read as follows (incorporating Jonathan's comment)?? Even if there are multiple web servers, there must still be a single *logical* database server that presents a single, consistent view of the data. -D Yes, the statement in the book is clearly a general statement about the scalability challenges of RDBMS's with ACID transactions, not a limitation specific to web2py. There's a hint at possible solutions in the very next paragraph: In the rest of the chapter, we consider various recipes that may provide an improvement over *this naive approach*... (emphasis added). And things are really cleared up further down the page in the Using Replicated Databases section: http://web2py.com/book/default/chapter/11#Using-Replicated-Databases
[web2py] Re: Why web2py? and not django?
chmpion of what? object dabatases are the champions storing... objects relational dbms are the champions storing... relational data use the right tools right. On Jan 26, 4:59 pm, Lars Hansson romaby...@gmail.com wrote: Yeah, but if everyone sits around waiting for the champion to appear there won't be one. Someone has to take the plunge. Cheers, Lars Hansson
[web2py] Re: Why web2py? and not django?
To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. On Jan 26, 11:08 am, blackthorne francisco@gmail.com wrote: few people mention this, don't know why but it is huge. ORM's are a computational vietnam. it troubles my mind, how come so many good programmers don't have this notion and ORM's are actually very well seen. the relational model has its own way of working, its mindset, its optimizations. the object model works in a different way, its implementations have an higher sofistication for each data unit that knows all about itself and considers less fast searches as you can do with relational databases and its simpler way of storing things allows. the result of using an ORM is having a complex translation process from objects to SQL, then you get a second major loss because the generated is very bad, very generic, not specific. then, you a third major loss when you have to translate the resulset from SQL to objects again. many times, reality is much worse. if you make things like dog.getName() == cat.getName() the ORM will make select * from dog select * from cat put everything in memory and then make the search in memory. having an extremely optimizes relational database is probably worst than having simple files with pickles, really.. bottom line, you want to store objects and make queries over them, use object oriented databases. they exist, not by chance.. you have db4o in Java, ZODB in python. else if you want relational databases, use their language SQL or the smallest abstraction possible. On Jan 26, 3:50 pm, Martín Mulone mulone.mar...@gmail.com wrote: 2011/1/26 Massimo Di Pierro massimo.dipie...@gmail.com The DAL tries to be as close as possible to SQL. The ORM tries to stay as close possible to an Object model. To me that is trying to put a circle into a square. When it fits great, some times it does not fit. Massimo Quote of the day!. -- Pablo Martín Mulone (mar...@tecnodoc.com.ar)http://www.tecnodoc.com.ar/ Paraná, Entre Ríos, Argentina (CP 3100). My blog:http://martin.tecnodoc.com.ar Expert4Solution Profile:http://www.experts4solutions.com/e4s/default/expert/6
[web2py] Re: Why web2py? and not django?
This is a good comment. I suggested a while ago that Web2py should have more slick supports for designing themes/templates. I think most programmers will work on the back end with emacs, vi, or their favorite editors, whereas the designers will probably favor the front end interface/IDE. But at this point, the front end is more biased toward programmers. I would like to see slick front end tools (probably in appadmin) to assist designers. I think there are loads of people who want fairly simple blogs/ newszines/etc. A very important priority for them is to be able to have many themes to choose from, and to quickly design pretty themes. Web2py, I think, already has these capabilities. With additional thoughtful slick tools, the designers will like web2py alot. On Jan 26, 11:52 am, Thadeus Burgess thade...@thadeusb.com wrote: web2py = programmers framework django = designers framework Do you have more designers or programmers? -- Thadeus On Wed, Jan 26, 2011 at 10:59 AM, Lars Hansson romaby...@gmail.com wrote: Yeah, but if everyone sits around waiting for the champion to appear there won't be one. Someone has to take the plunge. Cheers, Lars Hansson
[web2py] Re: Why web2py? and not django?
Hi Anthony, As you say, the context does soften that sentence. However, the existing wording is not only wrong, it also gave someone on this list some unnecessary cause for concern. Regards, D On Jan 26, 5:29 pm, Anthony abasta...@gmail.com wrote: On Wednesday, January 26, 2011 10:45:45 AM UTC-5, villas wrote: Massimo, Even if there are multiple web servers, there must be one, and only one, database server. This does appear to negate one of Web2py's best features, concurrent access to multiple DB servers. How about changing the book to read as follows (incorporating Jonathan's comment)?? Even if there are multiple web servers, there must still be a single *logical* database server that presents a single, consistent view of the data. -D Yes, the statement in the book is clearly a general statement about the scalability challenges of RDBMS's with ACID transactions, not a limitation specific to web2py. There's a hint at possible solutions in the very next paragraph: In the rest of the chapter, we consider various recipes that may provide an improvement over *this naive approach*... (emphasis added). And things are really cleared up further down the page in the Using Replicated Databases section:http://web2py.com/book/default/chapter/11#Using-Replicated-Databases
[web2py] Re: Why web2py? and not django?
Just to clarify. An ORM is not a object database (like ZODB). Django does not have an object database. ORM and DAL are simply to ways to access RDBMs. On Jan 26, 12:07 pm, blackthorne francisco@gmail.com wrote: chmpion of what? object dabatases are the champions storing... objects relational dbms are the champions storing... relational data use the right tools right. On Jan 26, 4:59 pm, Lars Hansson romaby...@gmail.com wrote: Yeah, but if everyone sits around waiting for the champion to appear there won't be one. Someone has to take the plunge. Cheers, Lars Hansson
[web2py] Re: Why web2py? and not django?
Where is this sentence? It is clearly wrong. On Jan 26, 9:45 am, villas villa...@gmail.com wrote: Massimo, Even if there are multiple web servers, there must be one, and only one, database server. This does appear to negate one of Web2py's best features, concurrent access to multiple DB servers. How about changing the book to read as follows (incorporating Jonathan's comment)?? Even if there are multiple web servers, there must still be a single *logical* database server that presents a single, consistent view of the data. -D
[web2py] Re: Why web2py? and not django?
On Wednesday, January 26, 2011 2:19:34 PM UTC-5, villas wrote: Hi Anthony, As you say, the context does soften that sentence. However, the existing wording is not only wrong, it also gave someone on this list some unnecessary cause for concern. Oh yes, I agree -- that sentence should be changed. Actually, perhaps the easiest solution is simply to delete it (it's hard to come up with a relatively short replacement that clarifies the issue without risking further confusion) -- I don't think it's an essential point where it is, and the topic of replicated databases is covered later in the chapter. Anthony
[web2py] Re: Why web2py? and not django?
On Wednesday, January 26, 2011 2:29:59 PM UTC-5, Massimo Di Pierro wrote: Where is this sentence? It is clearly wrong. Chapter 11, opening section, right before the server cluster diagram: http://web2py.com/book/default/chapter/11?search=multiple+web+servers
[web2py] Re: Why web2py? and not django?
I do not think the ORMs are better at something functionally. They are syntactic sugar. It boils down to whether a Table is a class (ORM) or an instance (DAL) and a row is an instance of the table class (ORM) or an instance of a record class (DAL). If a row is an instance of a table class, then you need to treat the result of a join or an aggregate as an exemption. That is why web2py was developed 4 years after Django but had support for left joins and aggregates 2 years before Django did. And we are still better at them. Django has better support for certain types of many2many because with the object model that an swipe more code under the rug (magic) we I do not like to do when accessing a database. The Django developers have mastered metaclasses but not operator overloading. Anyway, you can use some Django and some SQLALchemy syntax in web2py: http://www.web2py.com/AlterEgo/default/show/189 Massimo On Jan 26, 12:19 pm, VP vtp2...@gmail.com wrote: To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. On Jan 26, 11:08 am, blackthorne francisco@gmail.com wrote: few people mention this, don't know why but it is huge. ORM's are a computational vietnam. it troubles my mind, how come so many good programmers don't have this notion and ORM's are actually very well seen. the relational model has its own way of working, its mindset, its optimizations. the object model works in a different way, its implementations have an higher sofistication for each data unit that knows all about itself and considers less fast searches as you can do with relational databases and its simpler way of storing things allows. the result of using an ORM is having a complex translation process from objects to SQL, then you get a second major loss because the generated is very bad, very generic, not specific. then, you a third major loss when you have to translate the resulset from SQL to objects again. many times, reality is much worse. if you make things like dog.getName() == cat.getName() the ORM will make select * from dog select * from cat put everything in memory and then make the search in memory. having an extremely optimizes relational database is probably worst than having simple files with pickles, really.. bottom line, you want to store objects and make queries over them, use object oriented databases. they exist, not by chance.. you have db4o in Java, ZODB in python. else if you want relational databases, use their language SQL or the smallest abstraction possible. On Jan 26, 3:50 pm, Martín Mulone mulone.mar...@gmail.com wrote: 2011/1/26 Massimo Di Pierro massimo.dipie...@gmail.com The DAL tries to be as close as possible to SQL. The ORM tries to stay as close possible to an Object model. To me that is trying to put a circle into a square. When it fits great, some times it does not fit. Massimo Quote of the day!. -- Pablo Martín Mulone (mar...@tecnodoc.com.ar)http://www.tecnodoc.com.ar/ Paraná, Entre Ríos, Argentina (CP 3100). My blog:http://martin.tecnodoc.com.ar Expert4Solution Profile:http://www.experts4solutions.com/e4s/default/expert/6
[web2py] Re: Why web2py? and not django?
On Jan 26, 8:19 pm, VP vtp2...@gmail.com wrote: To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? No. The number of people that support a thing has no bearing on that thing's correctness. None whatsoever. Very large numbers of people have supported really bad ideas throughout history, and even still today. Only the merits of the specific case before us matter, not how much support can be found for various options. To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. Agreed. All we need to do is build great sites. And anyway, I don't see why we need to care about Django *at all*. Or any other framework for that matter. Why care? Focus on the platform available to us, i.e. HTTP (5?), CSS (3?), XML, Python (3?), and build the best web development framework for that. It doesn't hurt to consult the open literature (Django, Flask, Pyramid, Pylons, web.py, etc.), but the existing software is only a landmark on the route, not a stumbling block in the road.
Re: [web2py] Re: Why web2py? and not django?
Just for embroil more... ...is possible in some way to use django template system, or jinja2 in web2py? On Wed, Jan 26, 2011 at 8:54 PM, cjrh caleb.hatti...@gmail.com wrote: On Jan 26, 8:19 pm, VP vtp2...@gmail.com wrote: To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? No. The number of people that support a thing has no bearing on that thing's correctness. None whatsoever. Very large numbers of people have supported really bad ideas throughout history, and even still today. Only the merits of the specific case before us matter, not how much support can be found for various options. To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. Agreed. All we need to do is build great sites. And anyway, I don't see why we need to care about Django *at all*. Or any other framework for that matter. Why care? Focus on the platform available to us, i.e. HTTP (5?), CSS (3?), XML, Python (3?), and build the best web development framework for that. It doesn't hurt to consult the open literature (Django, Flask, Pyramid, Pylons, web.py, etc.), but the existing software is only a landmark on the route, not a stumbling block in the road.
[web2py] Re: Why web2py? and not django?
Yes just import it, call it in the action and return the string they generate. On Jan 26, 2:05 pm, Albert Abril albert.ab...@gmail.com wrote: Just for embroil more... ...is possible in some way to use django template system, or jinja2 in web2py? On Wed, Jan 26, 2011 at 8:54 PM, cjrh caleb.hatti...@gmail.com wrote: On Jan 26, 8:19 pm, VP vtp2...@gmail.com wrote: To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? No. The number of people that support a thing has no bearing on that thing's correctness. None whatsoever. Very large numbers of people have supported really bad ideas throughout history, and even still today. Only the merits of the specific case before us matter, not how much support can be found for various options. To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. Agreed. All we need to do is build great sites. And anyway, I don't see why we need to care about Django *at all*. Or any other framework for that matter. Why care? Focus on the platform available to us, i.e. HTTP (5?), CSS (3?), XML, Python (3?), and build the best web development framework for that. It doesn't hurt to consult the open literature (Django, Flask, Pyramid, Pylons, web.py, etc.), but the existing software is only a landmark on the route, not a stumbling block in the road.
Re: [web2py] Re: Why web2py? and not django?
You could definitely use Jinja2 if you so desired, but honestly I do not see any reason why you would, you lose the ability to byte compile your views. (well technically, you would end up having to write your own middleware that would compile the jinja2 templates into bytecode) but then you get away from the whole reason of using web2py in the first place... which is to have all of the tools in one box designed to work together seamlessly. As far as the ORM vs DAL argument is concerned, it really depends on your situation. Firstly, I think the Django ORM sucks... if I were to use a python ORM it will be SQLAlchemy hands down. I think the django admin interface is just some fluff that is used for marketing. I know some people use it in production, but you can create a custom admin interface in web2py faster than you can hack the django admin do what you need it to do. I don't think it is a matter of syntatic sugar... there is a real difference in maintaining 70+ models in web2py vs SQLAlchemy... especially when these models need to be shared between external scripts. And for the situations... If you have alot of complex models that require many to many relationships and lots of joins... use an ORM, it is designed to handle complex relationships between records. If you have a few models, but lots of data that can be used directly... use the DAL, it is memory/cpu efficient. -- Thadeus On Wed, Jan 26, 2011 at 2:05 PM, Albert Abril albert.ab...@gmail.comwrote: Just for embroil more... ...is possible in some way to use django template system, or jinja2 in web2py? On Wed, Jan 26, 2011 at 8:54 PM, cjrh caleb.hatti...@gmail.com wrote: On Jan 26, 8:19 pm, VP vtp2...@gmail.com wrote: To be fair, the most popular option right now is SQLAlchemy, an ORM. DAL appears to be a minority approach. So, ORM must be good at something right? No. The number of people that support a thing has no bearing on that thing's correctness. None whatsoever. Very large numbers of people have supported really bad ideas throughout history, and even still today. Only the merits of the specific case before us matter, not how much support can be found for various options. To get web2py out of the PR's ditch, I think it's best to refrain from commenting on perceived weaknesses of Django and other technologies. Agreed. All we need to do is build great sites. And anyway, I don't see why we need to care about Django *at all*. Or any other framework for that matter. Why care? Focus on the platform available to us, i.e. HTTP (5?), CSS (3?), XML, Python (3?), and build the best web development framework for that. It doesn't hurt to consult the open literature (Django, Flask, Pyramid, Pylons, web.py, etc.), but the existing software is only a landmark on the route, not a stumbling block in the road.
[web2py] Re: Why web2py? and not django?
. there is a real difference in maintaining 70+ models in web2py vs SQLAlchemy... especially when these models need to be shared between external scripts. Is this because DAL has not support for circular dependencies and SQLAlchemy does? But seriously, I think an application with 70+ models is entirely in a different class of applications.
[web2py] Re: Why web2py? and not django?
DAL supports self references. Circular references that are not self references are not supported because they are a bad idea. Massimo
[web2py] Re: Why web2py? and not django?
I remember reading about self referencing and the mess of organizing the relationships associated with it. If this is a problem then it can simply be resolved by running a topological sort of the dependencies. As long as, there is no circular referencing, it'll be a directed acyclic graph, and the topological sorting will straighten things out without much problems. On Jan 26, 4:53 pm, Massimo Di Pierro massimo.dipie...@gmail.com wrote: DAL supports self references. Circular references that are not self references are not supported because they are a bad idea. Massimo
Re: [web2py] Re: Why web2py? and not django?
That is just one of the very small reasons out of the entire haystack the advantages of an ORM are much too numerous to even begin to account I do not think circular references are a bad thing... it is a pointer after all... one thing I miss from C programming is the ability to control pointer vs. copy! SQLAlchemy does an amazing job at state management, and I have yet run into a situation where circular references could even remotely cause issues. It really depends on your application though. Use the right tool for the right job. The DAL has its advantages, the biggest of which is memory consumption and function calls when querying large datasets. An ORM will grow exponentially in memory usage as you add more objects. The DAL keeps a linear memory growth as expected, so when you need lots of data its very efficient and the effects can be noticed even with as few as 5000 records. It also depends on the programmer. I had OOP concepts ingrained from the beginning (Java was my first programming language I learned)... so obviously SQLAlchemy would feel much more natural to me. That said, I actually do use the standalone DAL in some scripts that process data for my app that has 73 models (it used to have 50, but I have been busy the last couple of months). The reason is because for batch processing analytics for some of my tables, the DAL is the right tool for the job, and using an ORM makes the process take about 2-3 hours as opposed to 30-45 minutes. -- Thadeus On Wed, Jan 26, 2011 at 3:40 PM, VP vtp2...@gmail.com wrote: . there is a real difference in maintaining 70+ models in web2py vs SQLAlchemy... especially when these models need to be shared between external scripts. Is this because DAL has not support for circular dependencies and SQLAlchemy does? But seriously, I think an application with 70+ models is entirely in a different class of applications.
[web2py] Re: Why web2py? and not django?
One thing that worries me is the issue of scalability, for example, this project will work with django or web2py, but no large deployments web2py to bringing information on how to behave in environments where there are 50 Requests per second with the problems associated with using a transactional model in a web where there is more effective solutions as working layers NoSQL reading (how are we going with this?). While I can live with other limitations of web2py, it's scalability that worries me a little bit too. I have recently ran into this unpredictable wsgi problem, whereby requests are dropped when resources (RAM) are still abundant. And I am not the only one having this problem. A handful of other people have this problem too. It's problem nothing, but as of now, it's a bit of a concern.
Re: [web2py] Re: Why web2py? and not django?
On Jan 26, 2011, at 9:45 AM, villas wrote: Massimo, Even if there are multiple web servers, there must be one, and only one, database server. This does appear to negate one of Web2py's best features, concurrent access to multiple DB servers. How about changing the book to read as follows (incorporating Jonathan's comment)?? Even if there are multiple web servers, there must still be a single *logical* database server that presents a single, consistent view of the data. It's a little looser than that, even. One logical server per database. No reason that different databases can't be on different servers.
[web2py] Re: Why web2py? and not django?
I am trying to get to the bottom of it. My server does not show the problem but I hope to be able to reproduce it so I can debug it. Massimo On Jan 26, 9:47 pm, VP vtp2...@gmail.com wrote: One thing that worries me is the issue of scalability, for example, this project will work with django or web2py, but no large deployments web2py to bringing information on how to behave in environments where there are 50 Requests per second with the problems associated with using a transactional model in a web where there is more effective solutions as working layers NoSQL reading (how are we going with this?). While I can live with other limitations of web2py, it's scalability that worries me a little bit too. I have recently ran into this unpredictable wsgi problem, whereby requests are dropped when resources (RAM) are still abundant. And I am not the only one having this problem. A handful of other people have this problem too. It's problem nothing, but as of now, it's a bit of a concern.
[web2py] Re: Why web2py? and not django?
As a programmer, I found Web2py more appealing out of the box. I did a fair chunk of the Django tutorial, but they started on a bad note by showing me how to add an admin interface and considering it to be some hot stuff (for crying out loud, that's a pretty high level feature and one that you can code yourself on an incremental basis as needed, they should have started with the building blocs). I was left with the impression that Django would try to do too much for me. For the most part, I find that Web2py does just the right amount not to get in my way (well, sometimes it does too much, but you can turn it off easily enough via flags and such). Given that I had some prior experience in SQL, the ORM was a minus, not a plus. DAL is closer to my comfort level. I guess that's something to consider (whether you are comfortable with SQL or not). Obviously, there is the whole newish factor with Web2py (less documentation, smaller user base), but I found that the community support was adequate to bridge the occasional gaps in the documentation. On Jan 25, 11:51 pm, Alfonso de la Guarda alfons...@gmail.com wrote: Hi, My development team is in a debate about which framework to employ, half like web2py and other like django. I found it interesting because we used both in projects and everything has worked out well, however, for this particular project must choose one of them. As an architect I have the power to choose the framework, but I would support it in more technical reasons, so that by sharing experiences, I will be happy to read their views, especially in management, deployment and DAL / ORM Saludos, Alfonso de la Guarda Centro Open Source(COS)http://www.cos-la.nethttp://alfonsodg.net Telef. 991935157 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4