PyCon UK 2023
Welcome and Introduction
Unmanaged technical debt weighs down many codebases, exerting drag on their schedules, but it is more often an effect than a cause. We will look at what technical debt is (and is not) with a view to properly attributing the root and recurring cause as technical neglect than technical debt.
Have you heard of Domain Driven Design? Not well known in the Python world, it's an influential development approach that aims to 'tackle complexity in the heart of software'. If you're working on complex problems, come find out more: it may change the way you think!
Join us for an exciting journey into the world of mathematical modelling with Python. From the mechanics of pendulums to the spread of diseases, financial market dynamics, and weather forecasting, we'll explore, experiment, and learn together in this interactive session.
Why should young coders get all the fun? Join us to let off some STEAM and create a security system using BBC micro:bits, cardboard, crocodile clips and plenty of fake treasure!
Monday at PyCon UK is dedicated to our code sprints. We'd love to have you joining in!
Python 3's str
was a leap forward but not a panacea. Join me to dive into the strange world of unicode, how it can bite you, and what to do about it.
Bring your Django, Flask, etc. pages to life using htmx.
No Javascript, nor refreshing the page. Create, update and delete data; change the date range for a chart; drill down using a sequence of dropdowns; create an interactive search box, an infinite scrolling page or a sortable drag & drop table.
Working with data can be challenging: it often doesn’t come in the best format for analysis, and understanding it well enough to extract insights requires both time and the skills to manipulate and visualize it. This session will teach you to effectively use pandas to make this process easier.
Explore the potential of Anvil in the education sector. Discover how Anvil enables the development of powerful systems to streamline processes, enhance efficiencies, and support students and staff. Examine real-world examples showcasing the impact of Anvil in revolutionising education management and empowering educational institutions.
I've always wanted to build a retro computer based on an old-stock Z80 cpu. The biggest roadblock for me in this endeavor has always been finding a way to manage I/O and a modern display.
The Pi Pico solved all this for me.
Do you find it difficult to keep up with the increasing number of reported vulnerabilities? Are you unclear about the severity of a vulnerability in your system? Look no further than the Common Vulnerability Scoring System (CVSS).
Lightning Talks
An evening of board games, manual technology (knitting, crochet, needle felting etc)
Let's get creative using the Turtle library and EduBlocks, a block-based tool for Python!
DjangoGirls and Young Coders Workshops
Welcome and Introductions
Technology is often hidden backstage at the theatre – a toolkit to enhance performance, not something artists make plays about. But generations of audience members have ‘grown up online’. To tell contemporary stories, don’t we need to put tech centre stage? What is digital theatre – and is it still theatre?
Physical computing involves building systems that interact with the world around them. Using a Raspberry Pi and the gpiozero Python library, you can sense information about the environment and display this information in a variety of formats.
The surface of the Earth is curved, so all flat maps of it contain distortions. Specific types of distortions can be eliminated, but other distortions remain. What are these mathematical tradeoffs and how are they made? And more importantly, how can we as Pythonistas make use of this cartographic wizardry?
Earth's sustainability is on the brink. However, with today's information wars this situation isn't universally accepted. This talk democratises citizen environmental investigation by applying Python to selected Green issues. By separating facts from fiction humanity can be better informed to safeguard our existence.
Want to give a lightning talk, but don't know how to get started? Maybe you have an idea and want some time to work on it, with some help if necessary? This workshop will help you to get a great proposal sketched out and in the beginner's bucket.
Use your coding and engineering skills to design a foolproof security system to protect your hoard of treasure.
TBC
5 simple things you can put in place to make sure you have a database that runs smoothly and performs well.
This talk will present how one can use acoustic-based clinical gait analysis to predict onset & progression of cognitive decline as well as assess increase in risk of falls in highly frail and vulnerable demographics of the population, especially older adults who live alone and with multiple co-morbidities.
Code your own Satellite Art! In this scientific computing lab you will choose images of Earth collected by space agencies like NASA as your canvas, then let your creative tech imagination go wild using Python to transform colours and apply filters to produce digital art featuring real planet landscapes.
How we built a prototype to allow journalists to add highlight markers to interesting moments on BBC News in iPlayer, and how we went from idea to prototype to production.
In a hands-on workshop I'll introduce some of the tools and methods I have developed to help an organisation improve documentation consistently and effectively, at scale.
Dask is a flexible library for parallel computing in Python. Dask provides high-level interfaces to extend the PyData ecosystem to larger-than-memory or distributed environments, as well as lower-level interfaces to customise workflows. No previous experience is required, though knowledge of Python, NumPy and pandas is preferred.
Ever seen a code base where understanding a simple method meant jumping through tangled class hierarchies? Seen code go overboard with composition that the result didn’t resemble Python anymore? Let’s take a stroll together through patterns & trade-offs and discuss them afterwards!
What is the best Pokémon team? Who should I pick? What attacks should they learn? Here, I use multi-objective linear programming, and a bit of simulation, to figure it out.
I want a clear picture of how my application is performing in production, but proper observability involves a lot of faff. So let's look at how to add metrics to an application with only a few lines of code and an open-source library called autometrics-py.
At an event, a photographer can take many photos. Which ones do you appear in? Find out how to search for faces using Python, OpenCV, OpenAI and, yes, PostgreSQL®.
Python ties it all together, and PostgreSQL's pgvector extension allows making SQL queries to find photos with my face.
Young Coders Presentations
Lightning Talks
Welcome and Introduction
We’ll revisit three stories from WWII where statisticians for the Allied forces got things perfectly right - and terribly wrong. We'll explore the flaws of averages, survivorship bias, and the German tanks problem. Drawing parallels to modern business situations, we'll discuss the takeaways for modern day data scientists.
There's no doubt that Python is fantastic and a wonderful tool - but how do we teach the joys of Python to those that are new? How do we ensure that our teaching is effective, are we teaching the right things and in the right way?
Simulating a complex tabletop game using the Monte Carlo method can calculate complex probabilities just random numbers. This workshop will work through an example game, explain the maths behind the simulation, and how this can be expanded to other domains such as event or capacity planning.
In this talk, we'll explore techniques to optimize GraphQL performance for snappy, scalable, and resource-efficient APIs. Attendees will learn about batching queries with DataLoader, managing query complexity and depth, leveraging persisted queries for reduced network overhead, and implementing
caching strategies on both server and client-side.
In this talk, we will delve into how leveraging Google's cutting-edge tools and frameworks, combined with Python, can revolutionize the way we bridge the communication gap between sign language users and the wider world.
What actually happens when you import a package? Let's find out, then explore recent packaging developments, including the new tool PDM, comparing it to pip and poetry. We'll also cover some (opinionated) best practices for handling metadata, and building secure, modern applications using third party libraries in python.
Have you ever wondered how self
works? Whenever you call a method, self
seems to magically appear as an argument. But behind this dark magic lies a well-defined protocol, the descriptor protocol, that you can implement yourself. Join me and learn how Python inserts self
into methods!
Ever wish you could create beautiful, publication-worthy graphics in a few lines of code? Welcome to Seaborn, Python’s visualisation library which builds on the Matplotlib package. This tutorial will provide a hands-on tour of Seaborn’s statistical functions, from regression plots to multipanel facet grids and more!
Developers often use code coverage as a target, which makes it a bad measure of test quality. Mutation testing changes the game and fixes the problem.
Come and learn to use it in your CI/CD process. I promise, you'll never look at penguins the same way again!
Smart home automation provides many benefits. But for how long, and at what cost, financial and otherwise? In this session we discuss the current state of vendor lock-in, a utopian open solution and the very practical solutions delegates have built for themselves.
Tired of complex code? Python's standard library has tools to simplify your tasks! Join us for a tour of the standard library where we'll dive into less-known modules that do well-known things and well-known modules that do less-known things.
As creators of software, we're repeatedly told that we're not merely imagining the future of the world, but bringing it into being. Let's suppose that's true. What, exactly, are we imagining, and why does it matter?
Datasets with potential to predict contaminated water are more than just numbers. They can mean the difference between drawing safe drinking water from a well and drawing unsafe levels of arsenic. This talk compares ways of generating a predictive model and addresses the ethical importance of application over technological ideology.
This year I built a library that already exists. The existing solutions didn’t quite meet my needs, I wanted something that ticked all of my boxes. When thinking about building something new people referred me to xkcd #927. But I did it anyway.
Lightning Talks