Podcasting 2.0 for August 15th, 2025, episode
230, Bacon Polyfill.
Hello everybody, we are live and lit and
ready to rock and roll.
It is time for Podcasting 2.0. That's
right, everything going on in podcasting.
Well, everybody's traveling and on vacation, traveling the
podcast movement.
No, we're hanging out here at home on
a Friday.
We are, in fact, the only boardroom that
never locks a deprecation discussion.
I'm Adam Curry here in the heart of
the Texas Hill Country and in Alabama, the
man who can catch any phishing emails from
Gmail.
Say hello to my friend on the other
end, the one, the only, Mr. Dave Jones.
Big, big lungs.
Yeah.
Massive pipes.
I still got him, man.
I still got him.
You got, you got, that's a, oh, do
me a favor.
Yes.
On your keyboard, you're on Windows, right?
Yes.
On your keyboard, type Windows key.
Windows.
Okay, you got, you're going to have to,
this is a key.
Oh, key.
Sequence, you're going to have to hold these
down.
Okay, all right, all right, all right.
All right, Windows key plus control.
Wait, a plus sign or just control?
Just control, Windows key, control.
Yeah, I'm not doing it yet.
Yeah.
Okay, Alt.
Yeah.
Shift.
Jeez, yeah.
You hold all those down and then you
hit the letter L.
Now, what do you think that's going to
do?
I'm going to do it.
I mean, if I, will it be the
show be off the air if I do
this?
No, this is not Alt F4.
No, this is not a reboot.
Okay, okay.
So I'd have to hold them down all
at the same time?
Yeah, Windows key, control, Alt, shift, and then
hit the L.
Okay.
No, you basically just took me to LinkedIn
on my browser.
Yeah, that, LinkedIn, that is in every version
of Windows.
Really?
Baked into the operating system is a hot
key that takes you, that just opens the
LinkedIn website.
That is fake and gay.
That is not okay.
That is the grossest use of an operating
system I've ever seen.
Wow, wow.
I could sort of forgive them if it
was like an M took you to Microsoft's
website, but LinkedIn?
Well, don't they own LinkedIn?
Didn't Microsoft buy LinkedIn?
Do I have a- Yeah, yeah, yeah,
they do, but it's a piece of junk
website.
I mean, like, it's crap.
I mean, why not G, why not all
that and G to open GitHub?
I mean, they own that too.
What, GitHub would be a hundred times more
useful than LinkedIn.
To be honest, this is not the easiest
keyboard combo I've ever had in my life.
You'll only ever open this if the cat
walks across the keyboard.
You're never going to open this on purpose,
but it's still just, it just makes me
angry.
I mean, you know- So have you
tried other, first of all, how'd you hear
about this?
It's egregious, it's egregious.
How'd you hear about this?
One of my coworkers told me.
Okay, I'm going to do, I'm going to
see what happens if I hit G, nothing.
K, nothing.
P, nothing.
L, boom.
Okay, you want another one?
You want another one?
Do the same thing and hit Y.
Hold on a second, it just opened up
PowerPoint on why I did that.
Okay, I do another one, hold on.
And hit Y.
Yammer, that's a product that they discontinued.
They don't even make it anymore.
Yammer.com.
They don't even use Yammer anymore and yet
my operating system has a hot key that
takes me straight to it.
That's- You know what I'm going to
do about it?
You're going to throw Windows out of your
entire company.
I'm going to do nothing.
Absolutely nothing.
So- I'm going to get very angry.
So I've been having all kinds of issues
with the No Agenda stream.
Of course, we are lit and live, everybody.
And we noticed that something was going on
because part of the Podcasting 2.0 fabulous
namespace, the podcast namespace, I should say, is
the lit tag.
And we have many of the modern podcast
apps that support it.
So you get a notification when we go
live and then boom, you tap it, you're
listening live in your podcast app.
It's mind blowing.
It's mind blowing to witness this.
Even apps without a backend.
So you have no excuse.
That's right.
And of course, by the same token, thanks
to the pod ping functionality, when we publish
the show within 90 seconds, you bam, you
get a notification it's been published.
So we've had this problem where our numbers
were down for the past couple of weeks
on No Agenda.
And because we always track that, we do
a troll count, how many trolls are in
the troll room, which is a whole different
chat room from the boardroom, obviously.
So sometimes- It's like a boardroom, but
it's all trolls.
Trolls, yes.
It's trolls.
And so the numbers were down by about
200 on Thursdays and Sundays.
And by the way, we get up to
like 22, 24.
We've had almost 4,000 at one point.
I think that was the day after the
Trump assassination.
We had 4,000 people.
What are they going to say?
Well, I don't know.
So anyway, so it's been down about 200,
Alex.
And then people start sending me bug reports.
Now, your typical bug report from a typical
user is as follows.
The stream doesn't work.
So that's usually how it starts.
Yeah, what does a bug report from a
troll look like though?
Yeah, there's different ones usually.
You're always talking about those modern podcasts after
they don't work.
Okay, that's a troll.
Yeah, that's a troll.
And so, you know, so of course I
try to debug this.
And I first noticed there was a correlation
between people using iPhones and AT&T.
So, you know, because I'd say, hey, trucks,
they're like, you know, it doesn't work on
Podverse and Fountain, Castamatic.
Well, I say what network?
The first thing I think is we've been
blocked somewhere.
That's kind of the first thing.
Like, this is a network block.
And so I try to determine, is it
AT&T?
And there seems to be a high correlation
with AT&T mobile server.
So they will try it on Wi-Fi.
People say, oh, it works fine on Wi
-Fi.
But then the same people would come back
later and say, well, it suddenly worked on,
didn't work on Wi-Fi.
And now it seems to work on AT
&T.
And so now I'm kind of digging around.
Luckily, we have a lot of people.
So I'm still focusing on iPhones.
I was like, maybe Apple changed something.
Wouldn't surprise me.
So I'm trying to figure out, is that
it?
And then finally, it's actually Rocky Thomas who
sends me a screenshot, Rocky Smart.
And she sends me- I saw this
email, yes.
Yes, she sends me a screenshot of Fountain
and it has an actual error message in
Fountain which has some clues.
And then- Look at Fountain giving us
the print debug.
This is awesome.
That was pretty good.
Like, yes, this is helpful.
And then we dig a little bit deeper
and it appears that some people are experiencing
a cert issue, a certification error.
I'm like, that's really strange because we definitely
have certs running.
I mean, I'm seeing it here.
These are not uncertified people.
These are people experiencing a certification issue.
Well, some of them may have been uncertified
as well, but yes, they're experiencing a certification
issue.
And then I hear from other people, no,
it's happening on Android.
So we're digging and I'm working with Void
Zero.
We're digging and digging and digging.
And then all of a sudden I'm like,
I think it might be this.
What do you think the error was?
Why was it sporadic and really happening more?
If someone couldn't get it on Wi-Fi,
they typically couldn't get it on Wi-Fi.
But on cell phones, sometimes it would work
and sometimes they'd get a cert issue.
Just like, this is not a safe stream.
So an SSL error, basically.
I mean, the first thing that pops into
my head is that the certs have a
thing called an SAN name where you can
attach a secondary name to it.
And like naming of the certs have to
usually match the URL that the cert's being
delivered from.
As I would think that my first guess
would be that this is some sort of
name mismatch between what the browser thinks the
stream is and what the cert says it
should be.
Well, already, I don't know if, because I
explained this yesterday on no agenda.
So I'm just going to presume that Daniel
J.
Lewis and Eric PP are honest people and
they didn't hear the explanation yesterday, but you're
correct.
The V host was misconfigured on IPv6.
So if you happen to spin up your
phone and it got an IPv6 versus IPv4,
then you got a certification error.
Right, because the certificate name, the name in
the certificate, it's a head fake because the
name in the certificate is pointing to, it
has a host name attached to it.
And there was no quad A record for
an IPv4 address.
Exactly, exactly.
And so, first of all, IPv6 is just
a scourge in my life in general.
It's just a scourge.
Can we just like go back now and
just rip that all out?
Because I mean, it's like- I can't
remember my IP address.
I know, it's like 20 miles long.
Yeah, so, okay.
So we got that fixed.
I'm telling this whole story.
I'm proud of myself.
I'm like, my troll numbers will be up.
It's going to be great.
And then we do the troll count.
We have a little counting mechanism.
Cotton gin, I think, threw together.
Somebody threw it together, I think so.
And then you get the peak number of
listeners.
And it's low.
I'm like, why is this low?
Well, guess what?
I was so jacked up about being able
to talk about this story that I completely
forgot to send out the bat signal.
So I never pinged all of those modern
podcast apps that were going live.
You almost forgot to send the bat signal
before we were live today.
I know, I know, I know.
I've got to say, I need to vibe
code a script for that.
So it punches me in the face.
You're developing a bad habit.
You got to nip it in the bud.
Yes, you're right.
You know, it's like, your dog's probably like
mine.
If you ever do something twice, suddenly that's
the way everything's going to be from now
on until the end of time, you know?
Like if you change the walk time, like
one day to some other time, the next
day it's like, okay, this is the new
time.
Forever friend.
No, my dog's not like that.
My dog is just laying down all day
long.
This dog will literally go 18 hours.
And just sit there and like, I'm fine,
but I'm okay.
Yeah.
It's like, whatever.
Oh, we're going to go out now?
Okay, I'll go.
That's fine.
How hot is it in Texas right now?
Well, we have summer now.
We've had the coolest summer in, gosh, as
long as I can remember.
Temperature right now in the Hill Country is
89, which is nice for us.
God, that's not bad at all.
That's nice.
And we've had a couple of, we have
not hit triple digits this year at all.
So it's been beautiful, beautiful for us.
Good for you.
Go ahead.
Yeah, we're 89 here, but our heat index
is 105.
It's so humid.
Oh, heat index meeting.
That's like, you know, feels like.
Come on.
Yeah, because it's the humidity is like off
the chart.
How do they measure that?
How do they know what it feels like?
Do you know what 104 feels like?
I do know what 104 feels like.
If I put you in- In ambient
air temperature.
If I put you in an oven, which
would be a tasty snack.
If I put you in an oven at
93, would you know the difference between 93
and 104?
I think I would know the difference.
I would not know the difference between like
93 and 97.
I think I would know the difference between
93 and 104.
That's a pretty big difference.
And why do we even feel bad over
98.6?
I mean, isn't that just our temperature?
What's your humidity there in Fredericksburg?
It's always very low, or typically very low.
Yeah, because we're up high.
It's 70% here.
It's like you walk out and you have,
within 30 seconds of walking out the door,
you just have swamp butt.
I mean, you're just dripping in sweat.
Oh, it's the worst.
Well, I'm indoors more now because I'm a
coder now, man.
I'm just coding.
Man, you're on fire.
I'm whipping up stuff.
You're on fire.
Yeah, you're texting me stuff like, hey, I
got a new API.
Oh, I'm sorry.
I'm sorry.
I don't know how that happened.
He 33'd me.
You're like, hey man, I got a new
API.
I'm like, what?
I did, I had an API.
This is a whole new Adam.
This is great.
I love it.
I can't believe I actually made an API.
Yeah, it was great.
I liked the new Adam.
This is awesome.
I'm doing some, right now, I'm doing some
cool stuff.
So I'm connecting Dropbox to an FTP server.
This is cool.
And why are you doing this?
Because we have customers, and I want them
to be able to manage something on an
FTP server files by dragging them in or
dragging them out, but not have to deal
with an FTP client.
I want them to use something that they
understand.
Oh, Dropbox, I get it.
Okay, so you are using Dropbox as API
to do this?
No, no, there's, it turns out there's actually
a little widget wadget.
It's called, what is it called now?
I think it's called Maelstra.
I think is what it's called.
I don't even know what that is.
Yeah, well, it's a little service.
I mean, you can, because I didn't want
to have my entire, let me see, hold
on a second.
Let me tell you what it's called.
Yeah, Maelstra, M-A-E-S-T-R
-A-L.
It's a pip, it's a pip.
So you install this thing and then it
gives you an authentication code and then you
can set up one directory in Dropbox and
then you can have other things, as many
directories underneath that and it synchronizes it with
a headless Linux box.
Which is kind of cool.
You set it up within three seconds, you
know, it just works.
By itself, a handy thing to have.
Runs as a service.
And- Okay, so you're, so this is
going to be something that the customer would
have to install.
No, the customer just- Maestro.
No, no, no, no, no, no.
The customer just gets a Dropbox invite.
So they're like, oh, okay.
And then you can use it on your,
in your browser or most people have Dropbox.
Okay, so you're, okay, you're manipulating this, you're
using this Maestro, I really don't like the
name of this product.
It's okay, I'm not a hater.
Free.
It's so hard to say.
Maestro, Maestro, Maestro.
Using Maestro to just as a client and
then it will interact with the Dropbox API.
Correct.
Yes, exactly.
Yes.
Okay, and so you're inviting the customer into
a Dropbox account.
A Dropbox share.
Yeah, just a single folder.
Okay.
You sound so negative.
No, I'm not.
The first thing I think about, see, I'm
a, you may not, you know, you surely
know this about me.
You're thinking, where can it break?
Yes, exactly.
I'm a software cynic to all, I mean,
down to my, the very blood in my
veins.
Yeah, yeah.
I expect all of every, I expect any,
I expect any company to rope you into
an API and then rug pull you.
It's like, I just know, I'm convinced of
it.
Dropbox has been around for a long time
though.
So I trust them.
I kind of trust them.
And this little widget is, Dropbox themselves also
have a Linux client, but if you want
to start it up in just one directory,
you basically have to start it and then
start excluding folders really quickly.
Well, my Dropbox, I have gigabytes of crap
in there.
It's the last thing I want, is for
that to start, you know, to just start
filling up.
So this is just one directory, click, boom,
done.
And then so whenever the customer drags something
into their subfolder of that folder, then it
automatically updates these files on an FTP server
for play out, which is a whole nother
story.
Right, right, right.
So, but what you built the other day,
and this is a broader topic within podcasting,
specifically Lit, is you built a proxy for
metadata.
Yeah, so it turns out that any type
of web client has a lot of trouble
doing metadata from a stream, at least the
players that are out there, unless you want
to go, I mean, you can speak more
to that because when I said, hey, can
we have metadata in these web players for
podcasts?
You're like, oh, oh, after six weeks.
I did exactly that, that's exactly what I
did.
I got to rip the whole player apart,
all the code has to come out.
Oh, yeah, we can do it, but ah.
Yeah, I did lay it on thick.
I did lay it on thick, I'll take
it, I'll take it.
So I'm like, oh man, because that's actually
a thing that a lot of these crap
companies, that's app companies who are rapper apps,
they call them crap companies, which a lot
of radio stations and a lot of churches
use them, and so they have all kinds
of player stuff, but if you just have
something playing in a PWA that's in the
app, and a lot of them can't even
do that.
Some of them have just no metadata on
their players.
They just gave up on it.
Like, yeah, but here's your giving page.
You know, okay.
Here's the page that lists all the staff.
Here's your staff page, here's your on-air
schedule.
Can we just say like, if you're a
radio station, I just want to offer a
word of advice.
Nobody's going to your website to see your
staff or like your mailing address.
They just want to listen.
Or to your app, yeah.
They just want to listen to your radio
station.
Well, that's just inherent radio stuff, and some
people are very, very, very in tune with
what you and I are talking about, and
a lot not, but they'll come around eventually,
I hope.
So I'm like, oh man, I wish there
was a way that we could do this.
And so I start tinkering around and like,
well, this IC data, this ICY data, I'm
sure I'm telling Cotton Gin nothing new here,
is pretty standard across all radio streams.
And so it's about a 16 kilobit stream
that comes out of the stream, and when
the metadata changes, you can pull it right
out of there.
I'm like, okay, that's kind of handy.
So what can I do with this?
And I decide to build a proxy.
So when you hit the proxy, it immediately
starts up the stream that you requested, keeps
it running for 60 seconds, and writes the
metadata to a JSON file.
There you go, Daniel J.
Lewis, I'm in your camp.
Writes it to a JSON file, which then
is returned through the API.
And that, of course, you can put into
anything.
You can put it into, you can put
it in an iframe, for all I care.
So you can put it anywhere on the
page.
It doesn't just have to be in a
player that happens to have this functionality.
And every subsequent request for that, if there's
100 people listening, just comes from a very
lightweight API from the cached file.
And then once a minute, it updates the
metadata on, I think, actually, I think I
did 30 seconds.
If there's no subsequent request within five seconds,
then it stops the stream, deletes the cache.
And I built that.
Man, high five, virtual high five, buddy.
I'm kind of happy with that.
I'm, because the first thing I said was,
you know, we're going to need some kind
of caching.
We don't want to spend, spending up like
20 streams for 20 lists or something.
And you're like, I'm on it.
And then like 30 minutes later, you're like,
done.
Yeah, it's, and I've kind of figured out
how to do this with Grok.
So I've settled on Grok.
And the trick with Grok is, first of
all, all that stuff, all the AI stuff
in Grok, it's all built on Python.
So don't even try doing anything else.
Just use Python.
It understands Python.
It's built on Python.
It really knows a lot about Python.
And of course, it's reasonably good at syntax.
So it's rare that it writes a script
where the syntax is incorrect.
But it happens.
It happens where, you know, curly brace, not
close, you know, use something that doesn't exist.
Okay.
So I can get- It's rare that
it gets syntax wrong.
It's very common that it just makes up
function calls in libraries and APIs that don't
exist.
You have to be extremely explicit.
And the best way to do it is
just think modularly.
So you build something.
It'll usually come up with, because I write
everything out.
Here's what I want it to do.
Then I put that into the prompt.
It'll come up with, you know, it makes
decisions.
It comes up with something.
Usually it's pretty close, but I take a
small bit of it.
This is the core functionality.
And then you build that out.
You might add one or two things on
and then immediately start a new conversation and
say, evaluate this script, understand what it does.
Here's what I want to add to it.
When you do that- Okay, so you're
wiping it's memory and storing it for-
If you let it keep memory, that's where
it all goes wrong.
And then, you know, as I've said before,
you wind up with a suggestion to recompile
your kernel because it's all your fault.
Which is the best thing ever.
I love that that's what happens.
That's so great.
But if you don't understand what you're doing,
you'll never get there.
There's just, if you don't, I mean, I
have, I mean, I have arguably 25 years
of, well, more than that since the nineties.
So what is that?
Nineties, it was like 30 plus years of
experience looking at code, understanding how things fit
together and what things are possible.
And I, going all the way back to
my Radio Shack 101 projects breadboard, I understand
how you can link things together, right?
But well, I can link it.
And that's almost like, I've been always been
kind of good at command line pipe.
You know, I was like, oh, I can
pipe this out into that, into that, into
that.
And then I can get something that works.
If you have those concepts down, you can
actually make something functional.
And you still have to, you know, ask
for verbose logging.
And, you know, cause I, so with the
FTP part of this, it wasn't getting the
FTP, right?
And I'm like, what are you trying to
do?
Let me take a look.
And I see that it's using FTP commands
that don't exist in the FTP server that
I'm using.
It's like, oh, okay.
So it's just assuming that this FTP server
is of this, this build and has this
functionality, but it doesn't.
So you do have to really sleuth.
It's not going to find that stuff out
for you.
It's going to say, let's try something different.
Like, no, no, no, no, no, no.
So.
And it's important to realize why this all
is necessary.
And cause you, why can you not, why
can you not just get the, the metadata
and when we say metadata, what we're talking
about is the name of, at the most
fundamental level, we're talking about the name of
the, of the content that is currently playing,
be that a song or a podcast or
something.
Which is typically encoded in the file that's
being played.
Not always, but typically.
Yeah.
So you, so what you want, if you're
listening to a live stream is, whenever the
live streams switches from like one episode or
one track to another, you want it to
switch, you want it to tell you what
the title of that new thing is.
And, you know, other stuff, if it's got
it like artist and that kind of thing.
So that, so the question is, how do
you do that?
And there's very, there's various different ways and
different live stream, live streaming servers do it
in different ways.
Some just have a metadata file, it's an
XML file that you, that's just published to
the side and it's updating that file every
time it updates, which is actually wonderful because
then you don't have, you can just make
calls to it, you don't have to worry
about it.
But what most, all streams do is what
you're talking about is they use this ICY
metadata.
And that metadata delivery is encoded in the
MP3 stream itself.
Right.
And so every frame, I think it's like,
you can set the interval, but every so
many frames, it will deliver the string of
what's currently playing.
Right.
And then, so the problem with this is
you have to, you can only handle this
two ways.
Build your own MP3 decoder.
And that only gets you part of the
way there because the HTML native audio decoder
does not do this for you.
But then even if you do that, you're
still going to run into the biggest hurdle,
which is CORS.
Yes.
C-O-R-S.
Right, which is why I had to do
it because you really have to run, just
grab the stream itself.
You can, well, you're better explaining that, I
guess.
Well, Cotton Jen said, I watch for the
ICY metadata.
And when I see it, I fetch the
JSON file on the IceCast server and parse
that.
A lot of servers don't publish that file.
Right.
Like that's the problem.
So like when you have to, so in
order to get the stream to give you
the ICY metadata encoded, you have to send
a header to it called ICY metadata with
a value of one.
You have to send that HTTP header.
Otherwise it won't give you back the metadata.
So you have to specifically request it.
And the problem is, even if the streaming
server supports CORS, cross-origin resource sharing, most
of the time they do not put that
header in the allowed CORS list.
Exactly, exactly.
So even if you can stream it, which
browsers can do audio natively and violate CORS.
That's a built-in like acceptable violation of
CORS.
When as soon as you try to fetch
the stream with that header, boom, you're blocked.
Right.
So you have to use a server.
So I'm using the Python libraries, urllib.parse
and set the user agent as Winamp slash
5.666. I don't know why that is,
but so that combo using that with that
user agent, the streams always go, oh, hey,
okay, here you go.
And so then I just strip out, looking
for the headers, ICY dash metadata.
And there it is.
And it just, the script is remarkably small.
I mean, if it's 50 lines, it's a
lot.
I don't understand.
You know, I guess I just don't understand
why you would publish an ICAST stream and
not allow the metadata to be delivered through,
you know, not make a CORS exception.
It doesn't, I can't believe, it would be
one thing if you have like a one
-off, okay?
It's like somebody's just winging it in their
basement.
Like me, like me, basically.
And they fire up, you know, they're winging
it in their basement and they fire up
an ICAST server to stream their audio collection
or whatever.
Okay, that's fine.
But if you're like a big streaming platform
that serves radio clients and this kind of
thing, why do you not know this?
I mean, I don't get it.
Well, I would say because in general, radio
stations have their version of digital is a
checkbox item.
We've got a live now, listen now, button
on the website, we're good to go.
No thinking out of the box, very much
like RSS was just, here's what it does.
That's all it can ever do.
You know, it's just not creative.
And so now we're getting creative when we
run into all these different little nuances and
issues.
Anyway, I can't wait for you to put
that into our player.
When's that happening?
Maybe tomorrow, maybe tomorrow.
I love you, Dave Jones.
That's actually not, so the way that, it's
actually not that hard because the way you
have it now with the proxy, I just
have to do a fetch to the proxy
in the background fetch to the proxy every
15 seconds or so.
Do it every five, man, it's fine.
Boom, boom, boom, boom, boom.
Yeah, it doesn't matter.
You're very confident.
You're very confident in your- Oh, yeah.
What is this running on, by the way?
This is running on a eight gig Linode.
Is this the same box as the channel
stream server?
Yeah, yeah, yeah, it's all good, man.
Don't do that, no.
Yes, it's fine.
No, you have to have separation of concerns.
Don't run multiple, first rule of sysadmin, man,
don't run multiple services on the same box.
Do not, don't do it.
Okay.
You have to spin up a five buck
Linode and just a Nanode and- Do
it there?
Okay.
Yeah.
All right.
Well, I'll, here, I...
You must do this, Adam, because what's going
to happen is something in the proxy script
is going to go nuts.
It's going to break in a way you
don't expect and it's going to take all
the other stuff down with it.
See?
Okay.
Because that's what happened with Snap when you
installed the, what was it?
Yeah, right.
Snap, well, there were other reasons that things
were going awry, including a zombie player, but
that's a different- That may be-
That's a different story.
That may be the only time in history
that the term, oh, Snap, was actually accurate.
Okay.
So I will set it up on the
Linode, which means now I got to like
install Nginx and do all that stuff.
That's the stuff that is most daunting.
It's like, oh, I got to set up
the reverse proxy and the certificate.
And that's the stuff that is just annoying.
Everything else is pretty easy.
Well, see, once we move stuff over to
the main account, the main Linode account, we
can just stick all that stuff behind Cloudflare
and then you don't even have to need,
they'll do certificates for you.
You don't have to do that anymore.
Oh, really?
Yeah.
Oh, that's kind of cool.
Oh, yeah.
Well, how about this?
Why don't you set up a Linode box
for me?
Oh, okay.
I'll do it.
Set up the Nginx, because I do need
a web server.
And then I'll move everything over there.
I'll give you a handoff.
Yeah.
Oh, cool.
Thank you.
Because that, honestly, that's the stuff that took
me a day to finally get my, you
know, it's like, well, just use Sidecar, whatever
that thing is called.
What is that thing called?
I don't know what you're talking about.
There was a suggestion from the Caddy.
That's it, thank you.
Caddy.
Caddy?
Just use Caddy, it's easy.
Well, no.
Caddy was like, well, are you using this
kind of certificate?
Are you using this?
Are you using a modern thing?
So I just went reverse proxy Nginx.
Good to go.
Boom.
Yeah.
Docker, you know, Docker's the way to go
for a lot of this stuff.
But I mean, it's like, you don't, when
it's a small single purpose thing like this,
you don't really, I mean, taking the time
to build a Docker container and all that
stuff, I mean, it's almost not even worth
it.
No, be careful what you say.
You're going to get the Docker maxis on
you.
Docker's everything.
It's the best, it's the best.
I use Docker a lot these days.
You know, in the last few years, I've
really, my use of Docker has really gone
up, but I still, there's just times I
don't, it's just not worth it.
Because it's only worth it to me to
go to Docker, a full Docker build out,
if you have, if you're going to invest
the time to also go like CD, you
know, CD, you know, a full pipeline where
you push to your GitHub repo and a
GitHub action kicks in and builds the Docker
container and deploys it.
Like that constant, if you're going to a
constant deployment scenario, like to me, it makes
sense where, because, but otherwise you have to
go through and run the commands and rebuild
the Docker container and push it up to
get to Docker hub and all this stuff.
And it's like, well, it's so much easier
to run it in like a, you know,
run it in like a screen, a disconnected
screen or something.
I mean, like it's not.
Oh, what do we call it?
I forgot what that's called.
Yeah.
TMUX.
TMUX, TMUX, yeah, TMUX.
Yeah.
I was using TMUX for a lot until
I figured out, it's probably easier to do
a system service.
I'm Mr. System CTL now.
Oh, you're all about system data.
Oh, yeah.
Oh, I love that.
Well, you don't like that?
That's no good?
No, no, it's good.
No, it's the modern, you know, it's the
modern way, I guess.
I love it.
It's like, oh, set it up and then
you can get a status, you can restart
it.
I mean, oh, that's fantastic.
Forever in a day, I will never be
able to stop typing dot slash ETC init
dot D slash the name of the service
space start.
Like, I can't make myself do the system
control.
Pseudo system control restart service.
Yeah, I cannot get it in my head
because they kept backwards compatibility.
It doesn't matter.
And the old way still works, I just
keep doing it.
You just do the old way.
Yeah, it's like, I still type to open
the nano editor.
Oh, interesting.
Oh, I'm VI.
I'm a VI guy.
I've always been a VI guy.
I'm not a, I can't do VI.
You only need a couple of commands, dollar
sign to get to the end, A to
append, you know, you don't, I for insert,
escape key is your friend, unless you're on
a MacBook.
My muscle memory for things like control forward
slash to jump to a certain line number
and control W for search is so strong.
See, but I never got into Vim.
It was like, it may be the same
thing.
I don't know.
I thought they were the same.
I type VI and it just works.
I don't want Vim.
Vim is a Dutch cleaning product.
Okay, that's funny.
Vim is like Ajax, you know, abrasive cleaning
product.
But yeah, if you set up the Linode,
it's literally one Python script.
So I'll be able to install all the
pips.
I'll do Gladys and the pips, then I'll
set it up and it should work.
That's awesome, man.
I'm so excited.
I'm very excited about this.
Yeah, I'll do it and I'll send it
to you.
Okay, cool.
Well, there we go.
That's it everybody, good show.
Thanks for coming.
That was fantastic.
I do have a gripe.
I got a gripe, I got a gripe.
I hope it's not about me.
No, it's not about you.
It's about Daniel J.
Lewis.
Cool, I'm glad he's here.
Yes.
I'm almost not interested in your secret podcast
service anymore.
You've been teasing it for a week now.
Look at this.
Can you find the Easter egg I dropped?
Whoa, what could this be?
Why does mine have more stuff than the
other people?
Show me the money.
Show me what you got, man.
It's too much teasing.
Just, yeah, put up or shut up.
Yeah, I almost don't want to know anymore.
Oh, okay.
You know, it can only disappoint at this.
I mean, this thing is supposed to wash
my car while I'm doing a podcast.
I don't know what it does.
What is it though?
Do we even know what it is?
No, we don't know what it is.
We don't know what it is.
You gotta know when to stop selling and
close the deal.
Yeah, and he's like, look at this podcast
episode.
I left my calling card.
I'm like, eh, eh, eh, eh, eh.
Eh.
Yeah, Sir Spencer, I'm sorry for, I don't
know why Spencer's feed just deleted itself.
I don't know why.
Oh, this is not good.
I restored it, but yeah, I don't know.
Did you ever figure out, let's see, did
we ever figure out if it had like
a block tag in it or something?
This is not good.
I just, ungovernable misfits still works.
That bug, I've been keeping an eye on
that thing.
So I had a question though about the
index, party time, crawling, updating stuff.
Okay.
So I have a yet another vibe coded
little Rube Goldberg machine here.
And it would add an episode to a
feed on my server that would upload the
episode and then it would upload the feed.
And once I was pretty sure that I
had all the right elements, and by the
way, another fun thing, just from stupidity of
the so-called AI, where I said, look,
just add a new element.
Here's what the elements look like in the
new item.
Here's what the item looks like.
Just add this, change the pub date, change
the, obviously change the enclosure URL, change the
title, all this stuff, which is kind of
cool.
I got that to pull it out of,
with FFmpeg, pull out the title from the
metadata.
It's pretty cool stuff.
And then it would sit there and it
just wouldn't get parsed by the podcast index.
And it was no problem for me to
initiate a scan manually, but I was kind
of interested just in how, now I just
have it with a pod ping, but I
was interested in when the index would see
it.
It's a daily episode, a daily show.
And I mean, it would go beyond 24
hours, even with priority set at five, and
it wouldn't hit it.
Is there some, how does the index know,
or does it not know for those sad
people without pod ping?
How does it get a daily sweep?
Oh.
You're, see, I, okay.
I misunderstood what you were saying when we
were texting is, are you saying that it
wasn't getting pulled at all?
No, it wasn't, it wasn't getting, I saw
it.
So I'd, before I added pod ping, I
would upload it, it would upload at 3
a.m. And I had priority for scan
at five, and then it would be like
10 a.m. I'd go look, and it's
like, and I'd see in the podcast index,
in the api.podcastingindex.org, I'd see that
it had not been scanned since 8 p
.m., by 8 a.m. the previous day.
So it had gone full 24 hours without
scanning it.
Okay, so you, okay, that, I miss, I
was misunderstanding what you were saying in your
text.
I thought you were saying that it was
not, it was scanning, but not pulling in
the new episodes.
I don't know, I mean, I don't.
I made sure that the GUIDs were different
on the, well, I wouldn't even pull it
in if the GUID was the same.
But if I hit a manual scan, it
would work fine.
And then I made sure that the modified
date was changed and everything.
Wait, now, you know, we look at a
few different things to determine whether or not
to scan the feed.
And we try, like, we try not to
pull it if it doesn't need to be.
And so one of the things, the two
is last modified date in the HTTP header
and the ETAG.
Ooh, ETAG.
And so if you, if the ETAG.
What's the ETAG?
ETAG is a HTTP response header.
They get sent along.
It's just, it's usually just a hash.
It can be any value, but it's usually
just a hash, some sort of a hash
of some of the content or something like
that, just to give you some indication of
whether the content has changed since the last
time that you pulled it.
That should be automatic on any server though,
right?
No, not necessarily.
Where are these files living?
mp3.nashownotes.com.
So it's on the kind of the main
no agenda hosting service.
Yeah, right, right.
Is there any caching or anything that's happening
there?
Though minimal, because, you know, before Podping, it
would take about 20 minutes before an RSS
feed updated from there.
If you recall, but it would get it
within 20 minutes to 25 minutes.
So that was before Void Zero changed whatever
caching was happening.
So I don't think so.
I don't know, man.
I don't know.
I'll have to dig into it and see
why, but that's my only thought is just
if there's some, the reason we use both,
let me just look and see if this,
what's the name of the?
You know what I'm going to do?
I'm going to paste this into the boardroom
so people much smarter than me can also
take a look at it.
So here it is.
It does not have an XSLT attached to
it.
Just letting you know.
You're not even going to know what to
do.
So that's the feed.
That's the feed.
And so I diligently changed the pub date
in the channel.
It's got an e-tag, so that's good.
And it's also publishing last modified.
Man, I don't know how to look.
And it's fine because, you know, pod ping,
man, that's so beautiful.
Especially what is that?
The index has an endpoint for it.
Yeah, yeah, yeah.
You can just use the hub.
That's fantastic.
But this podcast is in Godcaster too, right?
Yes.
So it should be polling from there is
what I thought.
Yeah, it should be force polling that automatically
from that side.
Something else may be borked.
I'll have to look at it, man.
I'll find out.
Well, I'm only bringing it up because, again,
for me, it's fine because I just put
the pod ping into my script.
So, you know, it's like, boom, updates, beautiful.
But there may be other edge cases like
me.
They're like, how come it's not updating?
Then we get an email.
My podcast is not updating.
It's about the, blah, blah, blah, blah.
Spencer says, something I've always wondered is pub
date is the first time it was published
and last build date is the latest update,
right?
So, nope.
Pub date is the latest.
That's a good question.
Pub date is the late, if you're talking
about pub date in the channel.
Yeah.
Pub date in the channel is the last
time content was published to that feed.
So that should typically pub date matches, the
pub date in the channel matches the pub
date in the latest item that was published.
Last build date is just a timestamp of
when the feed was built.
So you could rebuild the feed and there's
no new content.
And so that last build date just would
be the last time.
And so this is why it's very risky
to base anything on the last build date
tag in the channel.
Yeah, because you may be, yeah.
Yeah, a lot of times, like Anchor, I
don't know if they still do this, but
Anchor used to do this forever is they
had the last build date value in the
channel.
It would change every time you refresh the
feed if you were in a browser because
that it was literally building it on the
fly.
So to it, it was literally building it
every time you hit refresh.
And so it would just give you a
different timestamp every time you hit F5 on
your keyboard.
Yeah, so that's, it typically doesn't hurt anything
because like modern parsers, RSS parsers have to
be so, they have to be really intelligent
about detecting a feed change that it's usually
not, you can't just rely on one thing
or another.
You have to look at a lot of
different things in the feed to make a
decision about whether or not to pull in
new content.
So, I mean, if you get the pub
date or the last build date wrong, most
of the time it's not going to be
a problem.
But, you know, because as long as you
have a new item GUID for all your
stuff and you have a pub date and
you have a pub date that is not
future dated, as long as it's now or
in the past, as long as you have
those two things, it's usually the other, the
channel level dates are usually not a problem.
But that's what they're supposed to be according
to the spec.
Well, see, this is good to know.
You know, did you see the XSLT discussion?
Yeah, explain it, because yes, I saw it
because you and Spurlock were posting about it.
Yes, and we talked a little bit about
this last week, you know, and XSLT is
XML, you know, templating and style language.
So, the way this whole thing started was
one of the, in the HTML working group,
which sort of inherited the HTML spec from
the W3C.
I don't know whether you'd call it an
inheritance or more of a hostile takeover.
I think it may be more of the
latter than the former, based on, you know,
my remembering of history.
But, so, but what it really, what the
HTML working group really is, is a bunch
of browser companies, a bunch of companies that
make browsers that collaborate and other interested parties
that collaborate on where to take the HTML
spec and other web oriented specs.
I don't have a list in front of
me, but there's a few.
And so, this is really, this group is
really kind of driven by the same names
that everybody is familiar with and that you
would expect, Google, Apple, Microsoft, Mozilla, you know,
Opera, just any browser vendors.
And, you know, the bigger the company, the
more, you know, voice they seem, appear to
get.
And that's, you know, probably hard to avoid
that happening.
But, so, somebody from Google popped into the
group the other day and started a discussion
a couple of weeks ago, about a week
and a half ago, saying, should we deprecate
XSLT?
And like we talked about last week, XSLT
is the templating and styling language that you
can use to style an XML document in
the browser so that it looks different or
operates different.
It's not just styling, it's also a templating
language.
So, it does more than just style.
You can actually modify the resulting content on
the fly.
And, you know, what the main argument was,
was that XSLT, the browsers have brought in
XSLT libraries, literally called LibXSLT.
Most of them have defaulted to using this
old C-based LibXSLT library called LibXSLT.
And it's got, it's proven to have bugs.
And the core problem of these security vulnerabilities
that it has is because it is C
code run, which is not memory safe, running
in a non-JavaScript context.
So, the security context is not as tight
as the JavaScript runtime would be.
So, it's basically like they've just bolted on
this XML styling library to the browsers.
And now that library has proven to have
some security problems.
Which is, you know, hey, that's a problem.
This problem's gotta be, it's gotta be solved.
And when they have problems, the browser gets
blamed for it.
So, you're gonna have, you know, it's a
legitimate concern.
The issue is that, you know, is that,
well, their solution was- Yeah, the proposed
solution was deprecate LibXSLT.
So, basically just remove XSLT support altogether from
the browser code.
And then if you need XSLT, what you
would need to do is publish an HTML
page with a XSLT JavaScript polyfill that would
then load the XML content and run it
through the JavaScript.
So, that would bring this XSLT pipeline into
the security context of the JRE.
And then that solves the security problems.
But now you have to publish everything as
HTML first.
Oh, well, that's beyond the scope of the
idea.
Yeah, so like you would no longer be
able to just like go to an XML
doc, like a URL that points directly to
an XML document and the browser just style
it for you.
You would have to go somehow bounce that
to HTML, then have the HTML page loaded
in JavaScript and then produce the content.
And so, this was the, you know, this
has been the discussion for the last week
and a half.
And lots of people on there saying, the
only people on there saying that they're not
the only, but most of the people on
there saying, yeah, yeah, let's deprecate it are
the other browser vendors.
Of course, well, it's about to get worse.
You hear the latest about Chrome?
No, what is it?
The Wall Street Journal is reporting that AI
startup Perplexity is making a surprise $34.5
billion offer to buy Google's Chrome browser, even
though Perplexity itself is valued at just $18
billion.
Now, this unsolicited bid comes as a federal
judge is weighing right now whether to force
Google to sell Chrome to loosen its grip
on web search after that ruling last year
that the company illegally monopolized the market.
Now, Perplexity says that major investors are backing
the deal, that's according to the Wall Street
Journal report, and it would keep Google as
Chrome's default search engine while running the browser
independently.
Now, Google, which controls more than 60%
of that global browser market, hasn't signaled any
interest in selling.
Analysts see a forced sale as unlikely, but
the offer signals that there's at least one
willing buyer if the court orders it.
We're out to both Perplexity and Google, but
didn't immediately hear back.
Imagine that.
Think XSLT is a problem.
Wait until Perplexity AI is in your browser.
Seriously.
That's the last thing.
I know why they want it.
They're like, give us all your data.
We want to suck it up.
Oh yeah, they would just pipeline all that
stuff straight into the AI brain or whatever.
Training funnel.
So, the people coming back, including me, saying
we should not be deprecating this because it's
still got a lot of use cases.
There's just, it's just kind of, I mean,
there's some cursory things being thrown, some cursory
responses being made to it, but it's, it
got to a point where, let's see if
I can find it.
Yeah, so the guy, the original poster from
Google said, I'm trying to find his post.
Basically, he's trying to boil it all down
and it felt like he was trying to
wrap this thread up in a way.
Here it is.
See, the reason for this issue in this
discussion is because XSLT that is shipped in
browsers today is A, very old, B, not
well maintained across browsers, C, barely used by
websites, and D, a serious security risk to
all users.
So while we, the Chrome team, do understand
the post suggesting a renewal and improvement instead
of a removal, what he means is many
posts saying, hey, why don't you just upgrade
to a better version of XSLT?
Right.
We are strongly convinced that this would not
be the right way to spend our limited
resources.
Now, the beginning of this post was, the
post is literally titled, should we remove XSLT
from the library?
From the web platform.
And now what he's saying is we, the
Chrome team, are strongly convinced that it should
be removed.
So this was never just a neutral discussion.
This was always gonna end with, we're gonna
remove XSLT.
So it's clear now that this was just
sort of like a waste of everybody's thought
power.
Doing so would reduce our ability, let's see,
so, he's saying that spending the time to
upgrade the XSLT library would reduce our ability
to work on other platform features where there
is measurable developer interests and impact in which
drive the web forward.
One such example is Interop 2025.
Most of the features in Interop 2025 have
widespread developer interests, and many of them already
have much higher usage than XSLT, despite some
being relatively new.
This technology, XSLT, is simply one that did
not stand the test of time for client
-side usage in web browsers that does not
take away from the technology itself.
And so, so this comment pissed everybody off.
I'll say.
Yeah, because it was basically, he's basically saying,
hey, I appreciate everybody's thoughtful responses, but we've
already decided not to do this, not to,
we've already decided basically not to listen to
you.
We're gonna do what we wanna do, regardless
of the strength of your conviction or the
quality of your argument.
And so the first response back was, quote,
limited resources.
You're literally a two and a half trillion
dollar company.
Right?
Yeah.
But they're all on their stupid AI project.
Well, and then how many years did they
spend building that stupid Google advertising sandbox stuff
in there that then they immediately stopped?
I don't remember that.
Yeah, the Google privacy sandbox.
Oh, I don't remember any of that.
It was built into Chrome and it was
supposed to replace third-party cookies.
Oh, yeah, yeah, sure.
And they went through, first it was Flock.
Flock, yes, I forgot about Flock.
That was gonna replace third-party cookies.
And then everybody balked at that.
And then they went back and did the
Google privacy sandbox and then everybody balked at
that.
And- Well, hold on a second.
Can't they just put a lot of that
incredibly useful code generating AI on the project?
They don't need people.
Gemini will do it for them.
Yeah, point Gemini at libexslt and just say,
hey, Gemini, fix all the bugs.
Yeah, yeah.
You gotta wonder if that's actually possible.
They all say it is possible.
Everyone's saying, well, 30% of our code
is built by AI.
Yeah, get Gemini to run a fuzzer against
libexslt and find all the security vulnerabilities.
A fuzzer, a fuzzer.
I think we're being lied to, Dave.
I think they're being lied to.
I sense dishonesty.
Yes, I do have that feeling.
But so this may, you predictably get a
lot, the comments started flooding in about, hey,
okay.
All right, guys, you're not being truthful here,
or I don't wanna say truthful.
That implies some moral stuff I don't mean.
It's like, you've already decided not to do
it and you're just kind of wasting everybody's
time.
And my response was, if all the, if
all roads, and cause this is what I
had suggested earlier in this thread, I was
like, well, if the solution is a poly,
is a JavaScript polyfill and the polyfill correctly
renders all of this XML styling, then why
not just ship the polyfill right in the
browser and trigger it automatically?
Get rid of libexxlt, but stick the polyfill
in the browser so that it triggers automatically
when a content type on a delivered document
is XML.
And that solves all the security problems because
it brings everything into the JavaScript engine and
it would be in it, but it would
also put it into a separate module of
the code base so that people who do
know XSLT and have the desire to upgrade
that could submit PRs to the Chrome team,
to the Chromium team.
Well, as we discussed last episode, last board
meeting, they should be all for this for
the very reasons of their web scraping AI
ingesting pipeline.
They want structured data.
If anything, they should want HTML to go
away and for everything to be XML rendered
with style sheets because that'll make their hungry
AI machine that much happier.
Yes, exactly.
I would think, I would think, makes a
lot of sense.
And XML is a beautiful markup of structured
language because it has schema, which JSON does
not have.
Yeah, JSON.
So you don't have to, yeah.
JSON, I spit on you JSON.
You have no schema, you have no schema.
And so I'm like, well, why not just
bake this polyfill into the browser and just
trigger it.
And now people who are good at JavaScript
and have an interest in XSLT can go
and submit pull requests directly to the Chromium
project and they can maintain this for you.
Yeah.
And the response to this was, the response
to that suggestion was, because, and this is
a quote, because there will be bugs, feature
requests, and additional maintenance.
Actual work involved, oh no.
Yes.
And additional maintenance that will then be needed
on the polyfill going forward.
This just shifts the problem to another area.
Well, okay.
Everything has bugs.
Yeah.
It's code.
It's got bugs.
But that again was not, that was not
the point of this thread.
The point of this discussion was, should we
remove XSLT because it's a security vulnerability?
And now I've said, here's how you get
rid of security vulnerability and maintain the backwards
compatibility.
But now they shifted the argument to where
now it's not about security anymore.
Now it's about the overhead of having to
fix bugs.
Yeah.
Okay, now it's very clear that they just
want this thing gone.
They do not care and they want to
eliminate it and they're not going to listen
to any feedback.
And so it's like, okay, so then everybody
just goes nuts and starts posting a bunch
of just basically ad hominem attacks against Google,
which some are justified.
And then they just, and so then somebody
from Apple steps in and just locks the
thread and hides all the comments, the nasty
comments, and now it's just gone.
Now you just, nobody can give feedback anymore.
Rage quits, we're done, we're out, we're Google,
we're history.
Yeah, Google alley-ooped it and then the
Apple guy slam dunked it and now it's
just going to, and now, and so my
takeaway from that is if you're a podcast
hosting company and you rely on style sheets
for XML to make your feeds look pretty,
you need to start working on your backup
plan.
Yay.
You know, this is also silly because like
web browsers already, the unjustified sort of
assumption here or what's being, the idea that
is being transmitted with this way of speaking
is that everything should be the, all web
content should be somewhere on the HTML, JavaScript,
JSON axis.
Right, which again makes no sense from their
overall company directive, but okay.
Correct, and that's just not, that's not the
web.
The web has always been content agnostic.
Yes, HTML is a first-class citizen for
sure because of the linking, but browser, but
that's not the definition of the web.
The definition of the web is not HTML.
The web is just a universal way to
link to documents and those documents can be
of any type.
That's why there's such a thing as the
content type header in the HTTP response.
The web is defined, you can define the
web as a universally addressable document location
system.
That's what it is delivered over HTTP.
And so browsers already make lots of concessions
for various document types.
If you load a direct link to a
PDF in any of the browsers, it will
show you.
It opens in a PDF viewer, yeah.
Yes, it doesn't show you a binary blob
of blobby goop on the screen.
Blob of data.
Yeah.
I remember those days though.
I remember those days.
Yeah, me too.
I remember them so much that I know
what the little header looks like for the
binary blob when it's like the little, you
know, binary header of what a PDF looks
like.
It's like percent PDF or something like that.
Yes, when I was a kid, we had
percent blobs.
But like, see, this is different than deprecating
something like, so if you're a browser and
you're gonna deprecate something like FTP, which they
did a few years ago, that makes sense.
That's a different protocol.
That's not HTTP.
Has that been deprecated?
Is that deprecated?
Yes, you can't go to an FTP site
in the browser anymore.
But the web is documents delivered over HTTP.
FTP was never part of the web.
It was just a convenience feature that was
placed on.
I fully get that.
But XML is a document.
And if you address it with a URL
and deliver it over HTTP, the browser should
handle that properly.
And just like it does with audio, if
you put in a direct link to an
MP3 file in your browser and deliver that
over HTTP, it doesn't just show you the
binary of the MP3, it gives you a
little player with a play button on it.
I just think it's a breaking of the
contract of the web.
Hmm.
When browsers start making decisions about what content
they are going to treat as not worth
displaying correctly.
Well, the problem ultimately is that users no
longer understand what a browser is.
They say, I've got my Google or I've
got my DuckDuckGo.
That's all they know.
They don't understand that they're in a web
browser.
They don't, they're on their phone.
And I have an app for that, which
is fine.
In fact, it's actually better except for the
default browser that opens.
But I think there's a lot of room
still for people to create apps that have
at its core search functionality and then a
browser.
And I think there's plenty, that's probably what
perplexity is seeing too.
Because users do, they just don't, Dave, there
are people, we've been keeping track on no
agenda.
People, first, we know that people can't read
clock anymore.
An analog clock.
Don't know how to read it.
Oh yeah, with hands, yeah.
We have an example of a DoorDash worker
standing at a deli counter saying, I need
five LBS of this, and I need 10
LBS of this.
And did not know that LBS means pounds.
There was a person giving change saying, how
much is this worth holding up a nickel?
How much is this worth?
And then my favorite, how much is 12
Florida ounces?
A Florida ounce is slightly different than a
Georgia ounce.
They're not the same thing.
Exactly, so there's a lot of things that
we take for granted that people just don't
know anymore.
And it's quite bad.
You know one thing that people, I remember
being taught when I was, my first job
out of high school was working at a
grocery store stocking shelves.
But my next job was at a pet
store.
I remember when the owner of the pet
store showed me, he's like, when you give
back somebody's change, if they give you, if
it's $5.27 and they give you back,
and they give you a 20, here's how
you count it back to them.
And you start with what they gave you
and you count up to 20.
Man, that blows people's minds today.
They're lost, they have no idea how to
do it.
It's not even that they don't understand the
math, they don't even know what you just
did.
They're like, what?
Or how many bagels is a half dozen?
I just don't, I gotta look up the
code.
I'm not kidding, true example.
If I can just switch for a moment,
I'd like to do a shameless plug for
those of you going to Podcast Movement.
This coming week, I will be there on
Tuesday, the 19th of August, 9.45 a
.m., which I guess is kind of prime
time.
That sounds pretty prime time, because that's right
after everybody gets coffeed up and everybody's ready
to go.
Shall I read you what they've written on
their Podcast Movement website about my speech here?
First, the headline is, Adam Curry, the Podfather,
returns to Podcast Movement.
Wow.
Adam Curry returns.
I've returned.
Information, like every media slash technology slash cultural
darling throughout history, podcasting is full of speculation.
What will keep it flourishing?
How can it grow without losing its unique
magic?
What will make it a mainstay for advertisers?
Everyone's perspective and efforts across the ecosystem are
worthy.
That, of course, includes the perspective of the
man who effectively started it all.
Did they say Podfather in there?
Let me see.
One of the storied MTV VJs in the
80s and 90s, Adam Curry, in parens, along
with Dave Weiner, is the, little asterisk, podcast
pioneer.
Wait, they put an asterisk on it?
No, between, the word the has two asterisks,
so it's emphasized.
It's markdown, it's markdown language.
Markdown, markdown, yes, that's right.
Having developed the concept, format, and technology in
2004, he's never stopped.
Principal in the Podcast Index Collective.
Oh, if I'm the principal, you, Dave Jones,
are surely the hall monitor.
Safety patrol.
Safety patrol, crossing guard.
Yes, Dave Jones, safety patrol.
Adam champions open and independent podcasting, and no
great mystery, he has a lot to say
about the technology and approach that's going to
keep this space on its rockstar trajectory.
More interactivity, better delivery protocols, easier ways for
creators to make money in the context of
Podcasting 2.0, wow.
He joins audio luminary Rocky Thomas, Soundstack CSO,
who has just as much to say about
all of this for this intimate and specific
discussion.
Takeaways will include, oh, they already have takeaways.
Oh, you haven't even talked yet, they get
to, okay, all right.
Current lay of the land on Podcasting 2
.0 and what's working for publishers now, in
parens, location tags, funding tags, et cetera.
Coming features that will truly move the needle,
lit, et cetera.
That's not a coming feature, that's- That's
bait.
And the finally, ways for any of us
to get involved, the podcast standards project, et
cetera.
And here's my favorite part, headphone color white,
channel six.
Wait, what?
I know.
What does that mean?
I didn't know what this meant until Rocky
Thomas explained it to me.
I'm sorry.
When I feel like I should have this
on my phone.
Whoa, whoa, whoa, whoa, whoa, whoa, Rocky Thomas.
Rocky Thomas.
Ha.
Yes, yes, I have to have that at
the ready.
A little bit, a little bit more intro
music and then you can do the smoke
machine when she comes out the door with
it.
Yeah, the smoke machine, pyrotechnics.
Yeah.
So apparently, this was unbeknownst to me, in
the sessions, everybody has a headphone and I
guess if you, maybe there's multiple sessions and
you put on your headphones, white colored headphones
and use channel number six because it's not
an amplified session.
It's kind of like a deaf disco.
Yeah.
Isn't that crazy?
And Rocky said, the problem is, or at
least last year, she said, because this is
not a new thing, is that you don't
hear yourself in the headphones, which is like,
wow, that's going to be difficult.
Okay, you're going to have to stop because
I still do not understand what is being
told to me right now.
Okay.
You're saying that everybody in the audience is
going to have headphones on.
Yes, like a bunch of drones.
And you're going to be talking, are you
going to have headphones on too?
I guess so, yeah.
So I can hear questions or people burping
apparently.
I don't know.
I don't know if there's someone switches like
headphone number 37, you go.
I don't know.
Do the headphones have mics on them?
Presumably.
Wow, this is so weird.
Why does this have to happen?
I don't understand.
What is, why is this better than just
a, hey, if you got a question, come
to the mic, it's over there in the.
Yeah, I don't know.
But that's what they're doing now so that
everybody can hear and I guess.
And so maybe it's so it doesn't bleed
over into, maybe it's all in one big
room and you just sit at different tables
and you're talking, you can switch between channels
and listen to a different session.
Okay, Daniel says the stage is in the
expo hall, so it's too noisy for a
PA.
So they use this headphone system so the
audience wears headphones so they can hear the
session.
Sometimes they'll have sessions literally right next to
each other.
Wow.
Whew.
Wow, wow, wow.
Man.
That's pretty interesting, huh?
Look, I believe in you.
Look, they have, he has a picture of
the headphones.
Looks like my first Sony headphones.
Oh, silent sound system?
Huh, the white head, you got the white
headphones.
Yes, yes, it's a much valued color, white.
Yes, the absence of all color.
So anyway.
Yeah, so.
Good luck, is all I can say.
Because that feels weird to me.
Good luck.
Well, I'm very, I'm very thankful that Soundstack
paid for the room.
That's why I return.
I don't return, I would never return for
those guys because they did us dirty, man.
The audience can switch, Nathan said the audience
can switch audio channels at will.
So that means they can just stop listening
to you and start listening to somebody.
Literally tune out.
Somebody's, there's going to be a dude in
the front row.
Yeah, who's going to be.
Staring at you and nodding and listening to
some other session.
Conferences are not what they used to be.
And then he's going to ask a question
and you're going to think he's talking to
you.
And he's actually talking to the guy two
stages down.
This is the, this is weird.
It's bizarre.
But anyway, so I'm going to meet, I'm
going to meet Rob Kirkpatrick from Focus on
the family.
Going to meet him after that.
And then hopefully I'll get to have a
coffee or something with Cridland because he's like,
I want to have a coffee with you.
Of course we should, we need to catch
up.
We haven't, we've never really caught up properly.
Yeah, I mean, the only time, the only
time I've ever met him in person, it
was that it was during COVID.
And so nobody was allowed to touch each
other.
Yeah, and when I see James Cridland, I
obviously want to touch him.
Let's be fair, let's be honest.
Everybody, he's got, he's just so touchable.
He's touchable, he's touchable, he's huggable.
He's just so very touchable.
Yeah, and then he and Sam Sethi were,
didn't do a regular power today.
So I miss my Crid, miss my Crid
fix, man.
It was my Crid fix, you know.
I love how these guys are like, well,
you know, if American customs let's me in
to the country.
Well, why would they not?
Ah, this is, it's- They have contraband?
Are they bringing- No, it's this perception
outside of America that we're horrible people.
Oh, because of Trump.
Yeah, Trump, basically, because of ICE, Trump, you
know.
Look, just don't bring any fruit.
If you don't bring any fruit, you'll be
fine.
If you don't bring fruit, you'll be fine.
Oh, goodness.
Do we have anything else?
We got a couple more minutes here before
we have to thank some people.
I want to make sure you got everything
out today.
Oh, that's the- You're walking away.
So I was looking at my sheet, which
I had, which had slipped onto the floor.
I think that's, I think that's all I
had, because I don't, I want to talk
about, I've got an idea, I've got an
idea for maybe how we can try to
get something rolling with Spurlocks.
Oh, wait, stop right there.
Do a David J.
Lewis tease.
I have, next week, on the board meeting,
we have an idea how we can get
something rolling with Spurlocks, and leave it right
there.
Let's see, where is it?
Here it is.
I couldn't remember it.
First, SPC, Standard Podcast Consumption.
Oh yeah, no, good, because I like that.
That's something I want to, I have some
use cases for.
We're doing the show next week.
Are we?
Yeah, we are, right?
Yeah.
You'll be here, okay.
Yeah, this is something, am I gone?
Do you know more than I do?
Have I not told you your calendar yet?
I guess not.
I'm being live, man.
I'm being live.
We should have Spurlock on the show to
talk about it.
Yeah, let's get Spurlock on the show.
Hold on, let me see.
He's never doing anything.
Let's get him on the show.
Does he have a job now?
I don't, I can never keep track of
him.
Oh, Spurlock would wilt with a real job.
Yeah, me too, by the way.
He can't, he's not, it's not, yeah, he'll
never have a real job.
He's got, he needs to be free to
float and take, and be taken where his
mind wants to lead him.
Okay, all right.
Let's thank some people for boosting during this
fine board meeting.
We kick it off with Martin Lindiskog.
Let me make sure I read them in
reverse chronological order.
Actually, he sent the same one twice, so
we always appreciate that.
17, oh no, he sent 1776 and 1701.
So we thank you for that.
Same message, though, BoosterGram from true fans.
Adam, best premises with your fire chat.
I'll be doing a fire chat for sure.
At the Podcast Movement Conference, I asked Rocky
Thomas on LinkedIn if it would be possible
to listen to your conversation on a new
modern podcast application.
She replied, working on it, we'll let you
know.
I will do an episode on podcast events
at my new podcast, Swing That Gig.
We planned an unconference, potluck conference is keynote
conferences in Swedish, in Gothenburg some time ago,
but then the pandemic came along us some
time ago and it was not possible to
arrange it.
I actually, I saw an email thread that
Rocky asked Rob Greenlee to bring his fancy,
like two and a half thousand dollar multi
-microphone recording system.
Oh, really?
Do you know about this?
No.
Yeah, it's a crazy thing.
He was talking about it, here, let me
see, it's called the Nomono, the Nomono, nomono
.co. Nomono, I've heard of that, but I
didn't know it was two grand.
Yeah, two and a half.
Turn any great conversation into a podcast.
It's basically a portable blob and it has
four microphones and it's almost like you're playing
a game of Hungry Hippos, but instead of
smashing on the Hungry Hippos, you grab the
microphone and then it records your conversation.
Oh, that's kind of a cool idea.
So I'm presuming that that will be recorded,
so hopefully.
Hey, 33,333 sats from Salty Crayon, dude
named Ben, coming in from the Castamatic.
I'm Sir Curacaster.
Howdy, Dave and Adam, just wanted to say
a huge thanks for all you've done and
built with everything, everyone for Podcasting 2.0
and the music.
I think the remaining ones of us, the
music podcasters, can confidently carry the banner of
V4V Music.
When y'all move on to go full
God casting, like, hello, Fred, it's been full
of scissors.
It's full of scissors and we're happy to
keep running with them five by five in
the pipe.
I will tell you that I predict many
Godcaster people will be using V4V Music in
the future.
They are all ready for it.
And a lot of these churches make music
and they're looking for alternative ways to distribute
it and for people to send them value.
So I think we're not done yet with
that.
We're not walking away from anything.
Yeah, I don't, you know, walking away, I'm
not sure about that.
I've actually got, I had some notes that
had written down to talk about, we didn't
get to it, but about, and maybe we
can talk about this next week with Spurlock,
I'll jot it down, but this, about the
idea of having, of some features you have
to sort of shepherd and push and other
features kind of live and grow on their
own.
Yeah.
And I think V4V has just been, or
the value tag has been one of those
features that you have to push.
You know, you have to get traction.
You have to, it's a complicated feature.
It is.
You have to, you have to have a,
almost like an ombudsman for that feature to
be able to guide normal people into its
use.
Whereas other features are just, they're just more
simplistic and they kind of will live and
grow on their own.
And the value tag, you know, the value
tag became more complicated when Albie made their
changes.
Well, I can tell you what's going to
happen, what should happen.
And this will be controversial, but I already
predicted it and already said it was going
to happen and stable coin will be a
part of our lives globally.
There are already 400 million users.
It's divisible digitally.
So you can send little bits and bobs
and little pieces just like we do today
with Bitcoin.
But if we want it to catch on
big, the actual value for value part, it
will have to, there will have to be
a payment rail that is stable coin.
And I don't think the people who are
doing it right now will feel like doing
that.
Probably not.
Yeah, probably not.
We never had programmable money until we had
programmable money and there will be programmable money
in the form of stable coin.
The entire world will be using it.
That's just a fact.
I mean, it's law, it's written in the
books.
It's a big part of the American financial
strategy to keep dollar dominance.
And it is not within the DNA of
the V4V people.
So someone will have to pick that up
and run with it if they want it
to work.
But I'm not sure that's going to happen
very quickly, but.
Well, I mean, it's good that TrueFans and
Fountain made the changes that they did to
be able to show things in like country
denominated currency instead of just in sats and
that kind of thing, because that sets the
stage for if they want to also support
stable coin under the hood, they won't have
to do any more.
You know, they want to change that idea.
I hope so.
And I think TrueFans probably sees the opportunity.
It may not be so married to the
Bitcoin part.
Listen, I'm a Bitcoin maxi.
I love Bitcoin.
I don't have anything else.
Don't have any, what is that super thing?
Ripple, what is that?
Really?
XRP.
I don't have XRP.
Oh my, my hair girl, my hair girl.
So I set her up with a wallet
two years, no, three years ago.
I'm going to say, I'm going to tip
you in Satoshis.
And so she sends me a note saying,
hey, so I'm getting back into this now.
I'm trying to be hip with the kids.
And she has like over a million sats
from my tip.
Ooh.
And she's like, this is so cool.
Of course, when I was tipping her early
on, a million sats wasn't a thousand dollars.
It's like, this is so cool.
This is great.
I'm also investing in an XRP.
I'm like, oh goodness, oh goodness.
Investing in XRP.
Like now, so just keep those sats in
your wallet and then we'll talk in five
years and maybe you can buy a car.
Yeah.
So.
We got some PayPals.
Yes.
We got a one-off from theboysatrss.com,
Ben and Alberto.
Yes.
$777.
Bam.
Paula, shot caller, 20 inch blades, only in
Paula.
Thank you.
We love you guys.
Thank you so much.
We had a nice call with them.
Those guys, they're good guys, man.
Go podcasting.
Adam, see you in Dallas.
And Dave, we hope the other board meetings
are as smooth as a perfect wave.
Alberto and Ben and the rss.com team.
Yes.
Thank you, boys and girls from rss.com.
Thank you so much for keeping podcast index
rolling.
We got a nice one from Amy.
I don't know if she wants me to
use her last name.
So it's $100 from Amy.
Wow.
Hold on.
That's a bottle.
Paula, shot caller, 20 inch blades, only in
Paula.
Thank you, Amy.
What does Amy say?
She says, please credit this to Sir Dudechink
and wish him a happy birthday for August
14th.
Thanks from Dame Slammy.
Dame Slammy, I think it is actually.
Slammy, Dame Slammy.
I think so.
S-L-A-M-Y.
Thank you, Dame Slammy.
Awesome.
Thank you very much.
Love that.
Very appreciated.
Thank you.
Got some booster grams.
Let's see.
What do we got in the booster gram
department?
Booster grams.
Let me sort the old email.
Oldest first.
Is that Fauci?
That is Fauci.
Boost.
It's Fauci.
5,000 sats from Anonymous.
The podcast index says, keep up the great
work.
Thank you.
Appreciate that.
Thank you, Anonymous.
Mike Dale, 1701, Star Trek boost.
Through podcast guru, he said, I gave up
on Castamatic.
I'm trying guru.
Why'd you give up?
Why'd you give up, man?
It works.
What's up with that?
Let's see.
Did you get, today's August 15th, right?
Yes, August 15th.
I'm watching President Trump and President Putin both
come down the ladders of their individual aircraft
onto the tarmac at Alaska, moving towards each
other.
This is a seminal moment, ladies and gentlemen.
Will they be, who will do the power
handshake?
Who will have the power move?
Oh, I can put my glasses on so
I can watch on the quad screen.
No one else, the whole world has stopped
at this.
Where am I?
The whole world has stopped for this moment
as BBC World Service is here to witness
this incredibly historic event.
There he is, the President of Moscow, President
of Russia.
He is walking on the red carpet and
the President of the United States with his
tie, his red tie that is always a
little bit too long.
He is walking down as well and they're
looking at each other.
They are going at a nice pace.
Will they intersect right in front of those
beautiful, beautiful F-35 jets that are on
the tarmac in front of the Alaska 2025
sign?
Yes, it looks like they will.
All right, I'm waiting for it.
Putin is in the purple trunks.
Trump is in the green trunks.
Mere Mortals Podcast, that's our buddy Kyron over
there in the down unders.
Satchel Richards, 1111 through Fountain.
All right.
Kyron, he says, I finally caught back up
after traveling around Europe for a couple of
months.
Appreciate all the hard work and exciting new
developments.
Go podcasting.
Yeah, indeed, go podcasting.
And Kyron is a world traveler.
Yes, he is.
He is all over the place.
He's everywhere.
Bruce the Ugly Cracking Duck, 2222, RoaDucks through
Podcast Guru.
Maybe you could do a database record for
our government officials and remove all the duplicated
wasters.
Love, LOL, if only, a little sci-fi
there, 73s.
Hey, so Trump basically just stood on the
red carpet and Putin came towards him.
Power move, power move, power move.
Yeah, big power move.
That's just a different version of the grab
you by the shoulder when you do the
handshake.
Yeah, that was good.
Well, you know, Putin's like, yeah, it's good,
man.
I'll walk to you, I'm fine.
Comedy Strip Blogger.
Yeah, the delimiter, there he is.
12,615 sats through Fountain.
Nice.
Howdy, Dave and Adam.
Your president is meeting a Russian dictator in
Alaska today, so I would like to recommend
a YouTube channel entitled Inside Russia so that
y'all, y'all, CSB said y'all.
Y'all, y'all, y'all.
So that y'all can learn the no
-nonsense, no-sick-of-fancy truth about Russia.
Go to YouTube, search for Inside Russia.
Its host is Konstantin, who was living a
couple of years in the USA.
He's one of two wives.
What?
And he's two of six.
How many wives do you get?
Russia sounds like a bargain.
He's one of two wives, and his two
of six kids are American, so his English
is decent.
Sadly, no audio-only variant.
Yo, CSB.
CSB getting serious.
Yeah, yeah, yeah.
He's, he doesn't, he does not like the,
are they gonna get in the same car
together?
That's pretty cool.
Yeah.
Do you think, do you think Trump will
let Putin change the radio?
Drive, drive.
Change the radio?
Change the station.
Hands off, stop it.
Don't touch my radio.
Yeah, they're both getting in the beast.
Amazing.
Oh, boy.
What times we live in, Brother Dave.
What times we live in.
We got some monthlies.
We got Christopher Harabarek, $10.
Mitch Downey, $10.
Terry Keller, $5.
Chris Cowan, $5.
Damon Kasejak, $15.
Derek J.
Visker, the best name in podcasting, $21.
Paul Saltzman, $22.22. Thank you, Paul.
Jeremy Gerds, $5.
New Media Show, that's Todd, $30.
Michael Hall, $5.50. And Gene Liverman, our
buddy Gene, $5.
Oh, awesome.
Thank you all so much for supporting podcastindex
.org.
Whenever I tell people the story, they're like,
really, people support that?
I say, yes, yes, they do.
Surprisingly, they do.
People actually give you real American dollars?
Yes, yes, and Satoshi's in big, what?
Really, what?
Yes.
Believe it or not, open source, complete open
projects like this can work.
And this group, this entire group, everyone hanging
out at podcastindex.social, which, by the way,
is open to all.
If you want, just send us an email
and we'll be happy to send you an
invite.
Of course, it is federated across the Mastodon
infrastructure, so you can always follow and hit
that like button and subscribe.
You can follow and comment, and it does
work across instances, but if you'd like to
be a closer part to it, you're more
than welcome to.
Everything goes to podcastindex.org.
Everything stays within the confines of what we
need for dedicated machines running.
It's quite a bit of infrastructure, as you
can imagine, and we're happy to do it.
We do it as a public service.
If you'd like to support us, you can
boost us with the modern podcast apps.
Get those at podcastapps.com, or you can
go to podcastindex.org.
Down at the bottom, there's a big red
donate button.
Hit that, and it'll take you to the
PayPal page for your fiat fund coupons, and
we appreciate everyone who supports us, either with
time, talent, or treasure.
It's a value-for-value system.
All right, Brother Dave, you have a busy
weekend?
Are you doing anything?
It's actually my wife and I, it was
our 26th wedding anniversary yesterday.
Wait, but you went into the woods for
that, didn't you?
You guys went into the woods?
That was for the 25th, which was actually
last year, but we didn't get to do
our 25th.
Big trip last year, so we did it
this year.
So this year, it's just sex, that's it?
Nothing else.
Finally.
It's been 26 years.
All right, everybody, we know what Dave's doing.
What will you be doing?
You'll join us here next week for Podcasting
2.0. Podcasting 2.0.
Podcasts are cool.
You hope you have been listening to Podcasting
2.0. Visit podcastindex.org for more information.
Go podcasting!
It's too much teasing.