Lightning Talks (2/2)

⚡ Lightning Talk Rules

  • No promotion for products or companies.
  • No call for 'we are hiring' (but you may name your employer).
  • One LT per person per conference policy.
Community Event Announcements
  • ⏱ You want to announce a community event? You have ONE minute.
  • All event announcements will be collected in a single slide slide deck, see instructions at the Lightning Talk desk in the Community Space in the Lounge on Level 1.
All other LTs:
  • ⏱ You have exactly 5 minutes. The clock starts when you start — and ends when time’s up. That’s the thrill of Lightning Talks ⚡
  • 🎯 Be sharp, clear, and fun. Introduce your idea, make your point, give the audience something to remember. No pressure. (Okay, maybe a little.)
  • 🎲 You must include at least one entry from the official Bingo Card list. Every audience member will receive a Bingo card — and they’ll be watching 👀 Your job? Choose at least one Bingo item from the official Bingo Card list—and drop it into your talk. Subtly or dramatically — your style.
  • 🐍 Keep it relevant to Python, PyData and the community. You can go broad — tools, workflows, stories, experiments — as long as there’s some connection to Python, PyData or the community.
  • 👏 Keep it respectful. Keep it awesome. Humor is welcome, but please be kind, inclusive, and professional.
  • 🎤 Be ready when your name is called. We’re running a tight session — speakers go on stage rapid-fire. Stay close and stay hyped.
  • 🏆 Bonus prizes may be awarded. Best talk, best Bingo moment, most unexpected Hogwarts reference... who knows what could happen?
How to Submit

The Lightning Talk desk is located in the Community Space in the Lounge on Level 1.

This session took place in track Others.

Transcript (auto)

Auto-generated from the recording utilizing Open-Source AI. Speaker labels (Speaker 1, Speaker 2) reflect diarization, not identity. Timestamps refer to the recording.

Speaker 1 [00:07]

So welcome to the lighting talk session number two. I will be super brief. On today's menu, events announcements. They're already fantastically on stage. Can I have slides on stage one, please? Popping up. Oh, they're not there yet. Okay. technical difficulties is the cable I believe right popping out there you go all right there you go on today's menu events announcements and playful chaos as you've seen I just want to remind everybody what are we going to do today is play bingo everybody and please let me know if anyone doesn't have it should have received a card like this that's a bingo card as you can see the aim of the game is pretty simple you have to strike a row or a column and the lightning in the very center is a jolly um jolly entry meaning it's already one point so you do three points either rows or columns no diagonal easy as that how you do that have to pay attention to what speakers do and speakers on the other hand have to look to the bingo entry card lists we have prepared there 150 entries of things like that and they need to feature at least one of them mandatory during their talk I just want to say congratulations to all the winners from yesterday we have 25 ish if I counted correctly I'm going to count it back later and good luck to everybody if you had the the bingo card from yesterday you should keep using it or you can get another one it's up to you what we're gonna do at the end of session we're gonna raffle the prices because we have so many and we have prices for everybody all right let's start first with event announcements and I think we can move to stage number two and while we do that I just want you please to do a huge round of applause to the fantastic job the crew has done to have us today double stages and double thingy to have speakers at the same time so thank you very much can you do a huge round of applause please take it away okay thank you so if you like conferences and this is might be a bit too big for you then a bar camp or Python bar camp can be the right choice for you so we have one at the last weekend of June in Germany and it's a bit different it's a very highly interactive thing so actually everybody who's there should contribute and most people actually do and it doesn't matter if you're a beginner of Python or very advanced or whatever your background is so you can register there it's very inexpensive and we have two days in a very nice city of Leipzig and since I didn't had the chance yesterday to show my slides I use the chance now and there's another conference is called your scipy so your scipy.org and you still have a few days to submit your your talk for this conference where the European scientific Python community meets will be in August in Krakow in Poland and we have two days of tutorials two days of talks and one day of sprints and one big feature is that a lot of maintainers of Python scientific packages will be there and if you want to contact the community there, then you can also become a sponsor. Thank you. Well done. Do you want to come and try this one? So you're ready for the next one. Hopefully that works here also. Hello, everyone. Let's wait for the screen. So today I would like to invite you to the heart of Prague, to the beautiful city of Prague, where EuroPython 2025 will happen. It's a great event where you can learn about the latest trends of Python. Additionally, you can learn it from 180 speakers. And this year we expect 1,300 attendees. It means that will be a lot of social events where you can learn when you can exchange ideas where you can Meet a lot of people it will last for seven days. We will have Days for talks for tutorials for workshops for beginners days where you can learn about the Python So do not miss it and hurry up. Don't forget to buy the ticket and join your Python 2025 A place to be, Barkham, it's a Baltic Sea. You see the location, we are on Rügen, and Rügen is zoomed in, so it leads to a direction. And there's also a train station, so it's easy to reach. And it looks nice, beautiful, we are directly on the coast. and yeah, there's also some nice, nice places, great location also, they're also looking for people who want to do their sprint, so maybe if you're not Barcamp, you can do a sprint there but I want you to get to the Barcamp if you are a German interested speaker, Barcamp is for Germans sorry for that, but you can learn German, so and yeah, it's an address PythonCamp.de, it is the oldest BarCamp, so we are very improved with doing that, and we are since three years in Rügen. So, please come. Hi, I'm going to attempt impossible and give you both an announcement and a lightning talk in one minute so imagine there would be a Python conference in a place as beautiful as this and in a city where people take pictures like this one here and it's actually quite close to here the Swiss Python summit in Switzerland unsurprisingly so you won't spend that much money on travel if you end up spending it twice as much as everywhere else on your hotel and the And the best thing is, based on this very scientific diagram, it's less than one Europython away from here. So where in Switzerland exactly? It's in a place called Rapperswil. If you've never heard of that, you might have heard of Zurich. It's at the other end of the Zurich Lake. So about 40 minutes by train by Zurich, trains every 15 minutes, yes, they will be on time, by the minute probably. means you will be there still in less than one hour from the airport. It's two days, one day Python, one day data science, and now I'm already over time. So I'll leave this as a surprise. Hey, everyone. I'm Jim Weiss. I am the recently announced interim executive director for Numfocus. And if you missed my opening pitch on day one, Numfocus is a nonprofit that sponsors vital open source projects like NumPy and Pandas and Bokeh for those who are playing along in bingo. But I did want to take just a quick moment to share an important update about Numfocus. After 13 incredible years, our founding executive director, Leah Silan, is stepping down. Leah has been with Numfocus since the very beginning, and we're deeply grateful for her leadership and everything that she has built. So, as we look ahead, we're excited to find a new executive director to help shape the next chapter. This is a unique opportunity to bring in fresh ideas strategies perspectives to support our growing global community The application is open for one more week, which brings me up to the stage today It closes on May 2nd. And while we're here at Pike on de, please know Kim must be resident. So go and check it out Thank you all right let's get started the lighting talks I'm gonna take like one minute no more to explain what's the plan and what we're cooking for today first off how many of you we hear yesterday I like that good so let me please introduce you the playful chaos take number two. Of course we we had fun yesterday, yesterday was nice and I still want to thank you very much every speaker who came up on stage and but of course it would be a little bit you know annoying if we do exactly the same thing. So yesterday we left here prizes for the speakers and people in the audience and we also said speakers there plus surprise challenges. Today we're going to kind of a change it and something around this lines if you catch the metaphor. How many Harry Potter fans do we have in the room here? You're gonna have so much fun. Right, okay, first off, speaker dares. First rule that has changed. Yesterday we wanted the speaker dares to be like, so that speakers can actually choose their dares. Today we're not going to do that. Speaker dares are actually going in order, so depending on when you're called out on stage you're going to do one of these dares. So first off we have another fantastic rabbit hat and we start with odd numbers because everything is very odd. Number three, the puppet. This is one of my favorite actually. So during your talk you have to use the puppet speaking on your behalf. And the puppet can speak for you. Yes. Number five, this is the unicorn. I particularly like this. Please do yes you have to wear this and there's also a magic wand you have to swing during your talk please yes day one okay so that's that that's the number five go for the even numbers number two we have the bubbles or you have to randomly whenever you fancy you can do bubbles during your talk you take the only one which is not open that's good for you that's fine don't worry okay thank you for the demonstration, everything works. Number four, you have the radiator cap. Actually, it's more than that. It's actually a cup, glasses, and a scarf. So you have to wear this during your presentation. Thank you. A huge round of applause to Johannes who's doing the demonstration for all of you, please. That's the scarf. You're amazing. And the very last, actually, the better as the very last, Let me introduce you, Alex H. Potter. So, we actually have a proper- Will you wear it? I know you will. So, there's a proper original Harry Potter rope, glasses, and magic wand you have to wear during your talk. That's now on stage. I know, and Johannes knew that, by the way. All right, so, thank you. Thank you. Ioannis, everyone. It was a fantastic demonstration. So the rule is, speakers coming on stage can either accept the dare or not. But, random challenge cards. We're going to use random challenge cards differently today. So for those of you not being here, we have a deck of random challenge cards. And thank you very much for everyone submitting their own proposal from the community of Dares. We can do. I'm going to use this randomly in the middle of the talk. And there can be one. I have a shame also to be on stage. So I will be wearing this. Very devilish. I will come up and randomly provide a card to the speaker who has to do that on stage, right so, very important reminder, we'll play the games we're fun together, not make fun of anyone, and let's go with the first pick, so you're going to pick the one actually we should have picked this earlier so that's on me, but in the meantime, please, everybody who's got selected please come up on stage, move there so I can speak with you, and then you can get ready on the next stage so we can switch stage one and stage two so we go very quickly on the selection process all right so the first speaker will be Miguel with dimensional modeling is not dead Miguel are you here come on stage all right so while Miguel gets ready this is your desk should I already announce the second one so he could get ready but it should I accept the second Okay, the next one will be Lilly with Messing Up with AI. Lilly, are you here? Lilly, you here? Oh, Lele. Oh, brilliant. Oh, Lele. You are Lele. All right. Sorry. All right. So stay there, Lele, please. I'll catch you up. Miguel, whenever you're ready. There or one car? There. The unicorn. I dare, the unicorn, if possible, for my daughter. It's all right. Unicorn will come, don't worry. Oh, by the way, something I didn't say. If speakers don't accept the dare, they will pass it on to the other speaker. So this is the responsibility you all have. Also, just to remember, when I do the gong, please clap as loud as you can so we scare away. Well said, well said. All right. You have five minutes, almost, okay. What else should I say? Okay, I'm going to pick randomly a card just to give you an idea of what's going to be the challenge. So, for those of you not here, congratulations to the audience for sticking with you this long, halfway through. Or another one. While they're getting ready. Pause dramatically, take a deep breath, and say, this changes everything. You know, you have to be a little bit acting in the meantime. The last one. She's running a Windows machine by any chance. Ask a rhetorical question and dramatically answer it yourself. Okay. Almost there? Yes. I can see something. Why people still use this Google spreadsheet to do stuff, slideshows? I'm old. I know. Yeah. But still. It's there. OK. Five minutes. Go. Hi. I'm Miguel, wearing a nice hat. So first of all, all the images were handcrafted, obviously. So I'm going to talk about dimensional modeling. Dimensional modeling is not there. So, first of all, I want to ask the audience who, you know, please raise your hand if you, you know, identify yourself as an ML engineer or AI engineer or data scientist. Please raise your hand. Yeah. And please raise your hand if you identify yourself as a data engineer, analytics engineer, or something like that, around that. Okay. Yeah. Half and half. that will come back later so so I'm gonna talk about dimensional modeling dimensional modeling is something that began in 1996 it was invented by Ralph Kimball I don't know if you know it who's familiar with Ralph Kimball and dimensional modeling please raise your hand not so many of you so I'm gonna give a really quick intro and I'm gonna tell you why you need it where your startup your company your AI team or the data engineering team actually need it so right now probably your stack looks like this you are like hogging face you have dbt mlflow you have LLMs on your output in JSON things but creating a you know getting data from complex model complex data sets is hard querying that data in particular if you work with tabular data is very challenging normally we where I work we work with a lot of ERP data in the data look something like this it's crazy so and sometimes people start from this to get whatever features or trying to get a dashboard but if you go back and think okay there's a there's a technology that you know that's something that that began in the 1960s that you can use that sort of like went out of fashion because of big data, Hadoop, schema load. But now with the SQL is already back. Now you can use actually what our elders, that include me, actually learned back in the days. And basically, you can use dimensional modeling to slash that monster of complicated and complex schemas and what dimensional model is very simple I don't have enough time to explain it but basically you have two things one is the fact table which is a measurement of the world like a number number of orders revenue you name it and then you have dimensions dimensions are like the properties entities of your business which you will use to slice and dice the data you want say for a report or a feature for example so you can say in fact you can say I want to see my revenue per certain customer segment or for a promotion and you can with only those two concepts you can express very complicated queries that if you use directly your original data set it will be very hard I don't know how much time I have I'm gonna spit up so a simple query a simple join will look something like this is always use something called the key so you don't have to think about like this table joins with another table using three or four different columns only always only one so that make things simple and you can use that in your in your goal you know if you use like the bronze silver and gold schema you know data brick style at the end you can just set up a dimensional model in that take your row date and transform it to a nice formatted star schema then you can feed that into AI or ML models or into reporting because at the end the number of order in the last 30 days is actually both a feature and it's actually something you want to see on a dashboard so are you ML engineers it's an analytic engineer is it could be exactly the same problem you can use the same solution so everybody wins. So your old dimensional modeling guy can actually work at your startup. And maybe it's a good time to reread or read for the first time this book from Ralph Kimball and Margie Ross. Just check it out, maybe it helps you and Google it. It's very, right now, it's a recommended way to build or to start say a feed into a feature store or a dashboard or, you know, use it. Or if you have a very nice data model, you can even use it for text-to-SQL, you know, like conversational analytics, you know, LLM and so on. Thank you. All right, so I'm going to do the next pre-k. I have to admit I actually broke the rule so of the order so which means that if any speakers as Emanuele wants to use the rope they're very welcome to do that so that becomes the the one um all right uh Kai Harder flake eight something all right brilliant uh please um a huge round of applause to Emanuele starting in thank you everybody so as you probably have seen from the program of this conference ai is pretty big at the moment chat gpt was has become simply the most successful product ever reaching 100 million users faster than facebook faster than instagram faster than TikTok faster than everything that makes our life much worse today. So what can possibly go wrong when something like this happens? Well, usually with something like AI becomes mainstream, you have two things. First, everyone becomes an expert. And two, nobody can deal without AI. So, let's see. Sama, first you. ChatGPT with GPT 3.5. You can ask it, what is the world record for crossing the English Channel entirely on foot? And the answer is a very confident Mr. George Leaf in 2016 crossed the English Channel on foot in 12 hours and 10 minutes, and that's magic. I know just one guy who walk on water, he did for much less than 12 hours and he did it on a much warmer place than northern France or southern England. Well, but today, not to be, but Google, not to be undone, launched AI overview. And with AI overview, you know that you should eat at least one small rock per day. That's according to UC Berkeley geologists, so, again, that can't be wrong. But as an Italian, I have much more important topics to search on Google, like what if the cheese is not sticking to pizza. I have no idea how to cast an Harry Potter spell, so I will skip this one. But of course, you do not want to put some glue on your pizza. But we know where this comes from. So even if you are Google, if your data is not great, then probably your product is not great as well. Oh, by the way, Google paid $60 million to get Reddit's data. So yeah. But what about Amazon? Of course they launched Rufus, their AI assistant on Amazon, and you can have it write your Python code if you don't want to pay copilot or cursor. That was the beta. it is fixed but still you can try. Of course this was all jokes and fun but there are much more interesting problems with LLMs and GenAI. This comes straight from a talk by Catherine Jarmul today and last year, so thank you Catherine. LLMs and all deep learning models memorize unusual data and that's a problem. From the paper of the original Copilot tool, well Copilot takes the distribution from its data where it was trained on. So if your code is crap, like most of the code on GitHub, the most likely suggestion is another piece of crappy code. They have fixed it with RHF at the moment, but still that was a problem in 2022. So what should we do? More base research. That's a great paper from EPFL talking about how LLMs use English as the intermediate representation even when they translate from Italian to French or from Chinese to Spanish and this is a great piece of research by anthropic explaining how we can understand and possibly steer what happens inside an LLM so the next time people tell you that base research is worthless and we should only deal with applied research then tell them to disappear I have the wand. You can return the props whenever you like. So, if folks are wondering how to cast a Harry Potter spell, expect those Lydorum. By number two? See? Easy. I will first pick the next one. Pick the next one, yes. By Alice, reinforcement for learning for dummies. Is Alice there? There. Okay, perfect. So maybe first let me clarify, it's not Flake 8 something, it's Flake 8 Tegeo. So first I maybe take some risk. Who likes Flake 8? Please don't raise your hand, say woo! That sounds good. And who likes Harry Potter again? Woo! Perfect, that sounds very good. So I think I stick today to the theme of Harry Potter, and let me shortly introduce Flake8 Teggeo to you. Teggeo for the non-Latin users, I hope all of you have Latin in school, but maybe you did not, that's Latin for I clean, it comes from Harry Potter for a cleaning spell, maybe. And so what is Flake8 Teggeo? It's quite simple, it's a Flake8 plugin, which helps you clean up your code base. very cool um it includes checks wow and that's maybe the cool thing it has a lot of them um i don't want to go over all of them uh i think that would maybe exceed the five minutes a bit but um that's maybe the short takeaway if you like flagato to all the people who just said that would be maybe the perfect plug-in please try it out um you can find it on github of course also on PyPI. And yeah, it has a ton of rules. And the very cool thing, it also includes other Flake 8 plugins. What does that mean? You don't need to install other common Flake 8 plugins like Flake 8 Simplify or Comprehensions, but they come out of the box. They are pre-configured. They are actively maintained whatsoever. So you just get everything as one bundle together with Flake 8 you. I think that's everything I can spell right now to you and let's hope you have fun with it and yeah thanks a lot. Investing in the community. He's here. I'm here. Yeah. Brilliant, fantastic. Okay, good luck. All right, take it away. Can I go? Okay, but first I have a question for the organizer. Does this one work? Valerio? Sure. Does this one work? For instance, if I do something like Lumos. No? No. Okay. Should I give you an Italian word gesture? LUMOS! Nothing. That's a pity. It has been my dream, like, since I was five years old, anyway. Okay. So, today we will be talking about reinforcement learning for dummies. Before starting, I have a question for the audience. How many of you have ever heard about reinforcement learning? That is so many. So I guess the dummy, it's me. So, okay, anyway. So basically, what is reinforcement learning? Reinforcement learning is the art of training an agent to act autonomously using trial, error, and basically regret. So if the agent behaves well, you basically give him a reward, otherwise you give a punishment. So like crucial, something like that, okay? What happens here is that it's quite difficult to let the agent know what was the mistake, right? Because basically the agent can get confused, and so that's why reinforcement learning is really difficult and in particular you need lots of data to train an agent with reinforcement learning so I will I will just give you an overview of Q learning which is my favorite algorithm in reinforcement learning and it is quite easy I would say you basically have this update equation where you have a Q function which is the action value function and basically the action value function provides the expected future reward of taking an action A being that you are in a specific state S. So I don't have much time I guess but I will just skip to an example because I think it's clear. So usually the classical example is given by a mouse that have to reach a cheese and have to find the optimal path to go to the cheese but since I don't like mouse experimentations and since I am the dummy here I will just use my face okay so I will just go over the room and try to find the cheese also I like cheese so that's fine so at first I will just take a random action right because I don't know anything it's like moving in a room with my eyes like I'm blind you know so I would just move randomly take a random action and it will move up and it will take a small reward a positive reward which is small so I will just take another action now and I will I will just get to the trap so okay I will my training phase here will end and I will start again from scratch from the from the initial state and I won't take any more the action I already took because I already know that that will lead to an end state. So I move to another position, and eventually I will find the cheese and the best route. So basically, just a quick wrap up about the reinforcement learning. So basically, what is reinforcement learning? It is represented by a sum. I mean, the ingredient of the recipe is pain and time. And maybe at the end, you will get some intelligent behavior. But it's time consuming, it's messy, but I mean, it kind of works. And the moral of the story is that we suffer a lot by debugging the code. And this is our chance to let the code suffer too, you know? So we can finally take a revenge and suffer and let the code suffer. Thank you. I've been reminded I should speak in the microphone, stupid of me, thank you very much for your talk, that was brilliant, okay, so before Lisa gets ready, everything is fine, brilliant, fantastic, ready with the puppets, lovely, I think the next one will be I hate Yamo, by Anna, who loves Yamo, anyway, Anna, are you here, oh, brilliant, okay, Lisa, the stage is yours, Hi, I'm Lisa. You might know me from Django Girls or maybe because I lost my pass first thing yesterday morning, but I'm here to talk about something else. I'm a senior engineering manager, so just to manage expectations, this is not about coding. I took a new job about a year and a half ago and I took a job with a company in I'm in Berlin and they had never had any engineering teams in Germany before so I was given a bank of empty desks all by myself and 20 chairs and I 19 of them empty. And I was hired through an external recruiter because they didn't have any kind of footprint in Germany. And of course, if you've worked with an external recruiter, you know, it's kind of expensive. They take a cut when you get hired and another one when you've passed your probation. So we had a really good recruiter. We kept working with her and started filling in some of the roles, but started to kind of add up. So as I'm thinking about all of these other roles that we had to fill, I forgot I'm supposed to do this. And you know, they hired me. So I had a perfectly cromulent plan. I liked a recruiter. She was really great. But for financial reasons, I decided to take this money and divide it up and invest it into the community. Naturally, the first thing we did is sponsor a Django Girls. Shocking, huh? We then started hosting CodeBar in our office. If you're not familiar with CodeBar, it's a sort of language agnostic workshop where people come with their coding problems and just get help, and we did 12 of those. We were doing one every month, and we continue to do those now. We also helped Django User Group Berlin relaunch after sort of a pandemic lull and also brought them into our office. It was really great because people start coming in, and they can see the office, they can meet me, and they can start to picture themselves working there. So we got some traction on LinkedIn. We got some people coming to the workshops and then applying. We started to get more candidates. They started to tell their friends, and we filled in almost all of these seats without using a recruiter ever again. We still have a couple of positions left, but it's because we haven't opened them yet. So you might wonder how much this would cost, right, because it's a lot of beer and snacks and catering. For all of that, it was actually less than 5,000 euros. So as we like to say in Germany, good value for money. What we got out of it was some made-up statistics, but I was already involved in the community, but for me it was really exciting to have a budget that I could help other people realize the ideas that they had, and we made friends, I met new people, I grew my network, the people I hired grew their network, it was great. We're also not an unknown quantity in Berlin anymore, and this has helped us a lot. I knew I was doing something right whenever I went to a meetup somewhere else and somebody asked me about our open positions. almost all of the chairs, and we'll continue to do so. It was so successful that we actually replicated this initiative to our other location. So now they're copying this model there. However, it didn't quite work out for everybody. If anybody wants a really good tech recruiter, I've got a lead for you. That's it. Thank you. I forgot the microphone again. Thank you so much. That was fantastic. I wish I could leave it to you, but you have to return that, sorry. I know. Exactly, yeah, it fits you perfectly. Okay, I'm going to do the pick for the next speaker while we get ready. We have Lukasz, type checking plus asserts. Lukasz, are you here? Lukasz, okay, come along. Fantastic. You have five minutes. Take it away. All right, hi. my name is Arne and I hate Jammer thank you so much for giving me the stage to just have 5 minutes to dump my opinion and feel fancy thank you very much and let me start the whole thing with a story a story about me I'm the guy on the right Yes. Which brings me to my rant. It starts with something like this. If I'm confronted with something like this, YAML is a great format for just about any kind of data-containing file, right? It's simple, easy to read and write, a safe choice, everybody uses it. Is it though? I don't think it's simple. But what does simple mean? Simple means only something, if you compare it to something, complex. What's complex? Well, as far as data formats go, XML is complex. And we can check that. We can just download the XML spec and run a word count and a line count and We see, yeah, it's complex. It's got lots of lines, lots of characters. And YAML is more simple, right? It should be simpler than XML, even if just a little bit. Oh, no. It's not simpler. And the people from YAML know that, too, in that spec. In the preamble, they admit, the YAML specification is often seen as overly complicated for something which appears to be simple. And I don't like that. That has really big, I'm sorry you feel that I made a problem, energy. And they're being too verbose again. You can just go with this. Yeah. And to further make this point, I collected all of the YAML parsers that are out there, the big ones, that parse YAML in the same way. Here they are. And you might have come across this if you ever had like an IDE which lints your YAML files and then you run the code and the linter says, oh, this is not valid syntax, but then you run the code and it's just fine. They just implement different subsets because the spec is so big that it's very tough to implement all of it. Anyway, so it's not simple, but it is easy to read and write, right? I don't think so well if you only use the easy parts of YAML maybe but there is more for example this this is an actual excerpt from a YAML file while a GitLab CI YAML file which is maybe one of the more complicated kinds that there is but this is real this is what I have to read sometimes and I have to understand and it has all the fancy things like like merge keys and tag references and because GitLab as a company thought it's it's too lame to implement like a DSL with references we implemented in a language in a format that already has references yeah so maybe it's not simple and easy to understand but is it a safe choice well why didn't I bring that why do I mention it because it's not there has been a bunch of whoopsie daisies in the past you may have run come across some of these I have yeah if I think it's because the part of this they did something very silly they they implemented the YAML spec and one part of it allows for arbitrary code execution which like a data recording language format should have right it's very basic just a no-brainer really and yet it led to all kinds of interesting CVs and these are not like something trivial. Yeah, let's let's fix it sometime. Those were like borderline project killers well So what about this sentence? Well, I don't really agree with any of it really. Well, maybe some parts We can say that YAML is a format and everybody uses it This concludes my rant Just to throw it out, there are some alternatives to some of my very personal opinions. If machines are exchanging data, just use JSON. If humans are exchanging data, like config files, I like TOML. And if you just have data, like the big thing, then Parquet is fine. And then there's a bunch of more people who I stole some of these examples from. Feel free to maybe look at them. Thank you. Wonderful talk. Okay. Thank you, Arno. You've been amazing. Thanks so much. Return the props whenever you like. While Lukasz gets ready, Johannes does the next speak. Can I have a huge round of applause to all the speakers so far? They've been amazing. Thank you, folks. You've been great. Do you like the speed we are doing this? Yes. Nice. Like that. So, the next one will be Katarina with the entropy of socks without LLM. Katarina? Lovely title. Are you Katarina? Please be here. The title was amazing. All right. So, we get the next one. We get the next one. That's sad. All right. I really wanted to sort my socks, actually. All right. Yes. Anthony. Secure coding by Anthony. Anthony, you're here. Oh, brilliant. Okay. Fantastic. Yeah. Ready? And Lukasz? Yeah. The floor is yours. Five minutes. Great. So I'll try to in five minutes with my dogs. So, yeah, there's a picture of them. However, my presentation has no pictures since that's a placeholder for developer art, let's say. So what I wanted to talk about is something that I didn't see in this presentation, in in this conference, like Unicorns. So assertion, static checks, and things that can help us with developing good code. So we'll do a live demo today, since why not? So I believe that many of us could have already seen enums in Python, so they look like this. You get an enum, or enum, or strenum, and you define some values for that. And then you use it in some function. So it might be not sophisticated, like this one. However, it has one problem, there is no kooks with w, we have a single one, and when we run that, it's possible that this function will return none, and well, our users might not be prepared for that. So what we can do, we can tell, okay, if we go so far, we just can assert that something didn't happen, something didn't match, it wasn't a full barrel, it wasn't a few kooks, and then we have an assertion. So can we do better since that's still a runtime check? Yes, we can. So there was a feature introduced that's called assert never. You just import this, so you import assert never from typing, and then you say what should never happen? There should be, yeah, there should never be foo at this stage. So we can check that this code runs. So a little spoiler alert. So we will run this code and we will see that non-exhaustive if can return none if supplied with WQX. We will get exception if we use regular assertion and we get exceptions when we use assert never as well. So static checks, let's see that. We'll run mypy and mypy says, okay, you have missing critter statements since there is no checking here. We get nothing here, so MyPy doesn't tell us that assertion caused our function to raise an exception. We are not in a Java world, so obviously. And then we have assert never that MyPy has code, so non-exhaustive check. But why I'm showing you all these examples? So we are doing a lot of Django stuff, and what I always try to say, not to use asserts, so at least in production code. And for key readers of change log of Python, you might have noticed that there was a change in, or there's an incoming change in Python 3.14 that says something like this, blah, blah, blah. But overall, what we are interested in, there is something that called optimized away code. So Python has some code optimization. So when you go to documentation to check what dash O does, it does a lot. It removes assert statements. So all the other statements that you do in your code, magically, are removed. And what does it do to your code? So you do, you just add a dash O, and then your code started returning none. And MyPy didn't check that. So yeah, that's it. Be safe. Be cool. Thank you. Beautiful. All right. Thank you very much, Lukasz. was great. We are doing really well today, so while Anthony gets ready with all the magic rope I actually do, this is riding the waves and motivation, Christian are you here? Fantastic, okay. Anthony five minutes, all is yours. Right, I had cataracts done last year and I didn't have to wear any glasses now. Anyway, imagine. Okay, anybody here from the UK? Hey, any teachers? I've got to solve your problem here. We're going to be able to do the curriculum in five minutes. So, secure coding. We all know the OWASP top ten. Have you noticed that things never change? The data validation is still the number one challenge that we all have. And why does that? Because we don't teach coding securely from day one. Most people will start with this as the first Python script. Hello world. And it works. We may get a little bit more advanced and we may change it. And we get it says your name. And then you find that I can't remember how to type it. So let's now change it so we become more interactive. And we still get my name. And we start teaching them how to do formatting. And remember, when we go to school, we make full sentences. So we start capital letters, good words, put full stops. And we still get that. And then we ask, how old are you? That's my age. bing and we then start formatting it and I'm now 12 magic let's try it again whoa what happens oops thank you exactly see you've been catching yes and then so we introduce another concept to Python. Let's introduce the if statement. Stay with me. Someone went to sleep. Bang! There's still some more coding we can do. Let's introduce booleans and while loops. And now we have a working bit of code. I I think it works I haven't checked it but I think it works but what I've done is I've introduced the three principles of coding which is what the UK computer science curriculum has to teach people up to age 16 secure coding go on again in five minutes so if you're a teacher you don't need to teach computing in two years you can do it in five minutes with Harry Potter thank you that was beautiful Cool. Thank you so much, Anthony. Very much appreciated. We go for the next spec while Florian, is it? What's your name? Christian. Christian, sorry about that. Christian, yes, ready? So the next talk will be from Root. Root. Where Excel meets Python. Distribute Excel workbooks without Python installed. Okay. Christian, the floor is yours. Five minutes. Hello, everyone. I'm Christian. I'm completely obfuscated, you won't recognize me, here's my Muppet. I want to talk to you not about code, about the community and something I've experienced once in my lifetime already and many of you probably have too. Everything I said, take it with a grain of salt, take it a bit on the light side, it's not critique on anyone, it's just something everyone experienced once at a time and it's something we shouldn't experience but we will. But we're all part of the community and we can make this better so when we start getting into a community we might feel that everyone around us is this light and dark everyone around us achieved something and had a motivation for that and we did two once maybe hopefully and then we lost it because we saw everyone else way better at it because we just started which is normal but when we see those lights in the dark what kind of feel left out because what do we do when we talk about our journeys we only talk mostly probably about the highs not the lows and I slithered into this community as many of you probably did just because I thought coding was nice and just want to try it out and at first I felt like in one of those X KCD comics where none of the stick figures had any idea what they did but and then one year later I felt like well I don't know shit but everyone thinks I did suddenly I was the imposter right but what are we what what are all all of us aiming for we want to be the heroes the heroines of our stories right so whenever you encounter those lows of motivations or even highs right just ask people about how were how was your journey like right and not only in the community maybe you're working and in your new job you see people completely as the heroes as they are maybe righteously maybe not but you think they did what you never will do right so you think like well I'm now in the situation of someone says well there's this problem your team says any ideas and you say sure I learned something I can solve this problem No, too expensive, no time, whatever, and suddenly you feel left out. The law is striking, right? This happens once, this happens twice, thrice, and times. And your motivation again crashed, right? And nobody's talking about that their idea is getting crashed or that their proposal is getting crashed or that they're not getting where they want it to be. but you let the you make what you suggested so what's my bottom line when you're sitting at your local tavern may it be a meetup may it be a user group may it be a conference like this maybe tell the people the whole journey you traveled right don't just tell them the heist don't just tell them where you're at now. Maybe just, if you feel safe about it, tell them a bit more. Tell them the struggles you had, right? So everyone can feel like they struggle the same. Thank you very much. Thank you very much, Christian. I'll pick up the next speaker while Ruud gets ready and I get ready. Fantastic, save it. I have Joachim Avada-Kadava for life. Fantastic title. All right, Joachim get ready. Ruud, the floor is yours. Okay, hello, good evening. My presentation is something about Python and Excel. I know nearly everybody here will hate Excel, we all know that's a horrible system, but still everyone uses it. And there are even some idiots who use this as a kind of substitute for PowerPoint presentations, particularly those oldies here in the public. But if you still have to use it, or want to use it or whatever, it would be nice if we have Python, oh, oops, I've made a typo here for the bingo, as a bridge language. And there are some packages that possibly some people know, there are modules like OpenPyXL and Excel Writer, you can even do that with Pandas, you can read and write Excel sheets, but that's separated from Excel. Then there are also some tools that are in Excel in which you can do some Python. There are two products I know of. There's Microsoft Python in Excel, and there's Anaconda Code, and they're both shit. I don't know whether everyone has used it, but Microsoft Python is completely unuseful because you have to upload all your data to the cloud somewhere and you have no idea what's done doing so you can't really do any code but very recently and actually I'm talking about last last week I came across a new package called XL wings light and maybe some people have heard about XL wings but this this particular version of XL wings is very nice I'll show you you something about that and that's what I can want to do and the nice thing of this is this can actually this at Python can access the whole Excel data model so you can just manipulate the whole sheet you can reach read and write cells and why do I say that because that's in contrast to the other packages that are in Excel and now the really nice thing about this is that that you don't need any Python installation because it's actually based on Pyodide and that means that if you have a an Excel sheet which confirms this Python code you can just send it to anyone wherever doesn't need to install any Python or whatever and you can just run it and that looks like the the old system with Excel because there might be still some people who who know about that VBA basic there you can do that but that's that's that crap language basic and the code is stored index in in the sheet you have a visual vs code compatible editor and I just show you that here here you can actually see the this is the cut this is this is a sample code it might be a bit on the small side but it's not it's not even sharp well never mind so here you have a have a code and if I just run here a click on this step say hello and then you see here Thank you, it was so funny, the nice thing of this is that it actually accessed it, so it made the sheet and put some code on that on some places. Another example of this is this is actually included in the package itself, in their distribution. What this does is it gets some data from a data source, did it all at this time, and it makes a nice seaborne graph from that. And so that's a standard thing. I've done myself a Sudoku solver, and the Sudoku solver, and I haven't included this, so I have to run the, I have to start this thing. I hope this doesn't take that long. So the Sudoku solver, I had made that code already in the past, but I just implemented it in this system. I just pressed the solve button, and then you can see here the solution, apparently 1800 iterations. It's just a brute force Sudoku solver, but this just to show you how easy it is to get. Thank you. Thank you so much, Ruth, for being game. I think you're fantastic. I think we're aiming for another one now, probably going to be the last. And then we do some other shenanigans. Yeah, ready with your bingo cards. All right, you read it. The next one is, oh, that's so much text. That's a wall of text. By a robot, of course. Corporate culture killing the AI? Star. Star. Thanks. Okay, it's over there. Fantastic. Get ready. And can we have the next speaker on stage, please? Thank you very much. Okay, this is going to be fun. Greetings, everyone. I'm Joachim Sandruls and I will talk to you about casting the killing curse for some good old peace of mind. So any wizards in the audience here today? Typically your journey goes something like this in order of complexity and your systems will grow in entropy over time. You start by just writing your little scripts and soon enough you're worrying about Helm charts and Docker containers and it only goes one way. But we are going to go that way today. So let's try a few spells that some of you might have tried casting at home, like wiping a config file, duplicating entries in a database, overriding or corrupting some data, the good old build your customers twice, and of course, you wrote a script and ran it, that's fine. You run it again and everything explodes. So let's talk about idempotence. The strict definition is if you take a function of x, you get some output y, and if you take the function on that again, you get the same output. There's the classical example of doing derivatives on e of x, but putting it simply, it's just saying doing the thing twice is just the same as doing it once. So let's start casting the killing curse. All right, Avada Kedavra on this little chicken, and you turn it into a yummy snack. Great. Now you cast it again, and lo and behold, the chicken is still your yummy snack. The state of the system is what you need to consider. You have some kind of complicated machinery going on, you started like a Goldberg machine, the clock rings, the wheels spin, eventually the shoe drops, and you start afterwards asking some questions, how did we get here? Can we get back here again? And what happens if we perform the same process one more time? And this turns out to be a great principle both for systems and hardware maintenance and also for software. So the thought is, let's try to make our systems item potent, and if you've worked with Dockerfiles you're already thinking about this a little bit. You're putting your architecture into a certain state by carefully stacking the rocks as you want to start it, and then you break the system as much as you can. You cast the killing curse on the chick, but you can revive it like the phoenix out of the flames and back it comes and it's a great way to test your systems. So item potents in software, it's not just a tool, it's more of a coding philosophy. Your code does the thing only once and then you can't accidentally do things again. There are some things that you maybe need to be careful about because get put that's fine but delete is also actually item potent and once you delete something as you know it's gone. There's a few examples and you can go home and think about how this looks in your code a few tips you can start trying to think more like a distributed system and really assume failures things are going to break whatever can break will break if not today then maybe in five years when someone other poor soul is sitting with your system so please try to write testable restartable retryable code and think about the state of your systems before changing that state so the take away is item postings it's actually really simple, it's not reproducibility, it's just a fancy way of seeing doing it twice is the same thing as doing it once. It leads to improved system stability, hooray, and it's less error prone and easier to maintain and now the wizards are of course happy. So there's a short honorable mention for the chaos monkey from Netflix that simply goes around and kills other components so that you don't have to do it and you can build your system to be stable and easily maintainable. So I'll finish with this kind of provocative thought that if your code doesn't survive a rerun, then it does not belong in production. Avada Kedavra! Thanks for your time. Thank you so much. Performance, in my humble opinion, the best so far. Well done. All right, then. We have Robert. He doesn't have slides, which is great. I'm still missing the puppet. Where's the puppet? It's over here. No worries. Somebody stole it. No, it's not. No, come on. I'm kidding. All right. And that, I'm afraid, could be the last talk of the session. And then we do prices raffle, though. So, Robert, the floor is yours. Great. Thank you very much. Well, great to have the last talk here without any slides, any presentations. So, enjoy the next, hopefully, five minutes. as Valerio was your name? Yeah, thank you. As he said, well, let's do the motto of Harry Potter. I just like, okay, let's skip everything what I was thinking about and do something different spontaneously. Okay, so I would like to give you a glimpse in my work as a culture designer and actually to see, to see, here we go, to see, and the puppet will talk to me, by the way, within a few minutes, to give you a glimpse where we stand right now, especially in the german-speaking area while implementing ai into within our companies right and i would like to do it in a totally different way so i would like to use you as your own agent to create a short clip okay can we do that oh well i hope i hope this was a yes thank you very much Okay, so now what I would like to ask you is, close your eyes, let's create this clip right now, okay, directed by me as the prompter, okay, so imagine black screen, now we see the sun rising up, right, we see a silhouette of a castle, we are zooming in there, by the way this will be a 30 seconds clip, If we zoom there in we see the castle the silhouette of that and surprise surprise. It's Hogwarts Okay, so we zoom in there and we have a room on the top of the highest point of this of this castle Where the top management of Hogwarts is sitting? So we are talking about sea level like Dumbledore like Lord Voldemort and so on and so on. Okay So and now they are leading their houses, right? So we have Slytherin led by Voldemort, that's right. And we have, of course, Gryffindor led by Dumbledore, right? So now, can you see that? Great. So now what is happening there, every day they are just staring out of that and looking at the horizon to see if something new appears, right? And now one day, taking a look out there at the horizon, something new appears accidentally. And they are looking there, taking a look, and see, oh, whoa, there's something new. And what appears is Chewbacca, right? Getting closer, so they see Chewbacca, and Chewbacca is telling them, . Got it? Okay, now we have a cut. They are a little bit scared. We have a cut, and then after a few times, we see one house, like Gryffindor, working and integrating with Chewbacca. By the way, Chewbacca is also known as AI, right? And now the other side, we have Slytherin, right? Taking a look on Gryffindor and seeing they are more efficient, they are more successful on the market, right? Whatever they are doing, they are even faster and better, right? now Voldemort has two choices what is the choice either to see or skip it and just let it like it is because we've always done it like that or try to integrate Chewbacca into the whole ecosystem cut to be continued okay the clip is finished and that is what I would like to tell you where we stand right now and I'm not talking about corporates I'm not talking about the first movers like Gryffindor, right? Integrating AI into the systems. I'm talking about, I don't know, maybe 80% of the mid-sized companies standing right now in front of Chewbacca and don't knowing what to do. How to integrate that, right? And then we come back to the topic of culture because culture is the mindset of the company. Like Dumbledore is letting his house about integrating experts into that being mentoring being whatever right taking look at what are people talking about how can we enable people to implement that and on the other side we have Slytherin led by Lord Voldemort by a toxic culture where there is no decision without him where people are not enabled to implement them where they cannot make any decisions where they are even scared of becoming friends of Chewbacca, but, whoa, I cannot tell Voldemort what is happening there, right? And that is where we stand right now, how companies implementing that, right? And now, Gryffindor is the benchmark for Slytherin, right? We have to exactly do it the same way as Gryffindor does. It doesn't work. Every company is very, very special and individual, right? And we have to take that into consideration. I forgot that no worries that's fine thank you so much Robert that was fantastic all right folks we reached the end of the session so we just have a few shenanigans and then we were free to go well actually you can you want to go you can go first off huge round of applause to all the speakers today you've been amazing also before we continue I just want to thank everyone who submitted the talk sadly we we we had 12 speakers but we couldn't pick everybody but thank you very much for submitting your submissions I truly appreciate that you want to say something no I wanted to say we shut the Okay, fantastic. Great. We're on the same page as always. All right. Well, it's okay. So what we're going to do, for those of you having a bingo today, please stand up. Somebody from the crew will collect your cards, and then we do the raffle for the prizes. Thank you very much. Don't need to come here. Stay there, please. Yes. write your names on it of course if you don't write your name you won't be selected i mean you will can be selected but you won't be called out all right so what i'm going to do now though is the raffle prizes for the speakers yesterday for those of you who were here we had a jury we go randomly today can I have stage one please on monitor actually you can blame Google for that because I'm gonna use that all right this monitor all right brilliant okay so it's Google fault we have 12 speakers can we fetch the price for the best speaker which is the fantastic snake that we had yesterday okay so I put the cards in order of arrival and selection so who's gonna take that number eight one two three oh my god sticky paper four five six seven eight secure coding Anthony you're one a What a fantastic snake, we have to bring it back to Manchester. And now for the second prize, we have 11. All right, let's generate one, it's 11. Robert, you won. The fluffy bunny is... Can we step down in a minute? Alright. So, what else? Anybody fancy the Aviator Cup? I will give it away. Let's go for ten. It's eight again. Fantastic random city here. So, let me count again. One, two, three, four, five, six, seven, eight. Yay! You won the Aviator Cup with everything. The Aviator Cup with the glasses and the stars. Thank you, Jonas. And for the unicorn... Let's go nine. Who wants the unicorn? It's number seven. One, two, three, four, five, six, seven. Lisa, you won the unicorn years. Amazing! I think it will get lost. wonderful can we have a picture of the winners please you're on top of that can you please move a little bit there fantastic alright okay and now for the best prize Harry Potter rope and everything else of course do we have hate one two three four five six seven eight number six lukash all right all right thanks everyone okay so now we do more or less the same uh okay so you you actually got the wrong place you should get the snake not the cap the cap is actually for bingo there was something not fitting him in that image that was the thing all right okay so now we do the bingo have we collected the the winners for today oh my god fine we're not gonna do that today there's too many so we will announce the winners on Discord sadly I can't do this live I need to count them and I can't generate those but if you put your name on it promise me you will be selected and we will send notification to all the winners to collect prizes we have prices for everybody meaning one will get to the cap the lucky winner okay you can do the cat it's gonna take a long actually yeah I think so right let's do it I will get the prizes just from the secret party behind the scenes. By the way, in the meantime, for those of you willing to attend the social event happening here is going to start as soon as we finish here. There's still 30 tickets available. You can go to the registration desk and get some of them. Actually I just realized since we're live I can't actually put music on because we don't have copyright. Sorry about that. So if we cut the live I can do that. So can we say hello and goodbye to people attending live. Bye. Can I know if it's done please? All right, somebody will tell me. How about Pyjokes? Yeah, let's do Pyjokes. It's pyjoke.yes isn't it? Yes. And we installed the path. I know, I don't want to do that I think actually I think I did one I think I did a pie script pie jokes half ones if oh my god yeah it's ancient history but I did a pie joke thing somewhere. 137. It's final. Alright, okay. I wanted to actually showcase my app. Right, one, two, three. Who's the lucky winner? But now how do we count them back? Imagine we have 86. computer science here anyway are we still live by the way can I tell the can somebody tell me if we live so I can put music on in the time so you know the thrill of waiting well we probably are are we good okay I'm not doing anything You're still convinced we can do that? This is what I said 15 minutes ago. How many are we raffling? One. I only need one number. Okay, I'm going to generate the number and then it's your job to choose that and your responsibility. Also, we need to make sure that we have the name and the bingo. Can we have a spell here, something like, okay, can I use a puppet? Jeez. I didn't get that. I don't want this responsibility, no, no, no. It's not going to happen, are you crazy? No. That cup is absolutely brilliant. I don't want this responsibility on me. Let's blame Google for that. It's gonna be 11 All right, who's the lucky winner Marwin Langer are you here? All right Thank you very much, Google, for not generating a large number. Okay. So you win this fantastic hat, which is actually programmable. I think something is missing there, but I'll make sure. Please go on stage. Oh, there's a cable. Enjoy that. Okay, finally, we have prices for all the other people. We have very good working volunteers who had many work to do all these boxes. There are only 90 boxes for 137 people. Six. 36. Okay. So we will go to give these out just tomorrow. Is this okay with you? Yes. Okay. We will do like 40 more tomorrow and we'll give them to you. I think the easiest is, if you win, just pop to the registration counter, claim your prize and you get it. Is that fine? I think it is. Yes. All right. Thank you so much, folks, for staying with me and for being a fantastic audience. I hope to see you soon and enjoy the rest of the night. Bye.

Valerio Maggio

Social card for talk: Lightning Talks (2/2)