Here is the full menu of the standalone technical workshops we have on offer. More are on the way!
If you are looking for corperate or team solutions then you might be interested in one of the following:
Automate data and task workflows with Apache Airflow! From the basics of task scheduling to advanced techniques for managing complex task interdependencies, this workshop will guide you through everything you need to know to get the most out of Airflow.
Duration: 2 Days
Level: Beginner to Advanced
Apache Airflow was originally created by the nice folks at Airbnb. Airbnb was growing rapidly and, as they grew, so did their task and data pipeline orchestration needs. They created Airflow to solve their own urgent needs. And then they open-sourced it.
Airflow is a kind of task scheduler, but with a lot of super powers. Here are a few of things it's good at:
One of the really cool things about Airflow is that DAGs are authored using Python code. A DAG is a graph of tasks and their interdependencies. Since DAGs are written with normal Python code (instead of some kind of configuration language), you can be quite creative about how you author them.
This workshop will take you from the basics to advanced concepts, helping you to get to grips with some of Airflow's weirder parts for building, scheduling, and managing workflows at any scale. We'll show you how to use Airflow to create reliable, maintainable data pipelines, automate tasks, and troubleshoot complex workflows effectively.
You will be introduced to concepts in a hands-on way. Every concept will be practised and implemented.
You will also be given DAG challenges to solve along the way to build up and solidify your skills.
Participants need to be comfortable writing Python code.
Please be aware that Airflow only works on certain operating systems. Here is a link to the official docs:
Learn to build fast, modern APIs with Django Ninja's type-safe, intuitive framework. Work with automatic documentation, data validation, authentication, and testing while creating production-ready RESTful APIs that power modern applications.
Duration: 2 Days
Level: Intermediate
Need to build fast, clean, and well-documented APIs? Django Ninja makes it easy. In this hands-on workshop, you’ll learn how to design and build RESTful APIs using Django Ninja’s intuitive, type-hint-friendly interface. We’ll cover routing, data validation, authentication, and documentation—giving you everything you need to power modern frontend apps or mobile clients with a robust backend.
While Django REST Framework has long been the go-to solution for APIs in Django, Django Ninja offers a fresh, modern approach. Inspired by FastAPI, it brings type hints, automatic documentation, and intuitive syntax to Django API development. It's fast to write, fast to run, and produces APIs that are easy to understand and maintain.
This workshop focuses on practical API development patterns that you'll use in real projects.
This isn't just about learning Django Ninja syntax—you'll explore modern API design principles:
This course expects solid knowledge of Django fundamentals including models, views, and URL routing.
Basic familiarity with REST APIs and HTTP concepts is helpful. Some experience with type hints in Python is beneficial but not required — we'll cover what you need to know.
Based on popular demand! Deploying a Django application can be a challenging task, especially the first time around, with many steps and configurations to navigate. In this hands-on workshop, we’ll guide you through deploying your Django project, making it accessible on the web and ready for production use.
Duration: 1 day
Level: intermediate
Deploying your Django application for the first time can feel daunting. From selecting a hosting provider to configuring your server, handling secrets, and ensuring security, there's a lot to tackle. This workshop will help you cut through the confusion and walk you through each step of getting your Django project live on FlyIO, a flexible and powerful hosting platform. By the end, you’ll have your own deployed Django application, complete with database setup, secure static file handling, and optimized performance.
In this workshop, we’ll cover a complete deployment workflow, ensuring your application is production-ready. Topics include:
This workshop is designed for developers with intermediate experience in Django who are ready to take the next step and deploy their applications. Basic knowledge of Django is required, but prior experience with cloud deployment is not necessary.
Join us to turn your Django project into a live, production-ready application!
Database design is at the heart of many Django applications. This hands-on workshop will introduce you to the basic concepts, and then build up your skills and experience through a series of exercises of increasing difficulty.
Duration: 2 Days
Level: Intermediate
Database design is at the heart of many Django applications, and learning how to structure your models effectively can make or break your project. In this hands-on workshop, you’ll learn how to craft Django database models that meet real-world requirements, maintain performance, and remain easy to update as your application grows.
We'll start off with foundational concepts - in order to reason about Django models, it's important to have a grasp of the underlying structures. We'll start off with exploring the basics of SQL tables, relationships and queries.
Once the foundations are in place, we will move through a series of examples and challenges of increasing difficulty levels.
You will be introduced to concepts in a hands-on way. Every concept will be practised and implemented.
You will also be given challenges to solve along the way to build up and solidify your skills.
Participants need to be comfortable writing Python code.
This workshop is designed for developers familiar with Django basics who want to deepen their experience with database modelling. It will be especially useful for people who have a project that they want to work on. There will be a lot of space for questions.
If you are not yet familiar with Django then you might take a little bit longer on some parts.
This workshop provides a comprehensive introduction to Django, covering its core components and how they work together to help you build dynamic, data-driven web applications.
Duration: 2 days
Level: Beginner to intermediate
Django, the web framework for perfectionists with deadlines, is a high-level Python web framework that takes the hassle out of web development by providing a set of robust tools for building secure, scalable, and maintainable applications. This hands-on workshop will guide you through the core concepts of Django, demystifying its components and showing you how to use them to create powerful web applications.
From models and views to templates and forms, you'll learn how Django’s architecture fits together, and how to leverage its features to handle everything from user input to database interactions. By the end, you’ll explore not just how to use Django, but how it helps developers write clean, efficient, and reusable code.
This workshop is hands-on and interactive, with guided examples and exercises to reinforce learning. By the end, you’ll have built a small but complete Django application, gaining the confidence and knowledge to start creating your own projects.
Git is a life skill. This workshop is designed for absolute beginners to help you build solid experience with Git, the tool that powers modern software collaboration. You’ll also gain confidence using the terminal, setting you up for success in managing your projects efficiently and collaboratively.
Duration:
Level: Beginner
Git can feel intimidating at first, but with the right foundation, it becomes a powerful tool in your developer toolkit. This hands-on workshop will demystify Git and version control, focusing on key concepts, essential commands, and practical workflows.
You’ll learn to track changes in your code, collaborate with others, and recover from mistakes. Along the way, we’ll get comfortable using the terminal to execute Git commands and build habits for a smooth development workflow.
No prior experience with Git or the terminal is needed — just a willingness to lean into the learning!
Participants will work on interactive exercises to reinforce learning, including:
This workshop is for anyone new to Git or the terminal. Whether you’re just starting out in programming, transitioning into development, or looking to boost your confidence in version control, this workshop will set you on the right path.
This short course is designed to help you honestly and effectively showcase your skills, build a strong portfolio, and earn the attention and trust of potential employers. Through practical advice and guided exercises, we’ll focus on crafting a standout online presence, sharing meaningful projects, and communicating your value as a developer—all without resorting to shortcuts or interview tricks.
Duration:
Level:
In today’s competitive job market, many would-be developers try to hack the job market. Many rely on AI tools to generate false CVs and nonesense cover letters, many try to cheat at job interviews. This makes things risky for organisations looking to hire. This forces organisations to close doors on people with real potential, and to undercut their own ability to deliver value.
This workshop focuses on building job hunt strategies that focus on building trust and removing risk for employers.
In today’s competitive job market, authenticity and demonstrated skill stand out above all else.
This workshop focuses on helping developers build a solid foundation for their job search by presenting themselves honestly and professionally. You’ll learn how to create a portfolio that highlights your real-world abilities, write resumes and cover letters that connect with employers, and showcase your technical and communication skills in a way that earns trust.
The goal isn’t to game the hiring process — it’s to prepare you to step confidently into your next opportunity, armed with the tools and mindset to succeed.
The job hunt is not a single event, it's broken down into phases
This workshop is highly practical and collaborative, with hands-on exercises to refine your portfolio, write impactful resumes, and rehearse authentic interview techniques. By the end, you’ll have a polished toolkit to showcase your skills and the confidence to approach job applications and interviews with integrity.
You will be expected to interact with your peers - you will be giving people honest feedback about their work, and seeing different approaches to showcasing skills. Remember that this is about authenticity so there will be things to learn from each other.
In this interactive workshop, you'll learn how to build a modern CRUD application using Django, HTMX, and AlpineJS. It's all about making web development faster, more fun, and accessible for backend developers. With a small group size and hands-on guidance, you’ll create your own project while exploring new tools and simplifying your workflow—all at your own pace.
Duration:
Level: Intermediate
Once upon a time, if you wanted a truly modern web frontend experience for your Python web app you would have limited options. Many people would reach for heavy frontend tools and frameworks such as React, Vue or one of their many competitors. And those tools generally have their own recommendations around testing.
Times have changed - tools like HTMX and AlpineJS are taking Python Web dev by storm and simplifying the creation of modern frontends
These tools make full-stack web dev fast and fun, they simplify development, shrink code bases, and give backend devs the ability to do modern frontend work. In my personal experience, I've seen the adoption of these tools lead to massive productivity gains for junior and senior devs alike.
This workshop will walk you through the process of building and testing your own unique CRUD application with a rich and modern frontend.
If you are interested in learning more about why HTMX is worth being excited about, here is a webinar that goes into some detail.
We'll be using the following tools:
It would be useful if you are comfortable with the following:
Django is brilliant. It's the web framework for perfectionists with deadlines. It's worth knowing about. And, for newer web developers, Django is an amazing teacher in its own right.
That said, if you are not into Django then that is fine! The focus of this tutorial is on building the frontend. The vast majority of what we cover in this tutorial can be used as is with other web frameworks. For example FastAPI, ExpressJS or similar.
90% of the web is CRUD. CRUD stands for Create, Read, Update and Delete. Once you know how to implement simple CRUD apps, you will be able to do quite a lot.
The workshop will guide you through the process of building a specific application. You will be encouraged to choose your own adventure and make use of the skills covered to build your own project.
In previous workshops learners have worked on projects like:
You can do quite a lot with a CRUD app.
Build dynamic, real-time web interfaces using Django Channels and HTMX. Learn to create live notifications, chat systems, and streaming data features without heavy frontend frameworks. Perfect for developers who want to add real-time functionality to their Django applications while keeping things simple and maintainable.
Duration: 2 Days
Level: Advanced
Modern web users expect dynamic, responsive interfaces—and Django can deliver. This practical workshop explores how to build and test real-time features using Django Channels and HTMX. You’ll learn how to push updates to the frontend without page reloads, enabling rich, interactive experiences like live notifications, chat, and streaming data — all without reaching for a heavy frontend framework.
Traditional web applications rely on request-response cycles, but modern users expect instant updates. Whether it's live chat, real-time notifications, or collaborative editing, users want to see changes as they happen. Django Channels extends Django to handle WebSockets and other protocols, while HTMX lets you add dynamic behavior with minimal JavaScript.
This workshop isn't just about learning two technologies—it's about exploring how to architect real-time features that scale and remain maintainable.
This is an advanced course. Participants should be comfortable with Django fundamentals and have basic familiarity with HTMX.
You should be familiar with Django models, views, templates, and URL routing.
Bridge the gap between research and production-ready code. Learn essential software engineering practices that make data science projects maintainable, scalable, and collaborative. Perfect for data scientists and researchers who want to build robust, professional systems.
Duration: 3 Days
Level: Intermediate
Data science and research often begin with experimentation and rapid prototyping, but bringing these ideas to production requires different skills. This workshop bridges that gap by introducing essential software engineering practices that make data science and research projects maintainable, scalable, and collaborative.
Many data scientists and researchers enter the field through academic paths or specific problem-solving contexts, missing crucial software engineering lessons that could significantly increase their impact, and save them from a lot of struggle. The difference between a working prototype and production-ready code lies in applying solid engineering principles.
This workshop focuses on practical techniques that add leverage to your data science work, enabling you to build systems that others can contribute to, maintain, and trust in production environments.
This workshop emphasizes both good process AND good design:
Learn to build systems that scale beyond individual use:
This workshop is designed for data scientists and researchers with basic Python experience who want to improve their software engineering practices.
You should be comfortable with Python basics, have worked with data analysis libraries (pandas, numpy, etc.), and ideally have some experience with Jupyter notebooks. No prior software engineering experience is required.
Authentication systems need to be secure and user-friendly. Building them by hand is a lot of work, and not recommended. AllAuth is the go-to package for handling user authentication and account management. It is very versatile - AllAuth is very customisable and has an impressive list of features (including many social login options). But integrating and customising it is not exactly straight-forward
Duration:
Level: Intermediate to advanced
Django-allauth is frankly brilliant. It provides robust, secure, fully-featured and flexible authentication out of the box. There is a good reason that it's the go-to authentication package for Django developers.
Many people hear about AllAuth and all it can do and then, when they try to dig in and integrate it into their application, they struggle and then move on to some other solution. This is partially because AllAuth is built to be highly super configurable - creating an easy-to-follow tutorial that shows each person how to hit their own use case and match their visual design is not so straight-forward.
The best way to get your head around it is to dig in the code, see examples of AllAuth in action, and experiment with different options. For many people this is intimidating. And many simply don't know how to get started.
The skills needed to integrate AllAuth into an application are not unique to allAuth. Being able to dig through code and docs, and tweak and override things to work how you need them to is necessary when it comes to many advanced Django dev tasks.
Getting good at AllAuth makes you a better Django developer!
This workshop aims to get you to be the kind of person who can handle things like AllAuth integration with ease.
In this hands-on, practical workshop you will integrate and customise AllAuth in a realistic application. In doing so you will learn what it takes to integrate it into any application and you'll get comfortable in peeking under the hood to see how it works.
The best way to learn to get AllAuth to dance is by looking at the AllAuth code. By peeking under the hood, we'll be able to get an idea of what the package maintainers think is important.
This workshop requires a solid grasp of Django's core concepts.
If you are new to Django you can still join in but it's important to realise that there will be a much steeper learning curve.
You can prepare for this workshop by completing Django's official tutorial