104
Schnell performante Web-Applikationen entwickeln Markus Zapke-Gründemann LinuxTag 2012

Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Embed Size (px)

Citation preview

Page 1: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Schnell performanteWeb-Applikationen entwickeln

Markus Zapke-GründemannLinuxTag 2012

Page 2: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Übersicht• Vorstellung

• Was ist Django?

• Architektur

• Code

• Django Roadmap

• Entwicklungsprozess

• Django in Zahlen

• Django in freier Wildbahn

• Nützliche Django Apps

Page 3: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

MarkusZapke-Gründemann

• Softwareentwickler seit 2001

• Softwareentwicklung mit Python, Django und Mercurial

• Selbstständig seit 2008

• Seit 2011 Geschäftsführer bei Inqbus

Page 4: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Was ist Django?

Page 5: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Bildquelle: http://en.wikipedia.org/wiki/File:Django_Reinhardt_%28Gottlieb_07301%29.jpg

Django Reinhardt* 23.1.1910✝ 16.5.1953

Page 6: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Was ist Django?

• Web Application Framework

• In Python geschrieben

• Open Source Software (BSD Lizenz)

• Django Software Foundation

• Umfangreiche Dokumentation

• Große, freundliche Community

Page 7: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Was ist Django?

• Rapid Development

• Loose Coupling

• Wiederverwendbare Applikationen

• Don't Repeat Yourself (DRY)

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

http://c2.com/cgi/wiki?DontRepeatYourself

Page 8: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

www.djangoproject.com

Page 9: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Und natürlich Ponies!

Page 10: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Ponies?

Page 11: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Ponies?

Page 12: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Architektur

Page 13: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

MTV

Page 14: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 15: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Webserver

Page 16: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Webserver

Page 17: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Webserver

URLConf

Page 18: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Webserver

URLConf Middleware

Page 19: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Webserver

URLConf Middleware

Page 20: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

URLConf Middleware

Page 21: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

URLConf Middleware

Page 22: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Model (ORM)

URLConf Middleware

Page 23: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Model (ORM)

URLConf Middleware

Page 24: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

Model (ORM)

URLConf Middleware

Page 25: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

Model (ORM)

URLConf Middleware

Page 26: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

Model (ORM)

URLConf Middleware

Page 27: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

Model (ORM)

URLConf Middleware

Page 28: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf Middleware

Page 29: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf Middleware

Page 30: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf

Tags & Filter

Middleware

Page 31: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf

Tags & Filter

Middleware

Page 32: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf

Tags & Filter

Middleware

Page 33: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

View

Webserver

Datenbank

TemplateModel (ORM)

URLConf

Tags & Filter

Middleware

Page 34: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 35: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Page 36: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

Page 37: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Page 38: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Page 39: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Page 40: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Page 41: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Page 42: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

Page 43: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Page 44: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Page 45: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

Page 46: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Page 47: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Page 48: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Testing

Page 49: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Testing

Caching

Page 50: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Testing

Caching

i18n & l10n

Page 51: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Testing

Caching

i18n & l10n

Middleware

Page 52: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Object Relational Mapper

Admin

URLConf

Views

Templates (Tags & Filter)

Sessions

Serializer (JSON, XML, YAML)

Syndication (RSS, Atom)

GeoDjango (GIS)

Formulare

Validation

File Storage

Authentifizierung

Testing

Caching

i18n & l10n

Middleware

Security

Page 53: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Code

Page 54: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 55: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ pip install django

Page 56: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ pip install django

$ django-admin.py startproject myproject

Page 57: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ pip install django

$ django-admin.py startproject myproject

$ tree myprojectmyproject!"" manage.py#"" myproject !"" __init__.py !"" settings.py !"" urls.py #"" wsgi.py

Page 58: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ cd myproject$ python manage.py runserver

Page 59: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 60: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ python manage.py startapp pages

Page 61: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ tree.!"" manage.py!"" myproject...#"" pages !"" __init__.py !"" models.py !"" tests.py #"" views.py

$ python manage.py startapp pages

Page 62: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

from django.db import models

class Page(models.Model): title = models.CharField(u'Titel', max_length=100) slug = models.SlugField(unique=True) body = models.TextField(u'Inhalt')

class Meta: verbose_name = u'Seite' verbose_name_plural = u'Seiten'

def __unicode__(self): return self.title

myproject/pages/models.py

Page 63: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

from django.contrib import admin

from .models import Page

class PageAdmin(admin.ModelAdmin): prepopulated_fields = {'slug': ['title']}

admin.site.register(Page, PageAdmin)

myproject/pages/admin.py

Page 64: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

from django.conf.urls import patterns, include, url

from django.contrib import adminadmin.autodiscover()

urlpatterns = patterns('', url(r'^admin/', include(admin.site.urls)),)

myproject/urls.py

Page 65: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

$ python manage.py syncdb$ python manage.py runserver

Page 66: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 67: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 68: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

http://127.0.0.1:8000/willkommen-auf-der-startseite/

Page 69: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

from django.conf.urls import patterns, include, url

from django.contrib import adminadmin.autodiscover()

urlpatterns = patterns('', url(r'^admin/', include(admin.site.urls)), url(r'^', include('pages.urls')))

myproject/urls.py

from django.conf.urls import patterns, include, url

urlpatterns = patterns('pages.views', url(r'^(?P<slug>[-\w]+)/$', 'detail'),)

myproject/pages/urls.py

Page 70: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

from django.shortcuts import get_object_or_404, render

from .models import Page

def detail(request, slug): page = get_object_or_404(Page, slug=slug) context = {'object': page} return render(request, 'pages/detail.html', context)

myproject/pages/views.py

Page 71: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

<!doctype html><body> <h1>My Website</h1> {% block content %}{% endblock %}</body></html>

myproject/templates/base.html

{% extends "base.html" %}

{% block content %}<h2>{{ object.title }}</h2><p>{{ object.body|linebreaks }}</p>{% endblock %}

myproject/pages/templates/pages/detail.html

Page 72: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 73: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Django Roadmap

• Stabile API

• Minor Release alle neun Monate

• Klare Deprecation Timeline

• Ab Django 1.5 experimentelle Python 3.3 Unterstützung

Page 74: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Entwicklungsprozess

Page 75: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Models & Admin anlegen

Inhalte erstellen Views anlegen

Deployment

Templates anlegen

Page 76: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Django in Zahlen

Page 77: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

6.000.000 Besucher der Website pro Monat

Django in Zahlen

Page 78: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

6.000.000 Besucher der Website pro Monat

21.700 Abonnenten der django-users Mailing Liste

Django in Zahlen

Page 79: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

6.000.000 Besucher der Website pro Monat

21.700 Abonnenten der django-users Mailing Liste

> 2.000 Packages im Python Packaging Index (> 10%)

Django in Zahlen

Page 80: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

6.000.000 Besucher der Website pro Monat

21.700 Abonnenten der django-users Mailing Liste

> 2.000 Packages im Python Packaging Index (> 10%)

33 Kern-Entwickler

Django in Zahlen

Page 81: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

6.000.000 Besucher der Website pro Monat

21.700 Abonnenten der django-users Mailing Liste

> 2.000 Packages im Python Packaging Index (> 10%)

33 Kern-Entwickler

> 65 Übersetzungen

Django in Zahlen

Page 82: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Djangoin freier Wildbahn

Page 83: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views
Page 84: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte Spur

Page 85: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

Page 86: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

Rdio

Page 87: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Page 88: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-Ons

Page 89: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

Page 90: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

VMWare

Page 91: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

VMWareDisqus

Page 92: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

VMWareDisqus

Instagram

Page 93: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

VMWareDisqus

InstagramNational Geographic

Page 94: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

ZDF - Die letzte SpurWashington Post

RdioVodafone

Mozilla Add-OnsDiscovery Channel

VMWareDisqus

InstagramNational GeographicThe New York Times

Page 95: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Nützliche Django Apps

Page 96: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Django Debug Toolbar

http://robhudson.github.com/django-debug-toolbar/

Page 97: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Django Debug Toolbar

http://robhudson.github.com/django-debug-toolbar/

Page 98: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Django Debug Toolbar

http://robhudson.github.com/django-debug-toolbar/

Page 99: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Schema and Data Migrations

http://south.aeracode.org/

Page 100: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Celery

Distributed Task Queue

http://celeryproject.org/

Page 101: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Modular Search

http://haystacksearch.org/

Page 102: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

WSGI HTTP Server for UNIX

http://gunicorn.org/

Page 103: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

www.djangopackages.com

Page 104: Schnell performante Web-Applikationen entwickeln · GeoDjango (GIS) Formulare Validation File Storage Authentifizierung. Object Relational Mapper Admin URLConf Views

Fragen?

www.inqbus.de

www.keimlink.de

@keimlink