The Daily Parker

Politics, Weather, Photography, and the Dog

Microsoft didn't mention this part

My old Surface decided it didn't trust its own drive this morning when I booted up in my downtown office. Instead of getting a new laptop, I had stumped for the $30 fee to buy another year of security patches for Windows 10. Well, the latest one changed the Bitlocker settings, requiring me to enter the recovery key...which I couldn't get to from my downtown office.

Fortunately I had the key at home and entered it manually without a problem, so the Surface has sprung back to life. I will have to replace it soon, too, if for no other reason than I was worried for most of the day that it was bricked.

It also means I just had to declare bankruptcy on most of my news emails when I finally got home. But that's probably better for my mental health anyway.

Also, final note: the next version of The Daily Parker is up and running in its dev/test environment. We're still weeks away from me publicizing the URL, but I am pretty stoked that it has a functioning UI with some actual blogging features.

She's adorable but busy

I'm a little delayed getting today's Morning Butters Report out for a couple of reasons. First, Butters and Cassie tag-teamed me starting just before 6:30 am. First Cassie poked me, then Butters poked me when Cassie kicked her off the dog bed in my room. Then Cassie came back when Butters used her engineering skills to ensure Cassie couldn't pull that crap again:

Last night, though, Butters showed me how much she cares about me—or how much she wanted another Greenie, it's unclear:

Meanwhile, all the major cloud providers are suffering a massive DNS outage right now, which fortunately hasn't spread to Inner Drive Technology. Microsoft Azure, Amazon Web Services, Google Cloud, and tons of other services have gone down. Updates as conditions warrant.

Butters can't distract from everything

Even though I have a cute beagle hanging around my office this week, and even though I've had a lot to do at work (including a very exciting deployment today), the world keeps turning:

  • The OAFPOTUS pardoned Binance founder Changpeng Zhao for the crime of running a massive money-laundering website, because of course Zhao bribed him.
  • Brian Beutler thinks the OAFPOTUS's corruption has gotten too obvious for even his supporters to ignore, leading to "the things Democrats like to talk about and the things I wish they’d talked about [beginning] to converge."
  • Speaking of corruption, not to mention things that are so prima facie bad that it takes a special kind of felon to even suggest it, privately funding the US military is an obviously illegal and demonstrably dangerous idea. Just ask the Roman Senate.
  • Meanwhile, the Speaker of the House Mike Johnson (R-LA) refuses to reconvene the House, and the Republican majority in the Senate refuse to waive the filibuster on funding SNAP, which are the two biggest things the Republican majority has chosen to do instead of making sure 40 million Americans don't go hungry next week.
  • Michael Tomasky makes a point that I've made to one of my Republican trolls acquaintances: it really doesn't matter to the national Democratic Party if Zohran Mamdani wins the New York City mayoral election on Tuesday: It's NYC, not Maine.

Finally, if you're looking to pick up a little lakeside real estate, this house in Kenilworth, Ill., is on the market for the first time ever. It's a steal at $7 million.

No Kings reactions and other link clearance

Naturally, the press had a lot to say about the largest protest in my lifetime (I was born after the Earth Day 1970 demonstration):

  • As many as 250,000 people turned out for the downtown Chicago event, which included a procession that carried a 23-meter replica of the US Constitution, and resulted in zero arrests or reports of violence. (The video of the procession leaving Grant Park is epic.)
  • David Graham of The Atlantic explains why the protests got under the OAFPOTUS's skin: "Trump’s movement depends on the impression that it’s unstoppable and victorious. ... Huge protests that demonstrate he is not invincible endanger his political success: They offer people who voted for Trump reluctantly or who have had second thoughts a feeling of camaraderie and hope, and give them a way to feel okay ditching him. ... Trump and his allies seem to grasp what Saturday revealed: The protests are popular, and the president is not."
  • Brian Fife sees a paradox in the protests: "One could find this inspiring, so many disparate causes united under one banner. But for those of us who want to see tangible reform in the United States, the lack of clear messaging or policy recommendations—especially during a protest intended to inspire action—was disorienting."
  • Josh Marshall disagrees, lauding "the subtle genius of 'No Kings'," saying the name itself is "a deceptively resonant name and slogan with the deepest possible roots in American history. This brings with it a critical inclusivity, which grows out of the name itself and the lack of those specific and lengthy sets of demands that often characterize and ultimately fracture such movements. ... The jagged and total nature of the onslaught against the American Republic creates a clarity: We all know what we’re talking about. You don’t need to explain. The imperfect but orderly and generally lawful old way versus this. And when you say “No Kings,” you’re saying I don’t want this. I don’t accept presidential despotism. I’m here ready to show my face and say publicly that I will never accept it."
  • Brian Beutler has "22 thoughts on No Kings DC," of which: "I do not think it’s a coincidence that, as anticipation grew, and the GOP panicked and smeared, universities rejected Trump’s extortionate higher-education “compact,” and the Chamber of Commerce finally decided to sue Trump, etc. The days of proactive capitulation seem to be ending."

I looked for mainstream Republican reactions to the event but only heard crickets. The OAFPOTUS's own response, which I will not dignify with a link, would be grounds for invoking the 25th Amendment in any normal era.

Meanwhile, the vandalism continues:

  • Workers have begun demolishing the east side of the White House East Wing as the OAFPOTUS continues to wreak historical violence on the Executive Mansion without Congressional—i.e., the owner's—approval.
  • Writing in Harvard Magazine, Lincoln Caplan examines the damage that US Chief Justice John Roberts has done to the Constitution, tracing his legal career from Harvard Law through his clerkship under US Chief Justice William Rehnquist, another hard-right ideologue who, unlike Roberts, didn't have the votes to become his generation's Roger Taney.
  • Jeff Maurer suggests that Democrats simply change the conversation about immigration and not apologize for our past policy misses: "I think that Democrats can craft a positive, forward-looking message on immigration that starts a new conversation without dwelling on the past. It would tell a story that happens to be true, which is nifty, because I prefer political narratives that aren’t a towering skyscraper of bullshit whenever possible. The narrative goes like this: 'America is rich, safe, and vibrant because we’ve always attracted the smartest, hardest-working people from around the world. We need an immigration system that attracts the best and the brightest for years to come.'"
  • North Carolina, already one of the most-Gerrymandered states in the union, has passed a new congressional map they believe will give them a 10th Republican US House seat, with only three Democratic-majority districts in Raleigh, Durham, and Charlotte. (They've even managed to get Asheville to turn pink, based on 2024 election results.)
  • Adam Kinzinger suggests encouraging Russia to end its war in Ukraine through the simple expedient of giving $2 billion of frozen Russian assets to Ukraine each day the war goes on.
  • Julia Ioffe reviews the life of Lyudmila Ocheretnaya, Vladimir Putin's ex-wife.
  • Molly White explains the October 10th crypto meltdown that destroyed $19 billion of Bitcoin holdings in just a few seconds.

And hey, I even read some non-political news in the past 24 hours:

Finally, it warms my heart to read that Gen Z workers have the same attitude toward workplace "emergencies" that Gen X workers have always had. (Boomers and Millennials, WTF is wrong with y'all?)

More observations about LLM coding help

(This will be a nerdy post about .NET development.)

I've spent some time over the last few days experimenting with GitHub Copilot's abilities to handle some specific programming tasks. Specifically, I asked a few of the models to do these tasks:

  • Examine all of the projects in this solution and add the parameter "CancellationToken cancellationToken = default" to all async methods, with appropriate XML code comments.
  • Now propagate the cancellationToken values to all method calls in the updated methods.
  • Now add "ConfigureAwait(false)" to all async method calls in the following projects...
  • Review the solution and recommend performance, security, stability, and usability fixes.

Here's what I found:

Chat GPT 5 can do all of those things well. But I only get a handful of premium credits per month, so after the initial test, I just used it for its recommendations, which were thorough and well-explained.

I only tried Claude Sonnet 4/4.5 for the last prompt, and it had most of the same recommendations. It's worth having both models look at code as an outside reviewer. I didn't try Claude on the refactoring tasks, because CGPT5 did such a good job.

Chat GPT 5-mini struggled quite a bit. It was dog slow, taking 15 minutes to execute the first prompt on a 7-project solution (not including test projects), and it could not figure out how to resolve some ambiguities. For example, seeing a method with this signature:

public async Task SaveAsync(T item) where T : class {}

instead of adding the cancellation token parameter to the existing method, it created an overload:

public async Task SaveAsync(T item, CancellationToken cancellationToken = default) where T : class {}

and then changed the original method to

public async Task SaveAsync(T item) => await SaveAsync(item, CancellationToken.None);

which required manually removing all of the single-parameter methods entirely. It also munged up a lot of the XML code docs, removing entire blocks of it for no apparent reason.

Falling back on Chat GPT 4.1 was the solution: it doesn't "know" as much as its younger sibling, but it works nearly as fast when given clear parameters.

I'll have more later, but right now, I need to get Cassie to the vet for her annual checkup.

Apple continues to punk its fans

The Nielsen/Norman Group, founded by usability pioneer Jakob Nielsen, rolls its eyes at Apple's new iPhone UI:

Apple describes Liquid Glass as:

“a translucent material that reflects and refracts its surroundings, while dynamically transforming to help bring greater focus to content, delivering a new level of vitality across controls, navigation, app icons, widgets, and more.”

Translated: the interface now ripples and shimmers as if your phone were encased in Jell-O. At first glance, it does look cool. But problems arise as soon as you start using your phone.

One of the oldest findings in usability is that anything placed on top of something else becomes harder to see. Yet here we are, in 2025, with Apple proudly obscuring text, icons, and controls by making them transparent and placing them on top of busy backgrounds.

Not only is it illegible — it’s also ugly.

In iOS 26, controls insist on animating themselves, whether or not the user benefits. Carousel dots quietly morph into the word Search after a few seconds. Camera buttons jerk slightly when tapped. Tab bars bubble and wiggle when switching views, and buttons briefly pulsate before being replaced with something else entirely. It’s like the interface is shouting “look at me” when it should quietly step aside and let the real star — the content — take the spotlight.

Overall, Apple is prioritizing spectacle over usability, lending credibility to the theory that Liquid Glass is an attempt to distract customers from iOS 26’s lack of long-promised AI features.

 I'll keep my Android for now, thanks.

Very productive day, including lots of walks

I spent about 6 hours today making dozens of performance and stability updates to the Inner Drive Extensible Architecture and the Inner Drive Gazetteer (which provides geographical services for Weather Now).

Cassie spent about that much time outside, including Riding In The Car!, which she also loves.

Tomorrow I should have some more interesting things to say about how I did about 40 separate refactorings in just a few hours. Hint: Chat GPT 5 and 5-mini. Sometimes they were laughably wrong, but about 90% of the time, they saved hours of work.

Cloudy but productive

Despite driving 55 km up to the suburbs to have lunch with a friend, I've had a productive day. I'm aiming to release a new round of performance improvements for the Inner Drive Extensible Architecture in about four weeks, when .NET 10 comes out.

I have to put that aside right now because a certain fuzzy, vaguely stinky animal is poking me with her nose and appears to have some needs that I don't want her to satisfy in the house.

More on this later.

I have to replace my Surface next week and I don't want to

The Microsoft Surface Pro 3 that I got over 10 years ago continues to work just fine; in fact, I'm writing this post on it. Sadly, Microsoft will stop providing updates to Windows 10 in a week, and the tablet is so old I can't update it to Windows 11.

Not only does the prospect of spending $600 to replace something that doesn't need replacing annoy me, but it also means I'm going to have to spend several hours installing and configuring everything. And next week I have 5 rehearsals and a performance, so I can't even really start that process until a week from Sunday. I suppose the Surface will continue to function, but it will get less and less secure as new threats emerge that I won't get patches for.

Finally, for those of you who celebrate, 한글날 축하합니다.

Uncritical thinking

Two of my favorite writers took on the same topic from different directions this morning. The first to hit was Matthew Inman, who released a (very) long cartoon digging into the artist's relationship with the collection of technologies we call "AI." It starts with his observation that "even if you don't work in the arts, you have to admit you fee it too — that disappointment when you find out something is AI-generated." (Since it's a web comic, you'll just have to read it to get his full essay.)

Author John Scalzi also had some thoughts about AI, especially the volume of AI slop that consumes more and more of our attention online:

I think there’s a long conversation to be had about at what point the use of software means that something is less about the human creation and more about the machine generation, where someone scratching words onto paper with a fountain pen is on one end of that line, and someone dropping a short prompt into an LLM is on the other, and I strongly suspect that point is a technological moving target, and is probably not on a single axis. That said, for Whatever, I’m pretty satisfied that what we do here is significantly human-forward. The Internet may yet be inundated with “AI” slop, but Whatever is and will remain a small island of human activity.

The same is true for The Daily Parker.

I mentioned a few weeks ago that I've started working with LLMs as well. I have now used GitHub Copilot models Chat GPT 4.1, Chat GPT 5, and Claude Sonnet 4 to fix several bugs that have frustrated me for months. And to both Inman's and Scalzi's points, the LLMs help because I'm already a seasoned professional, and this just puts a couple more tools in my belt.

But as Inman points out, the AI slop we see today looks great to people who don't have skills. In my case, the bug fixes and performance optimizations that the LLMs suggested didn't work right out of the chat window, and I had to ask the models several follow-up questions before I got to working code. Even then, I had to carefully fit the models' outputs into my existing style and architecture, which on more than one occasion required taking a model's idea and doing something completely different with it.

So yes, keep using AI-driven productivity tools. Just don't call it art, and don't call it coding.