Enshittification

Office Hours

Django

Gaming

Movies

Python

Weeknotes

Shows

Links

: 🎸 Jason Isbell and the 400 Unit at Liberty Hall We had a rare outing tonight to see Jason Isbell and the 400 Unit play at Liberty Hall. You are …

: 🌪️ Tornado Watch tonight We have been under a Tornado Watch since I left work today until about 11 PM tonight. My youngest …

: 🎙️ Randy Travis and Ethical AI Eleven years ago, country music legend Randy Travis lost his voice to a stroke despite keeping 100% …

: 🎸 On Pearl Jam's Dark Matter interviews My favorite band, Pearl Jam, recently released a new album called Dark Matter, which has led to a …

: 🚜 De-googling update 📉 After my 🔥 Drop Google Chrome and try out Vivaldi for a week, I dare youarticle, I have heard from a …

: 😬 This week was a grind This week, and especially today, has felt like a grind. Code ebbs and flows better and worse. Some …

: 📅 Office Hours on May 3rd 📅 I’m hosting Office Hours this Friday, May 3rd, 2024, from 2:00 PM to 4:30 PM Central Time …

: 🎒 Everyone struggles with Django's static files Josh Thomas did a great job documenting and walking us through how he prefers to set up static files …

: 💸 Alphabet has never been more profitable This Hacker News comment is quite the deep cut about Google’s recent layoff/firing of the …

: 💚 DjangoCon US Talks I'd Like to See 2024 Edition Continuing in my tradition of 2023, 2022, 2018, 2017, and 2016 “DjangoCon US Talks I’d …

: 🔥 Drop Google Chrome and try out Vivaldi for a week, I dare you Last year, I switched to the Vivaldi web browser because I read a few peer reviews that pointed out …

: 🖱️ On Trackballs. I need one. 🪤 At night, when I’m couch computing after everyone goes to bed, I use one of these XL …

: 🖖 On Open Sourcing DOS 4 My first PC as a kid ran MS-DOS 4, so seeing today’s news on Open Sourcing DOS 4 takes me …

: 📅 Office Hours on April 26th Please note: I moved the time up 30 minutes. 📅 I’m hosting Office Hours this Friday, April …

: 🐳 GitHub Actions Cleaning up old Docker container images If you use GitHub Actions to build and deploy Docker container images, you quickly learn that …

: 📰 Quick Django News #228/#229 update tonight Quick update tonight since I’m tired, but I had to re-do/re-send Django News #228 because our …

: 🎮 TIL Nintendo Switch Game KVM The Nintendo Switch is very popular in my household. My six-year-old is at the right age to play a …

: 📺 Glass - I watched Unbreakable when it came out in the movie theater back in 2000. It’s one …

: 📺 Split - I noticed that Glass just came out on Netflix, which led to my discovery that Split was …

: ❤️ Untitled Friday post Hug your loved ones. Everyone should take time and appreciate where we are and those around us on …

: 🤖 Super Bot Fight 🥊 In March, I wrote about my robots.txt research and how I started proactively and defensively …

: 🚀 Starship is the shell prompt you have been looking for 🐚 I spent a lot of time in my shell (terminal, iTerm, bash, whatever you prefer), and by and large, my …

: 🧰 Rustywind and pre-commit take the edge off of Tailwind CSS Last year, I wrote this TIL: Creating a Rustywind pre-commit hook, which illustrates how to use the …

: 📓 Weeknotes for Week 15: April 8 to April 14 Family The mowing season has officially kicked off. I mowed our yard for the first time this year on …

: 🧱 Dear Tech Companies: Two-year-old edition Dear Tech Companies, There is never a good time to interrupt a two-year-old to ask her for a one to …

: 🙋 How often do you use Django's startproject and startapp? I saw this Mastodon post last week and thought it worth sharing. Weekend #django question/poll How …

: 📅 Office Hours on April 19th 📅 Next week, I’m hosting Office Hours on Friday, April 19th, 2024, from 2 PM to 4:30 PM …

: 📺 Fallout - Everybody Else Is Doing It, So Why Can’t We? ☢️ trakt.tv/shows/fal…

: 📌 On leaving Pinboard, aka Raindrop, is better 🤷 A friend asked me which bookmarking service I switched to after I moved on from the Pinboard …

: 📺 X-Men ‘97 - Watching the first episode to wind down. trakt.tv/shows/x-m…

: 🐛 Production bugs happen to everyone I have noticed a GitHub bug for a few weeks, but I kept forgetting to ask publicly about it. Today, …

: 📋 Copy All Urls browser extension If you are like me and have a habit of opening links in new tabs for days, weeks, and sometimes …

: 🐳 Docker and OrbStack disk cleanup notes Docker is one of my daily drivers, and here are my notes for reclaiming disk space and a bonus tip …

: 📖 Weeknotes for Week 14: April 1 to April 7 Family I skipped last week’s update because we spent Easter weekend with my family and ~6 …

: 🚜 Refactoring and fiddling with Django migrations for pending pull requests 🐘 One of Django’s most powerful features is the ORM, which includes a robust migration …

: ⛳ Syncing Django Waffle feature flags The django-waffle feature flag library is helpful for projects where we want to release and test new …

: ⬆️ The Upgrade Django project Upgrade Django is a REVSYS project we created six years ago and launched three years ago. The goal …

: 🚀 Mise is really fast A month or two ago, I stumbled on justpath, which is worth installing to help clean up any PATH …

: TIL: Brandolini’s law 💬 The amount of energy needed to refute bullshit is an order of …

: 🔥 An update on OpenSSF's XZ fumble OpenSSF’s Scorecards is Going Just Great 🔥 While I’m happy that OpenSSF updated their …

: 6️⃣0️⃣ Sixty days of blogging ✍️ Sixty days ago, I started blogging daily with my Wiggle Work friends. Our goal was to blog every day …

: xz update: Don't do this Don’t do this. Compromised packages because of burned-out maintainers aren’t a time to …

: ⬆️ Update and upgrade Homebrew and `xz` versions After I left work today, I noticed a flood of messages about a vulnerability in the xz package that …

: 🚨 No office hours this week due to the holiday 🚨 👋 Hi friends, 🚨 Sorry to cancel this late, but no office hours this week. 🚨 Something had to give …

: On backups and building a portable backup drive solution According to ChatGPT, the 3-2-1 backup rule is a simple yet effective strategy for ensuring data …

: On Syncthing and multiple devices When my son started kindergarten last year, I started experiencing a bit of “carrying things …

: Django Chat recording today I was on the Django Chat podcast today, but since the episode will not come out for a few more …

: Things I can never remember how to do: Django Signals edition I am several weeks into working on a project with my colleague, Lacey Henschel. Today, while …

: 2024-W12 - Weeknotes for Week 12: March 18 to March 24 Family Spring Break is over for my kids, and they both returned to school. Both kids seemed healthy …

: On scratching itches with Python Python is such a fantastic glue language. Last night, while watching March Madness basketball games, …

: Automated Python and Django upgrades Recently, I have been maintaining forks for several projects that are no longer maintained. Usually, …

: Fixing a CSS layout issue 2024-03 Fixing a CSS layout issue I noticed a layout issue for one of my website projects while …

: 🤖 On Robots.txt I have spent a lot of mental energy thinking about how to be more defensive with the robots.txt …

: Justfile Alfred Plugin A few years back, I had a productivity conversation with Jay Miller about Alfred plugins, which led …

: 📺 The Gentlemen - I just started episode five, and it has no business being this good. …

: Weeknotes for Week 11: March 11 to March 17 Family This week was Spring Break for both of my kids. My son had all week off, while my daughter …

: 🍕 On tortilla pizza The algorithm kept telling me to make tortilla pizza, so today, over lunch, I caved and made two …

: 🏡 On Gardening It’s springtime in the Midwest, and I took my car to get it washed earlier today. I had my …

: Five for Friyay It’s been too long since I posted my five favorite links of the week. Continuing that theme …

: Python's UV tool is even better Last month, I wrote Python’s UV tool is actually pretty good about Astral’s new Python …

: On environment variables and dotenv files Brett Cannon recently vented some frustrations about .env files. I still hate .env files and their …

: Completed, finished, or done Completed means to have all the necessary parts or elements and lack nothing. Finished means …

: My Python Roots Last week, during office hours, I shared the two libraries that were my gateways to learning Python. …

: Weeknotes 2024 W10 We were reminded that Winter is still here this week, starting with warmer weather and ending with …

: Bootstrap to Tailwind CSS I spent a few hours tonight weighing my options to port a few websites from Bootstrap to Tailwind …

: 🎮 Dave the Diver Dave the Diver is a fun game for such a random, quirky, and so many game-styles / mini-games all …

: How to test with Django, parametrize, and lazy fixtures This article is a follow-up to my post on How to test with Django and pytest fixtures. Here are some …

: Importing data with Django Ninja's ModelSchema I have recently been playing with Django Ninja for small APIs and for leveraging Schema. …

: Upgrading Python from 3.11 to 3.12 notes Recently, I have been slowly moving several of my side projects and client projects from various …

: On pip isolation I saw this post by Trey Hunner about pip isolation, and I wanted to share a third method. …

: The Weekend Woodworker 🪚 It’s that time of year when I dust off my copy of “Equip Your Woodworking Shop For …

: New `django-startproject` update I updated my django-startproject project today to support the latest versions of Django, Python, …

: 📺 Spaceman - I am walking into this with ZERO expectations, and yet my gut is telling me that even …

: We did it, and what's next My February goal was to publish an article every day for the entire month, and I’m happy to …

: Python's UV tool is actually pretty good I carved out some time recently to start playing with the new Python package installer and resolver, …

: The definition of digital chaos A few months ago, PayPal reached out to me via my backup email address to let me know that my …

: Using Django Q2 I’m long overdue to write about how Django Q2 has become part of my development toolkit. As …

: Things I do every time I start a Django project In the spirit of Brenton Cleeland’s Six things I do every time I start a Django project, my …

: Weeknotes 2024 W08 It warmed up this week, and we started our mornings out in the 30s and ended them in the 60s and …

: Fetch the contents of a URL with Django service For the last few months, I have been using the cooked.wiki recipe-saving website, which initially …

: Three years later, email is less of a pain Disclaimer: Forward Email did not pay me to write this. I wrote about my side projects and how email …

: Scratching Itches with Python and ChatGPT A few times a week over the last several months, I have paired with ChatGPT to work on Python …

: Using Chamber with Django and managing environment variables One of my favorite hosting setups is getting a cheap slice from Digital Ocean or your favorite …

: Transferred - django-rq-email-backend found a new home A decade ago, I created django-rq-email-backend for a few projects to queue emails to send without …

: 🥷 Django Ninja I have heard good things about Django Ninja, and I was looking for an excuse to try it out. One pain …

: My 2024 Development Setup I have wanted to document my development setup for a while to revisit it from time to time to see …

: Office Hours Please note: Just so you know, Grammarly told me my writing is fine. So please blame Grammarly and …

: More funding and less shaming Note: I deleted >1000 words and decided to post a summary instead. Jacob Kaplan Moss slacked me …

: The DACO Stack For the last few months, I have used the Django + Adam Johnson + Carlton Gibson + Oliver Andrich …

: Unrestricted Content warning: Kansas City mass shooting. Today, I worked on a post to keep up my February streak …

: Over lunch I caught up on a few videos over lunch while working on a few drafts for the week and wanted to …

: Year in review 2023 I write one of these posts every year, and I manage never to publish them. Since I’m trying to …

: Let's Talk About Paying for Open Source Disclosure: I wrote this quickly, proofed it via Grammarly, applied a few suggestions from ChatGPT, …

: Python Development on macOS Notes: pyenv and pyenv-virtualenvwrapper Here are my notes for using pyenv and pyenv-virtualenvwrapper on macOS. I use pyenv to install and …

: Emphasis mine. I had no free time, and it was another situation where most members were so …

: 📺 Fargo Season 5 - I just started the new season this week, and it’s already one of my …

: My Daily Routine 2024 It’s been a while since I wrote about my daily (previously morning) routine, which is fun to …

: Semi-Automate Copy-to-Clipboard Case Study A “copy-to-clipboard” automation is a web page with many formatted text and links that …

: Semi-Automate Copy-to-Clipboard Case Study A “copy-to-clipboard” automation is a web page with many formatted text and links that …

: The Power of Semi-Automation: Why Less Can Be More According to the ninety-ninety rule, the final 10 percent of code needed to automate a task …

: Django Queryset to Markdown Table Today, I asked on Mastodon if anyone knew of a good solution for generating a Markdown table from a …

: How to test with Django and pytest fixtures Here are some notes on how I like to write tests for a Django app that tests a model down to a view. …

: The Django apps I actually use (rough cut) This is an updated version of my response to the Top 5 3rd party packages from the Django Forum. I …

: What’s Your Go-to Comfort Media? [rough cut] Everyone has unique ways of unwinding and finding comfort after a long day. My comfort media spans a …

: My First Mac I saw Jon Gruber’s 40th Anniversary of the Macintosh topic list last week, and I decided to …

: Choosing the Right Python and Django Versions for Your Projects When deciding when to adopt a new major or minor Python or Django version, I prefer to wait until …

: 📫 For my email sanity, I just ran “label:inbox before:2024/01/01” and archived …

: For anyone who is not prepared for our upcoming USB-C standardization, I had to pick up one of these …

: 📺 Barbie - I had no idea what this movie was about and yet it’s been a total surprise at every …

: ✏️ This morning, I updated my Rustywind pre-commit hook to use the latest tag. 🙏 Thank you to …

: 📺 Rebel Moon - Part One: A Child of Fire - Ya, this is pretty bad, but not 23% Tomatometer bad, but …

: 📺 The Last of Us - I finished Season 1 tonight, and I was expecting that. I will admit to being a …

: Testing out my new micro-blog: webology.micro.blog, which I’m planning on using to cross-post …

: Commander Mark taught me how to draw with perspective to create 3d drawings as a kid. I used to …

: 🤔 I’m unsure if or how long I will keep this up in 2024, but I thought I’d end my …