Django is an excellent web development platform with an extensive developers community. It may be the most popular Python web framework nowadays. However, the exisiting django based CMS products are not as feature complete as other comparable solutions (Drupal, Plone, Alfresco, ModX, etc.).
The Merengue project tries to fill this gap. It is financed by the University of Málaga (Spain) and takes advantage of existing code and knowledge from other projects (Plone, Drupal, Pinax, django-cms, feincms, LFC, etc.)
rdflib is a python library implementing a database with various triples back-end, parser, data serializers, SPARQL is a Python interface to extract/insert triples. We integrated it in Django reusing the database connection and exposing an ORM interface, along with full-text search on literals. This presentation shows a django-rdflib case study with a PostgreSQL backend in Brain Architecture Management System (http://brancusi1.usc.edu) - a neuroscientific project for the University of Southern California. Benefits of the flexible RDF structure will be shown, allowing researchers to insert free format data, making data public with a customizable serialization and use the powerful full-text search integrated in PostgreSQL.
Objective: show attendees an effective combination of RDF, PostgreSQL full-text search and Django ORM via django-rdflib.
Requirements: Django familiarity.
by David Cramer
Building scalable web applications may seem like a distant problem, but the problem is not thinking about it before it's too late. This talk will focus on designing a scalable web application before it needs to be (and avoiding the premature optimization dilemma). It will cover topics such as efficient usage of your database, appropriate caching (and invalidation!), and what the speaker considers as best practices.
by Bruno Renié
GeoDjango is the "world-class geographic web framework" everyone has probably heard of. The purpose of this talk, targeted at people familiar with Django itself, is to introduce in more details the capabilities of this framework.
After learning the basics of Geographic Information Systems, we will see:
During this talk we will be building a simple GeoDjango application to illustrate the different concepts introduced.
Django benefits from a thriving third-party ecosystem. This talk will take a deep look at three of the components I have found most useful in my own projects: Haystack for full-text search, Celery for offline processing and Fabric for automated deployments. I'll discuss how we use them for Lanyrd.com, and demonstrate why they deserve a permanent place in your toolbox.
The primary goal of this talk is twofold: to evaluate the need of data mining and introduce some very cool, simple yet powerful machine learning techniques to audience such as classification, clustering, collaborative filtering, recommendation etc in your Python web applications. This talk will conclude with some explanation and limitations of machine learning algorithms.
Basic knowledge of Python is sufficient. However some experience with Django, meshups, machine learning or data hunger is encouraged. All talk material and django apps will be available after talk.
by Calvin Cheng
We had the privilege of working on a mobile web application for ETH Zurich, funded by ETH North-South Centre, using Django/Postgis, jQuery mobile and Openlayers technology.
In this talk, I would like to share what we have learnt technically and the experiences and fun we had with polygon creation on a map and saving polygon vertices and related data into our spatial database via geodjango.
This mobile web app is developed based on research by Dr Koh of ETH Zurich, specializing on Matrix-calibrated and edge-corrected species-area models that allow users to evaluate the biodiversity consequence and trade-offs of land-use decisions. The development and description of these models were published in Conserv. Biol. 24, 994 and J. Appl. Ecol. 47, 1063.
Django makes it easy to build web sites and applications on tight deadlines - but how does it deal with sites that scale up in both traffic and complexity? Using Lanyrd.com as a case study, this talk will explore tricks and techniques for taking advantage of what Django has to offer while coping with the unexpected challenges raised by a highly dynamic social web application.
Topics covered will include performance monitoring and optimisation, advanced caching tricks, denormalisation with Solr and Redis and finding the right balance between technical elegance and pragmatism.
Proverò ad illustrare in questi 60 minuti alcuni consigli e best practices, da utilizzare nello sviluppo di applicazioni django based.
Non è un mero elenco di tools e/o applicazioni, bensì un bignami di snippets e tips architetturali. Tutto sommato l’obbiettivo è non sbagliare e andare più veloci.
Argomenti trattati: python, users, forms, jquery, virtualenv, distribute, buildbot, ecc...
by Mauro Rocco
Celery is an open source task queueing system based on distributed message passing.
I will talk about the tools that Celery offers for task distribution and how to monitor and manage the system using a Django web interface.
This talk will also focus on how we use Celery at Jamendo and our real solutions to some common issues you may encounter when developing a back-office based on Celery.
The talk will cover the following topics:
-- A brief overview of Celery and the AMPQ protocol.
AMPQ protocol overview
Celery, RabbitMQ code examples
-- The impact of Celery on the Jamendo work-flow; examples with real tasks.
Here I will talk about the Jamendo back-office infrastructure and some of our common tasks. I will discuss the improvements made by introducing a new back-office system based on Celery.
I will show some code snippets and go over some real scenarios.
-- Overview of the Django Celery admin interface and some Jamendo extensions
Let's talk about the Django-Celery interface that allows one to monitor or schedule tasks directly from the Django admin.
I will explain which common additional features are necessary and how to add them.
-- Common "gotchas" we encountered while working with Celery and how we solved them.
- Global task locks
- Centralized logging: be able to read all the logs of all celery workers on different servers and filter them for real-time debugging
by Tomaz Muraus
Cloudkick is a server management and monitoring software as a service used by thousands of different companies all across the globe.
The service is built in and powered by many different programming languages and technologies, but the web application and majority of the backend services are written in Python.
In this talk I will present how and where we use Python (Django, Twisted, txamqp, Piston, …), different problems we have encountered while building our service and how we worked around them, good practices and real-world advices on building effective Twisted services and much more.
I will show in this talk some tips, tricks and best practices for some recurring patterns in the django application development.
This is not a list of tools and applications, but rather a homemade summary of code snippets and design best practices.
All in all, the goal is: no mistakes and go faster.
Topics include: python, users, forms, jquery, virtualenv, distribute, buildbot, etc. ...
by Tom Christie
Django REST framework is a new project that aims to make it easy to build RESTful Web APIs.
The APIs it creates are fully Web browse-able, using an awesome Django admin style interface, allowing them to be truly self-describing, well-connected systems.
The talk will include:
In todays world, nobody (should) deploy a web application facing the
internet without having a proper caching system in place. There are
many different solutions to choose from, from manual use of memcached
through framework integrated caching to external caches like Squid or
Varnish. Most modern frameworks come with integrated functionality for
at least one of these methods, and often more than one.
However, they often relies on all traffic going through the same
framework to work properly - a caching layer in Rails is hard to share
with one in Django. This talk will show a way to break the design
rules of these frameworks just a little, and have the database help
solve this problem.
This talk will use a small application written in Python using Django
to illustrate the examples, but the method is language independent.
Unsurprisingly, the database used is PostgreSQL.
rdflib è una libreria python che fornisce una base di dati con vari back-end per le triple, dei parser, serializzatori, SPARQL è un'interfaccia in python per estrarre/inserire le triple. L'abbiamo integrata con Django tramite il riutilizzo della connessione alla base di dati fornendo un'interfaccia ORM e la capacità di fare ricerca full-text sui valori letterali. La presentazione contiene un studio di caso per django-rdflib con un back-end postgresql in Brain Architecture Management System (http://brancusi1.usc.edu) - un progetto neuroscientifico per University of Southern California. Si vedranno i benefici della struttura flessibile del RDF che permette ai ricercatori di introdurre dati in formatto libero, rendere i dati pubblici con una serializzazione personalizzata e usare la potente ricerca full-text fornita da postgresql.
Scopo: introdurre al pubblico una combinazione di RDF, la ricerca full-text di postgresql e l'ORM di Django tramite django-rdflib.
Requisiti: familiarità con Django.
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 Python-based frameworks that could be used to build the API such as Pyramid, Flask and Bottle. We’ll also compare REST and custom APIs to understand best practices for building APIs designed for mobile devices.
In this talk I'll describe our successful experience in introducing Python
into a system for blood collection tube labeling in laboratory and hospital
environments, based on IHE Technical Frameworks –the industry standard
for modeling and streamlining healthcare processes– and designed to avoid
human errors and ensure process traceability.
During the talk I will explain why we chose Python in the first place,
how we've been able to leverage the language's features and
characteristics for our specific field and what problems and limitations
I will show specific instances -showing code examples too– of Python
usage in different parts of the project, including a low-level driver
for laboratory automation machinery, an asynchronous messaging module,
the implementation of IHE-compliant actors and the inevitable end-user
web application, implemented with Django.
Using Python greatly helped us in building our system, allowing
very rapid prototyping cycles for both hardware and software, but during
the talk I'll also point out what we found was missing, and what
would be nice to have to ensure Python has its proper place as a viable
platform for designing streamlined healthcare workflows
based on established international standards.
20th–26th June 2011