Having listened to the most recent episode of
500 Songs, my friend said now you have to start with the first. I looked all over the web and I couldn't find a list. So I looked into their RSS feed. It's huge. How am I going to parse this? Then I remembered I have it in my database. So I wrote a little query to get me the enclosureUrl of all items from that feed, and
it worked. I love it when this happens.
#
Look at how she uses her hand. Why does that work so well. It shouldn’t. It’s a nasty move. Trump does it too.
#
I've been writing glue code for ages. Basically, someone provides an API for a service. Could be the IBM PC with calls to the ROM BIOS to read files, or the Apple II hardware screen memory (invented by the clever Steve Wozniak), or the Apple Events supported by various Mac apps in the 90s, or the XML-RPC interfaces for web apps, or the REST interfaces of GitHub and Slack or thousands of other services. They give you an API, and then after you see what it can do, and if you want to use it in your app, you write some glue, so all your calls flow through code you control, so if you learn something about their API, you only have to support it in one place. It's especially important for the few services that reserve the right to break their developers. Apple used to do this all the time, I haven't programmed to an Apple API in a very long time. Maybe they stopped? It's a way of forcing your developers to redeclare fealty to the Great Platform every so often. I like the web where no one has the power to break me (although Google might argue with that). #
- Anyway -- today I have a new release of my glue code for GitHub, the code I use to read and write files from and to GitHub. I use this to keep archives of stuff, because I think GitHub has a good chance of sticking around for a few decades, longer than the S3 storage I use for everything. That'll disappear the day someone stops paying the bills. But the GitHub stuff should stay, no bills to pay (though I do pay for a developer account, only seems fair because I use it a lot). #
- I use GitHub for archiving my blog. Starting on May 16, 2017. And since then every post, every day and every month has been stored there in JSON and OPML. I've also managed to find and store OPML files for most of the stuff on my blog going back to 1994. #
- It's not much of a secret that I'm working on a product that reads feeds in RSS, Atom and RDF formats. It contains a feed reader, but it is more of a development tool for news products. It stores info about feeds, items, subscriptions, users and likes and other stuff. I want that stuff to flow to GitHub right from the start. It'll be a slice of what we're doing online in 2022 and beyond. Maybe that'll be useful to some researcher in the future? #
- The new thing in my GitHub glue is that it manages a queue of writes, so you can just tell it to write something and then go on to the next thing. GitHub has a rule that you can only have one call extant at a time. This is a terrible for for an environment like JavaScript that doesn't let you do that easily. I got tired of managing that stuff in my application code so I added the queue to davegithub and that simplifies all future applications that have to write to GitHub. Absolutely nothing revolutionary in that -- it's just nice to be able to forget about that particular feature of GitHub, let the software manage it for me. And it's MIT licensed stuff so you can use it too. #
- I also released an example app that uploads a folder full of JSON files to a location on GitHub. #
- So If you are a programmer and want to use GitHub to archive your stuff, or to create a connection to GitHub for other apps, I've made it simple for you. Enjoy! ??#
- PS: I think Stewart Brand would find this interesting, btw. #
The greatest idea in Wired in the early days when the web was young were the easter eggs they added innocuously in web links. I like to do it too.
#
Once when I was a little kid, my mom driving, her mother, my grandmother, in the front passenger seat, my brother and I in the back seat when all of a sudden we noticed that Nana was wiggling her ears. Whoa. She's doing that for us! Incited, we carried on as kids do. Laughing and rolling around. Yes that's what to do. Nothing is all that serious, say the kiddies.
#
It
looks like the API
thesaurus.land was an interface for went off the air. Oh well it was a good idea. Kind of fun, for me at least.
??#
The server for
tweetfeed.org has been down since Sept 21. It's back up now and reading tweets and updating feeds. This is my
feed. I've added this service to my monitor so hopefully next time it goes down I will be notified and fix it sooner.
Still diggin! as they say.
#
- I had a longish phone talk with Doc Searls a couple of days ago. Then he wrote a post about a series of photos he took over 17 years, on airplanes approaching LAX, of a famous horse track as it changed over the years, and eventually was torn down and a football stadium was built in its place. #
- I've known Doc for a long time, and I've seen at least two sides of the man. On one side is Doc Quixote who is ranting about windmills. He's great with words so he comes up with memorable ways of expressing the ideas. And Doc is the most affable person I've ever known, so they love him as he rants at them. And the things Doc rants about are what we need to do now to start to be free. In other words he's right. But as we've grown old as friends I'm pretty certain that Doc will not live to see his ideas become reality. And nor will I, for my dream. I spent great time, energy and money, over many years to create the writing and programming environment I wanted to use and I wanted my peers to use, so we could work together to create species-saving communication tools, and just beauty -- nothing wrong with that. #
- An aside, when I read the story of David Bowie's last days, he did something amazing when he knew he had a short time to live. He stepped back and got out of the way. He understood this is no longer his world. I think we could all benefit from learning that earlier in life. #
- When you're young, you think expansively, and as you get old reality sinks in and your imagination contracts. The horizon gets closer and closer. We don't get to mold the world, we are not gods, no matter how good or generous, smart of ruthless you may be, we all start out young and if we're lucky we get old and then we're gone. Nothing you did in your life will exist after you're gone. I own this, as a 67-year-old man, as I decide what to do each day. I don't want to shake the world. I want to have fun with my friends. That's it. And that's just right. #
- Then I think about my friend Doc, and the things he accomplished by Just Being Doc, doing the things he'd do anyway no matter the dragons he's slaying. He would take pictures of construction projects from airplanes over 17 years. He would know literally everything about broadcast radio. And he'd be very affable while doing all that. Those I think are the things that matter. It makes no sense to be a billionaire or an autocrat. Ideas will happen when it's their time, totally independent of what you do. #
- There are a bunch of ideas along this line in a thread I wrote this morning all around DQ and JBD, and how the pattern is in my life-work too. I'll probably write more about that later.#
- If you want, play this song, and go back to the top and read the story again. #
No blogging today. See you tomorrow.
??#

When was the last time you said "you're right" to someone who was trying to convince you of something? In the house I grew up in, this is something no one ever said, because (as the theory goes) if you said it, you'd be forever reminded of the time you were "wrong" and they were right. You would be subordinate to this person, be it your mother, father, brother, grandfather, grandmother. Not my uncles so much, they were more on my side than the rest of them. Anyway it took me a number of years of living outside this house to realize that not everyone is like this. Some people relax when you
say the magic words. They open up and say more things that you can learn from. Everyone has a point of view, like the
blind men and the elephant. What they see as truth may not be a
universal truth, but to them it seems that way. And you are one of those people too. One time a long time ago, when I realized all of us can learn from everyone else, I
wrote that we're just barking, farting chihuahas, even captains of industry like Bill Gates and Larry Ellison, with delusions of grandeur and a sense that they matter. Nothing we do really matters, in the end, but we can pretend that it does, in the moment, and if you can say something true that makes someone happy, why not?
?? #
Last night's baseball was pretty intense. The Mets and Braves were playing at the same time in different cities, tied for first place in the NL East, as both games went into extra innings. I was sure the Mets were going to lose because they kept doing the exact wrong thing. But the hero of September 2022 for the Mets, a man who is not known for heroics, the third baseman
Escobar, came to the plate in the 10th inning and hit the ball into left field, and the shortstop, Lindor, who was on second base, came around third, as the ball was coming to the plate, but the throw was off and the shortstop scored and there was
pandemonium everywhere. And meanwhile in the other game, the Braves were losing, so as they say it was a win-wn. But I'm not sure I can stand the stress of the post-season that's starting in a week, but actually feels as if is already underway.
#
Wouldn't it be nice if there were a group of bloggers, people who write regularly, who are friends but might view things differently, but agree to read each other's pieces and speak up if they had something to say. They would know what they said would be read by other bloggers.
#
Another story. When I was in grad school, in Wisconsin, I lived in a
house with nine other students, on
West Wilson St, overlooking
Lake Monona and a park with tennis courts. It was the best time of my life. Always a party to come home to, and I loved the work I was doing with computers at the university, and I had a cat named Nurse, who I brought with me to Madison from NYC. She was a great cat. When I adopted her from a cat lady in an apartment on the east side of Manhattan, who had at least 50 cats in her small apartment, she pointed out this kitten who was protecting a sickly cat from the others. That's the one I took, and I called her Nurse because that's what she was when I met her. Anyway, in Madison, Nurse found a boyfriend, I guess, and she got pregnant, and had her kittens in the big house on West Wilson. I gave her a box in the corner of my room, and people were coming in all the time to see and touch the incredible kittens she had birthed. But one morning, they were all gone! The box was empty. No Nurse, no kittens! I did eventually find her, in a drawer in my dresser which I had left open, with some socks and stuff, there she was. I didn't tell anyone because her intention was clear. Then a few days later, kittens everywhere! Nurse was sitting somewhere off on her own and the kittens were discovering all aspects of the big house they were born in and all the people. A couple of days later we put them up for adoption and Nurse went to the vet to get fixed, and when she came home they were gone and she went on with her life hunting mice and birds.
#
PS: I love to tell this story, I've
told it at least
two other times on my blog. Hehe.
#
Okay here's a problem. Axios has a feed. Here's the
url. When I view it in the browser it shows up fine. Even
view source. If I bring it to the
W3C feed validator, it can read it and says it's a valid RSS feed. But when I try to open it in my feed reader I get a 403 Forbidden. I assume they're only allowing some services to read their feed? I've never seen this behavior before. Anyone
have an idea what's going on? (Update: In this
thread Scott Hanson has the answer. They serve through CloudFlare, and they require a
CAPTCHA for requests coming from Digital Ocean, and my servers are there. With that info we were able to add a route-around, so now we're receiving Axios news in our feed system.)
#
I hate it when people refer to me in the
past tense. That's been going on for at least 40 years, and mostly by people who are trying to steal my ideas and claim them as their own. The world is filled with scummy people like that.
#
Believe it or not
this was written by a NYT reporter: "Please Twitter, leave [
Maggie Haberman] alone. Trump lost the election, for God's sake. If Maggie had told you a little bit more before the election (she told you
a lot, btw), what, you think Trump would have lost ... twice?" Where do they find these people. It's amazing to me that the NYT doesn't fire both of them. I took a
screen shot in case he deletes the tweet. I wrote this
post yesterday about Haberman.
#

I've tweeted on this subject many times and every time I do it gets Liked and RTd far more than most of my other tweets. Here's the
idea: "Twitter should warn you that the link you’re about to click has a paywall and that all you’ll see is an offer to subscribe." Reminds me of a story I heard from a PR person I hired when I was miscast as the CEO of a software company in the 80s. I was paying them $5K per month, plus hourly fees and expenses. The $5K was due whether or not we used them that month. Since we were usually short on money, I was always thinking of cutting that expense, but I didn't because when we needed them they got us far more coverage than a little company like ours could command on our own. The CEO of the firm said to me once that I was not the customer, even though I was paying them so much money. The reporters were the customers. People like you come and go, she continued, but I have to keep the relationship with the reporters going no matter what. I think it's like that with Twitter and the people who click on links. Every time Twitter lets them use us this way, we hate Twitter a little more. We become more averse to clicking links. Just sayin, they don't have a business if they don't have our attention, and they're burning it, every time an advertiser wastes that attention, not to mention it's incredibly wasteful of the advertiser's money. This problem desperately needs a solution. The users want to pay money for news, but the offers the 8000 pubs that occasionaly have a must-read article are ridiculous.
#
My blogging comes and goes. Some days I am hunkered down working on software so no blogging. Some days I'm running around buying and selling things. Again, no blogging. And some days I have a lot to say. So far today is one of those days.
#

We need better metadata on
RSS feeds. Maybe something like
Wikipedia for feeds where we fill in missing data. Better descriptions of what's in the feed. Who writes, what they write about. Something like
Metacritic.
#
Twitter ― ads that lead to the paywall of a publication are mean and stupid. They managed to convince us to buy their product, but they won't sell it to us. It's as if you go to the supermarket and want to buy some apples but they will only sell you a truckload of apples, not one or two.
#
Twitter tip from Andy Piper. If all you have is the ID of a tweet, how to get its url? If you look at a Twitter url, there's a screenname in there. So how do you find the name of the person who posted tweet whose id is 1574769537244958720. Turns out you don't have to. Make up a name like
mamamia, and form the url like
this. It'll find the tweet for you and redirect to the actual users screen name. Nice little hack.
#
When a reporter starts thinking of themselves as a player that's time to resign and run for office or get hired onto the staff of one of the companies or people they report on. In other words, get in the game, honestly.
#

It's great that
Substack has a new simple
browser-based reader. Feedly might be too much for a new feed user. And Substack comes with a lot of news sources already programmed in. If I were in charge of Feedly, I'd do a "lite" product that's free, does everything Substack's reader does, includes all the Substack feeds. And of course the upgrade to the full Feedly would be easy. Substack is going down the same path we went down with Radio UserLand in
2002. It does both reading and writing. That's a big deal.
#
threads.com is tired of Slack and wonders if you are too. That's an ambitious way to enter a market. Discussed with
Jason Shellen.
#

I got a comment from a reader, a journalist -- asking why images of writers from
Puck are in the right margin of a
few recent Scripting News pieces. At first they thought my site had been hacked. No, I put them there.
Julia Ioffe got me started. I love head shots esp ones that stop at the chin. These were especially beautifully drawn head shots, in the spirit of the ones for that
Dutch news org that hyped everyone into thinking they had figured out how to make news work in North America. Anyway I often put images in the right margins, it's an artistic thing, they set a mood and often they have nothing to do with the content they're adjacent to. They sometimes make pieces wrap better, to avoid egregious
widows or orphans.
#
Dear NY Times, I am a paying customer, and I do
not want to use your app. I like the open web so please for fucks sake stop interrupting my reading with the constant nagging about how much better the fucking app is. I know you’ll ignore this, but wtf.
#
I get an email from the NYT telling me what to watch on Netflix, Hulu, etc. Why don't the manage a watchlist for me. I click a box next to a movie indicating I want to watch it. then i go to mywatchlist.nytimes.com when I'm trying to remember what I wanted to watch.
#

Something weird happened in an app I'm working on. The testers reported that a button they use all the time all of a sudden doesn't work. Well, not exactly. If you position the mouse in just the right spot, it
does work. So what was special about that spot? An object near the button had an opacity of 0.7, and part of its rectangle extended over the button. In fact it extended over the part of the button that didn't work (ie most of it). That was weird. I tried disabling the opacity just for the hell of it, and now the button works as it used to. Does opacity
have side-effects? I never would have imagined it would. But it appears to! I took out the opacity altogether and reported the problem fixed and the testers agree, but I have no idea what happened there. If you have an idea, please reply to
this tweet.
#
The
Mets won and the
Braves lost last night. Both games were blowouts. The Mets are 2.5 games ahead of the Braves, in first place in the NL East, and this Mets fan is happy and thanks to the Phillies and As for their help!
#

I saw a reference to
Project Kuiper, thought it was interesting, looked it up
on Google, first link was to an Amazon news page. I thought of subscribing to it, but only found a link to an email service. Which led me to another question, I
wonder if other tech companies might have
RSS feeds for their corporate announcements. Maybe Apple, Google, Microsoft, Netflix, Spotify. I've become inquisitive about this again. PS: I was able to create a
feed for this via Google Alerts.
??#
Despite what Tim Snyder
wrote about the obscenity of what Russia is doing with "referendums" -- on NPR today they reported it straight. You can get them to say anything you want. Russia doesn't even control the territory they're claiming as part of Russia! BTW, I finished the
Ken Burns special on the Holocaust and the US. The Nazis did something similar with the press. If the US did something to help Jews, they'd run press releases saying "See, the Jews really do run the world, just like we said!" So the US didn't help Jews. And apparently that's not the whole story. There were Nazis in the
State Department, at high levels. We also let Nazis emigrate to the US after the war, and turned away Jews -- because the Nazis were anti-Communist. I think we should consider giving back the
Statue of Liberty.
#
I don't like it when people I follow, who are smart and funny and make a contribution, RT their abusive replies. Puts me in a tough position, I can't tell them to stop and I don't want to unfollow them. Really the
only thing to do with people who sent abusive tweets is to downvote them (a new Twitter feature) and then block them. The
last thing you want to do is promote them. That will just get you more abuse and it stinks up everyone else's timeline.
#
A short
podcast about being your own best friend.
#
I have a friend whose name I won't say, who, if I say, at the end of an email, hope all is well, gives a balance sheet of what's good and not good in their life. #
- I find this so disturbing. I always have -- I'm not sure what to do, am I supposed to give them an accounting of my life, here's the good and the bad. If I do that do I have to make my story sound like their story, mostly very good but just a little bad to make it seem real.#
- Now that I'm older it's disturbing for other reasons. Who cares whether it's good or bad, nothing is either good or bad, or everything is bad, and everything is good. It's hubris to be in the business of judging good or bad. The universe is billions of years old. Everything you think is good or bad actually is irrelevant. See that's the joke. What you think matters, only matters to you. #
- "Hope all is well" is just a nicety, it doesn't require a response, it isn't competitive -- if you want to expand it -- it means life can be a drag I know but I am thinking good thoughts about you, so at least that is something you don't need to add to your worries. #
- Hope all is well. ??#
- Trump says that the FBI was really looking for Hillary's emails when they searched Mar A Lago.#
- That's what they'd say on a sitcom.#
- The person who plays the ex-president, deep in dog-doo -- he'd say something like that. #
- This reaffirms my belief that the Trump voter can't tell the difference between a president and a person playing president in a sitcom.#
- Not sure that the anti-Trump voter is all that different, btw -- we seem to like watching the comedy of it. Watch Chris Hayes when he talks about Trump. He's not grim, he's usually laughing, and so are his guests (not all of them, I've never seen @elieNYC laugh at this kind of stuff). #
New version of
publicFolder, one of the best Node packages I've done. It does basically what Dropbox's publc folder used to do before they pulled it back. There was a
bug that showed up when it uploaded large files to an S3 locations that's private.
#
I don't often tell you that you must watch or read something, this is one of them -- the
first episode of the Ken Burns special on the Holocaust and the US. You'll completely recognize what was going on then, because it's exactly what's going on now. As you watch it, you'll be amazed that Americans didn't get what the Nazis were doing. Amazing story.
#

I went to sleep early last night, gave up on the Mets, they were down 4-0 and it felt like they were going to lose this game. I was kind of sad, because as usual Atlanta was winning. They are just one game behind the Mets in the
NL East, and that would have put them in a tie for first place. I should've had more faith. The Mets won. First Pete Alonso, the slugger, hit a three-run home run and then Francisco Lindor hit a
grand slam, and the Mets won! It's that kind of year.
#
Podcast. I've been watching a lot of Mets baseball. The Mets are breaking a lot of records this year, including being
hit by pitches more than any other team ever (almost). This taught me something important, along with watching the
Ken Burns documentary about the Holocaust and the US (must-watch). I see Trump in Hitler now. Pretty revealing perspective. Now I wonder how my ancestors got here at all, given the antisemitism in the US then, which I can attest to (and provide proof of). You're wasting time watching MSNBC, much better off watching baseball and Ken Burns.
#
Have there been any reports from journalism about the effects the Dobbs decision has had on the people?
#
2020: We're heading into a "taxation without representation" situation if the Repubs try to put another conservative on the court. The country isn't that conservative. The Electoral College gone wild. The Repubs got too good at tuning it up and it will lead to a revolution.
#
I woke up this morning with nothing on my blog-mind. What a weird state. I literally have nothing to say, except I guess
that I have nothing to say. Keep checking back I'll let you know if something comes up.
#
All non-blog stuff today, more tomorrow, if possible.
??#
September 18, 2002. It was low-key, I was fully expecting the roof would cave in and rioters would break down my door. I announced
here on Scripting News that the final RSS 2.0 spec was out. But! -- no one had a problem with it. I guess we were ready to go to the next stage, with a
clear way forward. And
RSS would go on to
eat the world, to steal a phrase from a well-known tech pioneer. More on this later. And more software and interesting ideas in the days to come.
??#

The announcement on September 18, 2002.
#
- Making usable and efficient software is all about factoring. #
- I was talking with Ken Smith this morning, an English professor, not a technologist. He wanted to know what's factoring all about. What makes Frontier better than other programming environments. It's factoring. Same thing was true of blogging. Factoring. You keep reducing, eliminating steps, until it becomes clear how to eliminate the thing you've been trying to simplify. You simplify it so much it goes away.#
- A couple of case studies.#
- Before blogging people used CMSes to manage web stuff. They were derived from print publishing software. You'd arrange something on the screen of a computer, until it was perfect, then hand it over to a printer who would put it on paper. That's how CMSes worked too. You'd edit in one place and deploy in another. The aha moment that made blogging real, the Holy Grail I was searching for was the realization that if there was just one place, you could dramatically simplify the editing process, so much that you wouldn't need a techie around to manage it. It worked. The aha was recorded in a blog post, of course. If you put an Edit button on the published page, you didn't need another place to do your editing. All that was hidden beind the user interface. #
- In the same way, before Frontier (and after, unfortunately) if you needed to store data from a program, you'd write it to a file. When your software was restarted, it would read it from that file. The innovation of Frontier is that it managed all that for you, in the language runtime -- so you never need to write anything anywhere. As with the blogging example, instead of two addresses, a piece of data only had one. I often wonder why no one else has stumbled across this incredible time- and complexity-saver. Bake storage into the runtime. My thought/guess is that language designers don't build apps so they don't know that this would be desirable. If they did, it would be built into other languages.#
- I wonder, why I, as opposed to other developers am always striving to simplify, looking for a way to eliminate steps, and whole concepts. I think perhaps it's because I spent years in college studying mathematics, where that is the whole purpose. Looking for the unifying theory of everything. All science is like that, I wonder why this seems to have escaped software development. Every year we (as a profession) work to make things more complex. I think it's because most developers work for big companies who are rewarded by making things more complicated, not by pure programmers (like pure math) who focus on making software disappear. #
At the beginning of this year, with the 20th anniversary of RSS 2.0 coming up, I asked myself a question -- why aren't you working on RSS? In some ways it was the most successful project of my career. Why not do more with it.
#
It’s so funny, when I was a kid, when marijuana was illegal, I used to smoke weed in my car on long trips or short. I don’t know what I was thinking. It was nuts. There were always roaches in the ashtray.
#
BTW, yesterday out of an abundance of caution I changed the app credentials for
Drummer. You probably have to log off and log back on if you're using it.
#
- The frontier in new models for social networks are systems that work wonderfully with small numbers of users. The size of a PTA or bowling team. And to limit forms of expression so that it can't devolve. #
- For the last 50 years we've been building social networks that grow without limit, and give the users power to say anything. We keep repeating this, and being shocked when they devolve to the most crude form of human behavior. #
- Instead let's pioneer of new forms of social behavior. #
- Hopefully something better than devolution, more useful at solving the problems we have. #
Why does today feel like Saturday! It's really freaking me out.
#
In general the people in the tech industry think too narrowly about what our systems can do for people.
#

Discussing how fucked up music is on Macs and iOS these days, I was told that
nowadays it's fucked up by design. I
explain. "I manage the music myself. It's okay I
got a nice new Android
phone, and they let me use the Finder to copy music onto the phone, and I'm happy -- I'm gradually weaning myself off Apple. And
simple does not equal 'breaking users and forcing them to use services they never asked for, for good reasons.' If I got in my car and tried to go somewhere and it said sorry we don't go there any longer, well since I drive a Tesla I do expect that day to come."
#
The Mets are one of the top teams in baseball this year along with the Yankees, Dodgers and Braves.#
- They have an "easy" schedule in Sept, so they were "expected" to cruise into the post season without a care. And on top of that, they took a series from the great Dodgers, boosting the team confidence even more. Then they lost a series to the Marlins and now were swept by the Cubs, both sub-par teams this year. The Mets might still win, because the Braves, their main competitors in the NL East, are slumping too.#
- This is why people who really engage with sports laugh when the politicos on TV say they know how elections will go. Fuck you, you don't know shit a Mets fan might say. A Dodgers fan probably would be more polite but the sentiment would be basically the same. #
Looking for a few good feeds: I want to add some new feeds to my reader, specifically interested in good Substack-type feeds that readers of my blog might find interesting. The topics I cover here. I'm going to demonstrate an idea I think all writers should work on, presenting collections of feeds of sources they value to their readers.
#
I'm debugging memory usage of a database app in Node. As I do this high wire act, because to do these tests I have to change code and every time I do that, I run the risk of introducing a serious low level bug, I realize I'm using experience I got taking chemistry in my freshman year of college, many years ago. I've done this kind of work before, obviously -- I built a full featured commercial product for the Apple II when it had 48K of application memory. I swapped code in from disk which made the app kind of modal, and wrote in a high level language that generated dense pseudo code, much more memory efficient than machine code. People think that if you make software that regular people can use that you don't have to have deep technical skills. The opposite is true.
#
- An request to whoever runs icons.duckduckgo.com.#
- Instead of returning 404 for a favicon you don't have in your database, just redirect to a default icon. #
- Having an error message show up in the JavaScript console in the browser doesn't serve any purpose.#
- TIA.#

To the people who responded to my earlier
call for testers for the feed product, it's taking longer than I thought. But I haven't forgotten. It's coming along nicely.
Real soon now.
#
Over the years I've had a few friends who I knew when they were broke who became fabulously wealthy. They have taught me a lot, probably not what they intended to teach (if they did at all).
#
Verge has a new design. They say it's a blogging platform. The
home page is a stream (I would say a river). I wish it were more plain. I also wish they cultivated a blogging community of their sources. Maybe they are doing that. Hard to tell.
#
From 2019: Trump is a TV show. If you want to get rid of 10 or more percent in his following, program a Trump TV show every night that isn't news, it's actors in a soap opera, playing the roles of people in Trump's white house. We hang out with him during oval office tantrums, and during pajama time in the morning with fox and friends, and watching tivo of rachel maddow at lunch time. If this gets too boring, have him masturbating. His fans just want to be at home with Trump. Give them what trump won't. Change the conversation from one about trump that he controls to one that is focused on his boredom, sloth, immaturity, depravity, bad hygiene (false teeth), criminal behavior and shitloads of lying. Introduce new characters, like his cardiologist.
#
Today we commemorate a horrific event
21 years ago. The pandemic is orders of magnitude more devastating than that event. And it's ongoing. It's still killing massive numbers of people and destroying lives.
#
Trump is responsible for over a million American deaths. He knew how deadly the virus is, and did nothing to protect the country. Yes, he must be punished for trying to overthrow the government, but don't forget all the American death and suffering he's responsible for.
#
- In the new feed management system, instead of stripping all HTML from the descriptions of feed items, we're now allowing <p>s to get through. I want to have full text in my rivers, with a MORE icon that lets you see all the text. So the flow isn't dominated by long posts, but the text is there if you want to read it.#
- But I don't want all the quasi-malware that comes with feeds these days. My plan was to strip all the markup, but it really wasn't workable without the <p> elements. #
- I put out my braintrust query yesterday and got two good answers. Use regex or the the sanitize-html Node package. I went with the Node package. It builds on a full HTML parser, so it's legit technology, not a hack (though I was happy to use a hack, have been for years). #
- Here's the before and after in screen shots. #
- It was a good call. I thought about enabling other HTML elements, but decided to stop here for now. #
- PS: Recall we already have support for Markdown in the feed system. So there's an even better way for friendly feed writers to do this, rather than trying to gum things up so badly that all we can do is nuke
all most of the markup. ??#
- Here's a link that opens in Drummer. It contains the package.json, a template file and the JS code that reads an RSS feed and produces an HTML rendering of the items in the feed after running the description text through sanitize-html with the p's removed. Once written it made it easy for me to try out a lot of different combinations for the options, but I settled on the simplest.#
- It uses the reallySimple package to read the feed, and is thus a good demonstration of how easy that is.#
- I usually would have done the work to put it into a GitHub repo, but this is a lot easier for me, because this is how I work on my code.#
- If people can read the code in the outliner (you can!), that will make it possible for me to share a lot more code. :-)#
Braintrust query: I have a regex that strips all HTML elements from a string. Now I want one that does less, it strips all markup except <p> and </p>. Then I want one that takes a list of elements it should leave in place. Any help most appreciated!
?? #
I can't believe journalism didn't get how huge the
Dobbs decision was sooner.
#
I spent the day fixing bugs and writing docs for the new product. Not much writing juice left for the blog.
??#
September 18, ten days from now, is the 20th anniversary of
RSS 2.0. I haven't forgotten. I'm going to try to ship something appropriate on that day.
#

If you're a developer and interested in making a contribution, consider porting the
reallySimple package to another platform. Right now it's only in Node. It makes reading feeds of all flavors easy to just drop into an application. It lives up to its name, it's a simplification of RSS (and Atom and RDF) behind a single JSON interface. So you can put feed reading support into anything without taking on a huge project. Tools are so important.
#
I got a big new feature topped off today. Can't say what it is yet, but I think it'll be shipping within a few weeks, or so. Software comes when it's ready, like everything else.
??#
People aren’t wearing masks, even at the pharmacy, the person who gave me my booster said she didn’t need one because she just got over her second bout with Covid. What? Unreal. Then it came to me, this is normal. It’s why even when the temperature in California is over 100 in lots of places, we're still pumping carbon into the atmosphere. Pakistan is drowning, and
Lake Powell is drying up. Business as usual. What was abnormal was the brief period when many made sacrifices to fight Covid. Now we just shrug it off, I guess?
#
YouTube TV
says they want me back as a subscriber. Awww. I'd love to use it, its user interface is way better than Spectrum but -- the only way to get the Mets and Knicks games is from Spectrum. Let me know when I can watch my teams on YouTube TV and I'll be back right away.
#
The Mets are slumping now. I haven't even looked at the standings this morning, but they are in a deep rut, and who know when or how they will come out of it. Another thing that's like developing software. Sometimes everything's clicking, you go through each step methodically, and you do lose your way but you get back on track quickly. Even a team that's booming hits into double plays. And even teams that are winning, lose no less than 1/4 of their games. The league leading hitter only gets a hit 3 out of every 10 times they come to the plate. But when it's all clicking, you want to stay in the game.
#
If you watch
Bear, creating a software product is done the way the sous-chef Sydney develops a new item for their menu. If you're going for the full effect, you iterate and test, think, go back and do it all, over and over until you've struck a good balance and compromises with reality. A product goes from dream to reality in many stages. In food and software, in everything.
#