What I've been up to in Programming: Python
Selenium for Automated Pool Signup
Spent the last week debugging that script. Turns out the key to getting it to run in cron is to add export DISPLAY=:0 && before your command. That’s because Chrome will not launch without a display to send Chrome to.
Python Morsels
The most recent Python Morsels exercise was to figure out if a number was a perfect square. Trey began his problem statement this way: “This week I want you to write a function that might seem simple at first, but there’s a number of ways to solve it.” It definitely took some out of the box thinking for me to figure out how I was going to solve the base case. The math.sqrt() function returns a float so that it can give answers for non-perfect squares. So I kept thinking and I realized that any perfect, non-complex square root must be an integer. So I came up with the conditional to return. (And after all this Pythonic learning, I’ve learned not to evaluate for truth and then return a variable. Just return the evaluation)
Spent a bunch of today trying to get SSL working correctly
And failed and left my site offline most of the day. So I’ll have to try some stuff on the side and give it another shot.
A little dust for the next few days (or weeks)
I just moved this blog to slightly different hosting infrastructure. Because of that I had some funky issues with character encoding yesterday. I believe that’s fixed now, but there may be other things that take me time to notice and fix up. Also, I still have a couple other things to set up so that I can FINALLY have https working for this blog. As part of this infrastructure change, I discovered and fixed at least one long-running issue that was causing problems with that. So if things are offline for a bit over the next few days or weeks - that’s why.
Last Few Days in Programming: Lots of Python
Been quite busy with Python, keeping me away from other pursuits, like video games. (Although the kids have been requesting Spelunky 2 whenever it’s time to hang out with them)
Extra Life Donation Tracker (eldonationtracker)
For my Extra Life Donation Tracker I pushed out a new release, v5.2.2. A user of my program (man, I never get tired of how awesome that is!!) had wholly anonymous donors which was causing an issue I thought I’d handled. But it turns out that the folks that run the Donor Drive API are a little inconsistent in how they handle that in the donor endpoint vs the donations endpoint. So I pushed that fix out and now things should be dandy for game day (about 2 weeks away!!)
First 24 Hours with Podcast Republic
It took me a while to get the hang of the many, many options within Podcast Republic so that I could get it to work the way I wanted - automatically downloading episodes on WiFi. Unlike Doggcatcher, but more like other modern pod catchers, you can stream a podcast instead of always having to download it. The option is nice, but it does introduce complexity. As usual, it was annoying at first to have the pod catcher think it needed to download every single episode from the podcasts you subscribed to.
Evaluating moving from Doggcatcher to Podcast Republic
I’ve been using Doggcatcher for YEARS - ever since I first got a smartphone something like 8 or so years ago. I started using Doggcatcher on Dan’s recommendation. One of the best features it’s had is the ability to speed up podcasts without chipmunking the voice. (I think that came a year or so after I started using it). Recently I’ve been a bit annoyed at Doggcatcher, particularly with podcasts from the EarWolf network (although there may be other networks with the same behavior). Every time Doggcatcher checks for updates, all the episodes from EarWolf will disappear and redownload. Until it is done, I can’t listen to the episode.
Neil deGrasse Tyson’s podcast is also annoying in that if a new episode comes out before I’ve finished the previous one, it’ll overwrite it so that I now have two copies of the same file. This makes it more stressful than it needs to be when I’m trying to choose the next podcast to listen to. So I started asking folks for recommendations. Dan recommended Podcast Republic to me. I don’t know if it’ll fix things for me because Dan was using it because Doggcatcher wasn’t working well for him for authenticated feeds, but I’m hopeful.
Brave on Windows Part 1
This post continues a series on exploring new browsers:
I’ve been using Vivaldi on Windows for about four months now. As I keep saying, my browser needs on Windows aren’t too huge. Mostly I access youtube, the Stardew Valley Farm uploaded, and Google Docs. But I want to keep checking out new browsers on Windows first precisely since they are so important on my Linux computer. I don’t want to mess up a good thing there.
Switching up the hardware for the Garage IOT
Back in May, I set up my Raspberry Pi B as my garage door monitor. Unfortunately it stopped working, I haven’t investigated yet, but I wouldn’t be surprised if it got hit with the infamous SD card corruption that was a big problem with the early Raspberry Pi boards. (I think I read it’s much less of a problem with the Raspberry Pi 4) So I decided to go ahead and switch it with a Raspberry Pi Zero W, especially since you can get it with headers from Adafruit for only $14. As a bonus, it’s got a better processor (same as the Raspberry Pi 3, I think) and built-in WiFi. It’s also got a smaller footprint, but that doesn’t matter to me for where it’s mounted. So now I’m back to having a Raspberry Pi B without a job to do (assuming the hardware is fine and it just ended up in an unbootable state. I’ve also now got a usb WiFi module for it, so maybe that’ll help me think of something for it to do. I think the Raspberry Pi rover project I got in a Humble Bundle uses a 1st gen Raspberry Pi, but I’d been thinking of using a 4th gen Pi in order to maybe do some more fun stuff with it like maybe some openCV based Computer Vision and/or machine learning.
All Journey and No Destination: Friday and Fast Times at Ridgemont High
By complete coincidence I ended up watching Fast Times at Ridgemont High and Friday (each for the first time) back to back this week. I watched Fast Times because it was being covered by Paul Scheer and Amy Nicholson were covering it on Unspooled, their film podcast. As for Friday, well, that’s a slightly more convoluted story. Five Iron Frenzy, one of my most consistently favorite bands, was doing a Kickstarter for their new album. As part of promotion for the campaign, Reese Roper appeared on Mike Herrera’s podcast, The Mike Herrera Podcast. Herrera is the lead singer and songwriter for MxPx, a band I’ve been listening to off-and-on since 1996ish. The Roper episode led me to lookup MxPx’s latest release, MxPx. There’s a song on there called Friday Tonight that had some lyrics that didn’t make sense to me:
Last few weeks in Programming: Python, Ruby
You may notice it’s been a while since I last wrote about programming. Well, a lot of the programming I was doing with the kids was due to having more time on my hands thanks to COVID. With Scarlett back in school full-time, there’s a lot less time for that as we focus on making sure she gets the most out of her education as well as teaching the twins to make up for not being in preschool this year. This has left me with reduced time for all my projects and entertainment (games, TV, and reading). Up until now that has meant the programming was put off to the side - kind of. Because I’ve been loving my exercises from the Python Morsels website and I’ll be talking about that when I get to the Python section. But first up, Ruby!