Distributing Django apps with standard Python packaging tools has for a long time been dreaded by the community for good reasons -- from bad documentation and confusing conventions to missing integration with Django standards and unreliable infrastructure.
In this talk I show what is being done to fix that and how you can profit from it:
by Idan Gazit
Building sites which adapt gracefully to different screen sizes is no longer a domain reserved for crazy web experiments. With a suitable structure, you can provide multiple layouts targeted at different screen sizes for relatively little additional effort. Learn about the “why” of responsive design, how it works, and implementation strategies for your Django webapps.
Previous knowledge of Compass and the Less Framework are helpful—but not required.
by tom christie
by Jesper Noehr
Doing a website in Django is easy, but how about building a DVCS hosting site with it? Django fits a wide variety of purposes, and was molded to suit Bitbucket's purpose while remaining (somewhat) idiomatic. This talk is about the lessons we learned in going from a few hundred users, to now over 100.000 active ones, being acquired, introducing non-Pythonistas to Django, and having to maintain and develop everything meanwhile.
This talk will show how the continuous integration and deployment for a site with over 3 million users was built from the ground up. It will cover topics from process changes (e.g. branching), to the tools being used (Fabric, Gargoyle, Jenkins, just to name a few), to how they are used.
We all know the golden rule of query optimisation: make one big query rather than lots of little ones in a loop. However, that's easier said than done when you're dealing with deeply nested data - there's a limit to what you can do with Django's own mechanisms like select_related. Often the only answer is to drop down to raw SQL, and in those cases we'd still like to have access to our models, rather than abandoning ORM entirely. This talk presents unjoinify, a helper module that can reassemble gnarly cross-table SQL resultsets back into template-friendly object trees.
Celery is an asynchronous task queue. It can be used to process large amounts of messages in real-time.
by Ed Crewe
This talk is about using Django within an Enterprise environment. The environment in question is higher education, however the principles could be the same for any organisation of over thousand users.
Django is used to deliver applications that integrate existing applications data and databases, in this case Oracle, and core web services such as the CMS, portal and cloud tools. The examples being Plone, UPortal and Google Apps.
In 2005 Django was presented to the general public for the first time. 6 years later it's clear that Django left a big impact in the Python developer community. Not only that, it also changed the way people approach a whole variety of problems and topics, not only in the Python community. I want to look back of the last five years and dive into all the areas where Django left some footprints and also what we might learn from that for the future.
Mobile apps are the hot item of the day -- and the best mobile apps are backed by a great website. Python web developer Nate Aune and iPhone developer Anna Callahan will show you how we built a simple music web app in Django with a native iPhone app that communicates with it. Attendees of this talk will see a concrete case study of building an application that exposes an API for mobile devices.
Our web app exposes a JSON API for sending and receiving data from the mobile device. We’ll talk about why we chose Django and the TastyPie API package, and discuss other packages that could be used to build the API such as django-piston or the Django REST framework. We’ll also compare REST and custom APIs to understand best practices for building APIs designed for mobile devices.
6th–10th June 2011