<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="rss.xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    
    <title>Exploring Python</title>
    <description>Python automation for platform engineers and SREs — from first script to production-grade automation tools.</description>
    <link>https://python.bradpenney.io/</link>
    <atom:link href="https://python.bradpenney.io/feed_rss_created.xml" rel="self" type="application/rss+xml" />

    
    <managingEditor>Brad Penney</managingEditor>
    
    <language>en</language>

    
    <pubDate>Tue, 01 Sep 2026 01:08:11 -0000</pubDate>
    <lastBuildDate>Tue, 01 Sep 2026 01:08:11 -0000</lastBuildDate>
    <ttl>1440</ttl>

    
    <generator>MkDocs RSS plugin - v1.19.0</generator>

    
    
    <image>
      <url>https://python.bradpenney.io/images/exploring_python.png</url>
      <title>Exploring Python</title>
      <link>https://python.bradpenney.io/</link>
    </image>
    

    
    
    <item>
      <title>Overview</title>
      
      
      
      
        
      
      <description>Professional-grade Python patterns for platform engineers — checking services in parallel, and the CLI, logging, and testing patterns your team can actually rely on.</description>
      <link>https://python.bradpenney.io/efficiency/overview/</link>
      <pubDate>Thu, 30 Jul 2026 13:00:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/efficiency/overview/</guid>
      
    </item>
    
    <item>
      <title>Overview</title>
      
      
      
      
        
      
      <description>Core Python patterns for platform engineers past the first script — handling credentials safely and working with the YAML your team already has everywhere.</description>
      <link>https://python.bradpenney.io/essentials/overview/</link>
      <pubDate>Thu, 30 Jul 2026 13:00:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/essentials/overview/</guid>
      
    </item>
    
    <item>
      <title>Is This Whole Stack Healthy?</title>
      
      
      
      
        
      
      <description>Check dozens of services at once with ThreadPoolExecutor, why Python&#39;s GIL blocks a CPU-bound speedup, and when to reach for multiprocessing instead.</description>
      <link>https://python.bradpenney.io/efficiency/stack_health/</link>
      <pubDate>Tue, 28 Jul 2026 14:00:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/efficiency/stack_health/</guid>
      
    </item>
    
    <item>
      <title>The Clean Setup</title>
      
      
      
      
        
      
      <description>How to install Python correctly on Linux and macOS, why you must use virtual environments (venv), and how to set up your scratchpad for testing automation ideas.</description>
      <link>https://python.bradpenney.io/day_one/setup/</link>
      <pubDate>Wed, 13 May 2026 21:34:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/setup/</guid>
      
    </item>
    
    <item>
      <title>Did the Config Change?</title>
      
      
      
      
        
      
      <description>Compare JSON and YAML configuration files programmatically — catch config drift after deployments, verify running state against expected, and surface exactly what changed.</description>
      <link>https://python.bradpenney.io/day_one/comparing_configs/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/comparing_configs/</guid>
      
    </item>
    
    <item>
      <title>Is It Still Up?</title>
      
      
      
      
        
      
      <description>Write a Python health-check poller that distinguishes connection errors from HTTP errors, handles timeouts, and exits cleanly for use in deployment pipelines.</description>
      <link>https://python.bradpenney.io/day_one/health_check/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/health_check/</guid>
      
    </item>
    
    <item>
      <title>Overview</title>
      
      
      
      
        
      
      <description>Python automation for platform engineers who know bash — task-first guides for health checking, log parsing, config comparison, and fleet operations.</description>
      <link>https://python.bradpenney.io/day_one/overview/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/overview/</guid>
      
    </item>
    
    <item>
      <title>What Just Broke?</title>
      
      
      
      
        
      
      <description>Use Python to parse application log files — count errors by component, find when errors started, and understand failure patterns that grep alone can&#39;t surface.</description>
      <link>https://python.bradpenney.io/day_one/parsing_logs/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/parsing_logs/</guid>
      
    </item>
    
    <item>
      <title>Run This Everywhere</title>
      
      
      
      
        
      
      <description>Loop over a server inventory in Python, run checks across your fleet, collect per-server results, and produce a clear pass/fail report — with proper failure handling.</description>
      <link>https://python.bradpenney.io/day_one/run_everywhere/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/run_everywhere/</guid>
      
    </item>
    
    <item>
      <title>The &#34;Don&#39;t Do This&#34; Guide</title>
      
      
      
      
        
      
      <description>Production safety rules for Python automation — no hardcoded credentials, no shell injection, always build dry-run first, and never let exceptions fail silently.</description>
      <link>https://python.bradpenney.io/day_one/safety_guide/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/safety_guide/</guid>
      
    </item>
    
    <item>
      <title>Why Python (Not Just Bash)</title>
      
      
      
      
        
      
      <description>A practical decision framework for platform engineers: when to stay in bash, when to switch to Python, and what the real differences look like in practice.</description>
      <link>https://python.bradpenney.io/day_one/why_python/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/why_python/</guid>
      
    </item>
    
    <item>
      <title>My Bash Script Is Getting Out of Hand</title>
      
      
      
      
        
      
      <description>Migrate an unwieldy bash deployment script to Python using subprocess — keep running shell commands while gaining proper error handling, logging, and readable control flow.</description>
      <link>https://python.bradpenney.io/day_one/wrapping_bash/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/day_one/wrapping_bash/</guid>
      
    </item>
    
    <item>
      <title>Environment Variables and Secrets</title>
      
      
      
      
        
      
      <description>Load API keys, passwords, and tokens in Python automation scripts using environment variables, .env files, and secrets stores — without hardcoding anything.</description>
      <link>https://python.bradpenney.io/essentials/env_and_secrets/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/essentials/env_and_secrets/</guid>
      
    </item>
    
    <item>
      <title>Working with YAML</title>
      
      
      
      
        
      
      <description>Read, modify, and generate Kubernetes manifests and other YAML files in Python using PyYAML — including multi-document YAML, safe loading, and common pitfalls.</description>
      <link>https://python.bradpenney.io/essentials/yaml/</link>
      <pubDate>Mon, 11 May 2026 21:23:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/essentials/yaml/</guid>
      
    </item>
    
    <item>
      <title>Home</title>
      
      
      
      
        
      
      <description>Python automation for platform engineers and SREs — task-first guides for health checking, log parsing, config comparison, fleet operations, and more.</description>
      <link>https://python.bradpenney.io/</link>
      <pubDate>Wed, 04 Jun 2025 10:14:00 -0300</pubDate>
      <source url="https://python.bradpenney.io/feed_rss_created.xml">Exploring Python</source>
      
      <guid isPermaLink="true">https://python.bradpenney.io/</guid>
      
    </item>
    
  </channel>
</rss>