Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-10 Thread Michele Comitini
From my perspective, web2py style is very much influenced by its
functional approach and the usage of functors.  This gives a great
amount
of tools to new comers, but can be problmematic with experienced
programmers that have been working with a COO (class object oriented:
read java)
language.

 I have a bit of experience with OO (truly object oriented) languages
besides python, such as lisp or scheme so I feel web2py confortable.
But with java experience and being used to the define Interface,
define Class, define Subclass of Class,  instanciate Object and so on,
I understand that it is not
clear how and where you can do that.  Maybe it is just a matter of
documentation, a Library Reference distinct from a Tutorial ?

Other python frameworks stick to COO so maybe more people feel
confortable, and have a API or Library Reference?

mic

2011/1/10 Anthony abasta...@gmail.com:
 On Sunday, January 9, 2011 4:49:45 PM UTC-5, pbreit wrote:

 For one, I don't think businesses care much about backwards compatibility.
 My experience in the enterprise was that vendors were constantly churning
 out non-backwards-compatibile updates and customers were routinely several
 versions behind.


 Maybe they remain several versions behind because they don't want to keep
 dealing with backwards-incompatible upgrades (i.e., skip a few versions and
 just deal with an occasional big incompatible change). The cool thing about
 web2py is you can take advantage of every new feature that comes out (every
 couple weeks) without breaking your programs.


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Thadeus Burgess
I believe this is why web2py receives much criticism. I speak from
experience in using (and contributing to) web2py.

web2py cannot share objects in an importable namespace with other python
applications ecause of its design architecture. This is an absolute
requirement for most enterprise or real world applications.

Two examples. (however there are many more than I have time to iterate over)

Exhibit A: Multiple websites that share some or all database models and
utility functions. A public site may use only some of the models needed for
say user signup, and a dashboard that may be IP restricted for internal use
only.
Exhibit B: Must share database models with stand alone python programs. A
long running process that sits in the background, but needs access to the
database.

web2py cannot do either of these, and unless web2py uses import it will
never be able to. Currently, to accomplish exhibit A or B, code
spaghetti-fication must occur, and maintainance of model definitions in
multiple places now becomes a royal pain in the ass. That or you must use
some of the other many (unprofessional, hard to maintain) hacks just to work
around this limitation.

With other frameworks, such as flask/sqlalchemy it is a python program like
anything else. You can do from dashboard.models import person. You only
maintain one model, but you can use it in all applications that may need it,
since you can easy_install your site into a virtualenv.

Another issue that I have ran into more often than not is the limitations in
the web2py core. Certain things (like SQLForm, auth, sessions, etc) are
great for rapid prototyping, but when you actually need to do something
real with them, they just get in the way. For example, a form that has a
subform or a built in subtable (like a form you might build in Access), or
cookie stored sessions for scalability. Again, these are just simple
examples when the real world implementation is much more complex.

Another problem that the current design of web2py inherently brings is it
enforces a functional programming style. You can use classes, but then you
end up having to throw pointers around of your basic objects (db, session,
etc). Using classes the way they are designed to be used with a normal
object lifecycle (imported, instantiated, etc...) is extemely difficult to
do in web2py. There is nothing wrong with functional programming, but the
code can easily become a mess even if you are a good programmer.

Just to give an example of how amazing a class based system is, I re-wrote
appadmin for Flask+SQLAlchemy+WTForms in 80 lines of python code, with
pagination, searching, creating, updating, and deleting. Think of how
maintainable that is. I don't even know what is going on inside of web2pys
appadmin... I try to stay away from it *wink*.

One of the biggest arguments vs other frameworks is the speed of development
time of a web2py app vs other framework. I disagree with this, I am usually
able to add new features to my flask apps much faster than I can in web2py.
This is probably due to the simplicity of other frameworks and not having to
fight with anything being pre-determined for me (such as database tables
forced to lowercase).

As long as all your doing is building a simple website that will be
completely 100% self contained into web2py and it isn't expected to grow
over 10K lines of python code, web2py is great.

If you are doing something that requires code to be shared, and has lots of
complex models and a large codebase that will need to be maintained by other
people than yourself in the future... I would pick Flask.

I speak most of this from real world experience. I work in both web2py and
flask every single day and know the strengths and weaknesses of both.

I just wanted to take the time to chime in as to why some feel they way they
do with web2py... maybe they just don't know how to explain it, or don't
want to take the time to explain it.

--
Thadeus




On Sat, Jan 8, 2011 at 8:34 AM, Anthony abasta...@gmail.com wrote:

 On Saturday, January 8, 2011 9:12:55 AM UTC-5, Anthony wrote:

 +1

 On Saturday, January 8, 2011 7:31:38 AM UTC-5, cjrh wrote:

 On Jan 7, 11:45 pm, Michele Comitini miche...@gmail.com
 wrote:
  I think the most misunderstood fact with web2py is that web2py
  implementation is improving every day,

 Do you really think the designers of other web frameworks do not
 understand how web2py works?  They definitely understand, and they
 probably understand better than you or I.   The problem is that web2py
 design is different from their own design.  Because we operate in the
 same space, they try to show why their decisions are better.  To be
 fair, Massimo has been doing exactly the same thing by comparing w2py
 versus the others for years.  Quid pro quo.  If we get to say why ours
 is better, then they get to do likewise.


 Good point, though it's not exactly the same. Massimo may claim that the
 web2py way is better (actually, he doesn't really make that 

[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Massimo Di Pierro
This is my prospective: Everything has a trade off. We want the
ability to edit files via the web interface and see the effect of the
change immediately, even on a production system using apache. That is
not possible using imports. Django and Flask provide a module reload
mechanism. That works only if/when they use a python based web server
(not  production solution) and it can lead to problems.

If we did not execute models/controllers at every request something
like this:

   db.define_table('table',Field('field',default=request.now))

would not work any more because the define would be executed only once
before the http request exists. request.now would have to a lazy
object (thus introducing complexity) or moved to every action that
needs it (this introducing repetition).

Thanks to your work (Thadeus) about template.py and the new dal, most
of web2py modules can now be used with other frameworks.

If you do not want the web2py way (i.e. models/controllers are not
modules), you can still use all of the web2py helpers, validators,
dal, template language, etc with the dispatcher of any other
frameworks.

The current design is not an accident. It was a choice to
differentiate from what others do.

This forum is about web2py and web2py is defined by its current
design. Changing that design would break backward compatibility and it
would not be web2py any more.

As I said multiple times, there may be a web3py and it may very well
have a different architecture. Although for me the issue is not
whether to use exec or not. The issue is whether to use Python at all
given its scalability problems on multicore and the lack of a proper
garbage collection. I am very much open to a discussion on web3py (it
is inevitable since python 3.x broke backward compatibility anyway)
but I am not sure it belongs to this mailing list.

Massimo





On Jan 9, 4:41 am, Thadeus Burgess thade...@thadeusb.com wrote:
 I believe this is why web2py receives much criticism. I speak from
 experience in using (and contributing to) web2py.

 web2py cannot share objects in an importable namespace with other python
 applications ecause of its design architecture. This is an absolute
 requirement for most enterprise or real world applications.

 Two examples. (however there are many more than I have time to iterate over)

 Exhibit A: Multiple websites that share some or all database models and
 utility functions. A public site may use only some of the models needed for
 say user signup, and a dashboard that may be IP restricted for internal use
 only.
 Exhibit B: Must share database models with stand alone python programs. A
 long running process that sits in the background, but needs access to the
 database.

 web2py cannot do either of these, and unless web2py uses import it will
 never be able to. Currently, to accomplish exhibit A or B, code
 spaghetti-fication must occur, and maintainance of model definitions in
 multiple places now becomes a royal pain in the ass. That or you must use
 some of the other many (unprofessional, hard to maintain) hacks just to work
 around this limitation.

 With other frameworks, such as flask/sqlalchemy it is a python program like
 anything else. You can do from dashboard.models import person. You only
 maintain one model, but you can use it in all applications that may need it,
 since you can easy_install your site into a virtualenv.

 Another issue that I have ran into more often than not is the limitations in
 the web2py core. Certain things (like SQLForm, auth, sessions, etc) are
 great for rapid prototyping, but when you actually need to do something
 real with them, they just get in the way. For example, a form that has a
 subform or a built in subtable (like a form you might build in Access), or
 cookie stored sessions for scalability. Again, these are just simple
 examples when the real world implementation is much more complex.

 Another problem that the current design of web2py inherently brings is it
 enforces a functional programming style. You can use classes, but then you
 end up having to throw pointers around of your basic objects (db, session,
 etc). Using classes the way they are designed to be used with a normal
 object lifecycle (imported, instantiated, etc...) is extemely difficult to
 do in web2py. There is nothing wrong with functional programming, but the
 code can easily become a mess even if you are a good programmer.

 Just to give an example of how amazing a class based system is, I re-wrote
 appadmin for Flask+SQLAlchemy+WTForms in 80 lines of python code, with
 pagination, searching, creating, updating, and deleting. Think of how
 maintainable that is. I don't even know what is going on inside of web2pys
 appadmin... I try to stay away from it *wink*.

 One of the biggest arguments vs other frameworks is the speed of development
 time of a web2py app vs other framework. I disagree with this, I am usually
 able to add new features to my flask apps much faster than I can in 

[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread pbreit
So I guess the question remains: is Web2py suitable for large, public web 
sites or does it max out as a rapid prototyper and smaller intranet type 
sites?

[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Massimo Di Pierro
I do not think this discussion has anything to do with it. This is a
scalability issue and web2py scales as well as any of the other web
frameworks. The issue is whether people like or not the programming
style. If you like it you use web2py. If you do not like it you use
something else.

On Jan 9, 11:24 am, pbreit pbreitenb...@gmail.com wrote:
 So I guess the question remains: is Web2py suitable for large, public web
 sites or does it max out as a rapid prototyper and smaller intranet type
 sites?


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Bruno Rocha
2011/1/9 pbreit pbreitenb...@gmail.com

 So I guess the question remains: is Web2py suitable for large, public web
 sites or does it max out as a rapid prototyper and smaller intranet type
 sites?



http://www.web2py.com/poweredby (this site has not every web2py powered site
around the globe, people needs to update)

To point few of these sites:
http://www.web2py.com/poweredbySahanaEden, RadBox, TenthRow, Ru.ly, Campus
Online, Latinux, Paraiba Brazilian State Government, NatalAnimal (My non
profit e-commerce like website),

The list above is not about prototype or intranet websites.

Also, at my tiny company ( blouweb.com ) we are working only with web2py
development, in one year of existence we are making our lives working only
with web2py (developing and training)

Besides the public websites and intranets, we are developing some corporate
systems. Some of them are in production already, for more than 6 months and
we are having a great experience.

I also working a lot giving web2py classes (in-company) , and for example
one of the biggest state-company of Brazil are getting trained and
developing internal solutions with web2py.

Now, we are in the way to sign a contract to develop a financial system for
one of the São Paulo stock-exchange companies.

I think web2py is very good for 'Corporate' and 'Enterprise', but perhaps we
need to be less pretentious and change the slogan for something like:

web2py - the getting things done web framework


-- 

Bruno Rocha
http://about.me/rochacbruno/bio


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Kuba Kucharski
Bruno, Pbreit, the discussion was starting to get really interesting,
please don't let it go OT


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread David Marko
I really reminds me situation I started to work with PlayFramework a few 
years ago. Its excelent JAVA web framework, but its done in 
completely(internaly) different way than how the rest of the JAVA frameworks 
being  done(using standard servlet concept). The developers of Play! have a 
nice section on their site(under FAQ) called: You guys don’t even know how 
to program in Java... and they are trying to explain here why they did many 
things in a very different way in many areas that others describe as it is 
against a good JAVA practices

http://www.playframework.org/documentation/1.1/faq 

David


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread VP
I think web2py is very good for 'Corporate' and 'Enterprise', but perhaps we
need to be less pretentious and change the slogan for something like:

web2py - the getting things done web framework

I know much less about web2py than most people here, but I feel
compelled to add an opinion. There are many different things that are
touched upon in this thread.

First is the slogan of web2py.  I think the word enterprise is a
mistake.  But at the same time, the attacks that center around this
word is very unjustified.   For the sake of comparison, let's take a
look at the Django's slogan: Webframework for perfectionists with
deadlines.  Now, you can easily attack this slogan in much the same
ways people have attacked Web2py.  But most people don't do that.
Massimo is not great at PR, so his PR approach is easily prone to
attack.  But at the same time, a slogan is just a slogan.  And yet
people unfairly focused on a little slogan repeatedly.  That's utterly
unfair.

Second, let's talk about what it means to be enterprise.  I think a
many people tend to make this type of reasoning:  (1) I am doing real
work, (2) this tool isn't quite the best thing for this work, (3)
therefore, it is not real (enterprise).   I do not agree with this
line of reasoning.  A tool, any tool, has its limitations and within
its boundary of effectiveness it can be as real as any other tool.
Drupal, for example, has been used extensively in many big companies
to do real things.  And yet, Drupal, at its heart, is a CMS, and
therefore is not as flexible as something like a webframework.  As
such the domain of effectiveness of a CMS is smaller than that of a
webframework.  But when people need to build CMS, Drupal is very
effective and *real*.

The right word, I think, is generality.   A full stack webframework
like web2py is more general than a CMS like Drupal.  Thus, it can do
more things.  Something like Flask is not a full-stack framework, as
such, it makes fewer assumptions, and it is more general than a full-
stack framework.  At the same time, it doesn't have as much
batteries.  And many will find a full-stack framework more useful in
that regards.

So to say that because you can not import pieces of a model into an
app, therefore web2py is inappropriate for enterprise, is not right.
I think many enterprise apps do not have to have highly connected
models.  There  are many other dimensions that are important with
respect to what it means to be enterprise, such as scalability,
maintainability, etc.   And I think that web2py still needs to be
proven in this regards.


And third, there's a criticism that the internals of web2py is a
mess.  That might or might not be true.  There are a few things I'd
like to say in this regards.  First, from a user's point of view, this
criticism is not very interesting.  But this criticism implies
indirectly a few things, such as there are many bugs; or it's not easy
to add features to web2py.   From an outsider's point of view, this is
what I see.   In terms of man power, web2py has fewer than Django.  I
think Flask also has a decent number of developers working on it.
Web2py has mainly Massimo, who wears many hats; plus maybe 2, 3 other
people putting a lot of time into it.   And yet, you look at features,
there's not much Django has that Web2py doesn't have.   Another thing
that adding features to Web2py is quite quick.  This is what I often
see around here.  When someone has an idea, Massimo often does it
right away.   Recently, it took a relatively quick effort for Massimo
(and probably a handful of other people) to rewrite DAL
completely. Now, going back to the criticism that Web2py's
internal is real bad.  I am very reluctant to believe that is the
case, given all of these I have seen and experienced around here.


Having said this, I don't think I am a web2py zealous fan.  Trust me,
if there are better frameworks, I'd jump in a second.  I have perused
the Flask/Bottle/Django documentations countless of times, and each
time, I just decided they do not yet have what I want.   Further,
there are a few things I still wish web2py do better.  Frankly, one of
the design decision that I do not care for too much is the web IDE and
backward compatibility (which I think is useful but should not be an
absolute).

I am looking forward to web3py.  I hope Massimo starts this right
away, drawing lessons from web2py and other frameworks.












Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Thadeus Burgess
I think Massimo hit it on the spot. Its about coding style. Most of the
people I see giving web2py criticism are young. Considering that beginning
in about 2001 colleges starting only teaching java and handing out degrees,
it might be safe to assume that most of these guys knew Java as their first
language.  Not to mention that someone who went to school for 4 years for
software engineering will have been uniquely tuned to a specific coding
style (object oriented).

I like web2py, and I do have uses for it on a daily basis to accomplish real
world work. I use web2py alot to provide a web based access to automating
statistical analysis. Usually these type of apps need to change often and
can even change drastically, which is why I like web2py for them.

--
Thadeus




On Sun, Jan 9, 2011 at 1:46 PM, VP vtp2...@gmail.com wrote:

 I think web2py is very good for 'Corporate' and 'Enterprise', but perhaps
 we
 need to be less pretentious and change the slogan for something like:

 web2py - the getting things done web framework

 I know much less about web2py than most people here, but I feel
 compelled to add an opinion. There are many different things that are
 touched upon in this thread.

 First is the slogan of web2py.  I think the word enterprise is a
 mistake.  But at the same time, the attacks that center around this
 word is very unjustified.   For the sake of comparison, let's take a
 look at the Django's slogan: Webframework for perfectionists with
 deadlines.  Now, you can easily attack this slogan in much the same
 ways people have attacked Web2py.  But most people don't do that.
 Massimo is not great at PR, so his PR approach is easily prone to
 attack.  But at the same time, a slogan is just a slogan.  And yet
 people unfairly focused on a little slogan repeatedly.  That's utterly
 unfair.

 Second, let's talk about what it means to be enterprise.  I think a
 many people tend to make this type of reasoning:  (1) I am doing real
 work, (2) this tool isn't quite the best thing for this work, (3)
 therefore, it is not real (enterprise).   I do not agree with this
 line of reasoning.  A tool, any tool, has its limitations and within
 its boundary of effectiveness it can be as real as any other tool.
 Drupal, for example, has been used extensively in many big companies
 to do real things.  And yet, Drupal, at its heart, is a CMS, and
 therefore is not as flexible as something like a webframework.  As
 such the domain of effectiveness of a CMS is smaller than that of a
 webframework.  But when people need to build CMS, Drupal is very
 effective and *real*.

 The right word, I think, is generality.   A full stack webframework
 like web2py is more general than a CMS like Drupal.  Thus, it can do
 more things.  Something like Flask is not a full-stack framework, as
 such, it makes fewer assumptions, and it is more general than a full-
 stack framework.  At the same time, it doesn't have as much
 batteries.  And many will find a full-stack framework more useful in
 that regards.

 So to say that because you can not import pieces of a model into an
 app, therefore web2py is inappropriate for enterprise, is not right.
 I think many enterprise apps do not have to have highly connected
 models.  There  are many other dimensions that are important with
 respect to what it means to be enterprise, such as scalability,
 maintainability, etc.   And I think that web2py still needs to be
 proven in this regards.


 And third, there's a criticism that the internals of web2py is a
 mess.  That might or might not be true.  There are a few things I'd
 like to say in this regards.  First, from a user's point of view, this
 criticism is not very interesting.  But this criticism implies
 indirectly a few things, such as there are many bugs; or it's not easy
 to add features to web2py.   From an outsider's point of view, this is
 what I see.   In terms of man power, web2py has fewer than Django.  I
 think Flask also has a decent number of developers working on it.
 Web2py has mainly Massimo, who wears many hats; plus maybe 2, 3 other
 people putting a lot of time into it.   And yet, you look at features,
 there's not much Django has that Web2py doesn't have.   Another thing
 that adding features to Web2py is quite quick.  This is what I often
 see around here.  When someone has an idea, Massimo often does it
 right away.   Recently, it took a relatively quick effort for Massimo
 (and probably a handful of other people) to rewrite DAL
 completely. Now, going back to the criticism that Web2py's
 internal is real bad.  I am very reluctant to believe that is the
 case, given all of these I have seen and experienced around here.


 Having said this, I don't think I am a web2py zealous fan.  Trust me,
 if there are better frameworks, I'd jump in a second.  I have perused
 the Flask/Bottle/Django documentations countless of times, and each
 time, I just decided they do not yet have what I want.   Further,
 there are a few 

Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread pbreit
I don't buy the problem with integrating enterprise systems. Components 
should be more loosely coupled.

I do wonder about the balance between the features that make Web2py great 
for rapid prototyping vs what you would need to do in the real world. But 
it seems to me that the productivity features are not required and that 
Web2py offers sufficient flexibility.

I'm not experienced enough to weigh-in on the functional vs object 
programming discussion.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Massimo Di Pierro
About enterprise:

For me enterprise always meant business and non-profit as a way to
emphasize non-profit since that is what I have major interest in. It
looks like many people read enterprise as large and bloated
businesses.
I have nothing against changing the slogan (and we have have a poll
like we did for the logo) but I stand by original intention: web2py
targets businesses and non-profits as opposed to the occasional
hacker. I claim this because our goals are backward compatibility,
easy of development and security. Other frameworks like those that
require programming at the WSGI level and release a new version under
a different name every six months, seem to target python experts with
above average hacking abilities.

I also want to challenge the notion that I am the only web2py
developer. If you look at commits in the last 6 months, there has been
way more code contributed by Jonathan, for example, than by me. The
new template.py was written entirely by Thadeus. A lof of the code
from contrib was created by Mariano. It is true that I have know
web2py longer than other and I may know some inner working details
better than other, but for every web2py module, there is somebody who
know is at least as well than me if not better.

Massimo

On Jan 9, 1:46 pm, VP vtp2...@gmail.com wrote:
 I think web2py is very good for 'Corporate' and 'Enterprise', but perhaps we
 need to be less pretentious and change the slogan for something like:
 web2py - the getting things done web framework

 I know much less about web2py than most people here, but I feel
 compelled to add an opinion. There are many different things that are
 touched upon in this thread.

 First is the slogan of web2py.  I think the word enterprise is a
 mistake.  But at the same time, the attacks that center around this
 word is very unjustified.   For the sake of comparison, let's take a
 look at the Django's slogan: Webframework for perfectionists with
 deadlines.  Now, you can easily attack this slogan in much the same
 ways people have attacked Web2py.  But most people don't do that.
 Massimo is not great at PR, so his PR approach is easily prone to
 attack.  But at the same time, a slogan is just a slogan.  And yet
 people unfairly focused on a little slogan repeatedly.  That's utterly
 unfair.

 Second, let's talk about what it means to be enterprise.  I think a
 many people tend to make this type of reasoning:  (1) I am doing real
 work, (2) this tool isn't quite the best thing for this work, (3)
 therefore, it is not real (enterprise).   I do not agree with this
 line of reasoning.  A tool, any tool, has its limitations and within
 its boundary of effectiveness it can be as real as any other tool.
 Drupal, for example, has been used extensively in many big companies
 to do real things.  And yet, Drupal, at its heart, is a CMS, and
 therefore is not as flexible as something like a webframework.  As
 such the domain of effectiveness of a CMS is smaller than that of a
 webframework.  But when people need to build CMS, Drupal is very
 effective and *real*.

 The right word, I think, is generality.   A full stack webframework
 like web2py is more general than a CMS like Drupal.  Thus, it can do
 more things.  Something like Flask is not a full-stack framework, as
 such, it makes fewer assumptions, and it is more general than a full-
 stack framework.  At the same time, it doesn't have as much
 batteries.  And many will find a full-stack framework more useful in
 that regards.

 So to say that because you can not import pieces of a model into an
 app, therefore web2py is inappropriate for enterprise, is not right.
 I think many enterprise apps do not have to have highly connected
 models.  There  are many other dimensions that are important with
 respect to what it means to be enterprise, such as scalability,
 maintainability, etc.   And I think that web2py still needs to be
 proven in this regards.

 And third, there's a criticism that the internals of web2py is a
 mess.  That might or might not be true.  There are a few things I'd
 like to say in this regards.  First, from a user's point of view, this
 criticism is not very interesting.  But this criticism implies
 indirectly a few things, such as there are many bugs; or it's not easy
 to add features to web2py.   From an outsider's point of view, this is
 what I see.   In terms of man power, web2py has fewer than Django.  I
 think Flask also has a decent number of developers working on it.
 Web2py has mainly Massimo, who wears many hats; plus maybe 2, 3 other
 people putting a lot of time into it.   And yet, you look at features,
 there's not much Django has that Web2py doesn't have.   Another thing
 that adding features to Web2py is quite quick.  This is what I often
 see around here.  When someone has an idea, Massimo often does it
 right away.   Recently, it took a relatively quick effort for Massimo
 (and probably a handful of other people) to rewrite DAL
 completely.     Now, going back 

[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread pbreit
Interesting points. One thing I don't understand is the objection to the web 
IDE since it is 100% optional. Could it be presented differently so that 
people understand that instantly?

I like the commitment to backwards compatibility. Are there any good 
examples of things that would be worth changing or adding that would break 
backwards compatibility? A subtle but significant benefit of backwards 
compatibility is that it forces restraint and good design.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread pbreit
It might make sense to dropt enterprise from the slogan. For one, I don't 
think businesses care much about backwards compatibility. My experience in 
the enterprise was that vendors were constantly churning out 
non-backwards-compatibile updates and customers were routinely several 
versions behind.

I also don't think enterprise suggests non-profit. Perhaps the opposite, 
even.

Finally, I think it's fine to attract the hacker audience.


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Tom Atkins
web2py - the resilient web framework ;-)


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Jonathan Lundell
On Jan 9, 2011, at 1:35 PM, Massimo Di Pierro wrote:
 
 About enterprise:
 
 For me enterprise always meant business and non-profit as a way to
 emphasize non-profit since that is what I have major interest in. It
 looks like many people read enterprise as large and bloated
 businesses.

I think that's right, especially in the world of frameworks. The meaning of 
enterprise here has been established (polluted?) by Enterprise Java, which is 
a large and bloated framework (or pile of frameworks). (Java is the new Cobol.)

I understand what you mean by enterprise, but it's definitely not what 
readers are going to understand.

At the moment, I don't have a better idea. But I'm sure we can come up with one.

 I have nothing against changing the slogan (and we have have a poll
 like we did for the logo) but I stand by original intention: web2py
 targets businesses and non-profits as opposed to the occasional
 hacker. I claim this because our goals are backward compatibility,
 easy of development and security. Other frameworks like those that
 require programming at the WSGI level and release a new version under
 a different name every six months, seem to target python experts with
 above average hacking abilities.
 
 I also want to challenge the notion that I am the only web2py
 developer. If you look at commits in the last 6 months, there has been
 way more code contributed by Jonathan, for example, than by me. The
 new template.py was written entirely by Thadeus. A lof of the code
 from contrib was created by Mariano. It is true that I have know
 web2py longer than other and I may know some inner working details
 better than other, but for every web2py module, there is somebody who
 know is at least as well than me if not better.




[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Mengu
as david said, play! destroyed the traditional java -web app-
programming. it doesn't use servlets so it is extremely flexible. it
doesn't use maven, it uses python. it doesn't use jsp views, it is
using a template system built with groovy, and so forth. there are
lots of people using play!, contributing to play! and supporting play!
they stand for it.

i do not support the elitist criticism on reddit against web2py. these
guys, especially armin*, have a thing against web2py for a long time
now. web2py is not a library, its a platform where and what people
build web applications with. however the criticism by thadeus must be
taken very seriously as he is one of the oldest, most experienced and
top contributed web2py users.

* i like armin's work, especially werkzeug and pygments. however
nothing more.

On Jan 9, 8:38 pm, David Marko dma...@tiscali.cz wrote:
 I really reminds me situation I started to work with PlayFramework a few
 years ago. Its excelent JAVA web framework, but its done in
 completely(internaly) different way than how the rest of the JAVA frameworks
 being  done(using standard servlet concept). The developers of Play! have a
 nice section on their site(under FAQ) called: You guys don’t even know how
 to program in Java... and they are trying to explain here why they did many
 things in a very different way in many areas that others describe as it is
 against a good JAVA practices

 http://www.playframework.org/documentation/1.1/faq

 David


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-09 Thread Anthony
On Sunday, January 9, 2011 4:49:45 PM UTC-5, pbreit wrote: 

 For one, I don't think businesses care much about backwards compatibility. 
 My experience in the enterprise was that vendors were constantly churning 
 out non-backwards-compatibile updates and customers were routinely several 
 versions behind.

 
Maybe they remain several versions behind because they don't want to keep 
dealing with backwards-incompatible upgrades (i.e., skip a few versions and 
just deal with an occasional big incompatible change). The cool thing about 
web2py is you can take advantage of every new feature that comes out (every 
couple weeks) without breaking your programs.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-08 Thread cjrh
On Jan 7, 11:45 pm, Michele Comitini michele.comit...@gmail.com
wrote:
 I think the most misunderstood fact with web2py is that web2py
 implementation is improving every day,

Do you really think the designers of other web frameworks do not
understand how web2py works?  They definitely understand, and they
probably understand better than you or I.   The problem is that web2py
design is different from their own design.  Because we operate in the
same space, they try to show why their decisions are better.  To be
fair, Massimo has been doing exactly the same thing by comparing w2py
versus the others for years.  Quid pro quo.  If we get to say why ours
is better, then they get to do likewise.

However, these subjective discussions simply don't matter.  The things
that they complain about are *fundamental* to how web2py works, and
that is why these topics are selected for ridicule.   It is
fundamental to w2py that controllers are executed by the framework
(and IMO its best feature, and why I chose it over Django).  Whether
this approach is better or worse than any other framework cannot be
determined theoretically, it has be be shown in practice, and we just
haven't been seeing the kind of problems that detractors have been
suggesting.  And really, it's been getting ridiculous.  Jacob KM
suggesting we're not a python framework and inviting us to join the
party.  Such incredible arrogance.

web2py doesn't have to win reddit arguments.  All web2py has to do is
support the creation of many awesome websites.  We only need to
maintain focus on the core design criteria that have already been in
place since the start.   We do not need to have a huge community.  We
do not need to be the next big thing.  We do not have to slice toast
and make coffee or rear ponies.

Just be the best at making web app creation fast, easy and secure.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-08 Thread Anthony
+1

On Saturday, January 8, 2011 7:31:38 AM UTC-5, cjrh wrote:

 On Jan 7, 11:45 pm, Michele Comitini michele@gmail.com 
 wrote: 
  I think the most misunderstood fact with web2py is that web2py 
  implementation is improving every day, 

 Do you really think the designers of other web frameworks do not 
 understand how web2py works?  They definitely understand, and they 
 probably understand better than you or I.   The problem is that web2py 
 design is different from their own design.  Because we operate in the 
 same space, they try to show why their decisions are better.  To be 
 fair, Massimo has been doing exactly the same thing by comparing w2py 
 versus the others for years.  Quid pro quo.  If we get to say why ours 
 is better, then they get to do likewise. 

 
Good point, though it's not exactly the same. Massimo may claim that the 
web2py way is better (actually, he doesn't really make that strong claim -- 
rather, I think he would claim that there are trade-offs in design and that 
he and many others prefer the trade-offs web2py has made while still 
respecting that others may prefer different trade-offs). But I don't think 
I've seen Massimo claim that the design decisions of frameworks like Django 
and Flask are actually bad or harmful. In fact, he usually has quite 
positive things to say about other frameworks. The guys on reddit, on the 
other hand, are claiming that web2py's design decisions are outside the 
bounds of acceptability (at least within the Python world) and therefore 
merit either correction or ostracism (in fact, Jacob is not the first guy 
I've seen try to expunge web2py from the community by claiming it's not 
really a Python framework and doesn't use real Python). Basically, 
Massimo is saying Django, Flask, etc. are all good frameworks that you'll 
probably be happy with, but web2py is even better, and you should give it a 
try. The other guys are saying Django, Flask, etc. are the only real 
Python frameworks, and web2py is harmful (technically, and to the community) 
and to be avoided at all costs (until it completely changes its fundamental 
design distinctives and does things the way they do).
 
Cheers.
 
Anthony


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-08 Thread Anthony
On Saturday, January 8, 2011 9:12:55 AM UTC-5, Anthony wrote: 

 +1

 On Saturday, January 8, 2011 7:31:38 AM UTC-5, cjrh wrote:

 On Jan 7, 11:45 pm, Michele Comitini miche...@gmail.com 
 wrote: 
  I think the most misunderstood fact with web2py is that web2py 
  implementation is improving every day, 

 Do you really think the designers of other web frameworks do not 
 understand how web2py works?  They definitely understand, and they 
 probably understand better than you or I.   The problem is that web2py 
 design is different from their own design.  Because we operate in the 
 same space, they try to show why their decisions are better.  To be 
 fair, Massimo has been doing exactly the same thing by comparing w2py 
 versus the others for years.  Quid pro quo.  If we get to say why ours 
 is better, then they get to do likewise. 

  
 Good point, though it's not exactly the same. Massimo may claim that the 
 web2py way is better (actually, he doesn't really make that strong claim -- 
 rather, I think he would claim that there are trade-offs in design and that 
 he and many others prefer the trade-offs web2py has made while still 
 respecting that others may prefer different trade-offs). But I don't think 
 I've seen Massimo claim that the design decisions of frameworks like Django 
 and Flask are actually bad or harmful. In fact, he usually has quite 
 positive things to say about other frameworks. The guys on reddit, on the 
 other hand, are claiming that web2py's design decisions are outside the 
 bounds of acceptability (at least within the Python world) and therefore 
 merit either correction or ostracism (in fact, Jacob is not the first guy 
 I've seen try to expunge web2py from the community by claiming it's not 
 really a Python framework and doesn't use real Python). Basically, 
 Massimo is saying Django, Flask, etc. are all good frameworks that you'll 
 probably be happy with, but web2py is even better, and you should give it a 
 try. The other guys are saying Django, Flask, etc. are the only real 
 Python frameworks, and web2py is harmful (technically, and to the community) 
 and to be avoided at all costs (until it completely changes its fundamental 
 design distinctives and does things the way they do).
  
 Cheers.
  
 Anthony

 
Also, you are right that many of the web2py detractors do probably 
understand at least at a high level how web2py works, but I've been very 
surprised at how frequently these supposed experts exhibit complete 
misconceptions about web2py. Most of them have never used web2py to build a 
real application, and many of them have probably never even downloaded it 
and played with it (or read the docs, or looked at the source code). I am by 
no means an expert and am relatively new to both Python and web2py, and yet 
I routinely spot (and point out) very basic errors these guys make in their 
understanding of web2py. If they can't be bothered to comprehend the very 
basic things that even I know, their opinions about web2py really can't be 
taken seriously. The problem isn't that they don't know web2py, it's that 
they're willing to make such bold proclamations about it despite their 
ignorance and lack of experience with it. The fact that web2py has been 
around for several years and has a growing, active, and highly satisfied 
user base provides them no clue that perhaps their hypothetical concerns 
don't play out in reality.
 
Anthony


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-08 Thread pbreit
I think we could do ourselves a favor by taking the feedback seriously and 
not being so dismissive of criticism. There are pros and cons of the various 
approaches and we happen to think Web2py's design decisions have good merit. 
Hiding behind DRY for the importing situation is not productive. The reality 
is that it is a relatively non-standard approach but one that we think makes 
good sense and is certainly real Python.

It's fine to get the word out but let's not look like trolls on every Python 
framework thread. There is still a dearth of significant Web2py-based sites. 
Let's work on that.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-08 Thread Anthony
On Saturday, January 8, 2011 9:53:18 AM UTC-5, pbreit wrote: 

 I think we could do ourselves a favor by taking the feedback seriously and 
 not being so dismissive of criticism. There are pros and cons of the various 
 approaches and we happen to think Web2py's design decisions have good merit. 
 Hiding behind DRY for the importing situation is not productive. The reality 
 is that it is a relatively non-standard approach but one that we think makes 
 good sense and is certainly real Python.

 
You are right, though I think we have indeed adopted the very position you 
state above. What is being dismissed are not the reasonable criticisms or 
concerns that some people make, but the arrogant and over-the-top calls to 
drive web2py from the Python community. We should always listen to 
feedback and be willing to learn from others.
 
Anthony


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread cjrh
On Jan 7, 2:12 am, Mariano Reingart reing...@gmail.com wrote:
 I know that in your mind skipping imports is about not repeating
 yourself. But look guys: every single other Python program ever
 written uses imports. By not including them you've basically made sure
 that learning web2py is different from learning Python.

Excessive desire to see all import statements comes from (OCD) fear.
Fear leads to hate.  Hate leads to the dark side :)

My 2c is that guys like Jacobian are really, really scared of web2py,
and want to kill it now before it grows bigger.  Otherwise, they
wouldn't go out of their way to write these huge posts about it.


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread VP
Jacobian made a few bogus statements.  One is about imports.

In fact, you don't need to import anything to use Python globals or
primitive data structures.  Why?  because those primitives structures
are so useful and often used that they are automatically imported for
use.

This is conceptually similar about the Web2py primitives.  These
primitives are so often used that there are automatically imported.

Another bogus statement is about web2py is harder to learn.  Now.
Jacob is a very smart guy with proven records.  But he doesn't have a
record of being a teacher, one that Massimo has.  I think it is this
experience that Massimo understands better what it is easy or
difficult for beginners to learn.  Personally, I have two Django books
in my bookshelf, but I eventually gave up Django to look for other
options that did waste my time.   A little more objective, if people
pay attention to the tweets, there are lots of beginners who love
web2py and find it so easy to learn.



The most outrageous thing that comes out of Jacob and some other folks
is this mentality that Python experts will look down to you if you
use web2py or sure, beginners love web2py because they are
beginners.   These guys seem to have no clue about the increasingly
pervasive nature of computing in society today.  There are many very
smart and intelligent beginners who know little about web frameworks
or even Python.  They simply look for tools to develop their ideas.
In fact, you see many scientists and researchers who write programs
and develop webapps (in particular).  My thinking is in the short
future many more (smart) people who will be writing programs,
naturally.  They will look for tools that in the easiest manner
facilitate the creation of what they want to do.

It is very unfortunately that these young and smart guys are trapped
in their narrow world.  So much group-think.  So narrow-minded.

My advice again is simply to ignore them.  As I said in a previous
post, as long as you mention Flask, Django in the same breath as
web2py, it's going to be a negative experience.









[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread puercoespin
 Indeed.

 Moreover, while it's not best practice, it's certainly common enough to see

         from somewhere import *

 which magically injects a bunch of names into the namespace.

 Your suggestion that web2py simply has a small set of built-ins strikes me as 
 right on.

For exemple

from gluon.tools import *

in db.py.

:)



[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Anthony
+1

On Friday, January 7, 2011 3:18:55 AM UTC-5, VP wrote:

 Jacobian made a few bogus statements.  One is about imports. 

 In fact, you don't need to import anything to use Python globals or 
 primitive data structures.  Why?  because those primitives structures 
 are so useful and often used that they are automatically imported for 
 use. 

 This is conceptually similar about the Web2py primitives.  These 
 primitives are so often used that there are automatically imported. 

 Another bogus statement is about web2py is harder to learn.  Now. 
 Jacob is a very smart guy with proven records.  But he doesn't have a 
 record of being a teacher, one that Massimo has.  I think it is this 
 experience that Massimo understands better what it is easy or 
 difficult for beginners to learn.  Personally, I have two Django books 
 in my bookshelf, but I eventually gave up Django to look for other 
 options that did waste my time.   A little more objective, if people 
 pay attention to the tweets, there are lots of beginners who love 
 web2py and find it so easy to learn. 



 The most outrageous thing that comes out of Jacob and some other folks 
 is this mentality that Python experts will look down to you if you 
 use web2py or sure, beginners love web2py because they are 
 beginners.   These guys seem to have no clue about the increasingly 
 pervasive nature of computing in society today.  There are many very 
 smart and intelligent beginners who know little about web frameworks 
 or even Python.  They simply look for tools to develop their ideas. 
 In fact, you see many scientists and researchers who write programs 
 and develop webapps (in particular).  My thinking is in the short 
 future many more (smart) people who will be writing programs, 
 naturally.  They will look for tools that in the easiest manner 
 facilitate the creation of what they want to do. 

 It is very unfortunately that these young and smart guys are trapped 
 in their narrow world.  So much group-think.  So narrow-minded. 

 My advice again is simply to ignore them.  As I said in a previous 
 post, as long as you mention Flask, Django in the same breath as 
 web2py, it's going to be a negative experience. 









Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Jonathan Lundell
On Jan 7, 2011, at 2:15 AM, puercoespin wrote:
 
 Indeed.
 
 Moreover, while it's not best practice, it's certainly common enough to see
 
 from somewhere import *
 
 which magically injects a bunch of names into the namespace.
 
 Your suggestion that web2py simply has a small set of built-ins strikes me 
 as right on.
 
 For exemple
 
 from gluon.tools import *
 
 in db.py.
 
 :)

Exactly right. I've removed a few of those, but it's tedious work.

I've been using pyflakes as a quick check on my Python coding. Pyflakes is very 
handy, but it's also fairly simpleminded. If you say from gluon.tools import 
*, it doesn't look in gluon.tools to see what that might mean; it just turns 
off its search for undefined symbols. So to get its benefit, you have to fix 
the import *.

For the same reason, a lot of my code starts out with:

if False:
import request, response, session, T, (etc)

OTOH, pyflakes has built-in knowledge of built-in Python globals.

One of the things that the web2py-imports discussion tends to miss, though, is 
that the web2py globals exist precisely because they're *not* globals--they 
have request scope, not global scope. They can't be imported (in a 
straightforward way, anyway), and it would be a PITA to have to pass them 
around everywhere. That would have been an alternative strategy for web2py: 
every argument list starts with the request-global, which would include all 
that stuff.

Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Bruno Rocha
After being offended by web2py being in Pycon, they made a major
attack on reddit, raised a bunch of lies. Alarmed against web2py on
twitter (they managed to enter to the top tweets) and
this created a certain discomfort.

Some of my clients (two of them) called me asking for explanations about it.
(Interestingly, after my explanation they seem much more confident)

Moreover two new possible new clients came to me today (one by
experts4solutions), one of them commented about the topic and the tweets, so
it awakened interest to evaluate web2py to a new small project.

A company that offers online training came to me asking me to submit a
web2py training to their program,  they think web2py is trendy and many
people are talking about it on the web, then it is a good
time to offer training.

thanks to @jacob, @armin, @GrahamDumpleton and @benbangert and others. They
promote web2py!

After that:

@jacob decide to escape from threads (leaving unanswered questions)
http://twitter.com/#!/jacobian/status/23138026796355584

@Mike slept upset
http://twitter.com/#!/zzzeek/status/23160805851668480

http://twitter.com/#!/zzzeek/status/22788155665031168

and @armin still wants to propose a PEP which tends to remove the execfile()
statement from Python2.x language. LOL
http://twitter.com/#!/mitsuhiko/status/23082854590185472

http://twitter.com/#!/mitsuhiko/status/23089568890753025


I love this community... :)

Please: Don't call me Pythonic I never wrote a PEP.. LOL

http://twitter.com/#!/jacobian/status/23138026796355584--
Bruno Rocha
http://about.me/rochacbruno/bio


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Luther Goh Lu Feng
Gosh I am glad I can share about web2py in with my country's php,
django and rails programmers without all this nonsense.

On Jan 7, 11:40 pm, Bruno Rocha rochacbr...@gmail.com wrote:
 After being offended by web2py being in Pycon, they made a major
 attack on reddit, raised a bunch of lies. Alarmed against web2py on
 twitter (they managed to enter to the top tweets) and
 this created a certain discomfort.

 Some of my clients (two of them) called me asking for explanations about it.
 (Interestingly, after my explanation they seem much more confident)

 Moreover two new possible new clients came to me today (one by
 experts4solutions), one of them commented about the topic and the tweets, so
 it awakened interest to evaluate web2py to a new small project.

 A company that offers online training came to me asking me to submit a
 web2py training to their program,  they think web2py is trendy and many
 people are talking about it on the web, then it is a good
 time to offer training.

 thanks to @jacob, @armin, @GrahamDumpleton and @benbangert and others. They
 promote web2py!

 After that:

 @jacob decide to escape from threads (leaving unanswered 
 questions)http://twitter.com/#!/jacobian/status/23138026796355584

 @Mike slept upsethttp://twitter.com/#!/zzzeek/status/23160805851668480

 http://twitter.com/#!/zzzeek/status/22788155665031168

 and @armin still wants to propose a PEP which tends to remove the execfile()
 statement from Python2.x language. 
 LOLhttp://twitter.com/#!/mitsuhiko/status/23082854590185472

 http://twitter.com/#!/mitsuhiko/status/23089568890753025

 I love this community... :)

 Please: Don't call me Pythonic I never wrote a PEP.. LOL

 http://twitter.com/#!/jacobian/status/23138026796355584--
 Bruno Rochahttp://about.me/rochacbruno/bio


[web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Philip
 These guys seem to have no clue about the increasingly
 pervasive nature of computing in society today.  There are many very
 smart and intelligent beginners who know little about web frameworks
 or even Python.  They simply look for tools to develop their ideas.
 In fact, you see many scientists and researchers who write programs
 and develop webapps (in particular).  My thinking is in the short
 future many more (smart) people who will be writing programs,
 naturally.  They will look for tools that in the easiest manner
 facilitate the creation of what they want to do.

I just want to second this point.  I fit this description.  I'm a
business guy, and no part of my job description would mention setting
up databases or writing software, but often software is a way to
increase efficiency dramatically, even if it's just a VB script in
Excel to automate some repetitive or complex task. I recognized that
my team would benefit a lot if we had a gold copy of certain data in a
database accessible to everyone (with normal CRUD features and some
canned ways of presenting it).  In the past, I would have thrown
together a MS Access DB, but I realized that a web-based app would be
far better, and that the web frameworks out there would make that
equally as easy to put together.  I took some CS classes in college
(15 years ago) and wrote a decent amount of code back then (Fortran,
Lisp, C) but had never used Python nor had I ever done any web-related
development (heck, I even had to brush up on HTML!) before deciding to
set this up.
After looking around at frameworks (with the most time spent on Django
including some initial app prototyping), I chose web2py.  It was a no-
brainer, because it was very easy to get started with, and yet as far
as I can tell, there is nothing that I cannot do in web2py that I
could do, or could do easier, in any other framework. I taught myself
Python to use web2py, and I put together an app that we now use in
production in our firm.  It was a nights and weekends project, and it
took longer than it should have because of my inexperience, but in the
grand scheme of things it took very little effort relative to the
value it created.

Web2py is to me the next generation of MS Access, and I mean that as a
compliment.  MS Access first opened up the world of database-driven
applications to business people.  With Access they could throw
together a simple application to manage a database (CRUD and reports)
without having to hire a developer or wait on their IT staff to write
one.  Web2py does the same thing.  It is easy enough for a business
user to throw something together very quickly and be up and running
immediately.  The amount of development expertise required is
trivial.  For a basic app, if you read the web2py book, you don't even
have to understand more than the very basics of python.

For really, big complex apps, there may be some reason that Django is
preferable - I'll leave that to the professional web developers to
figure out the tools they need - but I can't say enough about how
great my experience has been with web2py, as a non-developer looking
for the tools that in the easiest manner facilitate the creation of
what I want to do (to use your words).  I just needed to get stuff
done, and web2py worked.



Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Philip Kilner

Hi Philip,

On 07/01/11 18:17, Philip wrote:

Web2py is to me the next generation of MS Access, and I mean that as a
compliment.  MS Access first opened up the world of database-driven
applications to business people.  With Access they could throw
together a simple application to manage a database (CRUD and reports)
without having to hire a developer or wait on their IT staff to write
one.  Web2py does the same thing.  It is easy enough for a business
user to throw something together very quickly and be up and running
immediately.  The amount of development expertise required is
trivial.  For a basic app, if you read the web2py book, you don't even
have to understand more than the very basics of python.



+1

I'm  database developer (going back to DataEase for DOS and FoxPro, and 
the IBM S/26) in need of a data-driven front end, and I see web2py as 
the perfect tool for me. I have no desire to tinker /inside/ web2py - I 
just want to use it to develop apps.


Rather than competing with Django /et al/, which are defined as much by 
a culture as the technology, I'd like to see some advocacy to promote 
web2py to people who simply aren't in a position to use Django, but who 
can get up to speed with web2py very easily.


The comment earlier about Massimo's approach being informed by his 
teaching experience seemed very sharp to me.



For really, big complex apps, there may be some reason that Django is
preferable - I'll leave that to the professional web developers to
figure out the tools they need - but I can't say enough about how
great my experience has been with web2py, as a non-developer looking
for the tools that in the easiest manner facilitate the creation of
what I want to do (to use your words).  I just needed to get stuff
done, and web2py worked.



Just so.

--

Cheers,

PhilK


Re: [web2py] Re: ADVOCACY: every single other Python program ever written uses imports?

2011-01-07 Thread Michele Comitini
I think the most misunderstood fact with web2py is that web2py
implementation is improving every day,
because of TOP-DOWN approach choosen by Massimo.
What does that mean? If someone finds that something has big impact
on perfomace, web2py gets changed to better and the users can upgrade
safely, because
the external simple API of the framework does not change.
So critics are welcome, the more the better.

exec ccode in  is not injection? It is IoC for sure.
http://en.wikipedia.org/wiki/Inversion_of_control

 where is it deprecated? I cannot read it.
http://docs.python.org/reference/simple_stmts.html#the-exec-statement


remove exec ... in ... from python? On what basis? if you want a
static language go out of python. I wonder what GVR thinks about that.

The only good reasons at the moment to change that are:
1) exec statement bug
2) drastic performance improvement

Neither is true AFAIK, but maybe web2py's IoC will change, for testing
and debugging purposes, this is free (not as a beer) software indeed,
so a  new solution would be adopted if one comes with a better one
instead of talking about plain aesthetics, which is a good thing
although it is not alway viable in this world.  But if that would
happen fear not, we won't notice, we will not have to change our code.

mic/mcm

2011/1/7 Philip Kilner phil.kil...@gmail.com:
 Hi Philip,

 On 07/01/11 18:17, Philip wrote:

 Web2py is to me the next generation of MS Access, and I mean that as a
 compliment.  MS Access first opened up the world of database-driven
 applications to business people.  With Access they could throw
 together a simple application to manage a database (CRUD and reports)
 without having to hire a developer or wait on their IT staff to write
 one.  Web2py does the same thing.  It is easy enough for a business
 user to throw something together very quickly and be up and running
 immediately.  The amount of development expertise required is
 trivial.  For a basic app, if you read the web2py book, you don't even
 have to understand more than the very basics of python.


 +1

 I'm  database developer (going back to DataEase for DOS and FoxPro, and the
 IBM S/26) in need of a data-driven front end, and I see web2py as the
 perfect tool for me. I have no desire to tinker /inside/ web2py - I just
 want to use it to develop apps.

 Rather than competing with Django /et al/, which are defined as much by a
 culture as the technology, I'd like to see some advocacy to promote web2py
 to people who simply aren't in a position to use Django, but who can get up
 to speed with web2py very easily.

 The comment earlier about Massimo's approach being informed by his teaching
 experience seemed very sharp to me.

 For really, big complex apps, there may be some reason that Django is
 preferable - I'll leave that to the professional web developers to
 figure out the tools they need - but I can't say enough about how
 great my experience has been with web2py, as a non-developer looking
 for the tools that in the easiest manner facilitate the creation of
 what I want to do (to use your words).  I just needed to get stuff
 done, and web2py worked.


 Just so.

 --

 Cheers,

 PhilK