Talks, workshops, and tutorials

Invite me! 🎙️

If you would like me to speak at your event – be it a local meetup or an international conference –, drop me a line! Sharing knowledge is a passion of mine and public speaking is an excellent outlet for that.

Describing descriptors

PyCon Ireland 2023

In this live-coding talk I wanted to explain how descriptors work by establishing a parallel with properties. Although properties are descriptors, this approach is how descriptors clicked for me and I was hoping it would help descriptors click for others as well.

Coming into the talk, I wasn't sure if I should present it as a live-coding demo, but Barry's feedback tells me I made the right choice:

“Used descriptors before but this [talk] clarified a lot. Live coding is hard to do, but makes it a better experience. Thanks for that.”

PyCon Ireland 2023, 12-11-2023 • Main referenceBackup talk slides (low res PDF) • Online slidesSource code from live demo


Elegant (line of) code ⚡️

PyCon Ireland 2023

In this lighthearted lightning talk I took a Python script for a tkinter calculator and continuously refactored it until the whole calculator was a single expression. We managed to get some laughs out of this ridiculous process, while we also explored a couple of interesting Python features like conditional expressions, Boolean short-circuiting, and assignment expressions.

I was very happy with my performance and so was James, who dubbed it a “killer lightning talk”.

PyCon Ireland 2023, 11-11-2023 • Main referenceTalk slides (low res PDF) • Online slides


How to draw a fractal with Python ⚡️

PyCon Ireland 2023

In this lightning talk my only objective was to show how easy it is to create stunning images with a little bit of Python and a little bit of maths.

With some live-coding, some terrible jokes, and a couple of typos, everyone enjoyed watching two nested loops and the innocent function that you see below turn into the colourful image depicted here.

def f(z, c):
    return z**2 + c

PyCon Ireland 2023, 11-11-2023 • Main referenceSource code


How to implement a Python-like programming language

PyCon Ireland 2023

In this hands-on tutorial we went through the four main components that let you implement a programming language like Python from scratch.

I aimed for an interesting and fun workshop and the feedback I received tells me I delivered it:

“I liked that we quickly got a very simple compiler and interpreter up and running, we did all of the fun stuff without too much of the boring repetitive parts.” — Samir

PyCon Ireland 2023, 11-11-2023 • Main reference (blog series) • Workshop materialsTalk slides (low res PDF) • Online slides


Mastering comprehensions

PyCon Portugal 2023

This practical workshop presented the audience with several exercises on comprehensions (list, set, dictionary & generator expressions) and idioms around their usage.


(More) Animations from first principles ⚡️

PyCon Portugal 2023

After my first lightning talk was so well-received, I came back to show a different type of animation where we make a recursive drawing that zooms in infinitely.


Comprehending comprehensions

PyCon Portugal 2023

In this talk I helped the audience discover the immense potential of Python's list comprehensions, dictionary comprehensions, set comprehensions, and generator expressions, as I presented them as an idiom that focuses on data transformations.

This talk complemented my tutorial on the same subject, but the talk hadn't been accepted for the original schedule. However, I stepped in when a speaker had to cancel a few days before the conference.


Animations from first principles ⚡️

PyCon Portugal 2023

In this lightning talk I show how to create simple animations in Python and pygame from first principles, from drawing a circle to morphing it into a figure eight.


How APL made me a better Python developer

Func Prog Sweden meetup

This talk is a personal account of the things that I do differently in Python after having learned APL, a language that seemingly had nothing to do with Python and nothing to offer with respect to my Python code.


What APL taught me about Python ⚡️

EuroPython 2023

In this lightning talk I wanted to share my personal story of how learning how to program in APL ended up teaching me things about Python.


You DON'T know comprehensions 🤷

EuroPython 2023

In this poster session, I make the claim that the vast majority of people don't know comprehensions well enough! Thankfully, this is very easy to fix!

  • Where: EuroPython 2023
  • When: 20th of July, 2023
  • Written version of the poster: book
  • Download the poster for yourself: poster

Dozens approached me during my poster presentation – which I repeated tirelessly from noon until 3 pm because people just kept showing up – and I am very proud to say that my poster (presentation) got a lot of praise.

But, most importantly, I got feedback from people that learned new things about list comprehensions thanks to my poster.


How dunder methods rule Python under the hood

EuroPython 2023

In this impromptu talk, I gave an introduction to dunder methods for a beginner audience.

This talk had not been scheduled in advance! There was a last-minute cancellation and the organisation reached out to me to fill in the slot.


Practical introduction to descriptors

EuroPython 2023

In this impromptu Python tutorial, I gave a practical introduction to descriptors.

This tutorial had not been scheduled in advance. The day before, I noticed there was an empty slot in the schedule. After talking to the organisers, we concluded it was OK for me to use that slot and so I whipped up a short, practical tutorial for descriptors!

I got incredible feedback! A participant, Sofia, wrote:

“Fantastic workshop about descriptors! I came out of it having learnt a lot about what goes on in the background. Really loved the friendly approach and the practical exercises with solutions so that everyone can follow. Keep going 🚀”


Build a terminal TODO application with Textual

EuroPython 2023

In this Python tutorial, I introduce people to Textual by building a TODO that runs in a terminal.

Alexander attended my tutorial and he wrote “Rodrigo did a really good job with the tutorial. I hope he starts teaching more regularly because his tutorial was fun and I learned a lot.”

Original photo by Braulio Lara.


Describing descriptors

PyCon Sri Lanka 2023

In this Python talk, I introduce descriptors and show they are not black magic.


Pydon'ts – Write elegant Python code v4

PyCon Portugal 2022

I was scheduled to give this talk in person but I had a family emergency and couldn't attend. Later, I recorded the talk at home and made it unofficially available online.

In this Python talk, I continuously refactored a piece of code by using Python features elegantly.


Comprehending Comprehensions

PyOhio 2022

In this Python talk, I teach the key ideas necessary for you to finally understand list, dict, and set comprehensions, and generator expressions.


Smoosh all the things ⚡️

EuroPython 2022

In this lightning talk, I show how functools.reduce is such an important function that we use implicitly when we call built-ins like sum and all.


Python objects under the hood

EuroPython 2022

This was my very first appearance at an in-person conference... And I just loved it...

In this Python tutorial, I show how Python uses dunder methods to define how objects (built-ins and custom objects) interact with the Python syntax.


Why mastering Python is impossible and why that's OK

University College London meetup

In this Python talk I share some insights on how to avoid learning plateaus in Python.

  • Where: University College London meetup, virtual
  • When: 29th of April, 2022
  • Written version of the talk: blog article
  • Slide deck: link

Why APL is a language worth knowing

FnConf 2022

In this talk I show how learning APL influenced the way I write Python code. For example, I show how APL helped me understand how list comprehensions work.


Pydon'ts – Write elegant Python code v3

PyCon Sri Lanka 2022

In this Python talk, I continuously refactored a piece of code by using Python features elegantly.


Fifty shades of sign

PyCascades 2022

In this Python talk, I went over +10 implementations of a very simple function while exploring elegance, simplicity, and some intricate Python subtleties.


Your first Python class & Python objects under the hood

New Zealand PUG

In this 2-part Python tutorial, I introduce classes in Python and then proceed to show how Python uses dunder methods to define how objects (built-ins and custom objects) interact with the Python syntax.


Pydon'ts – Write elegant Python code v2

Pyjamas Conf 2021

In this Python talk, I continuously refactored a piece of code by using Python features elegantly.


Pydon'ts – Write elegant Python code v1.1

DjangoCon US 2021

In this Python talk, I continuously refactored a piece of code by using Python features elegantly.


Pydon'ts – Write elegant Python code

EuroPython 2021

This was my very first conference talk and what I consider a great milestone in my career.

In this Python talk, I continuously refactored a piece of code by using Python features elegantly.


Implementing a neural network from scratch

EuroPython 2021

This was my very first conference appearance and a moment I have very fond memories of!

In this Python tutorial, I guided attendees in their journey to implementing a full neural network with nothing but NumPy.