Monitor performance issues & errors in your code

#393: Space Science with Python Transcript

Recorded on Wednesday, Nov 30, 2022.

00:00 Space science is one of the few sciences that can spark wonder and imagining in almost anyone. It also happens to be the domain of Python with many missions, telescopes and analysis happening with Python playing a major role. On this episode we have Thomas Albin who has worked on several recent space missions. He's also created a delightful YouTube channel called Space Science with Python. It's approachable and yet concrete and realistic. We're going to dive into some of his videos and see how Python can model things like asteroid flybys and render comets in 3D. This is Talk Python to me. Episode 393 recorded November 30, 2022 Welcome to Talk Python to Me a weekly podcast on Python. This is your host, Michael Kennedy. Follow me on Mastodon where I'm @mkennedy and follow the podcast using @talkpython, both on fosstodon.org. Be careful with impersonating accounts on other instances. There are many. Keep up with the show and listen to over seven years of past episodes at Talkpython.FM. We've started streaming most of our episodes live on YouTube, subscribe to our YouTube channel over at Talkpython.FM/YouTube to get notified about upcoming shows and be part of that episode.

01:26 This episode of Talk Python to Me is brought to you by compiler from Red Hat. Listen to an episode of their podcast to demystify the tech industry over at Talk Python.FM/compiler and the AWS Insiders podcast AWS is changing fast. Listen in to keep up over at Talkpython.fm/Awsinsiders. It's also brought to you by Microsoft for startups foundershub. Get early stage support for your startup without the requirement to be VC backed or verified at Talkpython FM/Foundershub. Transcripts for this episode are sponsored by AssemblyAI, the API platform for state of the art AI models that automatically transcribe and understand audio data at a large scale. To learn more, visit Talkython.FM/AssemblyAI. Thomas welcome to Talk Python to Me.

02:18 Yeah. Thanks for inviting me. And by the way, Michael, I'm looking forward to this conversation here today and spread astronomy and Python a little bit.

02:25 Around. Two things that are still amazing. Obviously people know that I love Python, but I really love maybe three angles here. I love astronomy and I just love how it allows us to just dream so big. Right. And so much of science fiction is about space and interplanetary travel and I mean, obviously we're not there, but thinking about space is just so amazing. And also all of your work on YouTube is really nice and we're going to talk a little bit about that. So super exciting topics that we got lined up here.

02:56 Yeah, thank you very much indeed. Space is really also one of my passions since I'm a child, right. So I worked on some stuff, still doing this as a hobby, as a side project, as a freelancer and so on. So I think we have some topics to talk in the next 60 minutes or so.

03:12 Yes, we do. So before we get into that, though, let's just set the stage with a little bit of background for yourself. And what's your story? How did you get into programming Python, and how did you find yourself doing all these live stream Python space science stuff on YouTube?

03:28 Yeah, sure. So, as I just said, astronomy is part of my passion since I'm a kid. Right? But it's more about Python. And back in 2009, I started studying physics. And then I did my best shot thesis in 2012 at the European Space Agency in North Bike in the Netherlands. And there had a task to create some kind of simulation software to determine the detectability of so called New Earth objects. So objects that are, let's say, coming sometimes quite close to Earth. And you want to observe them, you want to detect them. You have your telescopes, but you don't want to waste resources. You want to see, where do I have to look with what kind of settings? So this was my very first project and also my very first touching point, a contact point with Python. Afterwards, I did my master thesis in Guttingham, so in the middle of Germany, where I was also a student at the Max Planck Institute for Solar System Research. And there I was part for three years, for a little bit more than three years on the Film mission. So part of the Rosetta mission, which flew to the comet to Room of Garasimengoes. So maybe some of the listeners know this is a mission that we're landing on the comet. And there was part of a small instrument called the Dust Impact Monitor, where we used Python for data analytics and so on. So if you read a paper about this mission from 2014 or so, Python is involved. You can believe me that yeah, afterwards, PhD, I was part of the Cassini mission of the so called Cosmic Dust Analyzer. You see asteroids, dust, you know, the cosmos is big, but I was always interested in the small stuff. And there I used Python for numerical simulations and also machine learning. And this machine learning task is something that I'm still continuing because since three years I left academia, I joined the automotive industry here in Stuttgart. There are only two candidates, and it's one of them, it's MercedesBenz, where I work as a senior machine learning engineer. But in my free time, I'm still doing this tutorial videos to share my knowledge I gathered over the last couple of years. And I'm doing also freelance work at the Free University of Berlin, continuing to develop some machine learning models for the Cassini mission. Yeah, so this is my short story.

05:45 What a cool story. I mean, you got to be on not just one, but two space missions, which is really, really fascinating.

05:53 Yeah.

05:54 So people work on these for a long time, right? I know some of the people I think it was Cassini, the people who were on the project when it was getting planned and then built and then oversaw. That was many years. Right. And so did you drop into it while it was kind of already going a little bit or were you there from the start for some of these?

06:12 That's a very good question. That's a very good question. Of course, there's always this cliche saying of saying this missions are generation projects and I just can't confirm it totally. Right. Like the proposal for Cassini was, I think, a year or so a few years before I was born. And I'm not 32, so it is indeed a generation project.

06:32 Yeah, I had a full head of black hair when it started and then I was bald when it landed. Something like that. Right? That's the most favorite.

06:40 Yeah, absolutely. I mean, these missions, they take a long time to prepare, to build and test and then you have to fly there and get the data, derive conclusions. And I mean, still now Cassini has gone since like, I think five years now and there's still tons and tons of data that needs to be analyzed. And the same thing applies also for the Rosetta mission.

07:00 Right. Once either the mission is over because the spacecraft was destroyed on purpose, like Cassini was crashed into Saturn so it wouldn't potentially end up on one of the moons that could potentially have life and corrupt it. Right. Which have a lot of forethought or foresight there, or the mission is over, it returns there's still, maybe the work almost just starts then. Right, if you're trying to understand all of this data and trying to tease out all the things that might be discovered.

07:28 Yep. So one example, I mean, Cassini, when it was launched, 1997, I think machine learning was not really a big topic. Right. I mean, for example, support vector machines were invented in 90"s then the last couple of years you had no deep learning and other new methods and more computation power and now you have more and new ways of analyzing data. And this was that. Nobody was thinking about this when the mission started. Right. So of course with new methods on Earth, you can analyze the data from the past and this applies for many other missions as well. So this is amazing times. So if anybody's interested in astronomy and Python, I mean, you can work with heritage data. It's pretty cool.

08:08 A lot of that data is public. Right? I don't know about ESA, but I know that NASA basically makes all of their data public. How about ESA?

08:16 Yes, that's right. So NASA has a very good policy on this ESA also. They have also their data. I'm not 100% sure.

08:26 I think NASA has this PDS planetary data system or so where all the data are public.

08:31 But I have to admit I do not know the exact ESA policy. So I knew that our data were public quite fast. So we published everything on the PDS system with description and documentation. But I can only speak for my team and not the others. I do not know what the general policy is, though.

08:49 Yeah, pretty interesting and fortuitous because it's the inputs for a lot of your work. At least we're discussing today.

08:56 Absolutely, yeah.

08:57 Question from the audience real quick. Kim out there asks, as a ballpark, how much data does a mission like Cassini generate?

09:02 That's a good question. I think there was a poster a few years back, I think in 2017, and it was, let's say, in total, a large three digit gigabyte number. So, like hundreds of gigabytes. Of course, one would say, I don't care, there's not no big data for me. But you have to think that this is like really raw data, binary data. If you are decompressing the data, it's way, way more. So, for example, I was working on one instrument, the Cosmic Dust Analyzer, and after decompressing all the data and put them into an SQL database, we had like, I don't know, like 200GB of data, right. Compressed. It was only a fraction of it. So it's really large number. And especially also the images take a lot of space.

09:46 The other thing you got to think about is we don't have fiber from US to the spaceships. Right? It's like a 2600 Bod modem. Not actually, but in terms of the bandwidth all the way out to Saturn, that is not a high bandwidth connection. Right?

10:00 Absolutely. I mean, if I remember correctly, the Rosetta spacecraft had like, I think, twenty six k, like a twenty six k modem. So it was before my time when the Internet was created, let's say. And this underlines the importance of having good algorithms to compress the data and also send the data in a smart way and also to analyze the data already on board. Right. So, for example, our instrument, right?

10:25 There's probably one level of filtering like.

10:28 Our instrument on feeler. In fact, we would like to have all the signals, every dimensionality and everything, but at the end, we were only able to extract certain attributes of the signals to derive our scientific conclusions. So, yeah, there's always a caveat.

10:43 Even terrestrial on the Earth, like CERN and Large Hadron Collider, they do a bunch of processing right, on those devices. Because even when you have fiber, it's still completely the amount of raw data blows it away. So it's got to be trimmed down to something like, okay, we'll take 1% of the interesting data and then look at that, which is still some tremendous number.

11:02 Yeah.

11:02 Final question, final followup on this, I suppose. Before we move on, I saw some conversations or some write ups about the deep space network, is that what it's called? Where they passed the data around and reworking that to be higher bandwidth. Do you know anything about this?

11:17 I did not work on any network topics. But I remember as I saw this huge dishes, and I really can't say anything about the bandwidth. It depends on the mission, right? If you have a mission close to the sun or at Moon, can get megabytes of data within minutes. But if you compare it, for example, with the Voyager missions that are really far beyond, like, it takes hours, the radio waves, it takes hours to get there and to come back. We are talking there about really bytes or bits per second, right? Although you have a dish of 80 meters, like, for example, in Australia. So improving this would probably improve the signals and noise ratio and everything to communicate better with instruments in the far away, like also new horizons that is also now beyond Pluto.

12:01 Yeah, amazing. All right, let's make our way over towards the YouTube side of things. So I ran across you over on Mastodon and what an interesting time it is. There's a new social network, and people are kind of like finding a new way to do this thing we've done for a long time. So I saw your profile, like, okay, so it says, former space scientists, ML engineer creating Python and space and machine learning tutorials on YouTube. Like, all right, I got to go watch these. And so I ended up on your YouTube channel thinking just what a really cool project that you got going on there. And I wanted to share that with everyone, especially the data science folks. But even if you're just interested in a little bit of these data science tools or I can see this being really interesting for teachers, maybe high school and college who wants something slightly more interesting to show their students. Then we're going to load up the New York City taxicab tipping data once again. And you're going to see that there's really a lot of cool possibilities for things that are both pretty approachable, not tons of code, but the results are cool. And it's sort of inspiring in the sense that we talked about with Space at the opening. Now, before we get into this, specifically one thing I just want to get your thoughts on, because this is really interesting. You hear people talk about how social media is really bad and there's filter bubbles and there's like, misinformation and absolutely acknowledging all those things are true places like YouTube, for all of their problems and all of their fail videos. And memes of the day, there's a whole bunch of really incredible information. So, for example, I had Dr. Becky on, and she's got an incredible YouTube channel over there, like half a million subscribers. She does such a good job of being very real about talking about what she does and as an astronomer and also sharing she does stuff where she's like, sharing notebooks on screen and whatnot, but it's still pretty informational. Another one that I really like is, astrum with Alex mccallagin, really, if you're just going to kick back and relax and watch something inspiring, this is a fantastic channel that people can check out. But what caught my attention about your work is just it's so concrete, right? It has this sort of inspirational, amazing things. But now let me pull up the Cassini data and let me throw that into Pandas and then there's a bunch of cool tools we'll talk about that used to visualize it. So maybe what are your thoughts on this YouTube as an educational resource compared to say like Discovery Channel or History Channel or these other places? You think these are great pro documentaries, like actually these are way crappier than these YouTube channels. It's amazing.

14:36 Yeah, I think there are a lot of different channels out there for let's say different levels of knowledge, right? I mean, like what you showed other channels, they would like to do something like public outreach, so they explain signs of you on the basic level and it's pretty good and fair, right? Because you reach more people, you reach a larger audience and make science more accessible to these people, right?

14:57 This applies for a lot of different science channels. Like we've also like V Source or So who made also signs quite popular with his funny videos of his funny beginnings and so on. And the thing I wanted to do is to introduce, let's say, this Python character to really work on the data. And I know that I will never reach the audience like the others, right? Because the others, they have different goal, right? They want to make, let's say popular science, so to speak, to make it accessible. Here you have more requirements to understand that they have videos like for example, Python and so on. So this is more like really for the people who are really into coding and so on. But I was thinking, and I just checked YouTube and I was thinking, well there are coding videos out there, but this particular small spot, astronomy and Python, this was a gap, nobody was filling it. And I was thinking, well let's try it out and see how the responses and I was writing on Reddit, on Twitter and so on with some people. And you talked about high school teachers. Actually some teachers were writing me and said hey Thomas, this is pretty cool, can I use your code? And so I said, of course. Everything is open source, right? So you reach a different audience, you do not reach thousands or hundreds of thousands of people, but people who like to interact with you, talk with you and have ideas and so on. This is pretty cool and I like it.

16:18 This portion of Talk Python to Me is sponsored by the Compiler podcast from Red Hat. Just like you, I'm a big fan of podcasts and I'm happy to share a new one from a highly respected open source company. Compiler and original podcast from Red Hat do you want to stay on top of tech without dedicating tons of time to It? Compiler presents perspectives, topics and insights from the tech industry. Free from jargon and judgment. They want to discover where technology is headed beyond the headlines and create a place for new It professionals to learn, grow and thrive. Compiler helps people break through the barriers and challenges, turning code into community at all levels of the enterprise.

16:53 One recent and interesting episode is there the great stack Debate. I love, love talking to people about how they architect their code, the trade offs and conventions they chose, and the costs, challenges and smiles that result.

17:06 This great stack debate episode is like that. Check it out and see if software is more like an onion or more like lasagna or maybe even more complicated than that. It's the first episode in compiler series on software stacks. Learn more about compiler at talk python FM compiler. The link is in your podcast player show Notes. And yes, you could just go search for a compiler and subscribe to it, but follow that link and click on your players icon to add it, that way they know you came from us. Our thanks to the compiler podcast for keeping this podcast going strong.

17:42 It's really amazing. And also those people that you reach, many of them have an amplification effect, right? Like somebody who watched astron probably just really enjoys it, but somebody who watches your video might go do like a college lecture or make it part of their course or sort of spread it further. So really cool. What we're going to do is we're going to go through a couple of your videos and highlight some of the ideas. I don't know, how long is your, you've got a playlist which I'll link to called Space Science with Python. It says how many videos? Do you know how long it is? About? Roughly?

18:14 Oh, good question. I have now over 60 videos. So this is like the main playlist. I have also near Earth objects and also machine learning. So I think in total I would say each video is between ten to 25 minutes. So in total it's a few hours. Let's say if you're more familiar with Python, you can also, let's say, take only a look at the Jupyter notebooks. So yeah, it really depends where you would like to start and just small disclaimer. My very first videos, the audio quality is not so good and I'm really talking like a robot.

18:45 So yeah, it was kind of difficult for me in the beginning, but now it's way easier, let's say.

18:50 Sure. Well, I can tell you the ones that I watched further down perhaps they're really good, really nicely done and I can definitely recommend them. And as somebody who has gone on this journey of creating stuff public, right, if I go back and listen to episode one, two or three of my show there's a bunch of great stuff there. I'm just like it's still a little bit of a cringe worthy type of thing, right? So you're like, oh, my gosh, listen to audio and that echo. Where's that echo? Who didn't notice this echo? All right, before we dive into this, there's a couple of tools and libraries and stuff that I came across that were really somewhere new to me, and some were really, really powerful. So you have all of your code, as you said, on GitHub, and we'll link to that. Maybe the first one, maybe it was its name or you just used it a lot. And some of the first videos that I watched, spiceypy, I mean, what a cool name. So what is this? Tell us about Spiceypy.

19:40 Yes, so Spicepy is based on the toolkit from NASA. So NASA introduced Spice, like, I would say, decades ago, right? It's a toolkit based on C, fortran, I think. Also Java. I saw And Spice is like, let's say, the tool to compute trajectories. So the movement, the path of planets, of spacecraft and so on. But not only the movement, also, for example, the orientation of a spacecraft. Where is my camera looking on Mars? How is my instrument oriented with respect to Saturn and stuff like this. So basically every geometric question you would like to question, you can answer this with Spice. There was one caveat, though. There is no native support for Python. And there's one, I think he's still a PhD student, Andrew Annex. And he was thinking, well, I write, I make a wrapper for the C library for Python. So he is doing this. And it's like an unofficial library of Spice, which we call no Spicy Pie. But it includes everything, really everything. And it's a little bit also kind of science. It's not easy to approach this toolkit because if you look at the official NASA documentation, it's sometimes, all due respect, it sometimes looks a little bit older, let's say like an older HTML site. I mean, the advantages will remain for the next decade as well. Right. No fancy front end stuff.

21:07 I put it in the Wayback Machine and it looks the same.

21:11 Something like that, right?

21:13 Yeah. And spiceypy is something I use. Also my videos and try to help others or my viewers to approach this tool to compute trajectories, the positions of planets and so on, because you can do all these things with Spice. And Spiceypy is the perfect wrapper for it.

21:29 Yeah, it looks really easy to use. And that's the kind of thing that just seems really unapproachable without a little bit of help on this day. At this second, how is Jupiter oriented over to Earth? And if this comet is coming through at this angle, what's the distance between those kinds of questions over time seem really tricky to answer. And it's those kinds of things you can do with Spiceypy. Right?

21:53 Exactly. Yes. There's one small caveat though. You have to know Socalled kernels. So huge database with a lot of files where all the information is stored. But again, I also put it into my videos and there's some documentation on this. It's the learning curve is quite steep, but very, let's say, humbling in the beginning.

22:13 I can imagine. Let's see. So in a lot of your Githubs you'll have these kernelmeta TXT one is this here it's just a picture. And in here it's got link back to these particular files that have all the information that spiceypy needs. Right. So it's not completely standalone. You've got to provide these files to work from. Right?

22:33 Exactly. So I put these kernels that I use for my orientation also in the GitHub repository. And for example, these three kernels is like the second one. You see this 00:12 TLS. It's something that contains time information. So you may know every four years you have a leap day a day you have to add in your calendar. Right. But there's only half the truth. There are also so called leap seconds and leap milliseconds and what's not, not. And this crucial information are stored in these files, for example, and you need to load them to convert time.

23:05 Well, we don't care that much about a leap second here and there on Earth, but if you're traveling for ten years at 30,000 miles an hour, 50,000 km an hour off by 1 second might mean you don't make it to the right place. Right?

23:18 Exactly. I mean, with Spice you also compute the orientation, for example, of your dishes to the spacecraft. And pointing is very, very crucial. I mean, light speed is not instant. Right. It also takes some time. So you have to be really careful and really precise with your scientific work and alignment.

23:35 I suppose you do. I was thinking of spaceships, but I wasn't thinking of light.

23:40 But you're right.

23:41 Another question for the audience. Are those kernels effectively enormous tables of data about where Jupyter will be at a given time and stuff like that?

23:48 Basically, yeah, in a way they are. But they are different kernels with different precision. So, for example, for the solar system, you have very precise kernels that cover a year, for example, and you have maybe less precise kernels that cover 50000 years. And so there are like really different kernels that cover different time ranges with different precisions. But you're basically right. And let's say the art is to create your own kernels with your own methods and so on. This is something I did not cover yet, but we will get to this in the future.

24:19 OK, more videos to come. All right, so we spoke about Spicepy. Excellent. Another one you want to give a shout out to was Astroml.

24:28 Astro ML is what's my first contact point with machine learning, actually. So they have this package called AstroML and it's also if you scroll down a little bit, then you will see also a book, which is called it's a very long title, data Mining. Oh, yeah. There statistics, data mining, machine learning and astronomy. And it's a book that covers space or astronomy, python and Machine Learning. And this is like I like this book. I mean, I'm not getting paid for the advertisement or so I really read through it. I went through the tutorials and so on the tutorials, some notebooks are for free. And this is an extreme good resource to also get in touch with machine learning, python, and astronomy. And it covers a lot of topics. So if you have nothing to do for Christmas time, just take the book a few hours today and go through it. Yeah, okay.

25:18 Fantastic. And what kind of questions do you answer with Astro ML? When would you use it?

25:22 So Astro ML has, for example, they have a lot of examples of star data and also extra galactical data. So, for example, so called spectra of galaxies, like, a galaxy has a certain color. So the color is like in physics, it's like it's like a spectrum, different wavelengths or also active galaxies and so on. And then with Astroml, you can, for example, identify clusters. You can classify the galaxies into different categories. For example, you have also the galaxies scattered all over the sky. They are using, for example, clustering algorithms to identify certain structures in the night sky. So we have, like, huge socalled groups or so of galaxies. And of course, you can make your own empirical models. Or you can also, for example, use unsupervised machine learning methods to identify these huge clusters of galaxies. And these are, like, one or two examples they cover with this book.

26:16 Cool.

26:17 Yeah.

26:17 You can understand things like, based on the general color of the galaxy, it might be a different age because the stars are older, and older stars burn in a different light than, like, a bright new blue star, right?

26:30 Correct. Yes.

26:31 Excellent. And then one thing I don't think I pulled it up is it vis with a Z or vis with an S? It's vis with an S. We're going to find out. Let's see how well, you got to be careful when you search live for things.

26:43 Yes. Here we go.

26:45 Yes.

26:45 Oh, yeah. It's all good.

26:47 It's all fine. Perfect.

26:48 So you'll see this make an appearance as well. And you tell us about visit, because it's not as you pointed out, it's not particularly popular in terms of use. It's got, like, right now, 98 stars. But wow, it looks really incredible for exploring data. Tell us about this.

27:05 I'm still wondering why it only has 200 stars.

27:08 Well, we're going to double today, let's say.

27:09 Let's go a little bit to the history. Let's push it. So maybe a little bit of history. Why I found this what I liked at the beginning, or retrospectively, what I. Liked. When I started using Python, I had no ideas about libraries. Right. I was completely unbiased. What is NumPy? What is pandas? I don't care. I don't know. So I was really searching in an unbiased way for a visualization tool for 3D rendering. And I found this visvis. At this point, I had like 30 stars or so. And I was like, this looks really nice. To make some animations of videos, for example, of asteroids. And I was also writing a little with the author and saying, hey, I would like to I have some questions. Can you help me? He helped me also because I was a beginner, and over the years, I always used it for my animations. Also, on my YouTube channel, you find, like, two videos of the rosetta space for, like, a trajectory and so on. No fancy animation, just simple and easy. And you can also use it, for example, to read in shape data of, for example, comets or asteroids. Really like the 3D things and then render them in OpenGL, play around and have a feeling. How does a comet look like? And this package supports it out of the box. And I'm extremely impressed and am I also, let's say, negatively impressed that it's still 200 stars. So shout out to Alma Klein and his business package. This is something that I use now since the beginning. Since ten years now.

28:27 Yeah. It's what I saw you doing that was really, really cool.

28:30 Maybe see this one of the videos. But you create a take a 3D shape of the comet, a very high resolution one. Lots of polygons render that in a way that you can rotate and zoom in and explore it. And then on top of that, you say, well, let's plot the path of the Philliest lander that landed on it that you worked on and how it moved around in this, like, 3D space. And you can rotate it. And look at the elevation we have in Python. We have such a treasure or so many choices of visualization libraries. I think that partly might be having something to do with it, because it's just like, well, there's these 400 things to choose from to visualize my data. Where do I start? So maybe people stick more to the most common ones.

29:13 Exactly. I mean, Matplotlib superfair. Right. Also for scientific plotting and so on, but especially 3D rendering and so on. It's quite rare to find something impressive, easy to use and something that has good performance. Right, right.

29:27 And it's interactive.

29:28 Yeah, absolutely.

29:29 All right, let's start the first video. I asked you to pull out a couple of videos that you thought were interesting, and the first one is the Asteroid Flyby. So maybe tell us a bit about this particular video, what you were trying to demonstrate. And I'll pull up maybe this JPL small body database and look at the source code a little bit, too.

29:50 Yeah, sure. So some of you of the viewers or listeners may have some science feeds, right? Like there's some news, like for example, I don't know, killer asteroid is flying towards Earth or something like that. And then you read the article and.

30:03 It saw a movie about that once. People had to run. It created this giant tsunami in Golf, New York. Yeah, exactly.

30:10 And then you read the article and it's put it into perspective. Oh, it's not dangerous at all. And it's like X-Y-Z kilometres or miles passes by and well, you can't really grasp this as a reader. Right. What is 50 million km? Is it a lot? Is it not a lot? You don't get really a feeling. And I was thinking, well, let's take a particular example like this one here, 2021 WP. What a nice name. And let's see how many miles or kilometers it fly. As a fly, I buy. Right. And this applies not only for this object, it applies for several other objects. If you know how to compute these things, if you know your, for example, matplotlib routines and so on, then you get a maybe better feeling and understanding that sometimes a closed flyby say it's not that close. Right. So you know that, for example, it has like, I don't know, certain distance. And then you convert it, for example, to a factor of the distance between Moon and Earth. And then it says, yeah, it's a distance 100 times between Earth and Moon. And you think like, well, in my world, that's not a close flyby. Of course, astronomical scale it is, but it's not comparable to a flyby of, let's say, 2000 km.

31:17 Right, right.

31:18 So this helps a little bit to understand the data, to understand what's going on there, and then also to visualize it and see, OK, what does it mean? Close flyby. Right. So I think that's quite helpful to understand that.

31:30 I think it is. And one of the things you did hear a lot was he said, okay, well, let's look at this. And when you get the answers, you would say, well, we're going to not necessarily talk about it in miles, but you would divide it by one LD. Was that distance to the Moon?

31:45 Yes. The lunar distance, for example.

31:47 Yeah, lunar distance. That's right.

31:48 So we have like two metrics here, the lunar distance and the so called sphere of influence. That's something else. It's a larger sphere, virtual sphere.

31:56 Yeah. So if people want to go through this one, this one, I would say, really takes advantage of spicypy. Right. You do a couple of things. You say, we're going to load up all the data about this asteroid. We're going to load up the data about the Earth and the Moon and the sun and try to put all these things together using spicy pie. Right, exactly.

32:16 Some people who know a little bit about physics here, they say well, you need always this multibody simulation. You need to know the gravitational influence of the sun, of the Moon, of Mars and Earth and so on. But sometimes, and this is also something I show here, you can reduce it to a simple two body problem. You just assume that the Earth has a certain gravitational influence up to a certain range, and afterwards you can neglect the influence. And then you check if the asteroid is, for example, passing or crossing the so called sphere of influence. I think for Earth it's like I don't want to lie 600 0 mile respectively, a million kilometers or so, something like that.

32:54 Is it three or four lunar distances?

32:56 Yeah, something like this? Yes, 2.4 or something. Yeah, it's even written there right. And this is and then you switch, for example, between different coordinates system, then you ignore the sun and then you only consider the Earth and so on. And of course it's not as precise as an NBA simulation, but it helps to understand what is the influence of each individual body in the solar system.

33:17 This portion of Talk Python to Me is brought to you by the AWS Insiders Podcast.

33:22 When was the last time you ordered a physical server to host your functions as a service? Your latest API or your most recent web app? I remember the last time I did that was around the year 2001. And yes, it was quite the odyssey. Of course we don't do that anymore. We run our code in the cloud with near instant provisioning and unparalleled data centers. And the most popular cloud provider is AWS. But for all the ways that AWS has made our lives easier, it has also opened a massive box of choices. Should you choose platform as a service? Or maybe it's still VMs with IAAS. What about your database? Maybe you should choose a managed service like RDS with Postgres. Or is DynamoDB better? Maybe Aurora? No, wait. I hear good things about Amazon Dynamo DB 2, and that's where the AWS Insider podcast comes in. This podcast helps technology leaders stay ahead of Amazon's constant pace of change and innovation. Some relevant recent episodes include Storage Wars Database Edition, Microservices or Macro Disaster, and exploring computer vision at the Edge with AWS Panorama. They bring on guests to debate the options, and the episodes are vibrant and fun. So if you want to have fun and make sense of AWS, head on over to Talk Python FM Awsinsiders. Yes, I know you probably already have a podcast player and you can just search for it there, but please use the link so that they know you came from us. Thank you to the AWS Insider Podcast for keeping this podcast going strong.

34:58 So another thing you did on this one as you went through and said let's figure out when this 2021 WP asteroid enters the Earth's sphere of influence and see how much it will be affected, how much will its trajectory be altered through there, right?

35:13 Yes. So there are also books of astrodynamic theories where you can use some equations and for example, predict the changes a little bit. But here with this particular example, you get really a feeling and understanding how is the orbit altered. Right. And of course, if it's closer to the Earth, it's more severe than outside. Also the dwell time. So how long is the object in the sphere of influence? With what kind of velocity, inclination, angle and so on. So it's a very multidimensional problem. It's not trivial. You really have to have a feeling, understanding and simulate this a little bit. And then you see how Earth affects its cosmic vicinity. Right. Especially the smaller objects like the small asteroids and comets.

35:57 Yeah. And just for people listening, not seeing this at the moment, the code that you wrote to figure out when will the thing enter the sphere of influence, given it starts way back when it was detected or whatever, it's only like eleven or twelve lines of code. It's not super complicated stuff, putting together things like panda and spicypy and some simple python. And that includes two lines of reporting, I suppose, as well, doesn't it? So it's pretty approachable, I think. It's not obvious at first because spicepy has weird functions. You got to call. But once you know this is the one I need, then it's not hard at all.

36:31 Exactly. Right. I mean, this is how every of us started programming, in a way. Right. We made maybe some overkill functions and for loops and what's not the time, you get a better feeling and understanding. And of course, even this code, you could probably improve even more. But I try to find a balance between, let's say, length of the code and also if the reader can comprehend it or not. Right. I mean, I could put everything in one line, nobody would understand it. And I could say, well, it looks elegant, but I try to make it explainable.

37:00 Yeah, there's definitely a balance of like just don't use things too fancy, just make it approachable. I think along these lines, there's a question from Martin. It says, is there a primer to understand the trajectories of near Earth objects? It's great to have the data, but you might be limited in what you can do if you're not a subject matter expert. I think this video actually is not a bad start, but what would you say?

37:19 That's a very good question. I'm currently doing a small series on this new Earth object topic because the orbital elements you have to understand orbital elements? What are orbital elements? You can generate a lot of insights in there. But this is what I try to approach a little bit and help right. With all the small videos, I think you see here, the Earth Objects it's still not finished.

37:38 Yeah, you've got a whole playlist on it. With twelve videos, right?

37:41 Yeah, I think the new one will follow the next couple of days. And the thing is, so the person who asked the question is totally right. You have to have some kind of understanding of these concepts. I tried also to make some concept videos. You see on the right hand side, it's not related to python at all. And I have to apologize, I don't have a million subscribers. I don't have the animation skills to do these things. You're like good animations or so I really try to make it like a lecture in the university to make it as understandable approachable as possible. But yeah, you have to dive also into the physics sometimes to really understand what's going on. And the good thing about especially asteroids and so on, the learning curve is also very steep. You get really easily into this topic. So just read 1 hour book about orbital elements of 2 hours and you can start.

38:30 Yes. And you've got a whole YouTube channel full of recommendations there. Awesome. Okay. And so I guess to wrap this one up, you went through and there's a bunch of orbital element properties in the JPL database that like the eccentricity and the Perry. Remind me what period I can explain.

38:47 If you want two values to demystify these numbers, right, I mean, these numbers are really complex. But for example, the eccentricity, you can say this value is between zero and 1 ,0 means it's a perfect circle and very close to and the more it goes to one, it's more and more elliptic, it's more and more like shape like an egg. And if it's larger than one, then it will just make one revolution around the sun and then it goes over into the outer space. A Q, for example, is the closest distance this object will have with the sun. And zero 93 means it's 93% of the distance between Earth and sun. So this is like really just a value. It's like very, very close to 140,000,000. Inclination is also another value. Let's say this is the last one. We have the Earth. Now imagine you have a table on the table. So for the listeners, you have a table. You put a small ball in the center, that's your sun. Now you have a second ball rolling around the sun. That's the earth. And the plane, the table is your so called ecliptic plane. But not every object is moving on this plane. You have sometimes objects that are a little bit inclined, maybe by a few degrees or even 80 or 90 degrees. This inclination is actually called inclination I. And here is, for example, 3538 degrees. So these are the three elements you know now. And it's quite easy to understand on a meta level.

40:15 Yeah, for sure. So when you do all of your math, you come back and say, well, let me check this back against these numbers, how close do we get to predicting what JPL data was. Right. So that's kind of a cool way to check yeah.

40:29 I mean there's like JPL has the data, the minor planet center has some data. So they always deviate a little bit right. If you let's say last -1% or so or you can reach. This with very simple Python scripts. And I think that's quite fair results. Right. I mean, you don't have the ambition to write a highly scientific paper at the end you can live with this and you have to be careful. So you have like tons of numbers here and it suggests a precision that's not really existing right. Because the precision is limited by the uncertainty. So the uncertainty is like really the cap and that's it.

41:04 One final thing I suppose to talk about before we move off this video is you talk about describing where this comment it's an asteroid, right? Not a comet. No, it was a comment asteroid. Which one is it?

41:15 Actually, I don't know. It could be one of these things. It's nobody written if it's an asteroid or comet, most likely it's an asteroid, but you don't know. Yes.

41:22 Okay, so it comes shooting by and you talk about OK, well, let's use the solar coordinates to talk about it. And then when it gets close enough like this into the sphere of influence, let's switch it over to the Earth oriented, where Earth is at the zero zero point coordinates and we can as it's closer, we can talk about it relative to us. And then it shoots back out and switch it back to the solar. Maybe talk real quickly about how you think about that.

41:47 Yeah, those already explained it pretty well. I mean, this is how you can compute the change of orbits of asteroids without some heavy andbody simulation. You just switch between coordinated systems with different sensors. And Michael, you explained it perfectly. It is the way how you describe it. So it's very, let's say, a simple approach, but you can implement it quickly and it's really nice to see the results.

42:10 And it's great to think of as a human. Like how far is it from Earth and what direction is it talking about from the sun. When you're trying to see how it relates to you, it makes less sense in the math to do it is pretty easy. You just subtract do vector subtraction or addition for pandas rays, right, absolutely, you're right.

42:26 It's basically it cool.

42:28 Okay, next one here a comet in is where you show Viz. Viz. Let's talk about this comet. This is why I was confused whether it's comet or asteroid, actually. Yeah, it says comet.

42:39 It's a comet. Yes.

42:40 Yeah, good. Okay, got it. Right. So tell us about this thing, this 67 p what is this?

42:47 So this was the scientific objective or goal of the Rosetta Feeling mission by ESA. Right. So ESA was sending the probe several years ago. I think it was 2004, I think. And it started to a ten year journey to this comet. And this comet is a so called periodic comet. So it revolves around our sun and the maximum distance from the sun is somewhere around Jupiter. So it's not like the Heli comet, for example, that comes back every 90 or 100 years. It's like a regular visitor, but a very small one. And ESA thinking, well, that's a perfect goal. Let's go there and see how this thing looks like. And so they were sending the Rosetta spacecraft there and this one came closer and closer in 2014 until the Rosetta spacecraft reached its final orbit, was deploying the lender. Everybody was happy. But in the meantime, the spacecraft made more and more and more images of this comet from different angles. So like a huge stereoscopic camera, you can derive 3D information and this 3D information is then going through some algorithms I'm not familiar with. And then at the end you get this shape model, as you said in the beginning of the podcast, this polygon shape, right? And this polygon shape is free data. It's freely accessible and I just downloaded it, do some data crunching and then I use this to to visualize it and then you can see really the different structures how this two ball shape looks like. Some people describe it as a rubber duck with a small head and a larger body. And you will also see in this there is like a night sight that's always in the night. So you don't know how it looks like. It's very this 3D model is very smooth because you don't have any information there. So it's really impressive to see how this model has been derived with data from millions of miles away. And now you can really reconstruct the comet on your small laptop.

44:43 Yeah, the one that you reconstructed with Python looks not the level of detail of maybe some of the very highest resolution pictures here, but it looks pretty believable that those are the same things which is quite amazing.

44:56 Yeah, absolutely. Of course the images are way better.

44:59 You said it's small and it is small, but it's approximately 4 km. It's not just a little pebble in space. It's kind of a thing, right? It's somewhat big.

45:09 Yes. Let's say if this object would hit or fly it towards Earth, we would have a problem, let's say. Right.

45:16 They really would make a movie about that one. Yeah.

45:19 Oh, yeah.

45:20 I don't know. Some heroes can go there and crush the comet.

45:24 Exactly.

45:25 But I need to get the old space shuttle out of storage.

45:28 Yeah, but if you compare, for example, Shari of Galaxymaqa with other comets like the heli comet but let's say it has larger cousins out there which are also brighter and you see them also in the night sky when they pass by. And this comet you really do not see in the night sky from earth. So this is what I would say is small because I cannot really see it with the naked eye.

45:50 Yeah, it's still small in terms of planets and stuff, but it's not entirely small compared to, say, I don't know, if it were to hit us, we would notice. All right, so let me pull up a little bit of this picture. The first thing that I think is interesting in this video, which is Space Science with Python Park 22 Comet, and said a lot of stuff you're doing directly in Visual Studio code using the notebook format, which is pretty interesting. This is when you switched over to Jupiter and you started using cute, right, PyQT to bring up this interactive window, which, you know, you create a little window and show it and pair that with Visvis, which maybe where's that fit into your world. Like, a lot of people, I think, kind of just stick with notebooks and output whatever they can get into the interactive widget inside the notebook.

46:38 Yeah. So I really like VS Code, right? I mean, one of the main features I use especially also at work, is something called remote containers. So you have a docker container with your entire working environment, and you can share it with people on Windows, Mac, Linux really doesn't matter. Right? This is pretty it's a game changer. Right. But with PyQt, I was somehow not able to create this interactive widget out of the docker container.

47:03 Yeah, of course.

47:03 But I was really playing around and try these things out. But at the end I was saying, you know what? It's fine. Let's use a simple virtual environment. Let's keep it running on the native Jupyter Lab environment, and it's fine. So this is where I was, like, saying, I cannot do everything right. This was really my nemesis.

47:24 I don't think I'd be able to get that going either. So you pull this thing up and it initially doesn't have any shading or anything, but it looks quite like what you would expect there. Let me eventually get it going with shadows and light sources. It's a pretty cool achievement. And this is all that Visvis library, right?

47:42 Exactly, yes. So Visvis is doing it, and it also was part of our science paper you see now here. So for the podcast listeners, there's a tea paper at Astronomy and Astrophysics. And it was about the landing of the instrument also with our best instrument and the analysis you see here. Also here, figure four was done with Matplotlib. So Python in Space is not only like, filming YouTube videos and making tutorials, it's really used in science. So I know also a lot of other people using Python now. And you see it every day now.

48:14 Same tools we all have, right, in the next video. This one, I could tell this really was a personal like this meant a lot to you when you put it out into the world, the Philae is landing because this is one of the projects you were directly involved in, right?

48:28 Yes, exactly. So I was part of the so called dust impact monitor. You can imagine it's a small cube, like a Rubik's cube, and it was detecting dust particles. Or the task was to detect dust particles with something, you know, from your eguitars. So something called piezo crystals, you're playing a guitar, the vibrations go into some kind of crystal, the crystals translating the vibration into an electric signal. And we use the same principle here to convert impacts of dust particles on our instrument, to learn something about their properties, like velocity, size and shape and so on. And this was the paper I also saw just 1 second ago. And our instrument was on during the landing process, where we also catch some data.

49:12 Yeah, amazing. And one of the pictures you got here in this video is of this Rosetta, right. The lander. No, this is Philae's is the thing that was sent down.

49:21 Exactly. Philaes the lander. Yeah.

49:23 And it's really high res picture, I guess, taken from Rosetta. And you can see it on this rocky cliff. It eventually found its way into the cracker. It's kind of stuck there. Right. But what science did you get out of it before it got stuck in that crack and lost its solar power?

49:37 That's a good question. So a lot of different instruments were involved. Right. So I can say for our instrument, we had like this dust impact monitor, and during the decent phase, we had one impact. So we take that at exactly one particle. It's not a lot. I know instrument was not big, but at least we detected something because we wanted to have main signs work on the core surface. Now, since we landed in this cave or cavity or whatsoever, we were not able to detect anything. Right. A lot of power was low. So also other instruments were running there like instruments to generate, to create, get out some samples, to measure also a little bit the gas environment and so on, to extract hopefully some organic material and so on. So every instrument was running. Also a small hammer was hammering on the surface to see how hard is the surface. And it was really hard. So, yeah, Philae was running for a few days, I think, until the battery eventually ran out. And you see it was stuck in this shadow. So the battery was not able to recharge. And this was the end of the mission.

50:42 That's a little too bad that it got in the shadow, but still really cool. People might not think there's going to be very much gas to detect, but like a lot of comments, when it got close to the sun, it was shooting a bunch of gas out of it. Right. So it didn't have an atmosphere at 4 km, but it did have gas coming off of it.

51:01 Yeah, exactly. You're perfectly right. So gas and dust and a lot of activity was going on. So, of course, as a human, you couldn't breathe this stuff, right? It's very, very it's not a high density, but yeah, there was a lot of stuff going on and you can really measure it and you can detect it. And I think also, Rosetta, if I'm not mistaken, was oftentimes hit by some dust particles and you see them also in the camera system later. So there is a lot of activity going on there on this tiny world. And it's amazing to see that we were able to get there and measure it and see it in real time. This is really cool.

51:34 It's really amazing. So if you go for this particular video, if you go into one thing I just want to give you credit for, I do this with my YouTube videos as well. Not the podcast, but the ones that are specifically made for YouTube. It's putting chapters in. It's really nice to have chapters like, okay, this is the section that I the two minute segment is really nice here's where you're completing this thing or you're rendering that thing and it's nice. So if you go over to the rebounds task section, you can see a really cool little animation of you putting that together, drawing the line, maybe. Tell us about this. This goes back to Visvis being pretty neat as well.

52:10 Yeah. So this was the information. So Philae was supposed to land on some area and stay there, but unfortunately it was really bouncing for a few couple of times, I don't know how many times, two, three times. We can use now my video to check it and well, the data is quite precise. So you have a very precise shape model and we have a very precise reconstruction of the trajectory of the lender. So Path Philae it was taken, I was just taking this totally different sources of data sources and merging them together in Vizvis using this PyQT framework that's under the hood. And you see it fitted perfectly. The trajectory really is on the surface, bouncing there. And then you see at the end, the bottom right now for the business now there's like the end of the trajectory in the small shadow hills where Feeder and died, where he got into that.

53:03 Gavin went to the cavern. Yeah. Went to rest the big sleep.

53:07 Exactly, yes.

53:09 I guess what surprised me about this is just how precisely? This 3d model, that was made of the steroscopic image data and then the reconstruction of the lander in this 3d space, it lines up perfectly, like you said, even as you rotate it in three dimensions. You're like, I look at it from the Single, like, wow, that really is pretty accurate.

53:29 Yes, absolutely. I'm also always impressed how I mean, in the science community, in all sorts of industry, everybody is playing a small part, right. But. To play a part and at the end to see the end product.

53:40 It's amazing, right? I mean, in science it's like this, right? It's like, wow, cool. We're able to generate the data. I mean, I have the same feeling as an industry, right? It's like, oh my God, look at the product at the end.

53:53 It's a very small part, but you're part of it. And it's always nice to see how this mosaic puzzle is getting together at the end, right, and providing useful insights. It's pretty unbelievable.

54:04 Yeah, it really is. All right, let's see what else I want to say about it. I guess we'll get kind of short on time here. Let's talk about this AI 112 Auto Encoder latent space visualization one. So this is more close to your current work, right? This ML work with space science, right?

54:22 Yeah, I can explain a little bit here. What I used in this two series was so called reflectance spectrum asteroids. So imagine you have a flashlight and you flash the asteroid. You get a reflectance of the asteroid, of course, not a mirror or something, but you get something back. And based on the difference of your flashlight and what you get back, you can derive conclusions about the chemical composition of the asteroid. So there are different spectra that encode different types. And I use the spectra and the spectra are classified in certain classes. Like some are, let's say, carbon rich, some are, let's say, stony or iron rich. And I was thinking, well, we can use Auto Encoders to check the Latin space and see if we can see these different classes into low dimensional space. So for all the viewers and listeners who don't know this Auto Encoder, it is like you have your data and you make a regression model on your data itself. Like, for example, a dog maps to a dog attached to a cat. And in between, in your neural network, you have only a few attributes, only a few numbers. And these numbers, they are like encoded representation of your information, like the information of a cat or a dog. The same thing you can do also with spectrum, the asteroid. And of course, I made a compression of, let's say, some spectra with 500 data points to two dimensions. This is severe information loss, but I did it here not for a science paper, but more for visualization representation. And I was able to to show that these different classes that are human made, they are also underlined by a data scientific approach by this Auto Encoder. And this autoencoder does not know what is an SClass astroid, what is C class. It simply sees the spectra and then with the different clusters you see, OK, there is like intrinsic different information in the spectra, right? So this is pretty cool. And to see you can improve Auto Encoders with variational, auto Encoder and so on. But this was the very first approach I wanted to show to anybody who is interested in this topic.

56:30 Maybe this opens the box just a little bit for people who want to go back and work with some of that legacy data, historical data, where people maybe try to figure out these things, just hand it off to grad students and say, yeah, how bright do you think this is? Is it more like that or more like this? And then now you can apply these incredible machine learning models to it and maybe pull out more nuanced details or find something new.

56:54 Yeah, exactly. So, for example, we have also the data from the Cassini spacecraft from the Saturn mission and we have like hundreds of thousands of spectra there. And I'm doing currently some yes, in my freelance science job, some kind of classification task. But at some point when we are finished with the project, I would like to make also this, let's say highly derived data, also open, available to anybody, right. And show, hey guys, these are the spectra. Use other methods to classify, to cluster the spectra because there are tons of ideas and I don't have all the time. Right. So I want others to be able to work and continue on this heritage data. Because it's not boring, just because it's old.

57:35 Yeah. Now, there's a lot of possibilities, I think, to start applying those things. Thomas, I think we might be out of time to go over any more of the videos you have. Many, many more. I definitely want to encourage people to go check out your channel and go through it if they're really interested in actually diving into some interesting but pretty approachable science topics. You've got all the code there on GitHub. You walk through it without taking too many shortcuts and oh, look, I changed it now it totally looks great. And you have no idea what I did. Right. It's pretty much you can follow along well there, so people should check that out. Obviously it links in the show notes, right?

58:09 Yeah. Thank you very much, Michael, for inviting me and to anybody. If you have any questions or would like to know more stuff, just approach me, just message me. I'm always open for ideas and feedback and I'm glad to help. So just reach out to me.

58:22 Yeah, absolutely. But you don't get out of here before I ask you the final two questions. If you're going to write some code, I think I know your answer from what you've said already, but what editor are you using these days?

58:31 Well, I'm using it for my daily job VS Code, of course. It's very nice. It's with remote containers. It's a game changer. You can even develop spark locally in a container, which is like really amazing. Right. I have to say though, and I say this is the perfect time though, to say goodbye to Adam. Adam was a very nice editor. I used it also for years. Now it's time to say goodbye to Adam. And this is something I think we should address here in the podcast now.

58:59 Yeah. Well, I feel like Vs code is a little bit like the next successor to Adam. Right? Adam came from GitHub. Microsoft bought GitHub. They released Visual Studio code. They're both in a similar style of an editor. They're both, I think, electron apps. It feels like it's not so much as a goodbye here's the next generation.

59:19 Yes, exactly. It's a very good successor. So of course, you're right.

59:23 Good times ahead, I think, with more and more plugins.

59:26 Yeah, cool. I'm sure the Vs code people send me a message, like, that was not accurate enough. But no, conceptual, I think there was a lot of motivation that VS code probably took from Adam. All right. And then we've given a shout out to a couple of libraries like Visvis what library or tool or wherever you come across that you're like, oh, this is really cool. I want to tell people about you. What do you want to give a shout out to?

59:48 I would like to give a shout out to astropy. And there's also a very huge library that contains astronomy information. You can extract data from astronomy databases and so on, apply methods and so on. It is like, let's say it's not like spice, but let's say it's also quite complex. So you have to dive into this. Right. But they're also open for contributions and so on. So if you are interested in joining Astronomy Science Data, try out astropy and see if you can improve it, even, because this is a huge community and everybody is grateful for ideas and contributions. So a very mighty library in the astronomy community.

01:00:27 Yeah, absolutely. All right, Thomas, thank you for being here. Final call to action. People are interested in this. What do you tell them? How to get started?

01:00:34 Well, yeah, just sounds like a cliche. Just be curious, right? But yeah, I mean, astronomy is not only also about python and so on. If you want to approach it differently, start also with public outreach, with more public outreach related YouTube channels. Also also getting a telescope or something. Really do hands on stuff. It's also quite nice. And don't sit all the time in front of your computer. Just grab binoculars. Just grab a camera and and so do your own stuff. There's a lot of things remote telescopes are out there for a few bucks a night where you can do your own images. So, yeah, it's not only about is this about Python? I love Python. Sure. But I also would like to tell you guys to approach astronomy from different angles. Also sometimes going out, observe meteors, count them with your hands, and you can submit this to some organization, and everybody is grateful for that.

01:01:24 Excellent. Well, we're all grateful for your YouTube work and putting it out there. So thanks for all your contributions.

01:01:30 Thanks, Michael, for having me.

01:01:31 You bet.

01:01:32 Bye.

01:01:33 This has been another episode of Talk Python to me. Thank you to our sponsors. Be sure to check out what they're offering. It really helps support the show. Listen to an episode of Compiler, an original podcast from Red Hat Compiler unravels industry topics, trends, and things you've always wanted to know about tech through interviews with the people who know it best. Subscribe today by following 'Talk Python.FM/compiler'. AWS is the lead cloud for developers, but with over 250 services, it's an overwhelming set of choices as to where the AWS Insiders podcast comes in. Their job is to help you make sense of all those AWS options. Listen to an episode at Talk python FM awsinsiders.

01:02:18 Want to level up your Python? We have one of the largest catalogs of Python video courses over at Talk Python. Our content ranges from true beginners to deeply advanced topics like memory and Async. And best of all, there's not a subscription in sight. Check it out for yourself at training.talkpython.FM. Be sure to subscribe to the show, open your favorite podcast app and search for Python. We should be right at the top. You can also find the itunes feed at /itunes, the GooglePlay feed at /Play, and the Direct RSS feed at Rss on talkpython.FM.

01:02:50 We're live streaming most of our recordings these days. If you want to be part of the show and have your comments featured on the air, be sure to subscribe to our YouTube channel at talkpython.FM/YouTube. This is your host, Michael Kennedy. Thanks so much for listening. I really appreciate it. Now get out there and write some Python code.

Back to show page
Talk Python's Mastodon Michael Kennedy's Mastodon