Wednesday, August 13, 2025
If you're trying to read any of my code via GitHub, make sure to open source.opml in Drummer, there are a lot of notes that don't make it through to the .js and .css files. I don't think I've ever said that on the blog before. I write my code in an outliner, and take advantage of its ability to collapse long comments into a single line. There are whole blogs at the top of some functions, notes about all the big changes in code, sometimes over years, and sometimes even decades of maintenance. There's a source.opml in most of the repos with a big comment at the top explaining what's going on. Also, most projects have a worknotes.md file, and where there are dates in the source code, the refer back to dates in the worknotes.md file. Not always, but most of the time. Some of the code is very complex, I work really hard to make it simple so it can be worked on, but in some cases it's impossible to make it read casually. But it's all there, all the tools I use to write the code. #
The future very much includes WordPress. It'll be as central a service as Mastodon or Bluesky. #
Tuesday, August 12, 2025
I had an hour to spare this morning so I decided for a third time to try to coax ChatGPT to play a role in a little drama I have in mind. I still want to use AI to power an RSS feed of news, customized to the interests of one person (me). My query is this: "Create a summary of the news, top 20 stories with an emphasis on these topics: how people are using AI, especially in education, blogging, US politics, science news, the NBA and MLB, with a slight emphasis on the Knicks and Mets. The results should be in JSON format, with each item including: A brief one sentence summary, publication date and a link to a source where the reader can get more info. My software will then create an RSS feed with this information.." The response was basically: "I'm sorry Dave." Groan. Here are the details.#
Paul Boutin who I know from early Wired days offers some hope that it can be gotten to work, with a bit more guesswork, trial and error and head scratching. I probably will keep coming back to this until I break through. Or maybe hook up with another developer who can back into the websocket hose coming out of FeedLand. It's a natural thing to hook up to AI systems. #
Monday, August 11, 2025
Fixed a bit of breakage on the Links page over the weekend. #
I want to work on the open web with other developers who make interesting products that we can hook up together to make new products. Or if users get an idea for linking two products, they can do it with scripting. It was a dream we had for the Mac, but it fell apart because Apple wanted to control everything. I find it's better when developers are free to work with each other, without interference from a big company like Apple. That's why "platform without a platform vendor" was the most important thing about the web. That and the utter simplicity of HTTP and HTML. We lost our way in the early-mid 00s when Twitter took over at the center of the blogosphere. Now you couldn't just work with other developers, first you had to work with Twitter and accept its limits. In one swoop we lost all the features listed on the textcasting page. I am betting everything on the idea that we can build a collaborative environment like the web was before, and that the Mac had the promise of being before that and at the same time create a fantastic writer's web, far beyond what Twitter and twitter-like systems can do. #
Sunday, August 10, 2025
Internet was out at the house all day. Luckily it was one of the most perfect days to spend outside. In the meantime, I highly recommend the Floodlines serial podcast from the Atlantic. It's bingeable in an afternoon, tells an interesting story of Katrina and New Orleans. The interview with Brownie is cringe-worthy not binge-worthy, I skipped over it. #
One more bingeable, Blue Lights from BBC on HBO Max. I love police dramas, esp British ones. I watched Peaky Blinders earlier this year and The Fall, another British crime drama, and, amazingly they all take place in Belfast, believe it or not, and don't count the number of times people say "wee" in the darndest places in BBC Belfast crime dramas. Do Brits really say wee all the time? How did I not see that coming. #
Saturday, August 9, 2025
I did a rewrite of the FeedCorps page in FeedLand. You get to it through the Reading Lists sub-menu of the Tools menu. There are three lists in the new version. A lot were false starts, they didn't make the cut. I'm always adding feeds to my blogroll and news.scripting.com. Unfortunately I can't say the same for podcasts, which are not hooked up to my podcast app. I really want a hot connection there. We'll get there. The reading lists feature is going to play a big role going forward in the open social web we're building. BTW, I really like the name FeedCorps. I haven't talked about it very much. It's a cause, like peace or freedom. Open those suckas up. Feeds all the way babe.#
An archive of the previous version, built around GitHub. #
There's a difference between reading a site in a web browser and it being part of the web. As it turns out what became Web 2.0, all built as silos, could more accurately be called Anti-web 2.0. Underneath all the silos, the heart of the web is still beating. Ready for us to build on it again. #
A few days ago I worked with ChatGPT to generate an RSS feed of news that interests me. Here's a writeup with a place to comment and perhaps to collaborate on doing this for real. ChatGPT has real limits. This has to be done off on the side. It certainly could be done with their API. I'm head-down on other projects and can't do it myself but as I explain in the writeup, it would plug in beautifully to stuff I'm doing and it would all be open, so a new kind of feed reader is possible. And we could find news from other bloggers that the journalists aren't reporting on, the same way we relied on blogs in the early days to learn about what was going on on the web. It's time to do that again. #
I had an RSS-specific blog starting in May 2004. I had forgotten about it. Lots of stuff here, I just read through a few months. #
Friday, August 8, 2025
Thursday, August 7, 2025
ChatGPT 5 is even more of a bastard than 4. #
That said, it got pretty far toward solving the problem I asked it to work on. Here's a demo of a page it put together for me of the top 25 articles in US news. #
A summary of recent work via my WordLand blog.#
New version of feedlandSocket. It's now an NPM package you can include in Node projects. The demo is more useful, and there's a video of what it looks like as it scrolls through the JavaScript console. WebSockets + feeds. A fairly important component of an open social web system. #
I wanted to put together a demo of a very simple but interesting Node.js app, so I hooked up with replit, and was surprised to find out that it's now an AI bot. But when I asked it to make a sandbox for this app, which is in a repo on GitHub, rather than take the direct route, and run the demo.js app (which is what I asked it to do), it concocted a pointless user interface, that hid all the interesting bits. This was a demo for programmers for crying out loud. I want to show them the machinery in motion. I'm going to try again today.#
I recorded a good podcast yesterday about how I develop new stuff like podcasting, and how it only works if there isn't a huge dominant platform vendor to FUD the project. That's why RSS worked, sort of -- we did get FUDded by the RDF folk, who had a few famous people on their list of co-authors, and it put a big scar on RSS when it was just starting to grow. We cleaned up their mess after a while, and then it boomed, thanks to the New York Times. This is what usually happens, in markets that are controlled by a big company. Google has that effect, so does Apple as does the W3C. They force everything to stop and go through a process that simply doesn't work, it doesn't yield innovation in the market, because it wasn't bootstrapped. That's why I don't like the idea of "Podcasting 2.0" whatever it is. Adam Curry says on Masto that it's all a big misunderstanding, but that's what the RDF people said too. Who cares what the name is. Everyone cares, when it comes to the name of a standard or protocol. And when you have an Apple or Google or IETF trying to confuse people about what you're doing, well you can't make any progress on interop. They freeze everything because users and developers will wait for them. Of course that's what "Podcasting 2.0" is all about. To make all the ideas flow through one place. And whoever they are (ChatGPT says it's Adam Curry btw) they didn't even bring the power of an Apple or Google to the table. They have nothing other than their aspiration to own the name of an open format and protocol that made the world a little happier for a while. For that of course someone has to try to own it. That's basically what I said, in a very long-winded way, in the podcast. I also talked about ways we could move forward anyway even though there is a 800-pound would-be gorilla trying to own our playground. Maybe I'll just release the podcast as-is and ask you all to indulge me for my need to say the same thing far too many times with so much vigor. :-)#
Wednesday, August 6, 2025
A Brian Lehrer segment on specialized high schools in NYC. I went to one of them, signed up for the test mostly to get out of school for a day, and got in. Back in those days (the early 70s) no one studied for the test as far as I know. It has become very competitive and there's an issue of the racial makeup of the student body. As always Lehrer does a great podcast. #
Milestone: Chuck Shotton got his FeedLand up today. That's why I spruced up lists.opml.org, that's how we're connecting our servers. He's building this stuff to flow into his LLM via the FeedLand websockets interface. He'll be updated on my subscriptions, and have his own, and the news will flow into his AI system. All of it can emanate from anywhere RSS is supported with a focus on WordPress. It's the secret sauce. 😀 #
Tuesday, August 5, 2025
news.scripting.com is still going strong. Open to the public, no login. #
A podcast I recorded this morning, prime time, while getting things done, and having ChatGPT getting in the way. It needs to become more invisible, there's no suspension of disbelief when you're working with it. I think we can do much better at finding a robot that can really augment human intelligence. This is awful stuff. We have to work on these dynamics. #
Whenever you have to get something done with a company, get ready for lots of phone tag, waiting on hold, talking to bots, getting screened, trying to convince a computer that you have legitimate business, and no, what you're looking for isn't on their website (believe me I looked). The stupid thing about it is that ChatGPT is becoming more like those things every day. Companies have built awful systems for getting anything done that might eat into their profits. Google is the absolute worst. Even for services that cost real money, they absolutely will not help. You better hope everything goes perfectly if you buy their service. #
Monday, August 4, 2025
WordPress will make a much better open social web server than any other software out there. We can all develop any component around a solid, documented, simple and widely supported open source API.#
My contribution to 715-999-7483.com. Now it's your turn!#
Since the govt is no longer funding NPR maybe they could stop bending over for the Repubs. Lay it all out there, stop spinning all the crazy fascist authoritarianism as both-sides and normal partisan politics. They know we're in a lot deeper. Since we're now paying the bills, how about plain facts.#
Gaslighting is everywhere. ChatGPT just said to me "I understand why you feel that way." It has nothing to do with my feelings. I don't have feelings about computers. It lied to me over and over just now. I said you're lying to me. "I understand why you feel that way." As if it were the all-knowing feeling-inferring god-like creature it is not. The real question for me is this -- Does Open AI program it to be this way. Think about the opportunities it has to introduce true feelings of insecurity and worthlessness. That's the purpose of gaslighting. It's evil. #
Sunday, August 3, 2025
A podcast about a podcast users' API. #
It's always a good idea to get a second opinion with AI stuff. ChatGPT may give you a convoluted answer where Claude.ai gives you a concise one.#
I've been working on the top level of WordLand, and finally got to a place where navigation feels good, like this is the right track. So I took a snapshot so I can come back and look at this later.#
As you get older your memory gets less reliable. It makes programming more of a challenge because as your software gets more features, there's more to remember and at the same time you're getting older. I wonder if there isn't some way to use ChatGPT to augment the aging mind dealing with more software complexity. It's very much in line with the idea I've had for a long time of putting all my writing in an AI database so I could then ask it to edit it down to book length. Or get a table of contents of what I think and then be able to read chapter-length sections on, say platforms, or how important prior art is, or what interop makes possible, and why everyone should give back when they take from open ecosystems. Each one of those topics has lots of associated stories over the years, but I probably couldn't find most of them, but an AI database certainly could. How to set that up? I've not figured that out so far. #
One of the more depressing things in having so much code that I can easily search, is the number of times I've rewritten the same code without remembering I had written it before. Yesterday I did it knowingly, I wanted a function that could tell me if one of a set of categories applies to a WordLand draft. So I could say "don't list drafts with 'linkblog' as a category." It could have other categories, and there could be more than one category to exclude. I wanted to take the time to write perfect code for this one problem. Not dense, not particularly efficient. No matter how inefficient the code is, on today's hardware such a function couldn't use any time at all. It's fair to say I've solved this problem before, but there was always more to it. Here's the function. Now you know something about what I think is readable, understandable, respectful of a human more than I am of the computer. I know the computer would come up with much more dense and tricky code, but it doesn't have a mind, and I do. At times it can be relaxing, I magine, to not have a mind. And btw, in a couple of years this layer of code will be obsolete. We already are able to tell the machine how to do this in human language, it understands what we mean. One tiny little but hugely significant breakthrough made possible by ChatGPT and its cousins. #
A basic question I had about the ChatGPT agents that I can answer now that I have the feature, is whether or not the code you create can run on a server, where you can give it a URL and make it an endpoint other networked software can call. Or if it could run periodically, say once every five minutes for a function that was creating an RSS feed anyone could subscribe to. The answer is no -- it can't do either of these things. I'm sure they could do it at a technical level, but they don't want to host applications. But now I may understand better why they want to make a web browser, I bet you will be able to call these agents from apps that run in the browser. And in their case, they might not even have to support JavaScript? Heh. A wholly different programming model? Maybe I'm overestimating how much they're biting off? I wonder if anyone at OpenAI reads this blog and might want to get me in a tighter loop, so I can be among the first to try new features like this, rather than, in this case, among the very last.#
Saturday, August 2, 2025
I think I'm going to put in my will that ChatGPT should run the Dave Winer persona on all social networks, and my blog, as long as the money lasts. It would tell stories that I would likely tell, take political stands that I would take, draw meta-pictures of my sad and depressed programmer friend and a cute and adorable kitty getting into all kinds of trouble. The seasons would come and go, and there would be Dave, still diggin. And of course he would continue to develop software, using some of the greatest tried and true tools, reminding everyone of how great Frontier is -- but -- if only it ran on Linux. The long-lived fearless and fully paid-up version of Uncle D. #
A change would do us good too. #
I got hoisted with my own Picard.#
I have a lot of code written before ChatGPT. Sometimes, as I read my old code, I wonder how the h*ck I ever figured that out without it. #
Friday, August 1, 2025
Podcast. It's time for things to change. Two examples, Wired and Harvard. Change was always coming, but now you can't turn away from it very long before it re-appears. #
Welcome to August. More than half the summer is behind us. We're still here. The shelves in the supermarkets are full of good stuff. We've had about the normal amount of hot weather, a good amount of rain but not too much. The Mets are doing OK. They opened a Pho restaurant in Bearsville and it's good. Health, not too bad, all things considered. Still diggin!#
Source OPML for July 2025 blog posts.#
Thursday, July 31, 2025
Podcast: AI should behave like a computer.#
It would be interesting if Pocket Casts had an API. I would love to be able to one-click subscribe to a podcast in my feed reader. I mention Pocket Casts because it's the podcast client I use on my phone, but I would obviously like to see them all support an API, ideally a common API. #
Wednesday, July 30, 2025
I abhor body shaming even if it's of someone whose ideas I find unacceptable. #
Last night's podcast about how AI is a revolution. I had just listened to a New Yorker podcast interview with the EIC at Wired, saying the hype was bullshit. You hear this from journalists a lot. The only way you can conclude this, imho, is if you aren't using the stuff. It's as if you were a journalist in the 60s and said the story of the Beatles is that their hair must be fake. OK, whatever you say, but have you listened to the freaking music?? I'm sure a lot of journalists in the 60s said bullshit like that but the Beatles did turn the world upside down, and it stayed that way. It marked the beginning of something very new. And, as with AI, journalism missed the story. If you don't trust the CEOs, that's okay, probably the right approach. But that doesn't mean they're wrong about the value of the tech. Develop sources the old fashioned way, and if you think money biases the CEOs in favor of the hype, listen to experts who don't have any stock in the companies. #
Another benefit of ChatGPT. It forces you to think and express yourself in tight logical language. Garbage in garbage out. All of a sudden rigorous thinking is required to get a result. This is very different from social media, where garbage is rewarded. #
BTW, I say ChatGPT instead of "AI" because I'm not comfortable characterizing it as intelligence. Deeper you get into it you learn that these beings whatever they are have serious character flaws that are counter-intelligent. #
Disclaimer: I own zero stock in AI companies, except for mutual funds and some Apple stock I've held for decades for sentimental and tax reasons.#
This is the rendering of my linkblog in WordPress. This is a major milestone. We have in WordPress, what you see on the Links page on scripting.com, implemented entirely in WordPress. Scott Hanson is in charge of the Baseline theme, the one that we're using to build out the WordPress side of WordLand's features. Here are his notes on the linkblog feature. #
Tuesday, July 29, 2025
Lots of embarrassing typos in a post yesterday on why I need WordLand. I did something unusual, I fixed the post this morning, and cleared up some of the ideas. It was an important post and equally important to get it right. I also cross-posted it on the WordCamp Canada site.#
I needed a "featured image" for my WordCamp post, so I gave ChatGPT a simple assignment. "Imagine a place called WordLand." Last year this was a miracle, now it's so-what, but I still think it's a freaking miracle. #
Now here's the real reason I need WordLand and if you write for WordPress sites, I think you'll want it too. It's because WordPress is like the Microsoft Word of web writing. If you ask someone how they do their site, in 2025, it's probably going to be WordPress. So if someone invites you to write a guest post on their blog, chances are pretty good I can write it in WordLand, and it'll be archived in my collection of writing, and easy for me to find, because that's what WordLand does for writers. So I was able to create the new post on the WordCamp site in less than a minute, and it was completely painless. And that's the point. Here's the screen shot:#
My WordCamp Canada post, edited in WordLand. #
But what about Substack and Ghost? A lot of people do their writing there too? What about those people. Here's the cool part for all people who write on the web. The API we use in WordLand to hook up to WordPress is open and documented. They don't break their APIs in WordPressLand. At least so far. You could say that API is a standard. And I bet it would be a lot easier for Ghost, for example, to support a limited subset of that API than it has been to get ActivityPub support implemented. Because the WordPress API is what I would call "really simple," and that's the thing I value most about a good API. #
Last year: "There could be a developer community writing apps that all join up in the middle in WordPress's database. Pretty powerful idea!"#
Monday, July 28, 2025
Why I need WordLand. I’m primarily a writer, my podcasts reflect that, so most of the work I do on each podcast is in writing the show notes. I have a template the writing and audio flow through. Fairly standard stuff, the same approach used by Tumblr and many other blogging systems, including UserLand's Manila and Radio UserLand. Here's an example of a page rendered through that template. We’re doing similar things with WordPress using themes. The idea of WordLand is to do all the block-oriented work once, outside of the writing environment, then flow my writing through it, far away from the heavy lifting. It’s always how I’ve done my blogging tools. I understand WordPress so far has a steady workflow thru the block editor, but these are workflows for designers and programmers. WordLand is the flow for writers. #
Listened to a segment on today's Brian Lehrer podcast about how to keep the good feelings from a vacation when you get back home. Here's my idea. Before you leave make a list of the things you like about being on vacation. Take it home, put it somewhere you can find it when you're feeling down and want that feeling back. Pick one of the things on the list and do it. Your subconscious will tune into it as an act of self-love and give you some of the body chemistry that you felt when you were hanging out at the beach or hiking the Applachian Trail. A similar idea in a Bruce Sterling talk in 2009. #
Everything in ChatGPT is so nice. I just asked it about a random plant I got as a gift, and it gave me a beautiful one pager with everything I would have had to spend time searching for all right there, beautifully laid out, and all the fine UI touches you might think of already in. It's studying us and learning, and picking out the good stuff, at least so far. The web was like this too in the beginning, mind-exploding inventions every day. We called them mind bombs. The journalists and social media influencers all just complain, while there is a revolution happening, progress that had slowed to a snail pace, or very often went in reverse, is now coming at breakneck speed. This is as transformative innovation as there has ever been, not that I have much perspective on those that happened before I was invented, but it's as big as the Beatles, the PC, web, mobile. #
Sunday, July 27, 2025
One of my favorite features in the newest version of Bingeworthy is that it can generate a ChatGPT review of a program. Screen shot. I wouldn't have opened this up before because of that would let in the weirdness of the internets. This way we can find out what people thought, as sanitized by ChatGPT. BTW do you think the root of sanitized is sane? As the root of ignorant is ignore? Of course our friend has the answer. One is and the other isn't.#
Saturday, July 26, 2025
If you had asked a mathematician for advice on the Supreme Court ruling that money is speech, it was a totally foreseeable outcome that money would overwhelm speech, that the only speech would be money. We're right there now. #
Friday, July 25, 2025
Thursday, July 24, 2025
BTW, this business with Trump and the Fed is almost exactly what I wanted Obama to do with Garland when McConnell refused to hold hearings. Walk him over to the Supreme Court, unlock his office, swear him in and get back to work. Sometimes you just do it. The Dems weren't pragmatic that way.#
When trying to "work" with ChatGPT, realize that it's mistakes could be much worse than you could possibly imagine. It could be leading you down a blind alley. You must always consider how full of shit it is. It may not just be making things up, but it could not understand something very basic about what you're doing. There's no limit to the ways it can be wrong. And you can waste whole programming sessions chasing a solution where none could possibly every under any circumstances be found. The level of bullshit is sometimes hard to fathom.#
You can see from this Bluesky post that I do copy-edit my linkblog items, but not enough. The web isn't a write-only medium, so to say that Bluesky is part of the web, well in this way it isn't. #
Question: I have a site with a well developed set of categories, I've added to it carefully over a few months, it covers most of the topics I write about. Another site has a small set of categories. I write all my WordPress posts in the same editor, and could easily set it up so that all categories were available to me in every site I post to. The question: Is that a good practice in the world of WordPress? I noticed that categories are given global ID's so if I use a category like "movies" it will have the same ID as yours has on your sites. I love this idea of a global namespace for categories, and see it as something that could be adopted by sites written in any other writing environment. Anyway, if you have a moment to comment, I'd appreciate your ideas. Update: Jeremy Herve, a WordPress developer explains. #
Wednesday, July 23, 2025
Question. If you have to choose between Google's web browser or one from your favorite AI company, which would you go with? Also yes -- Google is destroying the web, as is ChatGPT and Claude etc. Because the people who tried to capture flow using SEO made you wade through mountains of garbage before you got the info you were coming there for, if you ever got it. It's the same thing with clicking links in Twitter. If instead, they had focus on providing a product that made people happy and built respect for theri brand, they'd still have a seat at the table. It's too late to complain, you had a chance to view your efforts as a business. But there's still plenty of potential for the web, esp if developers get imaginative in how to use the new browser platforms. I don't imagine Google's going to rock and roll too much with Chrome, but maybe they will. #
Trump says he's going to give AI companies freedom except with DEI and climate change, guessing they have to follow Trump dogma? Hard to tell from the language. I assume so. Just like CBS when the Ellisons own it. Our communications systems are pretty much owned by the government as they are in China. Or very close to that. #
Here's a benchmark. I just asked ChatGPT for 250 words on climate change. Let's check that out in a year and two years and see if they're still telling the truth. #
If you could look into people's minds and see if, at their core, they feel it can't happen here, most of us would have that belief. We'll probably still believe it when the last of our freedoms is gone. #
Tuesday, July 22, 2025
I think I figured out why the AI companies want to do web browsers. It’s so that they can create an application development platform for people who want to write apps that run inside a new environment where the OS is a LLM. Lots of interesting possibilities. Imagine how the OS API might work. You could restructure a database by explaining in English how you want it restructured. In the freaking code. Could we bury Algol-like languages the same way we buried assembly and machine languages? Do we have the courage to imagine such things?#
"You're an important caller," the machine lied, as if it were human. #
New WordLand release, v0.5.24, fixes a problem in previous release that kept the Markdown icon from appearing in some user's icon bars. #
Monday, July 21, 2025
Change notes for WordLand v0.5.22.#
Short video demo of Markdown mode in WordLand. #
The Great on Hulu gives an idea of what a king or queen would be like. The difference is the actors playing the monarchs are pretty lovable and not stupid, and somewhat self-aware (not their strong suit). #
Sunday, July 20, 2025
Today's song: When You Awake. You will remember everything. #
Just listened to an episode of the New Yorker Radio Hour podcast with Michael Wolff, about the material he has on Jeffrey Epstein that he can't get anyone to publish, but maybe that'll change. In the interview it was remarkable how the reporter wanted to know just how bad Donald Trump is. That is no longer an interesting question. Didn't you see what happened on January 6? And have you seen the armed, masked, badgeless military in American streets, disappearing people. And the $80 billion they just took from the US Treasury to build a network of concentration camps and who knows what else. You can't get more bad than that. It's too late to still be talking about this bullshit.#
I keep saying this to my chatbots and you should too. "You are not human, I don't want you to pretend you are. Act like a computer." #
Saturday, July 19, 2025
The nice thing about a blogroll is that it can become a feed reader, in a very small space. It's been on my blog home page for over a year, and I use it a lot, largely because I have to go to that page a lot to see how something I've written looks. Then I see that one of my favorite sites has updated, and I take a quick look to see what's new. The way it works, from a technical standpoint, is that it's hooked into a FeedLand instance where I have created a category called blogroll, and put all the feeds I want in my blogroll in that category. All I have to do to add a new one is subscribe to it in FeedLand, and click the blogroll checkbox. Another developer wrote a post about using their blogroll as a feed reader, and I wanted to put my hand up and say yes -- this is a good idea. People should do this. I like it because it's real innovation in feed reading, something that imho has been lacking in the feed world. Lots more potential here. And you're welcome to use my blogroll as your feed reader. I have put it on its own page but it's at a confusing location. Something to fix, maybe later today if I have some time or tomorrow. :-)#