To Index Or Not, That’s Not The Questions — DjangoCon Europe

As databases are used to store more and more information every day, these are also a key component in every Django project. Thus it’s important to understand how they work.

Blog article


Django and 2 Factor Authentication — DjangoCon AU

Most websites these days require some kind of authentication. User name & password is the most common one. OAuth with Facebook / Github / Google / Twitter is also common. But sometimes you can’t rely on 3rd party services and user name & password is not enough. In those cases 2 Factor Authentication is a nice, additional security layer. Use e.g. a phone to ensure a more secure authentication.

Blog article

SSL All The Things — PyCon AU / PyCon NZ

A revised version of my talk from DjangoCon US targeted at a more generic Python audience. Instead of having Django specific code and slides I show how to use Python’s built-in ssl module.

Blog article

SSL All The Things — DjangoCon US

Over the last few years SSL/TLS encryption of not only websites but many other services as well has risen tremendously. The Let’s Encrypt organization and certificate authority (CA) makes that pretty easy. Since September 2015 almost 1.8 million certificates have been issued. And you can use it, too. For free!

In this talk I’ll demonstrate how to integrate SSL/TLS and point out some common pitfalls. I’ll briefly layout the Let’s Encrypt ACME protocol and explain what you need to set up in Django to make SSL/TLS the default and only way to access your site.

Blog article

Don’t be afraid of writing migrations

With Django 1.7 the built-in migrations framework was introduced. With the release of version 1.9, the migrations framework is much more robust, faster and can handle many more edge cases.

While the makemigrations management command became smarter in the last two releases in terms of detecting what has changed and what migrations to generate, there are still a couple of things Django cannot do automatically.

I will point out some of the common cases where you should get your hands dirty, and show you how writing migrations is easier than you think. Migrations are just Python code, and are as much a part of your apps as your models, forms, and views. After all, they were always meant to be human-writable.

Blog article


What’s new in Django 1.9

I gave this presentation at the Sydney Django meetup on Nov 24th, 2015.

See the full Django 1.9 release notes for details and all changes:

The Necessity of Configuration and System Management Tools

I gave this talk during PyCon Australia 2015 in Brisbane.

In practically every moment of our life we rely on the possibly largest communication medium humanity ever had. The Internet. Being able to at least partially understand how this thing works, we know that it takes a lot of work to keep it running smoothly.

To do that IT administrators use configuration and system management tools to deploy changes to thousands of servers and keep them in sync. But how can one roll back a change done in the past that turned out to introduce a bug?

This talk I will introduce you to configuration management and explain the problems that arise over time and make changing something back complicated or even impossible.

Forms are static” — “No, they aren’t”

I gave this talk during DjangoCon Europe 2015 in Cardiff, Wales.

Introduction to Django

This is an introductory talk I gave to a course of Bachelor students at Technical Univeristy of Berlin as guide about how to build a basic web application.

Combining Django & Elasticsearch

Some thoughts and ideas on how to intregrate Elasticsearch into your Django project. I gave that talk at a Django Users Berlin meetup.


You Should(n’t) Normalize Your Database

This talk you make you start thinking about when database normalization — as you might have learned during computer science lessens at school or university — is a good approach and when you should actually avoid it. I gave this talk at various occasions, one being the pykonik, the Krakow Python meetup, where I have been invited to by the amazing Ola Sendecka and Tomasz Paczkowski.

Introduction to Django-CMS

An introduction to a very early stage of Django-CMS 3.


Showing BVG Departures In Your Office