Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

add faqs

  • Loading branch information...
commit 0647fd7d75eaf613fe74800f7b6cfbb031ecffd7 1 parent 9d353ae
@mcdonc mcdonc authored
Showing with 251 additions and 0 deletions.
  1. +2 −0  .gitignore
  2. +136 −0 faq/pylonsproject.rst
  3. +107 −0 faq/pyramid.rst
  4. +6 −0 index.rst
2  .gitignore
@@ -0,0 +1,2 @@
136 faq/pylonsproject.rst
@@ -0,0 +1,136 @@
+Pylons Project Frequently Asked Questions
+How does "The Pylons Project" relate to Pylons-the-web-framework?
+#. The name Pylons, for some period of time, will continue to refer to the
+ Pylons 1.0 web framework (the Python package named "Pylons").
+#. At the same time, however, the name "Pylons" will begin to also mean a
+ larger project "brand" which encompasses a collection of related
+ technologies.
+#. Over time, the intention is that the word "Pylons" comes to mean "the
+ collection of technologies created by the Pylons community" instead of
+ "the Pylons 1.0 web framework", as the Pylons 1.0 web framework will be
+ placed into legacy status.
+In short, Pylons is meant to become the project name for a collection of
+related technologies. The first new package which is part of the Pylons
+Project, Pyramid, is a web framework. Other packages to the collection will
+be added over time, likely including higher-level components such as
+applications and other frameworks which rely on a particular persistence
+mechanism (Pyramid does not).
+Ben Bangert, the Pylons project lead, had already been setting his aim at
+layers higher than the core. This aim, his participation as co-founder of
+the new effort, the community of Pylons, and the established brand of Pylons
+are all the primary ingredients at play here. Thus, "the Pylons Project" was
+chosen to reflect what's really new: an overall effort combining parts from
+different projects.
+What does the Pylons Project mean for Pylons-the-web-framework?
+The Pylons web framework 1.x will continue to be maintained, though not
+enhanced. We will provide a package that allows Pylons 1.x applications and
+Pyramid applications to run in the same interpreter. Going forward, the
+Pylons style of application development will be done in Pyramid, with Ben
+leading the way.
+What does the Pylons Project mean for repoze.bfg?
+The Pyramid codebase is derived almost entirely from an older web framework
+named repoze.bfg. The BFG name is gone, and with the lovefest with Pylons,
+it's now indisputable that the-artist-formerly-known-as-BFG is gaining a
+wider audience. BFG's community was primarily comprised of ex-Zope-users.
+It's true that repoze.bfg drops its identity and becomes Pyramid, part of the
+Pylons Project. But that's a good thing. All of us need something with
+enough gravity and critical mass to take off and stay relevant for the
+long-haul. We would be doing the repoze.bfg community a disservice by not
+taking this opportunity. The Pylons people are wonderful and we both have
+something meaningful to bring to the table.
+What does this mean for the Repoze project?
+The Repoze project will continue to exist. In a lot of ways, Repoze will
+begin to regain its original focus, which was to "bring Zope technologies to
+WSGI". The popularity of BFG, as its own web framework, apart from Zope
+technologies actually obscured this goal.
+Why should I care about The Pylons Project?
+This really is a good question. We hope that people are attracted at
+first by the spirit of the thing. It takes humility to sacrifice a
+little sovereignty and work together. Usually the opposite happens
+and projects splinter. We feel there is a limited amount of oxygen in
+the space of "top-tier Python web frameworks" and we don't do the
+Python community a service by fractal multiplication.
+So the first answer is, the spirit of the thing. We are a group of
+project leaders with experience going back to the start of Python web
+frameworks. We aim to bring fresh ideas to classic problems projects
+run into. We also hope to combine a lot of hard-earned maturity into
+a secure choice that developers and companies can bet on, along with
+the humility and irreverence gained by surviving every stupid decision
+that could be imagined.
+Why is the Pylons Project different than other projects?
+Our mantra is: "Small, Documented, Tested, Extensible, Fast, Stable,
+Friendly". Everything we do, from the already-ready Pyramid to the various
+batteries we want to do later in batteries-included projects, should retain
+these qualities.
+Specifically, if you like meat-and-potatoes stuff like insanely great and
+up-to-date docs, a magnificently-tested web framework, and a slim execution
+footprint, you'll like Pyramid. If you're also curious in fresh new ideas
+about extensibility, come hang out with us and throw your ideas into the mix.
+What do you mean by "Friendly"?
+All of us have been around the block a few times. We've seen good
+communities and bad communities, effective communities and
+dysfunctional communities, arrogant ones and irreverant ones. We
+pride ourselves on constructive listening, telling the truth even when
+it makes us look bad, admitting when we're wrong, and lots of people
+who actually like to help.
+What does the Pylons Project mean for Zope and Plone?
+The repoze.bfg people came from the world of Zope and Plone. Paul, for
+example, was a co-founder of Zope and was at the first Python conference at
+NIST. Zope was a tremendous success in the first cycle, with some truly
+fresh ideas and a large commercial ecosystem. Plone continued that in a
+second cycle, with an even larger ecosystem and an obvious, out-of-the-box
+value proposition.
+Since then, other projects are having their cycle. We love our Zope roots,
+the experience we gained helping establish the Zope Foundation and the Plone
+Foundation, and consulting experience we have on very large projects. But we
+want to take these experiences, start fresh with one of the clear winners in
+the Pylons brand, and work on something for the next cycle.
+If you're doing Zope and Plone and have a project that fits their bulls-eye,
+use them. If you have something that could use those ideas for an alternate
+need, keep an eye on what we're doing.
+How do I participate?
+Join the Pylons-discuss and/or Pylons-dev maillists on google groups,
+or join the #pylons IRC channel on
+Where is the code?
107 faq/pyramid.rst
@@ -0,0 +1,107 @@
+Pyramid FAQ
+What is the difference between Pyramid and Pylons-the-web-framework?
+Pyramid is a new web framework. It doesn't "share any DNA" with Pylons 1.0.
+Existing Pylons 1.0 code will run "inside" Pyramid via the use of a fallback
+handler that sends requests to an existing Pylons application. When run
+within the fallback handler, Pylons 1.0 applications may then be ported
+piecemeal to Pyramid by converting each bit of functionality into Pyramid
+code, allowing the fallback application to handle yet-to-be ported
+The web framework known as Pylons 1.x will still be maintained by The Pylons
+Project indefinitely. Upon the first non-alpha release of Pyramid, however,
+it will go into "legacy" status.
+What is the difference Pyramid and repoze.bfg?
+Pyramid *is* repoze.bfg, with:
+- a new name and a new set of import locations.
+- a few added features to meet the expectations of Pylons 1.0 users.
+Changes do need to be made to port existing repoze.bfg applications to
+Pyramid, however, it is possible to convert an existing repoze.bfg
+application to Pyramid in a mostly-automated fashion. See
+ for more
+As a reference, KARL, using the provided automation, a very large
+repoze.bfg application (> 70K lines of code), was ported in 30
+Why is Pyramid any different than the hundred other Python web frameworks?
+It's small, documented, tested, extensible, fast, and friendly. Its core
+contributors are long-time Python web framework developers with lots of
+experience. It also has momentum based on a convergence of its (previously
+divided) communities.
+What do you mean by "Small"?
+Pyramid has roughly 5 thousand lines of code that has the potential to be
+executed at runtime. For more detail, see
+What do you mean by "Documented"?
+Literally *nothing* in Pyramid is undocumented. Every feature receives
+documentation when (or very shortly after, but always before a release) it is
+added, and every change and backwards incompatibility is documented in an
+easily navigable "what's new" document between major releases. We require
+direct contributors to treat changing documentation as a task that is as
+important as changing code.
+When renderered to PDF form, the Pyramid documentation consumes more
+than 600 pages. Every "official" Pyramid add-on has a similar level
+of documentation.
+What do you mean by "Tested"?
+Every Pyramid release has 100% statement coverage via unit and
+integration tests. There is, on average, more than 2 lines of test
+code for each line of code that may be executed during a Pyramid
+What do you mean by "Extensible"?
+Pyramid has well-documented plug points which allow for integration of
+third-party templating systems, sessioning systems, traversal
+strategies, url generation, request generation, and generic rendering
+(e.g. JSON, et. al).
+Pyramid is also a great framework upon which to build *other*
+frameworks -- like a content management system -- because it provides
+a set of tools and patterns that make it possible to create extensible
+applications, such as a declarative configuration system. See also:
+What do you mean by "Fast"?
+Pyramid has an exceptionally shallow call stack, and routinely bests other
+web frameworks in both speed and execution complexity. It has been
+engineered with speed as a very concrete goal.
+What do you mean by "Stable"?
+The first release of Pyramid's predecessor, repoze.bfg, was made in
+mid-2008. Over time, new releases of BFG have strived to retain backwards
+compatibility with older releases. Applications written using repoze.bfg
+0.6.9 often work unchanged on repoze.bfg 1.3. We like our users, so we try
+to not (within the boundaries of reason and good taste) break backwards
+compatibility capriciously. When we do break backwards compatibility, the
+steps to upgrade are always outlined in detail in the new release's "What's
+New" document.
6 index.rst
@@ -48,6 +48,12 @@ standards we expect everyone to abide by.
+.. toctree::
+ faq/pylonsproject
+ faq/pyramid
For Pylons users coming from Pylons 1, the change to a new core package might
raise some questions regarding how to proceed, what it means for existing
Pylons application, and more.

0 comments on commit 0647fd7

Please sign in to comment.
Something went wrong with that request. Please try again.