Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Update Pyramid section to be descriptive of what the framework is. #692

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4 commits into from

Conversation

goodwillcoding
Copy link

Remove statements as what is most popular and used by default
since it is not backed up by data.

Remove statements as what is most popular and used by default
since it is not backed up by data.
@goodwillcoding
Copy link
Author

/cc: @bertjwregeer

with a heavier focus on modularity. It comes with a smaller number of
libraries ("batteries") built-in, and encourages users to extend its
base functionality.
`Pyramid <http://www.pylonsproject.org/>`_ lies somewhere between a big
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This paragraph existed in the guide for a while, and was re-written as the original paragraph you are suggesting to replace. What exact information does this pice of text provide that the version your are suggestion be replaced does not? I would prefer to add an additional sentence instead of using this block.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pyramid is not at all like Django. It does not make sense to make that comparisson. Django is monolithic, Pyramid is anything but. Django tightly couple it's ORM, its Models, Admin and Form management. Pyramid does none of that and has no opinions about the Resources it uses with only one of them being SQLAlchemy,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggesting it's a lot like Django does a huge disservice to anyone reading the guide. Unlike Django Pyramid is not kitchen sink included. We allow users to pick and chose from the vast Python eco-system so that they can use best of breed tools without requiring explicit framework support.

Pyramid also follows Python packaging standards more closely, which leads to better code re-use across projects, and can work a lot like Flask or Django, and as projects grow Pyramid more easily grows with them, so start Flask like, and over time grow to use the Django like functionality, no rewrites required.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thats what "a heavier focus on modularity" is intended to address. Let's focus on rewording that sentence, then.

@goodwillcoding
Copy link
Author

We are in #pyramid on Freenode if you wish to get more insight. But if this is a guide it should avoid opinions.

@kennethreitz
Copy link
Contributor

This is explicitly an opinionated guide.

@goodwillcoding
Copy link
Author

It can be opinionated, but it is not backed up by data.

@goodwillcoding
Copy link
Author

This on overall creates a bad impression and widens rifts that already exist. By no means is this Positive Python

@digitalresistor
Copy link

@kennethreitz You may be opinionated, but this is a guide that positions itself as:

This handcrafted guide exists to provide both novice and expert Python developers a best practice handbook to the installation, configuration, and usage of Python on a daily basis.

Sure the next statement is as follows:

This guide is opinionated in a way that is almost, but not quite, entirely unlike Python’s official documentation. You won’t find a list of every Python web framework available here. Rather, you’ll find a nice concise list of highly recommended options.

And you may absolutely be opinionated, but why alienate an entire community, when with a couple of changes you could allow someone to decide on their own.

There have been a couple of assumptions that this is a "community guide" by people within Pyramid, as the name would imply, and not "Kenneth Reitz's opinion on things Python".

It does a great disservice to the community as a whole.

@kennethreitz
Copy link
Contributor

I do have personal data to backup these opinions, and am working to share this information over the coming months. I'm sure if you did something as simple as compare download numbers, though, you'd get similar results. Regardless, I don't feel any backup data is needed, as these are clearly heavily opinionated pieces of commentary separate from the rest of the information presented. The same information I'd present to someone if I was speaking to them 1-on-1. It comes as no surprise to me that someone disagrees with one of the statements, especially someone from the Pyramid community.

This page really only needs to mention Django and Flask. I added Pyramid to be nice to the Pyramid community, as it's a good but (notably) underused framework, but the information mentioned is important information that needs to be said.

Also, this guide has never claimed to be #positivepython. I'm always open, but having these stylistic political statements in this particular section of the guide is far from oversight, and is a conscious decision.

You'll note web2py is not present in this guide, despite someone's multiple attempts to include it. It doesn't belong here. I think Pyramid does.

Mako is not the default for Pyramid, Pyramid no longer has
default templates, you can choose one of many
@goodwillcoding
Copy link
Author

Most comments deal with factually accurate bits though, not opinions. Pyramid is not like Django. Flask is not a default for those who do not use django. Most Python web stuff is not written in Django. There is literally no data to support this. That's not the same thing as saying "I like django cause this, this and this"

@goodwillcoding
Copy link
Author

It's your guide of course, but what you currently have is light on facts and sadly upsets people because of that.

@kennethreitz
Copy link
Contributor

The scope of this PR needs to be reduced to: lightly revising the Pyramid paragraph to make it more accurate. It is currently trying to service too many things.

restore recommendations on django and flask
@kennethreitz
Copy link
Contributor

The proposed changes to the Chameleon section will also be accepted.

@goodwillcoding
Copy link
Author

I reworded pyramid bit to include modularity, and restored yoru recommendation for Django and Flask with a tad more neutral pharasing. Also I corrected the Chameleon bit (it does not come from Pyramid at all) as well Mako bit (it's not the default of Pyramid, not templating language is anymore). Tell me if that works better.

@goodwillcoding
Copy link
Author

@kennethreitz do the last set of change work for you?

@goodwillcoding
Copy link
Author

loosing the track of threads here

Pyramid does not have a large user base, unlike Django and Flask. It's a
capable framework, but not a very popular choice for new Python web
applications today.
Pyramid is a good choice for developers who like flexibility of their
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's important to note here that Pyramid's userbase and community is significantly smaller than the other frameworks mentioned. Code quality is far from the the only qualifier when selecting a web framework.

@goodwillcoding
Copy link
Author

@kennethreitz okie, I give up. You have what I wrote. If you want to use it use. If you want to keep your stuff keep it. But opinionated or no what you have there is alienating. It just increases the rifts we already have.

@kennethreitz
Copy link
Contributor

Okay — thanks for the attempted contribution. FYI this is why I asked you to open a GitHub issue for discussion, not a pull request :)

@realpython realpython locked and limited conversation to collaborators Mar 31, 2016
Being from the Pyramid world, Chameleon is not widely used.
Integration with Chameleon is available for a number of popular web frameworks
including Plone/Zope2, Pyramid, Django and Grok.
See: https://chameleon.readthedocs.org/en/latest/integration.html
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not proper link syntax for this project. This link is also generally needless, as long as we're linking to the overall documentation.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.