Anjana suffers from a debilitating case of curiosity, which led her from philosophy to English teaching to computational linguistics to software development. An engineer at ÜberResearch, she can usually be found in Berlin; that is, when she's not speaking at events around the world, trying to share the joy of coding and make tech more diverse and accessible. Talk to her about functional programming, language design, and speech technology; ask her about Mozilla, Outreachy, and the Recurse Center!
Investigating the impact of source language choice
Towards a CAPT system for French learners of German
Functional programming is a cool paradigm to work in, because avoiding mutable objects can save you a lot of headaches! But when you're using only immutable objects, you have to create a new object each time something changes, which means copying even the parts that didn't change! This can slow things down, and you might even run out of memory! Fear not: persistent data structures to the rescue! They save you time and space when modifying objects, by reusing parts of the old object that you don't need to change! Let's find out what that means and why it is SO AWESOME!
Do you ever wonder what your simple, beautiful Python code looks like to the interpreter? Are you starting to get curious about those .pyc files that always pop up in your project, and you always ignore? Would you like to start investigating your Python code’s performance, and learn why some programs you write run faster than others, even if the code looks more or less the same? Have you simply fallen so completely in love with Python that you’re ready to peer deep inside its soul?
In this talk, we’ll explore the weird and wonderful world of the double-underscore, and find out how dunders can be useful, silly, dangerous, and just fun! We’ll play pranks on Python’s builtin operators for arithmetic and comparison. We’ll make arbitrary objects behave like dictionaries and containers. We’ll reduce an object’s memory usage, and speed up tests for membership. We’ll even try some naughty function hacks that we should never use in real life!