On Tue, Jan 18, 2011 at 9:43 PM, Cal Leeming [Simplicity Media Ltd] <cal.leem...@simplicitymedialtd.co.uk> wrote: > I would be interested to hear from anyone who has used Pinax in production. > Although I am discouraged by the maturity (only 2 years old?), it does seem > to contain some useful features. > Personally, I would have liked to have seen some of these features merged > into the Django core, rather than forked into a separate project, but that's > just me.
I think we need to clear up some misconceptions here. Pinax isn't a "fork" of Django. That would be like saying Zope is a "fork" of Python. It isn't a fork - one is a tool built using the facilities provided by the other. Django is a low level tool. It provides the essentials to route HTTP requests to views, and return responses. Django doesn't mandate what you build, or how you build it, or the right apps for the job. Django only specifies something when it's clearly in the interest of all (or at least, most) web developers to -- thus, Django provides a Forms framework, a template rendering system, and a Sessions framework. However, there are many things that Django *doesn't* have an opinion on. For example, there are many ways to implement tagging. There are many tagging applications available. Depending on your circumstances, one implementation might be better than another. So Django doesn't ship with a tagging app -- it's up to end users to find a tagging app that meets their needs. There are some exceptions to this rule. For example, the auth framework isn't as good as it could be, and not every website has a need for comments. However, the broad principle stands -- Django isn't trying to provide every tool for every possible web job. Pinax, on the other hand, works at a higher level. Pinax targets a specific domain -- social web apps -- and as a result, they *are* in a position to be opinionated about the best way to do tasks like tagging. They haven't done this by "forking" Django. They have taken Django, and the wide community of available apps, and selected a subset of apps that complement each other, integrate well together, and are appropriate for their target class of websites. Pinax is more like a meta-packaging framework for Django apps. Every Pinax site has, at it's core, a completely vanilla Django install. And, to follow up on the criticism/wish -- elements of Pinax *have* made it back to Django. For example, the static files framework that will be in Django 1.3 started life as an external app, and proved itself to be a useful tool due, in part, to being a recommended part of Pinax installs. So - you really don't have to make a "Pinax or Django" decision. Any app that can be installed in a Django site can also be installed in a Pinax site, and every Pinax site is a Django site. As for the original question -- are there any drawbacks? Well, not really. Pinax suggests a particular collection of apps, but you can use any other app you want in parallel. Pinax mandates a few standards for project layout and the like, but for the most part, they're just using the best practices commonly understood by experienced members of the Django community, but the Django project itself hasn't gone to the trouble of formalizing. About the only potential downside I can see is that If you're not building something in Pinax's sweet spot -- i.e., a social web site -- you won't get all the benefits that Pinax has to offer. If you're building something *really* different, you might find that Pinax's conventions obstruct you in ways that a raw Django install wouldn't. However, for most "websitey" websites, this won't be an issue -- Pinax's conventions are, for the most part, a bunch of practices that you should probably be following anyway -- Pinax just forces/provides the tools to help you to follow them :-) Yours, Russ Magee %-) -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.