Python Bytes - #254 Do Excel things, get notebook Python code with Mito

Episode Date: October 13, 2021

Topics covered in this episode: yaml, GH Actions, and Python 3.10 Beating C and Java, Python Becomes the #1 Most Popular Programming Language, Says TIOBE Newspaper3k: Article scraping & curatio...n PEP 660, pip 21.3, flit 3.4 -> easy editable installs Mito - a JupterLab Extension - generates Python code while you work on your analysis troposphere Extras Joke See the full show notes for this episode on the website at pythonbytes.fm/254

Transcript
Discussion (0)
Starting point is 00:00:00 Hey there, thanks for listening. Before we jump into this episode, I just want to remind you that this episode is brought to you by us over at TalkPython Training and Brian through his PyTest book. So if you want to get hands-on and learn something with Python, be sure to consider our courses over at TalkPython Training. Visit them via pythonbytes.fm slash courses. And if you're looking to do testing and get better with PyTest, check out Brian's book at pythonbytes.fm slash PyTest. Enjoy the episode. Hello and welcome to Python Bytes where we deliver Python news and headlines directly to your earbuds. This is episode 254 recorded on October 13th, 2021. I'm Michael Kennedy. And I'm Brian Ocken. I'm Mohamed Raza. Yeah, hey Mohamed, welcome. It's great to have you here. Good to have you on the show. Hi Michael and Brian And I'm Brian Ocken. I'm Mohamed Raza. Yeah. Hey, Mohamed. Welcome. It's great to have you here. Good to have you on the show. Hi, Michael and Brian. I'm really excited to be
Starting point is 00:00:48 on the show. It's been one of my goals. I started listening to podcasts when I was in college back as an undergrad. And your podcast, that was one of the reasons I developed a love for Python. That's super amazing. Tell people a bit about yourself before we jump into this. I currently work at AWS, Amazon Web Services, as a professional service consultant. So my job is to help our customers in their cloud journey. So we basically do help them with our... We help them with different cloud services,
Starting point is 00:01:16 such as if they want to do cloud migration or if they want to put some service on AWS Cloud. So that's where professional services come in to implement and help them with their cloud journey. You must see a lot of different implementations and configurations and teams and types of software. You get exposed to a lot of things quickly
Starting point is 00:01:34 like this, right? Yep. So it's a pretty fun job. You work with different, wide different customers. Every customer has a different problem. So you get to touch upon different problems as a consultant. So it's a really amazing job.
Starting point is 00:01:49 Yeah, that's awesome. That's one of the things I think, you know, for people who are early in their career to help them go fast and level up is get a lot of exposure to a lot of different things. Yep. And I totally agree with you. Awesome. Well, I think maybe Brian should kick us off with the first item what do you think brian so python 310 we talked about this last week if python 310 is out it came out october 4th it looks like and i've been using it and a lot of people have been using it but one of the things we do is we update our uh with a project if you support a package you want to make sure to go and change your your testing your ci testing to make sure that you're using Python 310 instead of Python 3 dev 310 dev.
Starting point is 00:02:30 That's what I was testing before. So as but there's an issue. So Anthony Shaw brought it up on Twitter. A bunch of other people did, too. But I'm grabbing his um his tweet it says basically you can use 310 on github actions now but you need to make sure that you quote the 310 so um this is so you don't test on 3-1 yeah exactly that's insane the the zero at the end matters so um i'm gonna just grab my um one of my projects i went and changed mine and and I just
Starting point is 00:03:07 went ahead and put quotes on all of the versions on three. You don't have to do three, seven, three, eight, three, nine. Those are fine by themselves. But three, ten, if you if you go from if I had dash dot dev or dash dev, YAML convert like thinks of it as a string. But as soon as I go to three, one, oh, it's three point one. So, yeah, you want it as a string, but as soon as I go to 3.10, it's 3.1. So, yeah, you want to make sure to quote those. That's really it. And that's really what I wanted to cover is to make sure that people change their CI system to be testing with 3.10, but do it with quotes if you're using YAML. Doesn't YAML understand significant digits?
Starting point is 00:03:42 Come on. It's an interesting find though like um like yaml reading a 3.1 but it should read us 3.10 yeah i mean i could see how you get there yeah but at the same time if you're talking versions and not just floating points obviously the dots are not you know not not decimal separators they're separating full whole numbers right which obviously then the zero matters interesting that's a good find and good advice i have a quick real time follow-up for you brian remember i had complained about not being able to deploy to 310 in production yeah uh well guess what this is all 310 oh sweet yeah i managed to get it working micro whiskey got updated so that it will now work on 310 install building a wheel locally on linux and there was another dependency i couldn't make work
Starting point is 00:04:31 but then i realized oh my gosh i'm not even using this anymore so i just took it out and then it works so i put it on talk python the podcast page for now and if it doesn't freak out or cause problems and i'll roll out across like talk pythonython training and Python bytes and stuff. So this is the guinea pig or the canary out there just hanging around. But so far it's perfect. Yeah. A couple of live stream thoughts here. Sam Morley.
Starting point is 00:04:52 Hey, Sam. Says, oh my, that is interesting about 3.10. And Henry Schreiner. Hey, Henry. Henry and I are going to be talking on TalkPython really soon, by the way. Many YAML projects choose to accept floats and then just convert them to strings.
Starting point is 00:05:05 Not specific to YAML. You could disallow floats here if you wrote that, if you wrote the action. Okay, interesting. I didn't realize you could do that. Very cool. I didn't know that either. Ah, okay.
Starting point is 00:05:16 Did you know that Python's popular? Yeah. Yes. And it has found its way to be a little bit more popular than it has been recently. So, you know, it continues to grow. Brian Skin sent this over. Thank you, Brian.
Starting point is 00:05:30 And the headline here is pretty neat. Beating C and Java, Python becomes the number one most popular programming language. Boom, says Tiobe. So the Tiobe index is interesting. To me, it feels like a little bit more of a lagging indicator. And it's also a bit more of a enterprise focused indicator. So that's why Java and C have been popular for so long. But apparently Python has sort of made its way into that world as well. And they're quoting this article over here on ZDNet. And this is the thing I'm linking to.
Starting point is 00:06:04 And it says, for the first time in more than 20 years, we have a new leader of the pack. The longstanding hegemony of Java and C is over. It's pretty good, right? It is. And I think it's one of the reasons, like you said, the business community is using it a lot more and large companies. That might also be why we're seeing the numbers in surveys of Windows users using Python
Starting point is 00:06:29 staying really high. I think maybe it's because of that. I think one of the big reasons is the entry to the language, the barrier entry is pretty easy. Anybody could learn the language and get into the language. And the ecosystem and the libraries around the language, it just makes stuff so much easier to do. That's one of the reasons it's at the top i was also reading on
Starting point is 00:06:48 stack overflow um somebody shared on reddit that python has now most number of asked questions compared to java now so how interesting on uh probably on stack overflow yeah nice it was somebody shared on reddit as a discussion interesting Interesting. Yeah. So if we look here. Oh, I want the most popular languages. Yeah, this is real time. Look at that. Oh, yeah. It's not even close. It's not even close.
Starting point is 00:07:12 It is. I remember seeing that when this was back here, back in this area, 2017, and they predicted this and they predicted something like a little bit even less than reality. And people are like, no way. There's no way it's going to just do that. And it's even more real wild than reality. And people are like, no way, there's no way it's gonna just do that. And it's even more real wild than this. So very, very cool. So yeah, super neat.
Starting point is 00:07:32 I'm thinking this is just another sign that focusing on Python is good. Mohamed, I think you touched on a lot of reasons why people get attracted to it because it's easy and it's simple and it's clean and they just wanna do a small thing. But then your small thing, as everyone knows, just gets a slightly more complicated and complicated. And a lot of times the thing you start with is something simple.
Starting point is 00:07:54 It can't do it can't grow to become the thing it eventually needs to become. But Python allows you to build way more complex software. So you don't get ejected into like, well, I have to leave because, you know, I want to use threads and i'm using vb6 and it doesn't have threads so i guess i'll go learn c or like there's not that kind of story that happens around python nearly as often so people just stick in it like accumulates like a snowball going downhill yeah um so sam morally brought up that he thinks that some of this might be around the data science community coming into Python. Oh, I totally agree with that. Yeah. Yep. Very good. Very good. Okay. So
Starting point is 00:08:30 yeah, Mohamed, I guess we got your item up next. It's the first one, right? Yeah. So the item that I chose was Newspaper3k. Its name is Newspaper3k, but the original name is 3k. It supports Python 3 now. It's an amazing library. I use it at work. I was helping auditors to generate news reports.
Starting point is 00:08:47 So what they were doing was like going onto internet, finding news reports manually. So I was just using, my job was to like write a flask web application and using this library and Google RSS feeds to find the news articles and then pass those links through this library to like generate useful information,
Starting point is 00:09:04 such as the description the title the length of the article and stuff like that so like it helped me a lot and then it'll help us like it helped me a lot in terms of automating the process which people were doing manually where i was working so it's an amazing fantastic So newspaper 3k, it's like web scraping. Yeah. It's like web scraping. Yeah. But it has higher level semantics built into it.
Starting point is 00:09:33 Like you can ask the title, when was it published? Not the, some sort of e-tag weird thing on the server, but like, when did the article declare that it was written sort of thing. Right. And who's the author? Yep. All sorts of cool stuff in there. And the best thing is like, it also does the summary of the article like it it's not to like 100 right but it's just like extractive summary of the article which is pretty useful like if you like
Starting point is 00:09:54 doing newspaper creation articles and stuff like that for like auditors i was doing this week they found it really useful yeah i'm totally gonna use this yeah i'm still one of those rss readers so yeah yeah yeah super cool so the api is basically you give it a url and you say download and then parse and you have article.authors article.publishdate article.text top image movies if it contains any embedded video you can even do keyword analysis on it keywords in summary yeah nice but you can do all sorts of things that that might be useful to you so i can see that this is a cool input into other things right like not just straight consuming the information but if you're trying to understand trends and stuff right you could go around and just hit all the main websites
Starting point is 00:10:45 and then go and say, okay, show us the keywords and show us anything that's new or that is new and also appearing more frequently. If I remember correctly with this, there's also things you can do where you can follow, you can point it at a homepage and it'll give you like categories and all the articles in the categories.
Starting point is 00:11:04 Like you could point it at cnn.com or something like that yeah yeah yeah you can do all sorts of things with this the it just makes so much stuff easier compared to using beautiful soup like in beautiful scoop you like have to do and go scrape up yourself but like this makes so much stuff easier yeah it's just an amazing library cool awesome a good one for good one for sure. All right, Brian, you're up next, I think. All right. Well, I'm going to cover something I'm like super excited about, but it's a little niche. Anyway, so editable install.
Starting point is 00:11:35 So when you're working with a package, Python package, and developing it, one of the things that I do a lot is I have it open in my editor, but I also have like a window open where I'm running PyTest and stuff. So I need the, I want the package to be installed and it really helps if you're editable, it's editable so that when I make changes in the code,
Starting point is 00:11:55 it's instantly appears in my, you know, my test window or whatever. And so pip supports this. It's a, you say pip install dash E and then give it a path to your local project. And apparently you can do a Git repos like this too. I don't know how that would work, but. Okay, that's interesting because you can do Git for pip.
Starting point is 00:12:16 And so I guess instead of saying, install it as a package installed as edible, but does it like clone it locally? What happens there? Well, it does. I mean, installing from a Git does clone it first, but I don't know what the point would be because you're not editing it on Git.
Starting point is 00:12:31 Anyway, I use it for local directory. It's a cool feature, but it didn't. And I also like Flit, but Flit uses PyProject.toml and pip installable-e install-e didn't work with PyProject.toml and pip installable-e. Install-e didn't work with PyProject until this week, last week, really recently. So a workaround for Flit was you would have to install a PTH file or with a dash. And you have to install Flit first then. And if somebody's helping you, but they're not used to Fl't and this is a if if somebody's if somebody's helping you but
Starting point is 00:13:05 they're not uh they're not used to flit this is a weird thing to tell them about uh you can do pth file or sim length but then they they came along somebody that said hey a pep 660 said hey we should do editable installs for project by project auton. Also, it requires that the back end supports this also. So there's changes needed to both pip and flit. However, now we have it. So just recently,
Starting point is 00:13:34 let's jump back. Pip 21.3 came out. When was it? October 11th and flit very recently. Flit 3.4 came out October 10th. And with these two things in place you can now um you have to you have to regenerate your project file or change it to use 3.4 for
Starting point is 00:13:54 flit but uh but editable installs work um and so i was playing with it i'm like this is so cool uh i love doing this uh but i was like how how do I get my dependencies in there? So one of the things that flit allows and pipe project automa allows is optional dependencies. So the normal dependencies, your project dependencies automatically get installed when you do a install dashy. But the optional ones don't. So you have to give it a bracket you know you have to say like install the my thing with the optional like test or doc or something well the way you do that with uh with the local directories you have to just make sure you put it in quotes so quote dot bracket test close bracket close quote okay totally obvious not totally obvious but uh not bad either so
Starting point is 00:14:43 uh anyway i'm excited about this a lot. Yeah. Yeah, that's really cool. Good find. Let's see. Out there, follow up for you, Mohamed, real quick. Sam says, I still have nightmares of BS4 and Feed Parser. Yeah.
Starting point is 00:14:56 Yeah, man. It's really hard to work with BS4. BS4 is great for what it's for, but it's like assembly language is great. It doesn't mean I should write in it all the time, right? No, I agree. And plus, I don't think BS it's like assembly language is great. It doesn't mean I should write in it all the time, right? No, I agree. And plus, I don't think BS4 does like scraping of dynamic pages. For that, you like have to use, I forgot the package name, Selenium for that.
Starting point is 00:15:14 Yeah, yeah, you do. Okay, so the next one I want to talk about here is pretty cool. And it's an unusual project because if you're going to go work on some Python data science, you usually want to go do that in notebooks. But you might just want to think about it as kind of like an Excel spreadsheet, you might want to walk up to it and go, okay, well, let me just see a grid of this, I'll filter it this way, I'm going to hide that column, I'm going to like remove, you know, only show data with some property, and then look at it, that would be nice if you could visually do that, right? So what we've got here, this one comes to us from,
Starting point is 00:15:50 let me make sure to give attribution from Tomas Rolo. Thank you for sending that in. So it's this thing called Mido. And Mido is a spreadsheet that helps you complete your Python analysis. What you do is you create the Mido sheet, which is like an embedded Excel thing, like thing or Google Sheets thing into your notebook, you play around with that, and then the cell below it writes the code. So let me see if I can show you an example here. So there's this spreadsheet up at the top. And as you interact with it, you can see there's a cell down here that says, import pandas is PD, Netflix titles pd.read csv and it gives it a file because you clicked a button that said open csv for your data source in that spreadsheet and then they said i
Starting point is 00:16:31 want to um what do they say they remove some of the columns like rating and type and so on and then create a pivot table off of that and it just writes all the python code for you below yeah i think right in the notebook I kind of really like this library. It's going to make a lot of stuff easy for people who are just doing data analysis because what they do most of the time is they're browsing Stack Overflow to find the right answer to solve their problem.
Starting point is 00:16:59 So this is going to save them a lot of time. I totally agree. And if you go and play with it, you'll see a section that says, Mito code start, do not edit. Mito code start, do not edit Mito code and do not edit a totally reasonable use case for this, which might not be what Mito themselves recommend because they want to promote their tool and sort of be part of the story. But a reasonable thing would do to do would be to like embed this, play around with it to get just the right thing, and then strip out the Mito bits
Starting point is 00:17:25 and just leave the fragments that it wrote in there. Yeah, that would be amazing though. Yeah, yeah. I mean, you don't have to tell anybody. He's just ready to do it. Yeah, I know. That would be amazing. Yeah, and it even does really cool comments on the section.
Starting point is 00:17:40 So it puts it all into one cell, right? Instead of a whole bunch of cells, which I think is reasonable. But it does, like the comments so it puts it all into one cell right instead of a whole bunch of cells which i think is reasonable um but it does like the comments that it writes are imported netflix title csv pivoted netflix title csv into data frame to flatten the column headers reset the column name and indexes like those are meaningful comments like this is a pretty nice actually what it generates it's not horrible code that you would run away from. That's cool. Isn't that neat?
Starting point is 00:18:07 So people who are really familiar with spreadsheets can kind of ease into data analysis. Yes, exactly. And they can do really easy tasks. If they want to filter out data, instead of going out on the internet and finding out how to use Pandas to filter out data, they can directly use Mido for that.
Starting point is 00:18:23 So it's going to save them a lot of time on that I agree I could see myself using this no doubt I think pandas is great but I don't know
Starting point is 00:18:30 it super well and if I know like I kind of want to do this thing but I don't really know how like select to do that okay
Starting point is 00:18:36 yeah that's the thing about pandas like pandas is amazing but there's like so much stuff in pandas that you don't know top of your head
Starting point is 00:18:44 so you have to be like searching the documentation, Google Stack Overflow for that. And I can see this library being really useful, though, for that specific reason. You want to do quick analysis, you use Mido for that. And boom, you have the code right down generated. Yeah, super cool. The other thing worth pointing out is you don't have to start your notebook this way. You can actually hand it an existing data frame. So you could do your work down
Starting point is 00:19:07 until you get some data frame generated from who knows where, and then hand that off to Mito and then have it write the next fragment of code that you're going to write. So I think this is neat. I could totally see myself using it. There's a cool tutorial you can go through,
Starting point is 00:19:21 but I recommend you watch the data slicing with Mito 2 video that's right at the top of that. It's like, I don't know, a couple of minutes. How long is it? It's six and a half minutes. It'll give you a really good sense of what's happening there. The other thing worth pointing out
Starting point is 00:19:34 is when you see plans at the top, that means it costs money. But there's a individual one that's just totally free forever. Works with JupyterLab 2 and 3. But if you want team support, there's a paid thing. And given that they're creating this and giving it out to the world, it seems fair enough. It's something you can plug in.
Starting point is 00:19:51 You don't depend massively upon it. Like I said, you could even use it to generate your code and then take it back out if you want. Yeah. So pretty cool. Props to Mido team. That's pretty nice. Brian, real-time follow-up here
Starting point is 00:20:05 from Henry out in the audience. Editable installs aren't niche, but since we got editable installs for setup CFG-only projects in PIP 21.1, it's now just supported for arbitrary build backends in PIP 21.3. Awesome, thanks for the extra info. Also, ZDocs says,
Starting point is 00:20:27 edible installs? We probably said editable. Edible when we said editable. Editable. Indeed, indeed. All right, let's see. So, Mohamed, you got yours. You're up next, right?
Starting point is 00:20:44 Yep. So I have this library called Troposer. It's an amazing library and helps you generate CloudFormation templates writing Python. So, I do this on my job a lot. Like, I work with DevOps people writing CloudFormation templates. And sometimes it's hard to write CloudFormation templates because of the formatting part in YAML. YAML can get messy. Like, you might mess up the format and then your file won't even run, and then you be hunting down, where did I add extra space? So this library
Starting point is 00:21:10 solves a specific problem, like helping you write templates using Python language. So this is an amazing library. If you like writing a lot of CloudFormation templates, I would definitely recommend using this. I see. So normally you use an AWS CloudFormation JSON.
Starting point is 00:21:25 Yeah. Most people use JSON and some people like, so it's up to you. You can either write in JSON or write in YAML. But let's say you're writing in JSON and you mess up the format. Let's say you mess up a bracket or a comma somewhere, then you might be like, if you don't have the right linter, then you might be hunting down down the files looking for like, where did I miss the comma to fix this? So like, when you like having large templates, it gets harder to like, I would say debug them. Yeah. Another thing that's nice is JSON is static, right? But Python code executes. So you could like
Starting point is 00:21:59 loop over stuff and say, I'm going to need 10 of these. So let's call it this one, you know, one, two, three, you know, machine one, machine two, machine one machine two machine three or whatever right yeah i was gonna actually point point that out but like thank you for pointing that out like i was gonna say like you can actually like leverage the power leverage the power of python language to like iterate over stuff like let's say you need 10 subnets instead of like writing 10 subnets in json you could just iterate and then produce like 10 subnets yeah exactly that's awesome yeah it just makes stuff so much easier yeah yeah you know you hear all the time with cloud stuff infrastructure as code or yeah you know that that kind of stuff and this just it's like another layer right yeah
Starting point is 00:22:36 no i agree i agree yeah very cool brian you guys do anything with cloud stuff in your world? No. It's all hardware, all behind the scenes. We use them. We've got a lot of servers and stuff, and we've got a lot of services running, but they're all internal. We don't use a lot of cloud services. Some things are easing up a little bit that we're using
Starting point is 00:23:00 because there's a lot of things that are just so much easier when you go into the open cloud, but there's security issues also. Yeah, for sure. All right, awesome. Well, another good one for people doing AWS stuff. There's also the, what is it,
Starting point is 00:23:14 the AWS Cloud SDK or something like that? Yeah, Cloud SDK. What's the relationship of these two things? It's pretty similar, but it also has support for TypeScript. It also has support for Python and TypeScript. It's more like a personal preference. I prefer this library because it's pretty much supported in Python. From the start, it was built for Python. That's why I like this library more than AWS Cloud CDKs. But they both do the same job, basically. The only missing part is, like, whenever the Cloud CDK generates a template for you,
Starting point is 00:23:48 it also allows you to deploy it directly using the CDKs. But what Troposphere does, it allows you to generate the template, but it doesn't, like, allow you to, like, deploy it directly on the cloud. So, like, you basically have to take the template and put it onto CloudFormation to deploy the resources. Yeah, that seems reasonable. You know, we could store those in version control and stuff
Starting point is 00:24:10 like that. Like, here's what we did to change the cloud setup, and here it is in version control, right? Yep. Nice. Well, I think that brings us to our extras, Brian. Is that right? I guess so, yeah. Yeah, I think so. You got anything you want to share with folks? Just that
Starting point is 00:24:25 the PyCon 2022 site is there now. You can't sign up yet, but there's the 2022 site. I've seen some Salt Lake City mountains there. Yeah, I'm so excited to go to Salt Lake City. I assume you're going, hopefully. Hopefully, if I can.
Starting point is 00:24:42 Yeah, I definitely have plans to. I can't wait to see everybody in person again. Yeah, it I can. Yeah, I definitely have plans too. I can't wait to see everybody in person again. Yeah, it's so interesting to think about where we are with conferences and stuff. So I was just at Pi Bay, which is really cool. And I'll pull up that on the screen here. Like this is where the Pi Bay conference was held, like literally in this in this outdoor
Starting point is 00:25:05 food cart area where there's a bunch of cabanas and each cabana had its own tv and its audio video feed so you could be in groups of like six or seven outside but there was like hundreds of people there right which is really cool and i think that that's kind of a template for for going forward for a lot of things happening these days i've actually invited grace uh who was one of the people who put this on on the show so maybe we'll have her tell us more about this later but i i don't know how this works into an event as big as pycon or as big as any of those right yeah i mean that's a you gotta have a really big outdoor space which would be awesome maybe like like a theme park like i'm gonna watch this one from the roller coaster yeah awesome yeah so uh jose out there
Starting point is 00:25:48 says looking forward to attending my first pycon yeah it's it's super fun and uh teddy hey teddy says or the pycon announcement yeah that's great how about you any extras uh you know what i didn't have any until i did i actually wanted to just point out this tweet that i saw you put out here about um oh i think i just saw the tweet in the morning yeah about pi e and v yeah as uh having a challenge for windows users and if you make that the core part of your tutorial then you're like starting out putting windows users who represent what 45 of the developers or something on the back foot uh on your tutorial so yeah what do you think well it was just like a comment i saw a tutorial and i was like why is this i mean that's not the default way to install python so i put this out there and it kind of blew up a little
Starting point is 00:26:38 bit uh so yeah exactly yeah it's got like 121 likes. So anyway, I think that that's an interesting thing to add. Mohammed, you got any extras as well before we get to the next thing? learning command line so like it talks about how you can use tools like using man pages and like help flags with the tool so like it gives you like info and insights about how to actually use the tool and like exploring wikis and like stack work for questions i think it was an amazing article for like beginners who want to like we're just getting into like command line or linux world yeah that's cool that's my i find i found the linux command line mac os a little bit less because there's often an alternative but certainly the linux where the sole access to it was through an ssh i found it intimidating when i first got into it no i actually i actually got into linux right after my first semester of college i was just trying it out as fun and when
Starting point is 00:27:42 i just took command line i was like wow you can do so much in Command Line. And that rest is history. Like, I've been using Linux for, like, I would say five years now. But now I'm recently switched to macOS because of my work, and I'm having a hard time managing Windows now. I guess I had trouble switching to PCs because I was in Solaris when I was in college. Oh, interesting. I remember walking by the Solaris going, oh, those are different. Very interesting. Yeah, cool. But no, this will be super helpful, especially to a lot of folks out there who don't work with a lot. I mean, now I'm totally
Starting point is 00:28:13 comfortable with Linux, but I remember the learning experience. So I'm sure this will help others as well. Nice. All right. Well, I believe it is time for a joke. And speaking of real conferences, this is something that we've done before at the PyCons. We did this at PyCon in Portland with the Portland Art Museum there. It was really fun. And it's the classic programmer paintings.
Starting point is 00:28:38 Remember these, Brian? Yeah. So the idea is you take a legitimate, historical, maybe 400-year-old piece of fine art, and then you ignore the actual name and you put your own sort of techie interpretation upon it. So here, this one, we've got this balloon taking off into like a dark, cloudy red sky and two wolves just like sort of forlorn watch it go the ground
Starting point is 00:29:06 is kind of on fire but it's also snowy I don't really understand that yeah but that you know that this is some proper painting that who knows what it is right but if you look at the title oh wow the title is alphabet cancels loon right loon was their project where they'd put balloons up over places without much internet and that would beam down internet so here's like the final balloon balloon going off into the smoky sky it's in zydezla beks besinski 1979 oil on masonite beautiful alphabet canceled balloon so we used to go around to the art museum there and we would like at the conference or it would have like a dinner there or something we just go around and like uh try to um one up each other on on doing this to like real paintings it was fun but this whole classic programmer paintings.com endless joy right there i'm
Starting point is 00:29:57 definitely gonna check these guys out yeah you can spend a long time going it's been around for a while so it's good stuff i'm chuckling at some right now i gotta stop looking at it yeah exactly i'm strongly resisting the urge to just scroll through them because we're doing a show i'll do it later thanks michael yeah yeah you bet brian thanks for being here as always and muhammad thank you for joining us it's been great and it was pleasure to be here yeah thank you you're welcome bye everyone out there bye everyone thanks for listening to Python Bytes. Follow the show on Twitter via
Starting point is 00:30:27 at Python Bytes. That's Python Bytes as in B-Y-T-E-S. Get the full show notes over at PythonBytes.fm. If you have a news item we should cover, just visit PythonBytes.fm and click submit in the nav bar. We're always on the lookout for sharing something cool. If you want to join us for the
Starting point is 00:30:43 live recording, just visit the website and click live stream to get notified of when our next episode goes live. That's usually happening at noon Pacific on Wednesdays over at YouTube. On behalf of myself and Brian Ocken, this is Michael Kennedy. Thank you for listening and sharing this podcast with your friends and colleagues.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.