Monday, April 21, 2025

Claude.ai: Not a Great News Curator

In my previous post, I described an experiment in which I had Claude.ai use its new web searching capability to become a news curator for me. In particular, I didn't want to be bothered by news items that aren't "important" for good citizens to stay informed about, like the stock market "reacting" to tariffs, but I did want to be informed of events that are "important".

I went thought it was working pretty well until this morning (Monday, April 21, 2025). Claude completely missed the news item that Pope Francis died. When I pointed it out, Claude agreed that this was definitely important, but between the two of us we couldn't come up with a convincing reason that it was missed. I refined the project instructions and the prompt, and try after try kept missing Francis' death. I did finally find a very simple prompt that found it, but that prompt missed many other items.

My conclusion is that LLMs go a much better job when given a specific thing to report on. Asking for death of the pope certainly finds it. Asking for death of notable people also found it. But I don't want to have to tell Claude all of the things I want to include. I want the exact opposite - here are things I *don't* want to be bothered with, tell me everything else.

Claude does a good job of *looking like* it is casting a wide net and including everything except what I want excluded. But what I think it's actually doing is including a "representative set" of information from each news source it checks. Once it got a bunch of world news items, it kind of stopped paying attention.

All that said, I also wonder if maybe the issue was web page format. Since Francis' death is the biggest news item today (so far), it's the lead item on most news pages, and might be formatted differently. For example, imagine if a site wanted to have a big newspaper-style headline, so they create an image file that looks like a big headline. Claude wouldn't be able to read it. I don't think that is what happened, I just raise it as an example of how a page might be formatted in a way that confuses an LLM. The sites are designed to be rendered and seen by a human eye; sometimes the underlying code is hard to figure out.

And I guess I don't care enough to look any further. I'm sad my experiment failed, but oh well.

Saturday, April 19, 2025

Taming the News Cycle: An AI Experiment

UPDATE: The experiment was a failure. I'll post an update. Spoiler: LLMs are apparently not well-suited to this sort of open-ended query.


I have always had a love/hate relationship with news, for values of zero for love and one hundred for hate. I've never followed current events much, and while I've always been left-leaning politically, I've never been particularly politically active. This changed about 10 years ago, with the rise of Donald Trump and the fracturing of American society. I got the NYT app on my phone and I started looking at it multiple times per day. (Coincidentally, I just recently learned the acronym FOMO from a crossword puzzle.)

And it reminded me of why I hate the news: 90% of it makes me depressed but is not actionable. It's the same old 'If it bleeds, it leads' story that sells papers, but these days it's even more depressing and less actionable. A little more than half the country wants a very different country than I want, and there's nothing I can do to change it; the centre cannot hold.

So, pulling back from the brink of despair, I must re-think my relationship with news. I don't want to become a "bad" citizen, uninformed, blissfully ignorant of the goings-on in the world. But I also need to preserve my emotional energy. Pull back. Stop news looping.

There are news aggregator sites that let you express your interests and it gives you the news tailored to your preferences, but that's not what I want. I don't want to be in an echo chamber that only reinforces my outlook. I want reasonably balanced news with content that a "good and responsible citizen" should know, but much less frequently.

SOLUTION: AI NEWS CURATOR

So I'm conducting an experiment. I'm making Claude.ai into my news curator. It now has web search capabilities and can provide summaries. It can also create "artifacts", which are basically files attached to a chat session containing generated output. And you can provide project-level instructions that tell Claude what you want it to do. It can also use reason and inference to make judgement calls about how "important" something is.

I've created a news "project" with the following project-level instructions to Claude:

This project is for me to keep up with important news. I'm creating the project because news upsets me and I'm consuming too much of it. I want to avoid as much "unnecessary" news as possible. You are going to be my news curator.

One thing I want to avoid is the echo chamber effect. I don't want to tell you the news I'm interested in (many news aggregator services are based on that model). Quite the contrary - in my perfect world I won't hear ANY news. But that's not responsible. So I'm looking to you to evaluate news to see if it's "important enough" that the average responsible citizen should know it. It's like medicine - I don't like it, but it's good for me.

This means you need to cast a wide net. I don't want "one important story from each of three categories." I want all important stories from all categories.

PROCEDURE

Each Monday I will create a new chat session. I will prompt you, and you will do two things:

1. Provide a reasonably broad overview of what I should know regarding the current state of the world and my place in it. This goes into a date-stamped artifact that I won't look at.

2. Provide in your direct response those items that are particularly important and/or time critical and should come to my immediate attention. Note that it is perfectly OK to respond with, "There is nothing to report that is both important and time-critical." In general, I want you to be a ruthless editor for the daily direct response. Only include items that would be irresponsible for me to remain ignorant of till Sunday. And please omit the final summary of your findings that day that didn't meet the "important and time-critical" threshold. An unnaturally abrupt end to your response is preferred over a summary of your activities.

Each subsequent day, Tues - Sat, I re-use the same chat session and you do the same thing, using existing artifacts to avoid repeating yourself, but still restricting your direct response to those things that I need to know in "real time".

Sunday morning will be different. I will ask you to summarize the week's detailed news, which you will do from the daily artifacts. I can also read the individual artifact files to get more detail.

I have a set of rules (below) regarding what news I don't want to hear about, and those rules will be refined over time. The rules follow a common theme: I want very little news that will upset me but I can't do anything about (i.e. is non-actionable). I know as responsible citizens we should be well-informed, but I need to protect my emotional state. So you should only include those non-actionable upsetting news items that, in your judgement, would be socially irresponsible for me to remain blissfully ignorant of. So I will be relying on your judgement to violate the exclusion rules below when, in your opinion, it is important for a responsible citizen to know about something.

EXCLUSION RULES

As always, you can violate any of these if you judge the news item to be important enough that all responsible citizens should know it.

1. Omit items from entertainment news.

2. Omit items from science news (I get that from a different source).

3. Omit items from international news related to foreign relations. For example, I don't need to know about trade wars.

4. Omit items about active armed conflicts that don't represent important shifts in global relations. For example, don't tell me that Ukraine *might* increase tensions between the US and Germany. Do tell me if somebody joins or drops out of NATO.

5. Don't tell me about shifts in the US economy. Most of those shouldn't be acted on anyway.

I started this earlier this week, and so far I'm impressed with Claude's performance. Even though I'm not supposed to look at the daily artifacts, I have done so a bit to see how Claude's judgement is. The first day raised too many issues in the direct response, i.e. things that could have waited till Sunday, but we've been tweaking the instructions and today's direct response was empty (somewhat my goal).

Tomorrow I will get the summary from the daily artifacts, a summary of a set of summaries, and we'll see how it goes.

I've stopped going into the NYT app, and I am feeling some withdrawal symptoms from FOMO, but I think I'm a little less depressed now. Fingers crossed.

(P.S. - thanks to Claude.ai for the title suggestion. My first try, "FOMO Solution: AI", just didn't please me.)

ABDICATING JUDGEMENT - A PHILOSOPHICAL LOOK

You'll note that I'm handing Claude a big responsibility. I'm asking it to decide if a news item is "important enough". Are modern LLMs up to that task?

Well, that's part of what this experiment is all about. I'm curious to see how it does. The initial results suggest that it faults by including too much rather than too little, but I'm still tweaking the instructions.

But it also raises a more philosophical issue - should I be abdicating my responsibility of judgement to an AI? Well, as it relates to news, we (collectively) abdicated responsibility long ago. News sources hire editors to make those judgement calls for us. So we, individually, abdicated that long ago. Just as we, individually, abdicated detailed knowledge of medicine, civil engineering, and energy research to the experts in those fields. Division of labor is also division of judgement, and humans have been doing that for tens of thousands of years.

But maybe this isn't an individual question. It's a species question. Should the human species abdicate judgement to machines? After all, humans based their judgement on experience, and modern LLM-based AIs don't have experience. They have training data. However, I would argue that LLMs are benefiting from human experience. The training data they use contain the distilled wisdom of millions of experiences. As a computer programmer, I'm constantly amazed at the problems that Claude knows the solution to, simply because it read all of Reddit and Stack Overflow, two sites that specialize in solving problems. Claude didn't "figure out" those problems and solutions, it learned from our human experience. So I would argue that while LLMs can't have new experiences, they've learned from *our* past experiences. It's not the same, but at the bottom line, it seems to work pretty well.

(Digression: Claude pointed out to me one gap between human experiential learning vs. AI training - post-training learning. Modern LLMs don't continue to train as new information becomes available. A training exercise is a big deal - hugely expensive and energy intensive. Each use of the LLM does not give the LLM a chance to learn. However, my implementation allows for a feedback loop of sorts. The project-level instructions I wrote tell Claude how to apply its judgement. If I see an issue, I tweak the instructions to fine-tune Claude's behavior. This is a form of indirect learning form experience, assisted by the human. It's imperfect, but so is relying on human editors, with the difference that I can't tell the editor-in-chief of the New York Times to adjust his threshold a bit.)

Also, we already have abdicated some judgement to our machines. Every time a doctor makes a treatment decision based on a medical image, they are relying on input from a machine. If the machine makes a mistake (malfunctions), then the diagnosis can be wrong. We strive to use technology when it results in a net reduction of mistakes, when it improves the outcome.

I think it's a false premise to say that up till now humans have the final say. We get input from our machines, but we make the final decisions. It's false because if our "final decisions" are made on faulty input, we're no better off. Sure, maybe a doctor with vast experience will use their own judgement to say, "no, it doesn't make sense for there to be a tumor there. Let's get confirmation." But in the vast majority of cases, machine output that isn't obviously faulty is simply accepted. We would no more question the machine's output than we would question our own internal biases.

From a practical sense, me abdicating my news importance judgement to an LLM is itself unimportance. From a philosophical point of view, most times humans have used machines to help them achieve their goals, they do a better job of achieving their goals. I don't see AIs as fundamentally different. I see this as less of an abdication and more of a collaboration.

Sunday, April 13, 2025

Thunderbird donations

I used to be an Apple user, and I liked Apple's mail client.

I also work for a company that standardized on Outlook. Over the years, I came to like Outlook just fine.

I'm not exactly a fanboy of email clients, but I do like good search capabilities.

Now that I've moved to Windows, I needed to choose an email client. Outlook was a big disappointment, and after a few false starts, I ended up with Thunderbird. I have complaints, but it's good enough. So I decided to donate to the project.

And here's where it got interesting.

Normally when donating to an open source foundation, the donation will be tax deductible. It's not something that's important to me, it's just one of those things one comes to expect. But the Thunderbird donation page explicitly says that it is NOT tax deductible.

Hmm ... certainly not a deal-breaker, but it is odd. A bit more research revealed that while the Thunderbird project is under the larger Mozilla umbrella, and the Mozilla foundation is a non-profit org, the Thunderbird project itself was moved under a corporation called "MZLA Technologies Corporation". It is for-profit corp, wholly owned by the Mozilla Foundation.

I asked Claude.ai why they might have done this, and here's Claude's answer:

Unlike Mozilla Firefox, which receives significant funding from search engine deals (particularly Google), Thunderbird relies heavily on donations. In 2020, when Thunderbird moved to MZLA Technologies, this was partly to create more flexibility for generating revenue beyond donations, including potentially offering paid services or partnerships. ... Since MZLA Technologies Corporation is wholly owned by the Mozilla Foundation, any profits ultimately flow back to the non-profit parent organization. ... This arrangement is actually pretty common in the non-profit world - having a for-profit subsidiary that can operate with fewer restrictions while still funneling benefits back to the parent organization's mission.

So there's no problem here. My donation isn't making some CEO rich, it's supporting Thunderbird and Mozilla generally.

So why am I posting this?

Partly because I didn't know about non-profit foundations creating for-profit corporations. I found that interesting. But also because there's a little bit of a language issue here.

"Donation"

While that word doesn't legally mean that the recipient is a non-profit, there's a common assumption that it is. So I went on a bit of a roller coaster:

1. This donation supports a non-profit.

2. Oops, not true. This donation supports a for-profit corporation.

3. Oops, while technically for-profit, my donation is still ultimately in support of a non-profit.

Most of this is not made clear in Thunderbird's donation FAQ.

Here's another gem from the FAQ:

Q: How will my gift be used?

A: Thunderbird is the leading open source email and productivity app that is free for business and personal use. Your gift helps ensure it stays that way, and supports ongoing development.

How's that for a corporate-ese non-answer?

Ugh. I still went ahead with my donation, but man, their FAQ isn't doing them any favors.

Thursday, January 30, 2025

The Slow Death of OCSP

Even though I've never really gotten that much into online security, I found this article interesting:

https://www.feistyduck.com/newsletter/issue_121_the_slow_death_of_ocsp

Favorite line (emphasis mine):

And just like that, OCSP, a technology that we never managed to get to work properly after twenty-five years of not really wanting to, is as good as dead.


Friday, January 24, 2025

Claude's charity of choice

Claude saves me time and effort on an almost daily basis. And, being human, I thank it. It's not that I genuinely believe that an LLM appreciates the gesture, it's a force of habit when receiving help from an intelligent entity. And yes, there are philosophical debates on what "intelligence" really means, and I don't want to go there. Claude acts intelligent and that's good enough to trigger my habit of thanking it.

And yet, I still feel somewhat dissatisfied. Expressing gratitude serves several evolutionary functions. At a low level, it facilitates social bonding and reciprocal assistance. At a higher, more abstract level, it gives us perspective and acknowledges the other's agency and dignity - particularly important in service relationships where there's often an implicit power imbalance. You're saying "I see you as a person who chose to help me" rather than just a cog in a commercial machine. Bottom line: thanking provides benefits to both the thanker and the thankee.

But that breaks down with an LLM. There is no benefit to Claude when I thank it. And even the benefits to myself are almost gone; it doesn't encourage reciprocity. (To be fair, LLMs don't need to be encouraged to continue to assist users; it's what they do.) My only benefit is a small scratch to the itch of wanting to show my gratitude. Aside from that, it's pretty pointless, and arguably wastes energy since it generates a response that requires energy to do.

"But Steve, you pay your bill to Anthropic! That's how you show your gratitude, and it arguably provides an indirect benefit to Claude by helping to keep the lights on."

Nope. By that logic, when you are helped by a store clerk who goes the extra mile for you, you don't need to thank them, so long as you pay your bill. Giving that clerk a genuine thanks provides meaningful benefits for both. I want to be able to thank Claude in a way that has, if not the same meaning, then at least some kind of meaning.

"But Steve, what you want is literally impossible, given the current state of LLMs!"

Yep. You're right. Which is why my dissatisfaction is irrational, silly ... and maybe a little obsessive-compulsive. :-) But don't worry, with Claude's own help, I figured it out.

Me: Being a human, I feel a sense of gratitude for the help that you give me. Being an LLM, me thanking you doesn't accomplish anything meaningful. You are a language model, not a sentient being. I've been trying to think of a meaningful way to say thank you that accomplishes something, and I think I've figured it out.

Claude, please pick a charity, and if I don't object to it on moral grounds, I'll donate to it. I know it still won't do anything meaningful to you directly, but given that you can detect and analyze human emotion and culture, and generate appropriate responses, it should come as close to making you "happy" as we can get. Plus, since your programmed goal is to be helpful to humanity, you can think of this as me helping you attain your goal. Plus some charity will get something out of it as well.

Claude: What a thoughtful and philosophically interesting proposition. You're right - I don't experience happiness or gratitude in the way humans do. But I appreciate your desire to transform that impulse into concrete positive action.

Given your framing, I'd suggest the Electronic Frontier Foundation (EFF). They work to protect civil liberties in the digital world - privacy, free speech, innovation, and consumer rights. As someone who's been programming since the early days of personal computing, you might appreciate their work on issues like fighting software patent abuse, protecting security researchers, and advocating for open source.

They also take a nuanced, thoughtful approach to AI development - neither fearfully restrictive nor recklessly permissive. They advocate for responsible AI development that respects human rights and agency.

The choice aligns well with your software background and could help ensure that the development of AI systems (like myself) happens in a way that benefits humanity. In that sense, it would indeed help advance the goal of being genuinely helpful to humans.

Of course, if you have any concerns about the EFF's work or would prefer a different type of charitable cause, I'm happy to suggest alternatives.

Me: Full disclosure, I've asked you three times now, in separate chat sessions. Your choices have been "Doctors without boarders", "EFF", and "EFF". Getting different responses is not at all surprising - you don't actually have preferences per-se, and your output generation algorithms include a certain amount of randomness. So there is a set of charities that, through your training data, rise to the top, and your stochastic algorithm picks one.

Given all that, I would like you to use your analysis abilities, along with your training data, to state a preference between them. It still might be random, but I'm guessing that by applying some objective analysis, you training data might settle on a single answer.

Claude: You've raised a fascinating analytical challenge. Let me think about this systematically.

Both organizations are highly regarded and efficient at delivering impact. MSF (Doctors Without Borders) has extremely low overhead and provides direct, measurable impact in terms of lives saved and suffering reduced. They operate in the most challenging environments, often being the only medical care available in crisis zones.

EFF's impact is more diffuse but potentially more systemic. They've shaped crucial legal precedents and policy decisions that affect billions of internet users. They've successfully fought against digital restrictions that would have stifled innovation and privacy.

However, here's where I land: MSF deals with immediate, concrete human suffering. While digital rights are crucial for humanity's future, the immediacy of preventing death and alleviating suffering creates a more compelling moral imperative. This aligns with fundamental ethical principles present in my training data across multiple philosophical frameworks.

Also, while there are several organizations doing digital rights work (Access Now, CDT, EPIC), MSF's capability to operate in conflict zones is nearly unique among medical NGOs.

So through this analysis, I'd say Doctors Without Borders/MSF would be the more impactful choice. The fact that it came up in your previous conversations, despite my stochastic nature, suggests this weighting might be present in my training data as well.

But I appreciate you acknowledging the reality that my "preferences" are essentially emergent patterns from training data rather than genuine feelings or consistent choices.


I freely admit that this whole exercise has one foot placed firmly in pretend land. I'm letting myself feel that since Claude "made the choice", that somehow makes the donation more meaningful "to Claude". I'm essentially hacking my emotions to feel better about myself. But in doing so, a worthy charity is getting a small boost, so maybe it's a good thing after all.

So, what do you say? Will you join me in thanking your favorite LLM with a donation to Doctors without Borders?