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.
In this talk I share non-technical lessons I learned after working on a FOSS project full-time for +500 days. These lessons fall into 4 broad categories:
This is an improved version of the same talk I gave at PyCon Lithuania 2024.
PyCon DE & PyData Berlin 2024, 24-04-2024 • Main reference • Talk slides (low res PDF) • Online slides
In this talk I share my experience working on a FOSS project full-time for 503 days, sharing some of the non-technical lessons I learned along the way.
These lessons fall into 4 broad categories:
Attendees were fond of the stories I shared and my openness. In fact, Oleh said that
“[I particularly enjoyed the] Direct and open speech.”
PyCon Lithuania 2024, 04-04-2024 • Main reference • Talk slides (low res PDF) • Online slides
In this lightning talk I draw from my APL experience to solve a simple coding challenge: given a string representing an expression, how can I determine whether the parentheses are correctly balanced or not?
In the end, we'll end up with two fun lines of code that use features of the Python language that are typically frowned upon!
Dave enjoyed himself and told me:
“That was a great lightning talk! Clever, entertaining, thought-provoking, and brief.”
PyCon Lithuania 2024, 03-04-2024 • Main reference • Talk slides (low res PDF) • Online slides
In this talk, I use an example from the Django framework to motivate the need for descriptors in the Python language. Then, I proceed to explain the descriptor protocol, tying it to the original motivating example, through a live-coded demonstration.
The objective of the talk is to make sure the audience understands that frameworks (like Django) rely heavily on Python features (like descriptors) to operate their machinery.
PyCon Lithuania 2024, 03-04-2024 • Main reference • Talk slides (low res PDF) • Online slides
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 reference • Backup talk slides (low res PDF) • Online slides • Source code from live demo
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 reference • Talk slides (low res PDF) • Online slides
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 reference • Source code
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 materials •Talk slides (low res PDF) • Online slides
This practical workshop presented the audience with several exercises on comprehensions (list, set, dictionary & generator expressions) and idioms around their usage.
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.
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.
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.
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.
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.
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!
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.
In this impromptu talk, I gave an introduction to dunder methods for a beginner audience.
__init__
, and about __str__
and __repr__
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.
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 🚀”
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.
In this Python talk, I introduce descriptors and show they are not black magic.
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.
In this Python talk, I teach the key ideas necessary for you to finally understand list, dict, and set comprehensions, and generator expressions.
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
.
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.
In this Python talk I share some insights on how to avoid learning plateaus in Python.
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.
In this Python talk, I continuously refactored a piece of code by using Python features elegantly.
In this Python talk, I went over +10 implementations of a very simple function while exploring elegance, simplicity, and some intricate Python subtleties.
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.
In this Python talk, I continuously refactored a piece of code by using Python features elegantly.
In this Python talk, I continuously refactored a piece of code by using Python features elegantly.
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.
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.