Keynote Speaker

Django is a robust framework by design, and embodies many good
security practices. But why and how do Django sites get hacked
anyway? What can we do about it? And why are wizards involved?
Come and learn how to defend your Django app by taking a deep
dive into the defences implemented by Professor Dumbledore
against Lord Voldemort and his cronies.

As developers, we write a lot more than just code. We write
commit messages; we review our colleagues’ code; we email
collaborators; we tweet our hottest takes. Good written
communication can make your systems easier to use and maintain,
encourage your colleagues to be more receptive to your
suggestions, and make you more popular on the internet.
I’ll share some practical ways to communicate more
effectively, and some less practical theory about how people and
language work.

Speakers

We take a look at Django and Channels 2.0 and the changes it
brings by going fully async - Examining not only why the change
makes things better, but also how it’s managed to bridge
between Django’s synchronous world and the async world.
Plus, what might the future hold for Django and Channels?

Anthony I JosephA traveller's guide to mapping technologies in Django

Hahmann and Burghart estimate at least 60% of all information is
geospatially referenced. Fortunately, Django includes a variety
of spatial and mapping tools to help build spatially-aware
services. This talk will give an overview of geospatial concepts
for the Australian and Django communities.

Christopher Swensonchris_swensonMulti-Factor Authentication: How it works and why you need to be using it yesterday

Multi-factor authentication (MFA) and two-factor auth (2FA) are
becoming popular, but how do they work? What are the options, how
secure are they, and how do you use them in your own
applications? We’ll answer all these and more, covering
everything from Django integration to cryptography.

So many of the things we build depend on a DBMS to keep our data
safe, and retrieve it quickly. We know indexes can make that
faster, but… how do they work? When should you use them? What
should I index?

Increasingly, our apps are used not by humans but by other apps -
via their APIs. Thus your APIs need to be well-designed and easy
to consume for other developers. I will share tips and good
practices on authentication, versioning, documentation, response
structure, and why it all matters.

In this talk, we’ll see how we make a language agnostic
backend, to serve our app in different languages, based on what
language the client wants to communicate in. We’ll see how
to support translation for static data and dynamic data, using
various third-party services.

Intercooler is a Javascript library that allows you to make
dynamic web pages without writing any JS yourself. This talk
demonstrates how to use Intercooler to add dynamic functionality
to a Django app. It will also cover a number of apps that make
using Intercooler with Django even easier.