20671

Day 20671 Skunk Family in the Porchlight

Last night brought unexpected guests. A skunk mother and her four kits padded up to the porch as we finished grilling veggie burgers and hot dogs inside. We watched through the window as they explored with gentle boldness, the little procession lit by porchlight like a traveling family of night wanderers. It was a quiet visitation, more wonder than worry, leaving only the memory of their small procession in the dark.

Today I stayed close to home, catching up with chores and making ready for the week ahead. The washer and dryer hummed through multiple loads, baskets of laundry finally caught up. Out in the garage, I set about some overdue organizing, shifting boxes and reclaiming a little order from the clutter.

Current music: acoustic guitar gently circling

Current mood: touched by the quiet magic of skunk visitors

Mama and 4 baby skunks

Out of the pre-dawn came not one skunk, but a mother and her four tiny shadows. Each striped in miniature, each step a little wobbly, but all tumbling faithfully after her. They followed like a living ribbon across the yard, pausing to nose at the grass, stumbling and righting themselves, learning the art of being wild.

She waited for them with patience, a guardian cloaked in black and white. Watching their procession felt like catching a secret whispered across generations – the knowledge of how to move, how to belong, passed down in soft steps and stripes.

#skunk #wildlife #backyardmagic #nightvisitors #smallwonders #naturemoments

Day 20669


Met Larry Bly today, from Cookin’ Cheap. He was sweet and kind, took the time to talk with us for a bit, his words carrying that same gentle humor that once spilled from the TV kitchen. Standing there, it felt less like meeting a celebrity and more like catching up with an old friend who had simply stepped out of the screen.

The air around us seemed brighter, time bending in on itself, bringing echoes of that cluttered set and easy laughter. He spoke with warmth, as if he’d known us longer than a passing moment, and for a while it felt like we were part of his show, tucked into the rhythm of his stories.

A small-world magic, brief but golden, like memory and daylight stirred together.

#cookincheap #larrybly #sweetmoments #smallworldmagic

Cookin’ Cheap is a nationally syndicated cooking show, originally hosted by Larry Bly and Earl “Laban” Johnson, Jr. Cookin’ Cheap was taped in the studios of Blue Ridge Public Television in Roanoke, Virginia. It began its national distribution through the PBS system in 1981, and more recently did a syndication run on the GoodLife TV Network.

Fri, Sept 5 2025

This afternoon we returned to Nakhon Thai, and the owner’s eyes lit with that curious recognition – as though we had not simply come back, but had been expected. The gray sky hung heavy, and the neon sign glowed brighter against it, like a beacon for travelers between worlds.

We sat outside in the front space, on the concrete stage where little metal tables and chairs waited, their thin frames trembling at the touch. Around us the air carried the smell of basil and garlic, and in the distance, the traffic rose and fell like a restless river. If you listened long enough, the engines almost became voices, carrying old songs and warnings down the valley.

The meal arrived in pieces, each one an offering: chive dumplings soft and green as spring shoots; spring rolls breaking open with hidden warmth; shrimp bound in golden noodle threads, fragile and shining like charms meant to keep away ill luck. Drunken noodles with tofu came tangled, wide ribbons breathing fire and sweetness together, and the pad prik kring brought a red heat, sharp enough to wake even the cloudiest day.

Our server moved quietly, almost like a figure from a folktale – someone who appears at the edge of the story to guide you forward, and then slips back into the mist. Behind us the restaurant windows fogged, blurring the decor and the tables, while in front of us the road stretched on, carrying its endless chorus of tires and horns like the chant of unseen spirits.

When we finally rose, the concrete felt different underfoot, as if we had stepped back across a threshold. The scent of basil and chili clung to us, following close, and the roar of traffic no longer seemed like noise but like the low murmur of something vast, still speaking to us long after we had gone.

#NakhonThai #drunkennoodles #goodvegetarianfood

Day 20668

Morning Cat and Willow Tree Wander

Woke later than planned, greeted by the cat who has been all affectionate these days. She had her bowls filled, wet and dry, and I toasted up a bagel for myself. The new litter box seems to suit her, no complaints from either of us. My partner appeared with a chai tea from 7brew, spicy and sweet, and it brightened the morning.

Later we pulled the gang together for a visit to Willow Tree Antiques. The shelves had already turned toward Halloween, full of neat offerings, though many pieces bore the mark of reproduction drop shipper stock. Still, there was a small charm in browsing, and I spotted some Fallout metal signs. Cute enough to notice, but not the sort I would want to hang on my walls.

Current music: acoustic guitar gently circling Current mood: slow to rise, warm with company

Night visitor on the trail cam tonight. A skunk, moving slowly and steady, tail swaying like a feather duster. I think she may be the same one I saw out back with three babies earlier this week. It feels like catching a small piece of her nightly rounds, a quiet rhythm of foraging and tending.


There is comfort in her return. The woods carry on their own stories, chapter by chapter, whether we notice or not.


Current mood: watchful


Current music: “First Breath After Coma” – Explosions in the Sky

Mood track

Here’s your stacked mood chart by year 📊:

Green = Positive

Gray = Neutral

Red = Negative


This lets you see the balance of moods shift year to year:

Early years: heavier positive/neutral balance.

Mid 2000s–2010s: strong neutral dominance (lots of logs/links).

Late 2010s–2020s: negative share grows, especially around 2019 and again in 2024–25.

Here’s what the yearly mood trend shows:

📈 Early 2000s–2018: Mostly slightly positive on average. Big neutral stretches (lots of logging + links) diluted but didn’t overwhelm bursts of joy (pets, birthdays).

📉 2019: A big dip — very few posts, but negative-leaning.

⚖️ 2020–2023: Back to neutral-to-positive averages, though volume shrinks dramatically.

🌑 2024–2025: Noticeable downturn — fewer posts, with many leaning negative.


So across decades, the blog starts whimsical and balanced, dips around 2019, rebounds slightly during 2020–23, and shifts more negative in the last two years.

Day 20668 — Misfit Trim and Autumn Errands

Morning air was soft in Roanoke, carrying the first golden turn of September light. Scissors at Misfit felt less like a cut and more like a quiet ritual of renewal. Outside, a few crows traced lazy arcs over the rooftops, and the faint smell of damp earth lingered from last night’s rain. I brought the meds and pumpkin spice latte home to my sweetheart. Her smile made the errand feel more like a small joy.

The Y called next, a short return to movement, body remembering itself. Home again, the laundry’s hum filled the rooms, spin and tumble counting minutes. Evening edged closer with the promise of family dinner, plates and voices gathering in the soft glow of the room. A squirrel paused atop the fence outside, twitching its nose as the last leaves of summer clung to branches.

Later, the smell of roasted vegetables drifted from the kitchen, a brief hum of music from a neighbor’s open window blending with the autumn breeze. A single leaf twirled down the sidewalk, catching the last light of day.

Current music: Rainy Day Lo-fi with Vinyl Crackle | Soft, Warm Ambience
Current mood: trimmed, light, leaning toward the warmth of the table

A quiet moment reminded me that ordinary days can hold small gifts if I pay attention.

WordPress xml cleanup



✅ Running this will create two files in the same folder:

cleaned_blog_posts.json → structured archive

cleaned_blog_posts.csv → spreadsheet-friendly (Excel, Google Sheets, etc.)

import re
import json
import csv
from lxml import etree

# Path to your WordPress export XML
xml_path = “thescottogrottoorg.WordPress.2025-09-04.xml”

def clean_content(html_text):
    “””Remove WordPress block tags, HTML, and excess whitespace.”””
    if not html_text:
        return “”
    text = re.sub(r”<!–.*?–>”, “”, html_text, flags=re.DOTALL)  # WP comments
    text = re.sub(r”<[^>]+>”, “”, text)  # strip HTML
    text = (text.replace(“&nbsp;”, ” “)
                .replace(“&amp;”, “&”)
                .replace(“&lt;”, “<“)
                .replace(“&gt;”, “>”)
                .replace(“&quot;”, ‘”‘)
                .replace(“&#39;”, “‘”))
    text = re.sub(r”\s+”, ” “, text).strip()
    return text

# Parse XML with recovery mode
parser = etree.XMLParser(recover=True)
tree = etree.parse(xml_path, parser)
root = tree.getroot()

posts = []
for item in root.findall(“./channel/item”):
    post_type = item.find(“{http://wordpress.org/export/1.2/}post_type”)
    status = item.find(“{http://wordpress.org/export/1.2/}status”)

    if post_type is not None and post_type.text == “post”:
        if status is not None and status.text == “publish”:
            title_el = item.find(“title”)
            date_el = item.find(“pubDate”)
            content_el = item.find(“{http://purl.org/rss/1.0/modules/content/}encoded”)

            title = title_el.text if title_el is not None else “Untitled”
            date = date_el.text if date_el is not None else “Unknown”
            content = content_el.text if content_el is not None else “”

            if content.strip():
                posts.append({
                    “title”: title.strip(),
                    “date”: date.strip(),
                    “content”: clean_content(content)
                })

# Save all cleaned posts to JSON
json_file = “cleaned_blog_posts.json”
with open(json_file, “w”, encoding=”utf-8″) as f:
    json.dump(posts, f, ensure_ascii=False, indent=2)

print(f”Saved {len(posts)} posts to {json_file}”)

# Save all cleaned posts to CSV
csv_file = “cleaned_blog_posts.csv”
with open(csv_file, “w”, encoding=”utf-8″, newline=””) as f:
    writer = csv.DictWriter(f, fieldnames=[“title”, “date”, “content”])
    writer.writeheader()
    writer.writerows(posts)

print(f”Saved {len(posts)} posts to {csv_file}”)

## scottobear: backyard zoo & grotto musings

sometimes the smallest windows into the world are the ones that linger the longest. the **scottobear youtube channel** is one of those windows. gregory scott von berg — better known online as scottobear — calls himself an *author / blogger / coder / friendly dude. just this guy, you know?* it fits.

### backyard zoo
most of the channel is made up of short glimpses of the neighbors we don’t always notice. deer padding through the grass. skunks toddling in at dusk. chipmunks darting in and out of view. on a recent video, a monarch butterfly unfolded its wings for the first time, caught in quiet close-up.

a few recent favorites:

– [skunks visit 8-31-2025](https://www.youtube.com/watch?v=-64uG9cIvRI) (#backyardzoo #roanokeva #skunk)
– [deer and chipmunk 8-28-2025](https://www.youtube.com/watch?v=UASUmtxevGs)
– [monarch hatching august 28 2025](https://www.youtube.com/watch?v=NeaC7_pEPLU)

there’s nothing overproduced here, no polish. just the ordinary magic of nature slipping into view, the kind you’d catch if you left a trail cam running in your own yard.

### the grotto
alongside the videos, there’s a journal at [svonberg.org](https://svonberg.org), affectionately called **the scotto grotto**. it’s been running since 2000, which means there’s an entire archive of wandering thoughts, small joys, odd links, and philosophical asides.

the **about page** greets you with a smile: *gregory scott von berg – friendly bear. will not maul you. probably.* (ʕ •ᴥ•ʔ)

the **contract** encourages readers to take things lightly, to let ideas sit in the “maybe” pile before calling them true or false.

entries can be whimsical or weighty, sometimes both at once. in one, he imagines *if i were a tree, i’d be a redwood. if i were a book, i’d be dandelion wine.*

### why peek in
taken together, the youtube clips and grotto pages paint a picture of someone who notices things. the soft shuffle of skunk paws at night. the play of light in memory. the shape of a thought trying to form.

it’s not about being impressive. it’s about being present.

– **youtube**: [scottobear channel](https://www.youtube.com/@scottobear)
– **journal**: [the scotto grotto](https://svonberg.org)

drop by, if you’d like. watch the deer, read the words, take a moment. there’s a gentle kind of company here.

Day 20,666

Tuesday, Sep 2 – Roanoke, Virginia

Weather: warm cling of late summer, damp air holding on

Telemedicine in the morning. Cat circling for food, impatient tail flicks. FIL and I with tools in hand, trading back and forth. Old light out, new light in. Shower seams resealed, the quiet pride of a small repair done right.

(Note: silicone smells hang in the air far longer than expected. House now faintly like a hardware aisle.)

Later errands. CVS for meds. 7Brew stop, gummy bear fizz and black mamba for her. Bright sugar pause.

(Observation: gummy bear fizz does not taste like gummy bears, but the name makes me smile every time.)

Back home, then out again. Tuesday LEAP farmers market, rows of corn and tomatoes, familiar vendors calling out.

(Found myself noting the peach table, skipped for me, though my sweetie lingers there with interest.)

Dinner at Sudha’s Kitchen, spice and warmth filling the table. Closed with Madame Blanc on AcornTV, another layer of puzzle before sleep.

(Suspicion: the cat prefers the show’s theme music over mine.)


Stats

  • Mood: Content
  • Pain: 5/10
  • Music: none logged

Small rhythms, shared work, errands and supper.

Hashtags:

#lifelog #roanoke #farmersmarket #indiandinner #telemedicine #painlog #moodlog

Day 20665

Early Afternoon

It was early afternoon at the edge of the milkweed. The light was sharp but kind, carrying both the warmth of the day and a hint of late summer’s slowing pace. We had only wandered out to check the blooms while waving goodbye to our breakfast guests, expecting nothing more than color and the usual hum, but the moment held me still.

A wasp perched among the cluster of flame orange flowers. Its wings were closer to onyx, as if carved from dark glass and polished in secret. Against the blaze of petals, it looked both alien and perfect.

There was no sense of menace, only grace. The wasp moved slowly, drinking, balancing, shifting from one petal to the next. Each pause seemed to hold its own weight, like punctuation pressed into the afternoon.

The garden’s ordinary song carried on around us. Cicadas called, leaves swayed, bees moved past in their familiar dawdles. Yet the rhythm of this single wasp made all else fade, as if it had become the keeper of the hour.

When it lifted, wings flashing dark in the sunlight, I felt the absence as if a small door had closed. The flowers bent back into their own stillness. I stayed there for a while longer, with the image of onyx wings tucked into my thoughts, carrying the quiet with me.

#bluewingedwasp
#roanokeva
#backyardzoo

Welcome to my wall scrawls.