Frog Twaddle

The random and less weighty thoughts of an internet denizen.

Corning, NY: Annual Harvest Festival along historic Market Street in the Gaffer District.

Those who read this blog may recall that my partner and I moved to a small city in the Southern Tier of New York in 2024. Prior to the move, we lived in much larger cities in Virginia and Oregon that had active communities sponsoring hundreds of events per year. (My favorite is the Oregon Museum of Science and Industry’s Science Pub series.) These events were always well publicized and easy to attend.

One thing we quickly learned about living in less populated areas of the country is that word of mouth is a major communication channel for the same kinds of events. This has its charm, but as we were newbies to the scene it made it very difficult to know what was happening. Adding to our difficulties is the fact that Facebook is another primary channel for event announcements in these small cities. Having sworn off the evil empire years ago cut us off from the community we wanted to join.

Enter the agentic workflow! One Saturday morning, my partner and I were discussing our frustration when it hit me: I could build our own local-area calendar by fetching calendar data from nontraditional sources (web pages, blogs, city government sites, etc.).

I set about asking Opus (in Research mode) to find possible sources of event information for our area. I turned that data into a source specification which we then handed to Fable. Fable came back with a six-milestone build plan. Opus worked through it milestone by milestone.

I’m cutting the technical details short here, but in the end we had an online calendar that my partner and I subscribe to, which surfaces interesting local events including concerts, public lectures, farmers’ markets, and movie nights.

If you’re interested in the gory details, check out my project repo.

Before and after screenshots

There is a lot of coverage from non-technical news outlets about how AI is bad for humanity. Concerns include outsized water and power consumption, the theft of intellectual property at scale, and the threat of misguided or ill-equipped AI making life and death decisions. While some of the concerns are overhyped and others represent real new challenges in governance, widespread negative portrayals make it too easy to dismiss this new collection of technologies. This story is an example of a low-cost, responsible, civic-minded, and exciting use of AI.

Background

I wasn’t looking for a new project in the digital humanities but as it turns out, a project was looking for me. Preceding my photo archive work described below, there were a series of serendipitous events that prepared me to execute on the project when the opportunity presented itself: my early experiments with multimodal AI models, my exposure to a specific programming podcast, and my cohabitation with a history enthusiast in a city of about 10,500 people.

Read more...

A Short Screenplay

Claude at the ready

A heart-warming story about a boy, his terminal, and his friendly script writing robot.

FADE IN:

INT. HOME OFFICE — MORNING

A desk. A terminal. A blinking cursor. The quiet hum of a man who has decided to do a thing.

DAVE sits down, opens Claude Code, and types with the casual confidence of someone who has already decided this will be easy.

DAVE (typing) There is a python file in this folder. Explain what it does.

Claude searches the directory.

CLAUDE There's only one file here: bulkdomainchecker. It doesn't have a .py extension, but let me check if it's a Python script.

Claude reads the file.

CLAUDE This is actually a Bash script.

Read more...

Purple aster wildflower with yellow center in natural woodland setting with wooden fence.

Claude’s Summary: Purple aster wildflower with yellow center in natural woodland setting with wooden fence. Location: Letchworth State Park, NY. Keywords: Letchworth, wildflower, aster, purple flower, nature, macro, botanical, trail

Like most partners and fathers, I have a LOT of pictures of my family, my dog, places I visit, curiosities I notice, and so on. In fact, given that I have a camera in my pocket pretty much every waking moment there are very few days when I don't capture something. I'm also pretty good at sharing photos, marking favorites, and occasionally getting rid of the cruft. My problem is, I still have a lot of photos I don't want to lose and that I can't always find again.

Read more...

Image of black framed glasses on a black surface.

While researching for another entry for this blog and deep diving into my old files, I came across my long lost Google Reader Takeout export. For me, Google Reader was the RSS Reader until July of 2013 when it was shuttered. In anticipation of this shutdown, Google did provide a method of exporting your data into a set of JSON files. Honestly, I had forgotten that I had collected my data since, at the time, I wanted only to continue reading my feeds (something I do to this day).

Having stumbled upon this extract, I was curious to explore this time capsule of my reading habits. Thankfully, technology has come a long way in the decade since I collected my extract and we have tools like LLMs now. They’re great at summarizing data. I thought I would share my conversation with Anthropic’s Claude with you, kind reader.

Read more...

Wet Bananas

This is another post in what is becoming an unintended series aimed at the technically savvy among us who care for older family and friends.

The Problem

Phone scams have been with us for some time and over the years they've become ever more elaborate. Spoofing caller ID coupled with presenting a victim's personal details during a phone call can make the victim think they are speaking with a trusted agent when, in fact, they are not. Most folks have learned to spot these scams. Alas, the elderly are still particularly vulnerable and the scammers' bag of tricks only continues to grow.

Many of us looking after aging parents have drilled into our wards that they should not trust anyone, and if they have concerns they should pull us in to help. In my case, this has done wonders and we've avoided more than a few scams by having my aging parents and in-laws check in with me prior to taking any actions. Unfortunately, that simple defense may soon falter thanks to the advent of deepfakes. For the uninitiated, deepfakes are synthetic audio or video created using AI that convincingly mimic a person's real voice or appearance.

Deepfakes, like phone scams, have been around for a while. The big difference is that while phone scams relied more on social engineering, and therefore had a low cost of entry; deepfakes required much more technology and financial resources and so remained the purview of nation states. Until now.

There are now several documented cases of deepfakes being generated in real time to go after large corporations with success. 404 Media published an interesting podcast that included a story about one unfortunate business that lost millions. But going beyond that, the barriers are low enough now that bad actors can now generate models that mimic anyone's voice and speech patterns in matters of minutes for low cost using only a relative few sound samples from media clips you could expect to find online.

The result? Scammers are able to sound like you or me when they interact with our parents. In the past, we could simply rely on the fact that our parents would be able to recognize us on the phone and therefore trust what we were telling them. Not so any longer, now that our voices can be so easily stolen.

So how, without being in person, are our family members to know who they are talking to? How can we easily authenticate who we are to one another?

Read more...

Finding the path of least regret.

A few weeks back, I was faced with the challenge of dealing with a difficult client. This particular client is known for flip-flopping their position and making outrageous demands. Before I dive into the crisis, a little background.

I lead several projects for a private company that does government contracting. In this particular case, we had landed a contract that would ultimately cost our company money but eventually lead to other, more profitable opportunities. We had won the work away from a prior vendor that was underperforming—missing deadlines, delivering low-quality work, etc. During the honeymoon phase with our new client, everything was good. We gave folks raises, mentored the site leadership, and oversaw the delivery. For a while, our hard work seemed to be making a difference.

More than a year into the contract, we noticed that one of the incumbent staff members was underperforming and causing several delivery issues for the team. We tried several things to help get our staff member back on track, including additional training, mentorship, corrective action plans, and many, many conversations about what needed to change and what was expected. By the time we started considering separation, we had a mountain of evidence that this individual was not up to the task—nor interested in improving.

To compound the issue, we were getting multiple complaints a week from the difficult government client about our employee's lack of performance. More than once, the government client asked us to bring someone new onto the contract. But just as frequently, we were hearing how great this employee was—from the same government client. Our senior leadership was regularly taking “beatings” over the poor performer. Given the client’s continuous flip-flopping and emotional outbursts, it felt as though there was no winning.

Read more...

Example of iMessage phishing.

I recently received an iMessage (not a text message) from an unknown number claiming to be from the VA State Department of Motor Vehicles. The message not so politely informed me that I had an outstanding traffic ticket and that I needed to pay a fine. I've seen hundreds of these kinds of messages at this point in my life and have enough technical knowledge to quickly identify that this was just another phishing attempt. I was about to delete it and block the number (which, I acknowledge, is Sisyphean) when I had a thought. What would an OpenAI model make of this?

Read more...

My partner and I recently moved back east to be closer to family and we settled on buying a home in upstate New York. The climate here is significantly different than the milder winters and summers of Portland, Oregon that we had become accustomed to. The landscape, flora, and fauna are also different. This variation should be no surprise given the geologic history of the area. The homes are very different too.

We found a home built in 1922 in the craftsman style. We love it. This is our first home that is older than we are — significantly so.

It’s also worth noting that we both work from home and so we spend a significant number of our hours in our new abode. While we’ve worked from home for the past decade, this is the first time we’ve done it in a century-old house. That made me curious about the air we were breathing and so we decided to do some environmental investigation.

Read more...

I will not give up my power. I read this on the small web today and it helps. Maybe someone else will find this useful.

I Am Part of a Whole

Enter your email to subscribe to updates.