While Pyramid is very powerful, it is very low level and has no "bells and whistles". You could potentially rewrite Django on top of Pyramid.
To try and address this question, let's imagine that when building on Pyramid or Django, there are 3 main types of code :
- Core ( Pyramid or Django Itself + the directly supported packages : sqlalchemy, mako, etc )
- Third Party Pyramid Libraries ( turbogears , ptah, kotti, formalchemy, etc ; or any of the django plugins )
- Your Code
When compared to one another:
- The "Core" in Pyramid does less than in Django
- A lot of the core functionalities in Django are in the Third-Party category for Pyramid
If you want to have lots of fancy Admin Backends, User Management, etc under Pyramid -- then you'll need to rely on a third party library. When you use those 3rd Party Libraries though, you'll be bound by their constraints. My point is that you're no longer comparing Pyramid to Django, but TurboGears/Kotti/Ptah to Django.
A lot of my consulting clients build applications on Rails & Django. Their workflow is generally this:
- start a new project
- something is up and running on day 1
- every day of iteration, new features exist. the daily workflow is 2 hours to find django/railss module, 4 hours to override/monkeypatch it, 2 hours to actually code on the application
- A few months in, and usually after the project launches, the daily workflow becomes 8hours of trying to recode around Django/Rails/Plugins limitations
When people build on Pyramid, the workflow is more like:
- start a new project
- you might not see anything for a week
- every day new features exist. the daily workflow is 7+ hours building application logic, <1hr dealing with Pyramid or 3rd party libraries
- A few months in, and usually after the project launches, the daily workflow doesn't really change
I mention that because if you're coming to Pyramid from Django, you should understand that the cost of all the benefits that Pyramid gives you later on, is that it's a bit slower to start out with. You have more control of the foundations.
To address some of the points you made:
- You can use Mako or Jinja2 or whichever templates you prefer for your project, then use the Chameleon template with Deform as needed. You're not bound to using a single templating system with Pyramid. You can mix and match templates within the same project.
- User management is something that Pyramid doesn't really concern itself with. "Users" aren't something that pyramid is concerned with at all, outside of the optional authentication & authorization controls.