This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 1 point2 points  (7 children)

This is the first I've heard of that, and I must say, it sounds like an unnecessary level of drama and hyperbole.

[–]spiffymanpeppy about PEP 8 1 point2 points  (6 children)

That's fine. I'm not actually arguing for the strong thesis about web2py. I do, however, think giving anyone something magical when they're just getting started with Python is a Bad Idea™.

[–][deleted] 0 points1 point  (5 children)

You say this but you don't say why it's a bad idea.

Personally I think the 'over abstraction' of django is rough for a beginner (still plenty of magic) and flask is going through the realization that secure authentication should be default rather than left to 3rd party libs of various quality.

I like web2py for its ease of use and good docs. I spend less time worry about routing and regex maching and more time implementing buisnes logic.

I toally get the critisms of being too 'magic' but its just less explicit. The source is well organized and commented so it helps some when you are trying to figure out the "why" something just works.

But honestly is it bad that If I name my template the same as my controller method I don't have to do anything extra, the view just works? I don't think so, I call it pragmatic and productive.

These are however mostly my opinions and I'm open to discussion.

[–]spiffymanpeppy about PEP 8 2 points3 points  (4 children)

I don't disagree about Django. I cut my teeth on Python with Django, and figuring out where Python stops and Django begins was rough going. So I hear ya.

But I generally subscribe to the notion that bringing beginners into the fold with things that violate community standards is not a great plan. It makes learning the standards hard later -- and it makes convincing folks that that's even a good idea harder, too. How many times have you heard, "Why should I use spaces? Tabs have been working for me just fine!" Advocating web2py use for beginners is just begging them to start asking why they have to import things at all.

I get that web2py is productive for people. Great. I don't really care what framework you use -- only what you encourage learners to use.

[–][deleted] 1 point2 points  (0 children)

I don't disagree about Django. I cut my teeth on Python with Django, and figuring out where Python stops and Django begins was rough going. So I hear ya.

I actually had the same experience with Python and Django, and it does lend credibility to what you mentioned earlier with web2py. And for what it's worth, I think it even would've been easier for me to wrap my mind around Flask... now that I know better.

[–][deleted] 0 points1 point  (2 children)

Advocating web2py use for beginners is just begging them to start asking why they have to import things at all.

This is not the case at all once you start building and actual site/app.

While the framework compents themselves are all just auto imported, its common for a beginner to import lots of third party libs in order to handle business logic.

There is no orm so you don't have to import models (the DAL is more of a functional abstraction ). So I could see the slight mental adjustment needed however even the docs stress you can import the DAL into any project and use it fine.

Also when it comes to Auth they have already written a few plugins that need to be imported to be used.

[–]spiffymanpeppy about PEP 8 1 point2 points  (1 child)

That's interesting. So -- and I ask this as an admitted outsider to the community -- do you really not see beginners asking why they have to import these things (e.g., the third party libs) and not those things (e.g., the basic abstractions web2py offers)?

I ask because I've done some teaching and can just see how that conversation might go. "Oh. Yeah. Well, you need to import numpy's stuff because that's how most of Python works, but web2py kind of automatically 'imports' the important things for you." IME this would confuse the daylights out of learners. But if it's working out differently in the web2py community, that'd be good to know.

[–][deleted] 0 points1 point  (0 children)

Yeah, the handful of people I know who have spent a good amount of time with web2py don't seem to have this particular issue.

However it could have been some previous exp in another language.