Skip to content

Commit

Permalink
PyCon UK 2023
Browse files Browse the repository at this point in the history
  • Loading branch information
jonafato committed Aug 25, 2024
1 parent 0e8717e commit 9bfb997
Show file tree
Hide file tree
Showing 33 changed files with 701 additions and 0 deletions.
3 changes: 3 additions & 0 deletions pycon-uk-2023/category.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"title": "PyCon UK 2023"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "We\u2019ll revisit three stories from WWII where statisticians for the Allied forces got things perfectly right - and terribly wrong. We'll explore the flaws of averages, survivorship bias, and the German tanks problem. Drawing parallels to modern business situations, we'll discuss the takeaways for modern day data scientists.\n\nWorld War II, the largest armed conflict in human history, not only required unfathomable firepower but also unprecedented brain power. Data scientists - or statisticians as they were called back in the day - worked tirelessly to advance military technology and produce indispensable intelligence reports. Eighty years on, the lessons they learned remain relevant and are important for anyone doing data science or analysis at present.\n\nIn this talk, we\u2019ll visit three stories from WWII and discuss how the lessons learned then apply for modern day business settings. We\u2019ll explore:\n- How the flaw of averages made the scientifically optimised cockpit to be a perfect fit for no-one.\n- How survivorship bias impacted the armour placed on bomber planes.\n- How the need to assess the monthly rate of German tank production bred a simple solution.\n\nIn the second part of the talk we\u2019ll discuss how learnings from these stories can be used in a business environment, working through business use-cases with real (looking) data and some basic Python manipulations.\n\nWhile the talk was prepared with data scientists and analysts in mind, anyone with a curious mind may find it worthwhile. Basic familiarity of Python is helpful but not required. By the end of this talk audience members will be familiar with several common pitfalls in data science and equipped to handle business problems in a more mature and well-rounded way.",
"language": "eng",
"recorded": "2023-09-24",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Alon Nir"
],
"thumbnail_url": "https://i.ytimg.com/vi/yXGQBB_RFec/hqdefault.jpg",
"title": "3 Lessons Data Scientists Can Learn from World War II",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=yXGQBB_RFec"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Python 3's `str` was a leap forward but not a panacea. Join me to dive into the strange world of unicode, how it can bite you, and what to do about it.\n\nIn Python 3 we finally got a Unicode-native `str` type throughout, and there was much rejoicing. But Unicode is a tricky beast, difficult to tame, and there are still plenty of ways it can bite you if you are not careful.\n\nWe will look at some of these ways, the eldritch abominations looming in shadowy corners of Python's text; we will discover how the siren-song of seemingly innocuous strings can dash you upon the rocks, the deep peculiarity of the humble flag, and finally come to inner peace and harmony as we understand true grapheme-nature.\n\nWe will then touch on the deeper mysteries of bidirectional text, and our hearts will turn to despair. It will be a fun time.",
"language": "eng",
"recorded": "2023-09-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Alistair Lynn"
],
"thumbnail_url": "https://i.ytimg.com/vi/1yJi5DmZR-E/hqdefault.jpg",
"title": "Adventures in Unicode: the `str` less travelled",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=1yJi5DmZR-E"
}
]
}
22 changes: 22 additions & 0 deletions pycon-uk-2023/videos/domain-driven-design-and-python.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Have you heard of Domain Driven Design? Not well known in the Python world, it's an influential development approach that aims to 'tackle complexity in the heart of software'. If you're working on complex problems, come find out more: it may change the way you think!\n\nI've been writing code for 25 years. Over that time I've been through a few, rare, exhilarating paradigm shifts where my thinking as a developer suddenly changed. One was early on, when I suddenly understood object oriented programming. Test driven development was another. And then, six years ago, I read Eric Evan's 2003 book _Domain Driven Design_.\n\nThe book opened up for me a whole new way of thinking about the practice of software development. It is focused not on traditional technical concerns we're used to reading about, but on the conceptual world of modelling. It views an application's _domain model_ as one of its most important assets, and presents a wealth of wisdom about how to orient our thinking, code and working practices around that model.\n\nBut, for some reason, these ideas are not well known in the Python community. \n\nI now work on a highly complex project: Kraken, a Python monolith of tens of thousands of modules, serving energy and utility companies in a variety of countries. Domain Driven Design has, for me, been an invaluable influence.\n\nIn this talk, I'll outline the key ideas of Domain Driven Design, ideas that are beyond any one language, technology or architecture. I'll also ground it with some practical examples of how it can look in Python. Are you looking for your next paradigm shift? Perhaps this could be it!",
"language": "eng",
"recorded": "2023-09-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"David Seddon"
],
"thumbnail_url": "https://i.ytimg.com/vi/4XKhH9whNX0/hqdefault.jpg",
"title": "Domain Driven Design and Python",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=4XKhH9whNX0"
}
]
}
22 changes: 22 additions & 0 deletions pycon-uk-2023/videos/fear-the-mutants-love-the-mutants.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Developers often use code coverage as a target, which makes it a bad measure of test quality. Mutation testing changes the game and fixes the problem.\n\nCome and learn to use it in your CI/CD process. I promise, you'll never look at penguins the same way again!\n\nCode coverage (the percentage of your code tested by your tests) is a great metric. However, coverage doesn\u2019t tell you how good your tests are at picking up changes to your codebase - if your tests aren\u2019t well-designed, changes can pass your unit tests but break production.\n\nMutation testing is a great (and massively underrated) way to quantify how much you can trust your tests. Mutation tests work by changing your code in subtle ways, then applying your unit tests to these new, \"mutant\" versions of your code. If your tests fail, great! If they pass\u2026 that\u2019s a change that might cause a bug in production.\n\nIn this talk, I\u2019ll show you how to get started with mutation testing and how to integrate it into your CI/CD pipeline. After the session, you\u2019ll be ready to use mutation testing with wild abandon. Soon, catching mutant code will be a routine part of your release engineering process, and you\u2019ll never look at penguins the same way again!",
"language": "eng",
"recorded": "2023-09-24",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Max Kahan"
],
"thumbnail_url": "https://i.ytimg.com/vi/8Gl_Brl4GVI/hqdefault.jpg",
"title": "Fear the mutants. Love the mutants.",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=8Gl_Brl4GVI"
}
]
}
20 changes: 20 additions & 0 deletions pycon-uk-2023/videos/friday-lightning-talks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"description": "Lightning Talks\n\nLightning Talks",
"language": "eng",
"recorded": "2023-09-24",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"thumbnail_url": "https://i.ytimg.com/vi/O2ApDUsPDSc/hqdefault.jpg",
"speakers": [],
"title": "Friday Lightning Talks",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=O2ApDUsPDSc"
}
]
}
22 changes: 22 additions & 0 deletions pycon-uk-2023/videos/friday-welcome-and-introductions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Welcome and Introductions\n\nWelcome and Introductions",
"language": "eng",
"recorded": "2023-09-23",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Ann Barr"
],
"thumbnail_url": "https://i.ytimg.com/vi/D3oaUdCdEto/hqdefault.jpg",
"title": "Friday Welcome and Introductions",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=D3oaUdCdEto"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "At an event, a photographer can take many photos. Which ones do you appear in? Find out how to search for faces using Python, OpenCV, OpenAI and, yes, PostgreSQL\u00ae.\n\nPython ties it all together, and PostgreSQL's pgvector extension allows making SQL queries to find photos with my face.\n\nNowadays, if you attend an event you're bound to end up with a catalogue of photographs to look at. Formal events are likely to have a professional photographer, and modern smartphones mean that it's easy to make a photographic record of just about any gathering. It can be fun to look through the pictures, to find yourself or your friends and family, but it can also be tedious.\n\nAt our company get-together earlier in the year, the photographers did indeed take a lot of pictures. Afterwards the best of them were put up on our internal network - and like many people, I combed through them looking for those in which I appeared (yes, for vanity, but also with some amusement).\n\nIn this talk, I'll explain how to automate finding the photographs I'm in (or at least, mostly so). I'll walk through Python code that extracts faces using OpenCV, calculates vector embeddings using imgbeddings and OpenAI, and stores them in PostgreSQL\u00ae using pgvector. Given all of that, I can then make an SQL query to find which pictures I'm in.\n\nPython is a good fit for data pipelines like this, as it has good bindings to machine learning packages, and excellent support for talking to PostgreSQL.\n\nYou may be wondering why that sequence ends with PostgreSQL (and SQL) rather than something more machine learning specific. I'll talk about that as well, and in particular about how PostgreSQL allows us to cope when the amount of data gets too large to be handled locally, and how useful it is to be able to relate the similarity calculations to other columns in the database - in our case, perhaps including the image metadata.",
"language": "eng",
"recorded": "2023-09-23",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Tibs"
],
"thumbnail_url": "https://i.ytimg.com/vi/_FqKxKVJGWQ/hqdefault.jpg",
"title": "How I used PostgreSQL\u00ae to find pictures of me at a party",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=_FqKxKVJGWQ"
}
]
}
22 changes: 22 additions & 0 deletions pycon-uk-2023/videos/how-to-keep-your-database-happy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "5 simple things you can put in place to make sure you have a database that runs smoothly and performs well.\n\nYou don't want to spend too much time looking after your database; you've got better things to do with your time. You do, however, want your database to run smoothly and perform well. Fortunately, there are a few simple things that you can do to make sure your database ticks along nicely in the background.\nI've put together my top 5 tips, based on things that have been useful to me as a DBA and as a database consultant. These are things you can put in place, without too much effort, to make sure your database works well. The focus will be on PostgreSQL, but most of the tips are also relevant to other databases.\nYou'll come away with some simple ways to keep your database happy, leaving you free to concentrate on developing your application.",
"language": "eng",
"recorded": "2023-09-23",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Karen Jex"
],
"thumbnail_url": "https://i.ytimg.com/vi/G7glaoEa9WQ/hqdefault.jpg",
"title": "How to keep your database happy",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=G7glaoEa9WQ"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "I've always wanted to build a retro computer based on an old-stock Z80 cpu. The biggest roadblock for me in this endeavor has always been finding a way to manage I/O and a modern display.\n\nThe Pi Pico solved all this for me.\n\nIntroducing the Raspberry Pi Pico Z80-Based Retro Computer: A Revolutionary Fusion of Modern Technology, geekiness and Nostalgic Computing!\n\nPrepare to be blown away by this project, where the almighty Pi Pico take on the role of the ultimate multitasker \u2014a graphics card, clock, ROM, and keyboard controller\u2014 for a Z80-based retro computer. Did I ignite your inner geek yet?!\n\nImagine a Z80 cpu, like the one that powers the BBC micro but with vibrant 8-bit color graphics coming to life on a VGA screen! All thanks the Raspberry Pi Pico and its PIO capabilities. The Pico in this project has been turned into a somewhat efficient graphics card, enabling smooth rendering of retro-style visuals on modern screens. Experience the nostalgia of blocky pixels.... **in 4K** (with an HDMI adapter)\n\nThe Raspberry Pi Pico's versatility extends beyond its graphics capabilities. Acting as the clock, it allows for varying the speed of the cpu and do \"fancy\" things like step by step debugging of Z80 assembly.\n\nOne of the most delightful aspects of the project is using the Pico as a ROM. Gone are the days of meticulously erasing and rewriting chips, as this setup allows you to effortlessly load files instead.\n\nAnd with the Pico acting as a USB host, you are free to plug in modern hardware directly into this fancy retro computer! USB keyboard and mouse, SD-card reader, you name it!",
"language": "eng",
"recorded": "2023-09-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Emma Delescolle"
],
"thumbnail_url": "https://i.ytimg.com/vi/Ea3yX3fQCEo/hqdefault.jpg",
"title": "I plugged a Z80 into a Pi Pico, here's how it happened",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=Ea3yX3fQCEo"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Technology is often hidden backstage at the theatre \u2013 a toolkit to enhance performance, not something artists make plays about. But generations of audience members have \u2018grown up online\u2019. To tell contemporary stories, don\u2019t we need to put tech centre stage? What is digital theatre \u2013 and is it still theatre?\n\nAda Lovelace was the daughter of a social reformer and a mad/bad/dangerous-to-know poet. She grew up to be a mathematician, an analyst, a musician, a gambler, and the first computer programmer. But the engine she coded for was never built \u2013 and she didn\u2019t live to see whether her programme worked or not. \n\nI\u2019m the daughter of an English tutor and a \u2018works in software\u2019. I\u2019ve grown up to be a playwright and a digital theatre-maker. I was also commissioned to research, write, and develop a play about Ada Lovelace, music, AI, and poetical science. But it was never staged \u2013 and I have no idea if it works in performance or not. \n\nLuckily I\u2019m not dead yet, and I have actually managed to stage other work exploring how tech-y themes, online communities, and virtual spaces work in live theatre. My theatre-making overlaps with gaming, radio, film, and livestreaming. I love thinking about how staging the tech can create restrictions/opportunities, feeding into the form and the theme of a story. And I\u2019m especially interested in how theatre \u2013 an artform that had to change dramatically to survive lockdown \u2013 might move forwards now that audiences are more reluctant to leave their homes than ever.\n\nIf you\u2019re not the kind of person who goes to the theatre then you might be the kind of person who\u2019s up for digital theatre \u2013 poetical science, maybe, rather than just poetry. If, of course, we can agree on what digital theatre even is\u2026",
"language": "eng",
"recorded": "2023-09-23",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Emily Holyoake"
],
"thumbnail_url": "https://i.ytimg.com/vi/PeUb0D8VDWU/hqdefault.jpg",
"title": "If you can\u2019t give me poetry, can\u2019t you give me poetical science?",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=PeUb0D8VDWU"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Bring your Django, Flask, etc. pages to life using htmx. \n\nNo Javascript, nor refreshing the page. Create, update and delete data; change the date range for a chart; drill down using a sequence of dropdowns; create an interactive search box, an infinite scrolling page or a sortable drag & drop table.\n\nPython has many excellent back-end frameworks, but we can't use it yet for mainstream front-end development. How do we bring our web pages to life without having to write Javascript, and without learning a front end framework like React or AngularJS?\n\nThe htmx library uses simple tag attributes to add behaviour to HTML tags. It gives you access to AJAX, CSS Transitions, WebSockets and Server Sent Events directly in HTML for modern user interfaces. \n\nLearn how, without refreshing the page, you can: create, update and delete data; change the date range for a chart; drill down using a sequence of dropdowns; and create an interactive search box.\n\nDiscover how to use htmx with any Python web framework. The examples will mostly use Django, plus a single example of how to use the same ideas in Flask.\n\nYou will also see how to create an infinite scrolling page, a sortable drag and drop table, and more.",
"language": "eng",
"recorded": "2023-09-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2023.pyconuk.org/"
}
],
"speakers": [
"Coen de Groot"
],
"thumbnail_url": "https://i.ytimg.com/vi/iPraT0gscDU/hqdefault.jpg",
"title": "Interactive web pages with Django or Flask, without writing Javascript",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=iPraT0gscDU"
}
]
}
Loading

0 comments on commit 9bfb997

Please sign in to comment.