PyCon AU 2016
2016-08-12..2016-08-16
Melbourne, Australia
PyCon AU ·
[PyCon AU 2010, PyCon AU 2015 OpenStack Miniconf, PyCon AU 2016, PyCon AU 2016 Science and Data Miniconf, PyCon AU 2017, PyCon AU 2019, PyCon AU 2023, PyCon AU 2024, PyCon AU 2025, PyCon AU 2026]
who it's for
secondary school teachers, computing teachers, primary school teachers, curriculum designers, education technologists, makerspace coordinators
topics
Obelisk SML kit; MicroPython on microcontrollers; BBC MicroBit teaching workflow; ESP8266 Wi-Fi modules; Raspberry Pi classroom modules; Kivy GUI and kv files; APK packaging for Android; Jupyter notebook interact demos; sympy symbolic math; matplotlib plotting; Python turtle (Logo) geometry; Flask + SQLite on PythonAnywhere
| title | author | length |
|---|---|---|
| Designing hardware APIs to facilitate hands-on learning | Andreas Antoniades | 33m |
Obelisk Systems builds a Raspberry Pi–powered classroom module called the SML kit and a binary middleware named the Obelisk Abstraction Engine that hides… | ||
| Exploring Kivy in the classroom - GUI and App development for Python | Amanda Hogan | 30m |
Used with Year 11/12 classes to teach GUI and app development, Kivy powers touch‑enabled prototypes and separates layout in kv files from behavior in Python… | ||
| Doing Math with Python | Amit Saha | 32m |
Python 3 examples use the standard library (fractions, statistics) plus sympy and matplotlib to do real math: parsing an arbitrary single‑variable expression… | ||
| Integrating Python within a School Context | Brad Nielsen | 30m |
A 1,600‑student Queensland boys school moves from no text programming to a K–12 Python pipeline: visual blocks in years 5–7 (Ozobots, Sphero, Scratch)… | ||
| Teaching geometry using Logo/Python turtle module, or how to sneak programming into maths class | Vivian Li | 26m |
Uses Python turtle (Logo) and the Grok Learning platform to teach Year 7 geometry by coding shapes; prototypes run as two turtle problems inside a 2015… | ||
| MicroPython: Embedded programming for everyone | Jim Mussared | 27m |
MicroPython runs real Python 3 on tiny microcontrollers (typical Cortex M0 with about quarter‑megabyte flash and 16 KB RAM) and gives an interactive REPL on… | ||
| Teaching Python with Minecraft | Digital K | 29m |
Uses Minecraft as a live Python playground: runs a local CanaryMod/Pi Edition server with the free RaspberryJuice plugin and Python libraries (notably Python 2… | ||
| Smart City: Connecting the dots and digital kids | Roland Gesthuizen | 37m |
Starts from building a rooftop Earth sundial that winds up cited by NASA and museums, then moves to students coding autonomous models: cardboard vehicles with… | ||
| Teaching Python: Ten+ Years of Successes, Trials and Tribulations | Bruce Fuda | 33m |
Ten years of classroom trials lead to concrete choices: adopt Python in 2009 using the NCSS Challenge and Grok plus CodeAcademy and Coursera for drills, use… | ||
| Python at Terrace | Tim Stephens | 31m |
School adopts Python across Grades 8–10 to meet curriculum milestones, using turtle graphics in Grade 8 for name drawing and functions, Grade 9 mixing App… | ||
| MicroPython: a journey from Kickstarter to Space | Damien George | 51m |
MicroPython is a compact reimplementation of Python 3 that runs a full REPL and compiles on tiny microcontrollers; a Kickstarter raises ~A$180,000 from ~2,000… | ||
| Python All the Things | Russell Keith-Magee | 53m |
Argues that Python can run natively on phones, tablets, TVs and watches by reusing or reimplementing CPython pieces, demonstrating a toolchain: compile CPython… | ||
| Hitting the Wall and How to Get Up Again - Tackling Burnout and Strategies for Self Care | Jackson Fairchild | 27m |
Claim: burnout results from cumulative external stress that blocks the things that feed you, producing depersonalization/numbing and a cascade failure across… | ||
| Mental Health in Development | Eloise Macdonald-Meyer | 28m |
Development work increases risk factors like crunch, prolonged sitting, multitasking and isolation from freelancing — ABS data cited ~20,000 Australian… | ||
| Tutorial: Technical Blogging for Python Programmers | Thursday Bram | 01h 16m |
Three simple rules anchor the tutorial: be lazy, be a reader, be a good accomplice. Concrete tactics include an editorial calendar and outlines that become an… | ||
| Teaching programming in undergraduate psychology | Damien Mannion | 32m |
Third-year psychology courses add hands-on Python training: a Vision & Brain course (about 50–60 students, group projects of 2–5) build and run vision… | ||
| A Project-Driven Approach to Teaching Python: A Showcase of Student Work and Achievements | Bruce Fuda | 29m |
High school students produce concrete Python projects: a Markov chains parody generator trained on Harry Potter/Twilight text, a Flask-based A pathfinder that… | ||
| Pyrobuf and the Tyranny of Speed | Gregory Saunders | 30m |
Pyrobuf is a Cython implementation of Protobuf that generates a custom C-extension per .proto file and claims 2–4× vs C++ backend and 20–40× vs pure Python… | ||
| Sunday: Lightning Talks and Closing | 01h 26m | |
Day three closes with rapid updates: a browser-based FlowBot visual dataflow demo drives a prototype robot over Wi‑Fi, live-debugged; HDMI capture essentials… | ||
| A proof of concept Python toolkit for effective landscape fuel hazard management | Henry Walshaw | 31m |
A proof‑of‑concept Python toolkit automates a 16+ step manual risk workflow to rank hazard‑reduction burn units by acceptable/conditional/unacceptable risk… | ||
| Tutorial: A Practical Introduction To Machine Learning | Sam Hames, Alistair Walsh | 01h 23m |
730 infrared grayscale bee-tag images at 24x24 pixels are loaded into numpy arrays, cropped to 16x16 (576 features) and labeled 0/1/2 for… | ||
| Predicting the TripleJ Hottest 100 With Python | Justin Warren | 23m |
Python scripts scrape public Twitter and Instagram posts (wget, BeautifulSoup, platform APIs) to collect several thousand shared vote images and pages, feed… | ||
| Functional Programming for Pythonistas | Bianca Gibson | 27m |
Claims that adopting functional patterns makes Python code clearer, more testable and easier to reason about, with concrete techniques: use immutability… | ||
| Reproducible Research in Python | Jodie Burchell | 32m |
A messy Dropbox with 30 data files and seven Python scripts becomes a reproducible pipeline that predicts average life expectancy for ~150 WHO member states… | ||
| Turning stories into websites | Donna Benjamin | 31m |
Explains how raw requirements become a working site by using INVEST to size and test user stories, story mapping to keep the big picture aligned to objectives… | ||
| So you want to make a screencast? | Caleb Hattingh | 32m |
Contract from O'Reilly leads to a 5.5 hour Python screencast produced in three months of full‑time unpaid work, using Jupyter Notebook, Camtasia and a… | ||
| Releasing Calendar-Versioned Software | Amber Brown | 32m |
Advocates of calendar-versioned releases argue for time-based, frequent rollouts instead of semver guarantees, and show how Twisted makes it work: automated… | ||
| Preventing Cat-astrophes | Ben Sturmfels | 30m |
GNU MediaGoblin is a Python 3 media-publishing server (version 0.9) that actually transcodes and serves photos, audio, video, PDFs and 3D STL models using… | ||
| The Evolution of Python Packaging | Dan Reif | 33m |
Facebook builds a self-contained Python packaging system centered on par (Python archive): an executable shebang + zip that evolves into zipimport-backed… | ||
| Empowering X.509 Certificate Management with Python | Marlon Dutra | 31m |
Programmatic X.509 management with Python uses the cryptography library on an OpenSSL backend to build CSRs, sign certificates and run an internal CA via… | ||
| Deciding between continuity and change in your Open Source community | Christopher Neugebauer | 30m |
Case study of replacing a bespoke conference manager called Zookeeper (a fork per year since 2010) with a Symposion/Django base and a new ticket-sales app… | ||
| Have It Your Way: Maximizing Drive-Thru Contributions | VM Brasseur | 29m |
Argues that a rising count of one-off “drive‑thru” commits signals project health and shows the contribution process works, based on interviews and metrics… | ||
| Click: A Pleasure To Write, A Pleasure To Use | Sebastian Vetter | 27m |
Demonstrates building a working "ad notifier" CLI that scrapes Craigslist with BeautifulSoup, detects new listings via a simple cache (file or Redis), and… | ||
| Code the Docs: Interactive Document Environments | Paris Buttfield-Addison | 34m |
Demonstrates putting runnable examples and written notes in one file so documentation and code are identical, using Jupyter / IPython notebooks for… | ||
| Hear no evil, see no evil, patch no evil: Or, how to monkey-patch safely. | Graham Dumpleton | 31m |
Claims that the wrapt library fixes decorator and monkey‑patching pitfalls by preserving introspection, honoring the descriptor protocol and offering a… | ||
| Evaluating fire simulators using Docker, Dask and Jupyter notebooks! | Nathan Faggian | 31m |
Built a reproducible evaluation pipeline that wraps heterogeneous fire simulators (Prometheus, Phoenix, SPARK, Australis) in Python, task‑farms hundreds of… | ||
| How digital agencies can invest in open-source products without going broke or insane | Greg Turner | 31m |
Seven years of agency experience leads to a concrete claim: open-sourcing a reusable product can grow market size and retain agency value if the project is a… | ||
| From Humanities to Tech: How a Religion PhD came to be learning Python | Lauren Bernauer | 25m |
A humanities researcher retrains in Python starting October 2013 via Coursera, moves from command‑line IT tasks to hands‑on coding, and volunteers teaching at… | ||
| More testing with fewer tests | Clinton Roy | 32m |
Explains how Hypothesis generates thousands to millions of inputs so tests cover corner cases automatically, showing a concrete bug where averaging an empty… | ||
| Fail Early, Fail Often, Fail Well | Josh Simmons | 31m |
Lists ten concrete failure modes: too few clients (two clients once cover most revenue), using new deposits to pay subcontractors like a Ponzi move, not… | ||
| From Flying Circus to Holy Grail: Migrating the Twilio API from PHP to Python | Sam Kitajima-Kimbrel | 31m |
Company extracts features from a 500k‑line PHP monolith into small services and builds starship, a Python/Flask federation that maps public REST endpoints to… | ||
| The Power ⚡️ and Responsibility 😓 of Unicode Adoption ✨ | Katie McLaughlin | 31m |
Unicode adoption shows concrete tradeoffs: platform vendors implement emoji differently so a single code point yields divergent images (yellow heart, flushed… | ||
| Saturday: Lightning Talks | 01h 06m | |
Quick-fire demos and concrete takeaways: a Jupyter notebook boots a parallel cluster and scales to 8 engines for load‑balanced tasks; a hand‑built actor system… | ||
| The dangerous, exquisite art of safely handing user-uploaded files. | Tom Eastman | 32m |
Gives five concrete steps (step 0–4): avoid uploads if possible, throw away the entire file name and store uploads in a quarantine outside the webroot. Shows… | ||
| SSL all the things | Markus Holtermann | 26m |
Let's Encrypt issues 90-day certificates via the ACME protocol: create an account key, send a CSR, respond to ACME challenges by writing files under… | ||
| Behind Closed Doors: Managing Passwords in a Dangerous World | Noah Kantrowitz | 29m |
Defines secrets as small, radioactive, required items (passwords, tokens, keys) and maps eight infrastructure attack surfaces (brute force, code leak, backup… | ||
| Security Starts With You: Social Engineering | Tiberius Hefflin | 30m |
Social engineering is an attempt to acquire sensitive information for malicious reasons through deception, not a vague “awareness” problem; examples include… | ||
| Graphing when your Facebook friends are awake | Alexander Hogue | 28m |
A small tool scrapes Facebook’s undocumented /pull endpoint via browser cookies and inspect‑element to log friends’ presence JSON continuously, then converts… | ||
| Python for science, side projects and stuff! | Andrew Lonsdale | 22m |
A case study of side projects that turn into research tools: scraping PLoS metrics with requests and BeautifulSoup to analyze the "10 Simple Rules" series… | ||
| Imposter Syndrome | Bianca Gibson | 36m |
A shortened diagnostic quiz flags frequent patterns: attributing success to luck or extra effort and failure to internal incompetence, plus two repeating… | ||
| I wish I learnt that earlier! | Rachel Bunder | 29m |
Covers concrete Python idioms and measured tradeoffs: list comprehensions beat a loop (1.41 ms vs 2.08 ms) and use less memory, but csv.reader can be slower… | ||
| Automated deployment of Python packages for development | Andrew MacDonald | 37m |
A reproducible pipeline converts each approved Git change into deployed packages: Gerrit + Jenkins CI run tests and build sdist/wheel and conda packages… | ||
| Linear Genetic Programming in Python Bytecode | Mark Burgess | 33m |
A practical demo shows how genetic programming uses DEAP and pyevolve for tree-based symbolic regression but then attempts to evolve Python bytecode directly… | ||
| Python for Bioinformatics for learning Python | Martin Schweitzer | 29m |
Argues Python is both concise and practical for bioinformatics by showing actual solutions: uses Rosalind problems (about 300 exercises, nearly 200 solved)… | ||
| Every Millisecond Counts: Performance & UX | Davey Shafik | 31m |
Shows concrete, measured impacts and fixes: 1% revenue per 100ms (Amazon), 0.5s → 20% fewer searches (Google), images make 63% of page weight so compressing… | ||
| Designing Hardware with Python | Timothy Ansell | 33m |
Python replaces hand‑written Verilog/VHDL for this HDMI capture project by generating synthesizable RTL with Migen/MiSoC and MyHDL, plus KiCad scripting for… | ||
| RULES FOR RADICALS: CHANGING THE CULTURE OF PYTHON | Jason Fried | 26m |
Timeline and tactics for making Python 3 the default at Facebook: built deployable par (Python archive) packages and rewrote the pkg service in Python 3, added… | ||
| Why would a new developer choose Django? | Josh Simmons | 30m |
Compares Django to WordPress, Drupal and Rails using Google Trends and CVE data and finds Django strong on security and stability, documentation and community… | ||
| Django Reduxed | Saket Bhushan | 19m |
Built a dynamic dashboard using Django + django-rest-framework as a REST backend, React for views and Redux as the single client state store, with… | ||
| A quick intro to AWS Serverless | Curtis Maloney | 31m |
Quick, practical AWS Serverless notes: AWS Lambda runs Python/Node/Java functions on events with automatic scaling and measured cold starts around two seconds… | ||
| Python on Windows | Peter Lovett | 31m |
Notes: recent python.org Windows installers can add Python to PATH and include a command‑line installer; expect installs under Program Files or user profile… | ||
| CPython internals and the VM | Christopher Swenson | 34m |
Shows CPython as a stack‑based VM: dis produces bytecode that pushes args, runs BINARY_ADD, stores and reloads values and returns; there is no optimization and… | ||
| Python for Water Forecasting Services | Daehyok Shin | 33m |
Bureau systems run operational streamflow forecasts that ingest observations, fetch climate forecasts, run runoff models and publish results: a seasonal… | ||
| Controlling a 3D printer with Python | James Stewart | 31m |
OpenGB is a Python 3 backend that replaces SD-card workflows by streaming G-code over serial from a Raspberry Pi to common firmwares (Marlin, using commands… | ||
| Scripting the Internet of Things | Damien George | 56m |
A reimplementation of Python 3 runs directly on tiny microcontrollers: MicroPython fits interpreters into ~256 KB flash / 64 KB RAM-class devices, runs on… | ||
| 402: Payment Required. Micropayments for IoT | Mitchell O'Neill | 36m |
A concrete demo of HTTP-based micropayments: a three-step 402 flow where a client gets a payment challenge, uses the 21 library to post a Bitcoin transaction… | ||
| Working with real-time data streams in Python | Lachlan Blackhall | 35m |
Claims that using a Kalman filter on-device yields far better live estimates than naive approaches, needing only two values of state and running in ~30–60… | ||
| The Internet of (Better) Things | Nick Moore | 33m |
Argues that current IoT fails on security, privacy and interoperation with concrete examples: fitness trackers used as legal evidence, Revolve-bricked devices… | ||
| OpenBMC: Boot your server with Python | Joel Stanley | 22m |
OpenBMC replaces proprietary BMC firmware with an embedded Linux stack whose core firmware is written in Python core firmware, exposing device objects over… | ||
| GPS Tracking with Python | Caleb Hattingh | 32m |
Python handles tens of thousands of simultaneous GPS device connections by using asyncio + uvloop for an event loop based server, or Tornado initially, and the… | ||
| ESP8266 and MicroPython | Nick Moore | 28m |
ESP8266 modules cost about $5 modules and pack a Tensilica core running at 80/160 MHz with roughly 160 KB RAM and ~4 MB flash, programmable via esptool and… | ||
| IoT - Lightning Talks | 17m | |
Parses AEMO’s zipped CSV dumps into queryable tables, produces graphs and CO2/hydro/solar breakdowns, and auto-posts market notices to Twitter; initial… | ||
| Comparing Wagtail, Django CMS and Mezzanine | Daisy Leigh Brenecki | 31m |
Mezzanine gives a plain Django model with a Page base, ships a Bootstrap site and a 685-line Fabric deploy script so a site is live in minutes, and offers… | ||
| Lightning Talks and Closing | 53m | |
Twenty rapid demos cover concrete tools and outcomes: a twisted asyncio reactor adapter with future/deferred converters (live-coded but finished with “pretend… | ||
| Reinventing Django for the Real-Time Web | Andrew Godwin | 31m |
Reworks Django so it can handle WebSockets, emails and IM with the same request/response guarantees by introducing Django Channels and an ASGI message layer… | ||
| Django - Customise your SQL | Josh Smeaton | 27m |
Django 1.7 adds lookups so custom operators (e.g. a true not-equals) compile into SQL; a hand-written lookup above saves about 30 microseconds versus Django’s… | ||
| Search-First Writing for Developers | Heidi Waterhouse | 29m |
Documentation optimized for search and built from real forum and support data cuts repeated support and speeds user success. Harvest questions from Stack… | ||
| Integrating 2 factor authentication into your project | Markus Holtermann | 26m |
Explains how to add real TOTP authentication to Django: use TOTP via django-otp for crypto, store per-user key, last-used counter and interval, validate tokens… | ||
| Digitising 100 years of parliamentary data - Django as a framework for government data management | Samuel Spencer | 31m |
Parliamentary Handbook data spanning 100 years is migrated from messy Excel into a Django system built on the Popolo civic model, supporting interactive… | ||
| Django & Drupal: A tale of two cities. | Donna Benjamin, Geert Hofstede | 45m |
Comparison shows concrete outcomes and processes: Drupal embeds Symfony and CKEditor to reduce bespoke plumbing, celebrates Drupal 8 release parties worldwide… | ||
| Behind Closed Doors: Managing Passwords in a Dangerous World | Noah Kantrowitz | 30m |
Defines secrets as small radioactive required values and matches each to tooling, shows concrete threats including brute force, repo leaks, backups, traversal… | ||
| nothing matches | ||