I Went on Vacation and Came Home With an App and a Dumb Viral Video Bit

I have a hard time unplugging my brain on vacation, and in fact have come up with some pretty wild ideas with my wife when we have time together to “unwind.” (Date Night Appetite, anyone?)

A 5 hour drive to the beach is apparently a very conducive environment for hairball ideas to percolate. Somewhere around hour three, as the family enjoyed their devices and Ween played on the radio, I started stewing on how every single YouTube video these days opens with the same two words.

“Hey guys.”

It’s everywhere. Every creator, every tutorial, every teenager reviewing a energy drink, all of them leading with “hey guys” like it’s a legal requirement, and it had been quietly driving me up a wall for years.

So I decided I’d make some videos that are nothing but that. Just me, in some random setting, looking at the camera and saying “hey guys” like I’m about to launch into something, and then not saying anything else at all. That’s the whole joke. There is no punchline, because the missing punchline is the punchline.

I figured maybe my kids would find it funny and a few people would see them. Instead, the it quickly started taking off. A few of shorts went mildly “viral” on YouTube Shorts and Instagram Reels, and I spent a good chunk of the week watching the view counts climb, all based on a bit I came up with while stuck in traffic on I-26. You can see the ridiculousness over on my YouTube shorts if you want to understand my sense of humor.

Still from one of my Hey Guys shorts
One of the “Hey guys,” shorts. 

Aside from that whole distraction, the week definitely felt like a vacation. we took five straight days of 2 hour tennis clinics in the mornings, Rachael and I enjoyed some lovely chats on the balcony over a cocktail, we soaked up the sun and surf at the beach in the afternoons, where we continued to sweat and play Pro Kadima. Riding our longboards to-and-from the tennis clinics was a fun time as well, and it made me feel like we were the cool family that knew how to ride skateboards (and one scooter) together.

It was very relaxing. I want to make that known before I tell you about what else I did.

Bogey

As someone who likes to know what I’m sharing a wifi network with when traveling, I started I realized I missed having a UI for network scanning. NMAP and ARP scans are great, but sometimes it’s nice to visualize things (I think I’ve been spoiled by wiz.io).

So I built Bogey. It’s a little macOS app that shows you a live radar of your own network, figures out what each device probably is, and tells you the second something new and unfamiliar shows up. It runs entirely on your local machine. There is no root access necessary (though some root-based features are planned), there’s nothing to log into, and nothing leaves your laptop, because I cannot think of a single good reason my network map should live on somebody else’s server.

Bogey showing a live radar of devices on a home network
Bogey, watching thing.

It’s real and it’s up at getbogey.app if you want to poke at it. And that’s what I call a productive, relaxing vacation.

The FULL Diet: What My Bloodwork (and Claude) Made Me Do

My annual physical in early March came back with some numbers that weren’t exactly alarming, but weren’t nothing, either. Glucose at 102 when normal tops out at 99. LDL cholesterol at 133. Total cholesterol at 205, just over the 200 threshold my doctor uses as a soft line in the sand.

Img 8022
Me and the fluffball

Her take was something like “it’s not a crisis yet, but let’s keep an eye on it for next year.” Which is a perfectly reasonable position for a doctor to take, and a perfectly reasonable position for a patient to ignore while continuing to eat, fast food, chips and Goobers.

This time, I didn’t ignore it.

I’m not sure exactly what the difference was this time, though I am pretty certain it has something to do with the recent passing of my father, and my ensuing conscious and subconscious thoughts about mortality.

I’ve had high-ish numbers before and told myself I’d do something and then didn’t. I developed the fat tire around my belly years ago, and always wanted to do something about it, but never did. Maybe it was a combination of factors. Maybe I was just ready. Whatever the reason, I decided to actually sit down and think through what I was eating, figure out what the problems were, and build something I could follow without losing my mind.

I had tried dieting before, counting calories, getting in shape, accomplishing some successes here and there, but nothing that ever stuck and nothing that really dove into the core set of problems.

I turned to Claude for help. I know some people are going to roll their eyes at that, and I get it. But I went in with a very specific request: I don’t want to count calories, I still want to enjoy a cold beer (or two) or a cocktail (or two) on the weekends, and I want meals that actually feel like meals.

I needed a framework that addressed the actual problems while leaving enough room to live like a normal person.

Introducing The FULL Diet

What came out of that conversation with Claude is what I’ve been calling the FULL diet. It is an acronym because I apparently cannot resist a good acronym, and it is a reminder of what this diet is all about:

F is for Fiber.

U is for Unprocessed foods.

L is Lean (or Low) fats.

L is Low sugar.

Fiber, Unprocessed, Lean fats, Low sugar. FULL.

The elevator pitch is: low refined carbs, low added sugar, high protein, high fiber, healthy fats. Just swapping the junk out for things that actually do something useful. There’s no calorie counting, no macro tracking app, no points system. Just four things to keep in mind when I am standing in a grocery aisle trying to decide between two crackers.

Tequila on the rocks still clears the bar (my new go-to cocktail is a Ranch Water). Dry wine does too. The framework is clear about what the actual villains are, and a beer with my wife on a Friday isn’t one of them.

The four things I decided to actually eliminate were refined carbs, added sugar, saturated fats, and heavily processed anything. Those four categories cover most of the damage.

Specifically, white flour, anything with an “-ose” early in the ingredient list, fatty red meat and processed meat, anything with an ingredient list that goes on for three lines. If it’s got all of those things working against it, I will not be partaking.

The practical changes weren’t actually that hard once I figured out the swaps. Chips became fruit, nuts, or lentil crisps. White rice became basmati, which has a lower glycemic index, or riced cauliflower when I wanted to go further. Regular pasta became Chickapea chickpea-lentil pasta, which has 13 grams of protein and 5 grams of fiber and honestly tastes fine. Earth Balance instead of butter. Unsweetened almond milk.

I was used to a rotating cast of Girl Scout cookies, M&Ms and other things I don’t need to publicly itemize. I learned that Barebelle and Quest protein bars have a great variety of flavors that satisfy my sweet tooth cravings.

How AI Helps

I really didn’t want to have to get bogged down in calorie counting and diet apps on my phone to track my weight. Those things failed to stick in the past because they were a huge pain in the ass . Once I built out the FULL framework using Claude, I was able to quickly assess whether or not things fit my diet.

It’s as easy as taking a picture of an ingredients list on the side of a box of crackers and uploading it to Claude, or even snapping a photo of a menu or sending  Claude the URL to the menu on a restaurant’s website. Claude recommends what I should eat, any substitutions I should request, and gives me options that fit the diet and are enjoyable.

It makes it really, really easy.

Success

I started at 189 pounds at the physical in March (I have been as high as 204 lbs in recent years). By mid-April, about six weeks in, I was at 178. By late April I was at 175.8. That’s 13.2 pounds in roughly seven weeks, which was not something I was expecting. I wasn’t starving myself, and I wasn’t eating tiny portions. I was just eating different things. Good things.

The tire around my belly became noticeably smaller. I felt great about that!

A few things surprised me. The dessert cravings went away around week three. They were actually gone. That was strange to notice. I’d eaten something sweet basically every night for as long as I could remember, and then one day I just didn’t want it. I don’t fully understand the why, but I’ll take it.

The other thing I didn’t expect was that my tennis elbow improved. I had been dealing with that for about six months, tried most of the standard treatments, and it had been stubbornly present regardless. Within a few weeks of changing how I was eating, it got noticeably better. The working theory is reduced systemic inflammation from cutting sugar and processed food. I can’t prove that’s what happened, but the timing is hard to ignore.

My general achiness in the mornings improved, too.

Digestion improved significantly too, which makes sense given how much fiber I added, but it’s worth saying. TMI, perhaps, but being regular is a great feeling.

To Summarize

As I write this post today, I have dropped 23 pounds and I’m at a cool 166.6. I plan to keep going and just see what happens and see where I level off, but for now, the scale keeps declining and I keep losing pant sizes. I’m feeling healthy and looking leaner than I’ve looked in many, many years. The fat tire is deflating.

My next bloodwork/physical is in March 2027. That’ll be the actual test of whether the LDL and glucose numbers came down, which was the whole point. I feel better, I have dropped a pant size (or more), and I am having to buy new clothes (a good problem to have). The data will either confirm that the food changes are doing what I think they’re doing, or they won’t.

Either way, I’ll let you know what happens.

How to block Reddit posts linking to a specific URL

I was getting really annoyed by posts in /r/politics that pointed to The Daily Beast, whose articles are almost always click-bait with little substance to them. Since I already use uBlock Origin in my browser, I sought after a way to fix this.
Adding this snippet to my custom filters in uBlock removes any post that links to a given URL in a given subreddit, on either the “old” Reddit or “new” Reddit layout:

www.reddit.com/r/politics##a[href*="thedailybeast.com"]:upward(.thing) www.reddit.com/r/politics##a[href*="thedailybeast.com"]:upward(shreddit-post)

If you want to block posts anywhere on Reddit linking to said URL, just do this:

www.reddit.com##a[href*="thedailybeast.com"]:upward(.thing)

You will need to use that method if you don’t want to see the posts in your home feed or /r/All or anywhere else they might surface outside of /r/politics.

This obviously only works on desktop Reddit, not in the app.

The Tennis Channel App on Roku – Crashes and other problems

I signed up for a year of The Tennis Channel on my Roku TV in March. At first, it worked pretty well, though I noticed the audio and video would get out of sync pretty quickly. Restarting the app would fix it until the next commercial break. That was highly annoying, and I learned that many other people were having the same problem with no resolution.

That said, I discovered that pausing and restarting the stream would fix it, so I learned to live with it.

However, a few weeks ago, the whole app started crashing as soon as I selected a stream to watch – either live or pre-recorded.

I tried all the usual troubleshooting steps: rebooting the Roku, updating everything, reinstalling the Tennis Channel app, but nothing worked. This was the case for my TCL Roku TV and two Roku devices connected to other TV’s in my house.

Frustrated, my wife called Tennis Channel Support and the person on the other end of the line said “many other people are having the same problem.”
They said they’d be sending an email to tech support, which we soon got a response from. The email asked us to do all the same troubleshooting steps we’d already done! I did them again just to be sure, but no, nothing worked.
I started asking for a refund for my unused ~8 months of service, but Tennis Channel gave me a dubious denial:

You are requesting a full refund, which we cannot approve at this time. Your subscription was made with your own personal email, indicating that you signed up and agreed to the terms of service.

Alas, I was not requesting a full refund, I was requesting the remainder of the year I paid for, which I am unable to use because their crappy app isn’t working.
So, I filed a complaint with the FTC, who suggested I also file a complaint with my state’s Attorney General.

Done and done. You should do the same if you are having these problems!

Update – The Next Day – August 6

Turns out reporting them to the FTC actually worked. A day later I got a refund for the unused portion of the year I paid for!

Thank you for contacting Tennis Channel Customer Service!
We can confirm that your membership under this email address is now canceled, so you will not be billed in the future. We have also issued a refund for the remaining months of your subscription.

Building Fully Remote Team Communication

I lead a team of eleven fully remote people, most of whom have never met in person, so I am always on the lookout for ways to build relationships, strengthen how we communicate with each other, and maintain some of the lost “water cooler chat” you get in an office environment.
I stumbled on this Gitlab Handbook that has some great tips for building what they call Informal Communication.

https://handbook.gitlab.com/handbook/company/culture/all-remote/informal-communication/

I really like the idea of postcard swapping, which uses something tangible you can hold in your hand to build connection across distributed teams.
Another team-building strategy we used when I worked at CNN were weekly co-working sessions, where we’d meet online for an hour while doing our normal work. This would facilitate all types of discussion, learning, and cross-collaboration. Sometimes, when conversation waned, just being quite and listening to the clacking of each others’ mechanical keyboards was enough to create a sense of belonging. Writing this article reminds me that I want to implement that on my current team!

The Modlins

I took this old song, recorded on 4-Track cassette in 1997 or so, and gave it some modern treatment. I think it came out pretty good.

The Modlins were a prog-rock force born at Warren Wilson College in the 1990’s. Richard Wallace sang and played guitar, Justin Hallman played bass, and I, Will Chatham, played the drums.

This was one of my favorite songs we ever did.

O, Death

As I recently passed the half-century mark in my life, I find myself contemplating some things now, more than I ever did before.

  • How long it takes muscle strains to heal vs how long it did 30 years ago
  • The strange new places hair grows on, and in, my body
  • The annual upkeep of my physical form and how intimately my doctor is getting to know me
  • Does my doctor go home at night and think about these things as he tries to go to sleep, or discuss them with his wife over drinks on the porch?

The strangest contemplation of them all is dying. Death. It gets closer each day, sure, but it’s more of an interesting proposition than something I find myself dreading or fearing. I don’t know for certain what it will bring, if anything. No one does. Many people think they do, but they don’t.

Not that I am eager to find out, but it’s interesting to think about all the ways we humans have created to avoid it, prevent it, reckon with it, and make ourselves think that there we are certain about what happens when it arrives.

I’m not afraid of being dead, as I’ve been dead before, and I’ll be dead again. Being dead didn’t seem so bad from what I can recall. No, what I’m afraid of is transitioning back to death in a terrible way, such as in a plane crash or slowly and painfully, from stomach cancer. That kind of fear is more a part of being alive than it is a fear of death.

– Me

I saw something online sometime back, and I saved it. Finding it again led me to write this blog post. I’d like to offer it up here, as it makes a lot of sense to me. It’s a eulogy from a physicist. This resonates because it is the most true and accurate thing we can possibly know about death, without conjecture, superstition, or guessing:

“You want a physicist to speak at your funeral. You want the physicist to talk to your grieving family about the conservation of energy, so they will understand that your energy has not died. You want the physicist to remind your sobbing mother about the first law of thermodynamics; that no energy gets created in the universe, and none is destroyed. You want your mother to know that all your energy, every vibration, every BTU of heat, every wave of every particle that was her beloved child remains with her in this world. You want the physicist to tell your weeping father that amid energies of the cosmos, you gave as good as you got.

And at one point you’d hope that the physicist would step down from the pulpit and walk to your brokenhearted spouse there in the pew and tell her that all the photons that ever bounced off your face, all the particles whose paths were interrupted by your smile, by the touch of your hair, hundreds of trillions of particles, have raced off like children, their ways forever changed by you. And as your widow rocks in the arms of a loving family, may the physicist let her know that all the photons that bounced from you were gathered in the particle detectors that are her eyes, that those photons created within her constellations of electromagnetically charged neurons whose energy will go on forever.

And the physicist will remind the congregation of how much of all our energy is given off as heat. There may be a few fanning themselves with their programs as he says it. And he will tell them that the warmth that flowed through you in life is still here, still part of all that we are, even as we who mourn continue the heat of our own lives.

And you’ll want the physicist to explain to those who loved you that they need not have faith; indeed, they should not have faith. Let them know that they can measure, that scientists have measured precisely the conservation of energy and found it accurate, verifiable and consistent across space and time. You can hope your family will examine the evidence and satisfy themselves that the science is sound and that they’ll be comforted to know your energy’s still around. According to the law of the conservation of energy, not a bit of you is gone; you’re just less orderly. Amen.”

Arron Freeman

If anyone know of any physicists for hire to perform eulogies around the time I die, please hire them! They’d be well worth the money.

In the words of Kilgore Trout, ting-a-ling!

Ska City promo reel

Check out this promo we had made. The footage is from our show at Highland Brewing a few weeks ago. Thanks to Bob Peck at Mountainwater Films for putting this together!

Check out the Ska City website for all the latest news and upcoming gigs. I hope to see you soon!

We took this guy to Ska City

Ska City

We received a nice write-up about our show on Friday. We played the “Concerts on the Creek” series in Sylva, NC and had a grand old time (similar to last season). This D. Trull feller showed up -clearly a ska fan already- and really seemed to enjoy himself. Then he wrote a review on his blog. Check it out!

OWASP Attack Surface Detector Project

When I did a short work stint at Secure Decisions in 2018, one of the projects I got to work on was helping to create the Attack Surface Detector plugin for ZAP and Burp Suite. I left that position before the project got published, but I am happy to see that it was a success.

Here it is in all its glory.

From the OWASP description:

The Attack Surface Detector tool uncovers the endpoints of a web application, the parameters these endpoints accept, and the data type of those parameters. This includes the unlinked endpoints a spider won’t find in client-side code, or optional parameters totally unused in client-side code. It also has the capability to calculate the changes in attack surface between two versions of an application.

There is a video that demonstrates the plugin, and yes, that is me doing the voice-over.