PodSearch

The Talk Show

262: ‘Freakishly Snappy’ With Brent Simmons

 

00:00:00 ◼   ► Brent, it's good to have you on Skype tells me that we haven't talked on Skype for over

00:00:03 ◼   ► a year. I think that's their polite way of saying it's been too long since you've been

00:00:06 ◼   ► on the show. Yeah, definitely too long. Geez. Over here. I don't know how long it is. Was

00:00:13 ◼   ► a lot. I was no man's in last time. Maybe I don't know. Yeah. Anyway, big week for you.

00:00:21 ◼   ► Congratulations. I'm really happy for you. Oh, thanks so much. Yeah, it's been really

00:00:27 ◼   ► huge, you know, and I feel great because I made the app I wanted to make I could see it in my head

00:00:33 ◼   ► for all these years and I had certain goals and met them and the feedback has just been tremendous.

00:00:39 ◼   ► So yeah, super happy. So for those who don't know, although I'm suspect, I suspect that most people

00:00:44 ◼   ► listening do know net newswire 5.0 shipped this week. I made fun of you. I think you listened to

00:00:51 ◼   ► to my show with Jim. I've made fun of you in a very friendly way about your personal

00:00:56 ◼   ► definitions of alpha and beta. I mean, I've been using Net News Wire. Your new Net News

00:01:04 ◼   ► Wire, in a weird way, sort of a 2.0, maybe a 3.0. If you say that you originally had

00:01:10 ◼   ► Net News Wire, I don't want to confuse anybody. The new version is 5.0. But there was, I would

00:01:16 ◼   ► say the third era of Net News Wire.

00:01:18 ◼   ► You know yeah, definitely was the original we can get into all this in detail there was yours from the early 2000s then there was

00:01:26 ◼   ► Maybe four eras, maybe maybe the

00:01:29 ◼   ► What was the company that bought it they went when they Newsgator Newsgator?

00:01:33 ◼   ► I would I would sort of say though that was sort of a continuation of the original year

00:01:37 ◼   ► It's just new ownership, then there's the black pixel era and and now there's the new open source back in Brent Simmons hand era

00:01:44 ◼   ► Yeah

00:01:48 ◼   ► I've been using it this version this year this new era from

00:01:52 ◼   ► It barely worked. It was called evergreen for a while because black black pixel still owned the net news wire name

00:01:59 ◼   ► I don't even think you were calling them alphas. I don't even know what the hell the version numbers were D for development D for development

00:02:05 ◼   ► That's right. Yeah, I've been using it since then and

00:02:08 ◼   ► I never really stopped using RSS

00:02:11 ◼   ► but I was actually my other RSS reader while evergreen was

00:02:16 ◼   ► it either only barely or non-functional was

00:02:20 ◼   ► Net News Wire 3.32. Right, of course still my biggest competition

00:02:26 ◼   ► I'm sure but I have the advantage that it's gonna stop working on Catalina. So the weird thing about this

00:02:31 ◼   ► I know you and I have talked about it

00:02:33 ◼   ► It's just such a bizarre coincidence that that the last

00:02:37 ◼   ► Brent Simmons version of Net News Wire was Net News Wire 3.32

00:02:44 ◼   ► And and again no offense to my friends at black pixel who do excellent work and and whose version of net newswire was in many

00:02:50 ◼   ► Ways certainly more modern looking and and acting then that newswire 3.32 and kept up with the times

00:02:57 ◼   ► It just didn't fit my brain the right way

00:03:01 ◼   ► So I just kept using what I was familiar with net newswire 3.32, but back in the day in the 90s Quark Express

00:03:09 ◼   ► hit version 3.32

00:03:12 ◼   ► This was when I was in college, so I don't know what time it came out, but it probably

00:03:18 ◼   ► would have been sometime around 1995 or so.

00:03:22 ◼   ► And again, every company has their own weird ways of doing version numbers.

00:03:26 ◼   ► It's one of the ways that we pretend that software engineering is this incredibly scientific,

00:03:31 ◼   ► rigorous field, and everybody just wings it with Virgin.

00:03:35 ◼   ► I mean, right with Vesper, we goofed around and tried to make everything have a 007 in

00:03:41 ◼   ► it.

00:03:42 ◼   ► Our best release has always had a double-oh-seven.

00:03:44 ◼   ► Yeah.

00:03:46 ◼   ► But Quark had this thing where it was 3.32.

00:03:49 ◼   ► It wasn't 3.3.2.

00:03:51 ◼   ► It was 3.32, although I think it was the way they did

00:03:54 ◼   ► that tenth of a digit or hundredth digit,

00:03:57 ◼   ► whatever you want to call it, the two,

00:03:59 ◼   ► was what most developers would have called 3.3.2, not 3.32.

00:04:05 ◼   ► But then they also had R updates.

00:04:07 ◼   ► So it was 3.32.

00:04:09 ◼   ► And I, this is perverted because I can't even remember

00:04:13 ◼   ► what I had for dinner last night,

00:04:14 ◼   ► but I can remember it was 3.32 R5.

00:04:17 ◼   ► (laughing)

00:04:19 ◼   ► - R for revision, I suppose, yeah.

00:04:20 ◼   ► - I guess, right?

00:04:21 ◼   ► Like minor, minor bug pack.

00:04:23 ◼   ► I don't even remember how we used to install them back then.

00:04:27 ◼   ► I guess we had the internet and we'd get them over it.

00:04:30 ◼   ► - By '95, yeah, maybe.

00:04:32 ◼   ► - And our, you know, Quark was very, you know,

00:04:35 ◼   ► as the entire, you know, Adobe's apps

00:04:37 ◼   ► and everybody in the graphic design industry,

00:04:39 ◼   ► I mean, piracy was rampant, but they had, you know,

00:04:41 ◼   ► so they had all sorts of anti-piracy, you know, checks, you know,

00:04:45 ◼   ► against other copies running on the local Apple talk network and stuff.

00:04:48 ◼   ► So our student newspaper at Drexel, we were totally legit. I forget how many,

00:04:52 ◼   ► how many Macs we had that had cork installed,

00:04:54 ◼   ► but every single one of them had a legit license. It was totally legit. You know,

00:04:58 ◼   ► so I guess it was with a legit license.

00:05:00 ◼   ► It was kind of easy and you felt confident installing patches like with like,

00:05:04 ◼   ► if you were pirating like Photoshop or something,

00:05:06 ◼   ► was always a bit of a worry to update to the latest version. So what if they patched the

00:05:11 ◼   ► way that somebody cracked the serial number, et cetera? But anyway, it just is so funny

00:05:16 ◼   ► to me that two of the most used apps in my life stalled for a long time at 3.32.

00:05:23 ◼   ► **Matt Stauffer:** What does it mean? Nothing. But yeah.

00:05:27 ◼   ► **

00:05:27 ◼   ► Yeah, she means it should be in my passwords

00:05:29 ◼   ► So let's look back at the history so net news wire and I know it's been but it has been years

00:05:38 ◼   ► So I think it's okay if we rehash this and we've talked about this

00:05:41 ◼   ► Oh sure about this on the show but net news wire and daring fireball sort of came about at the same time

00:05:46 ◼   ► Daring fireball I started in August

00:05:49 ◼   ► 2002 and I believe 2002 was when net news wire shipped. Yeah, I started working on net news wire in 2002

00:05:57 ◼   ► NetNewsWire Lite 1.0 shipped maybe that fall. And then NetNewsWire 1.0 full version shipped in like

00:06:06 ◼   ► February or March, maybe the following year. So but it was all very, you know, public betas and

00:06:11 ◼   ► all this stuff. So yeah, it was it was very out there. I don't and again, I was with many of my

00:06:17 ◼   ► longest and best internet friends, I really have no memory of how you and I met. I see. I think

00:06:25 ◼   ► - I think we met by email somehow.

00:06:27 ◼   ► Like we were on maybe a BB edit mailing list or something.

00:06:31 ◼   ► Somehow I feel like we knew each other online

00:06:34 ◼   ► before we met in person, but I don't know.

00:06:35 ◼   ► - Yeah, for sure.

00:06:36 ◼   ► - We must have.

00:06:37 ◼   ► - Yeah, yeah, we definitely knew each other online

00:06:39 ◼   ► because we didn't meet in person for a few years later.

00:06:42 ◼   ► I don't remember how we met online,

00:06:43 ◼   ► but I do remember early,

00:06:47 ◼   ► very early in the Net News Wire days,

00:06:48 ◼   ► reading this new Daring Fireball blog and thinking,

00:06:52 ◼   ► wow, this youngster, he seems to be doing pretty well,

00:06:54 ◼   ► real up and comer. I think I'll add them to the default feeds list.

00:06:57 ◼   ► It was a big, that was a big boost. Being on the net news,

00:07:01 ◼   ► where default feed lists for me at least was a huge boost because I think the

00:07:05 ◼   ► overlap between the audience that net news wire appealed to and the people

00:07:09 ◼   ► who I think would, it would and probably still do enjoy my writing.

00:07:14 ◼   ► Um, was it a large amount of overlap? My,

00:07:17 ◼   ► one of my favorite stories about net news wire and the founding of daring

00:07:21 ◼   ► Fireball is back in the early 2000s. I'm still running Movable Type at Daring Fireball,

00:07:29 ◼   ► but Movable Type was brand new and it was a breakthrough because it was relatively easy

00:07:36 ◼   ► to install. So you could just pay $5 a month at a shared host like Dreamhost or Pear. Also,

00:07:42 ◼   ► Dreamhost is still around. I think you're still using them.

00:07:44 ◼   ► Oh, yeah.

00:07:45 ◼   ► I still have an account at Pear. Pear has been around since the '90s. Great company

00:07:48 ◼   ► out of Pittsburgh. But you could get, you know, pay, you know, four, five, six bucks

00:07:52 ◼   ► a month or something like that. You get a shared hosting account and you'd have a

00:07:57 ◼   ► zip file and you'd move it up to the CGI bin and unpack it. And then you'd edit,

00:08:02 ◼   ► there'd be like one of the files would be the one you'd edit with, you know, put a

00:08:07 ◼   ► password in there and, and, you know, customize whatever. And then boom, you've got movable

00:08:12 ◼   ► type installed and you could, you know, a bunch of default templates, you know, and,

00:08:17 ◼   ► And I forget when WordPress came out, but it wasn't too long after. And there was

00:08:21 ◼   ► a predecessor to WordPress, I think called Gray Matter and rings a bell. And of course,

00:08:28 ◼   ► user land had had the what was the radio user land? Yeah. Was it for that? We had Manila,

00:08:35 ◼   ► which was a hosted thing. Manila is the one that I worked on most. But a lot of these,

00:08:40 ◼   ► you know, and it really was the it was when blogging exploded in popularity based and

00:08:46 ◼   ► a big part of it was prior to the release of these open source and/or commercial packages

00:08:51 ◼   ► like Radio or Manila. The only way you could have a blog was if you wrote your own little

00:08:58 ◼   ► system of doing it or you just hand-edited HTML. I mean, that's how Zelman for years,

00:09:04 ◼   ► Jeffrey Zelman's extremely popular site was just hand-edited HTML for years, which was

00:09:11 ◼   ► A, not an enjoyable experience even if you know HTML and B, sort of required technical

00:09:19 ◼   ► expertise that a lot of people who could be, should be, and are terrific writers and bloggers

00:09:24 ◼   ► don't have and don't want to have. All of a sudden with these packages, boom, it opened

00:09:29 ◼   ► the door to lots of other people. And it's of course only gotten easier since then. But

00:09:33 ◼   ► one of the things that was a telltale thing was that you could kind of tell from most

00:09:36 ◼   ► people sites what what they were using as their back end, because they either stuck

00:09:41 ◼   ► to one of the default templates, or they took one of the default templates and then just

00:09:45 ◼   ► sort of tweaked it, tweak the colors, maybe added a custom logo at the top or something

00:09:50 ◼   ► like that. Right? You could

00:09:51 ◼   ► Jay Haynes Oh, yeah, that was very true. Yeah, you could

00:09:53 ◼   ► tell a movable type site instantly. Yeah. So movable type the others. Yeah.

00:09:57 ◼   ► Trenton Larkin One of the weird things about movable type

00:09:59 ◼   ► was that it like when I got started like in 2002 the default templates all had three RSS

00:10:06 ◼   ► feeds over in the side. It was like you'd have a link for RSS 0.91, zero point or 1.0

00:10:15 ◼   ► and then RSS I guess RSS 2.0 wasn't out yet. I don't know. But there you know in a weird

00:10:20 ◼   ► way that RSS had these weird forks and multiple versions that weren't really they were more

00:10:27 ◼   ► different than each other than the version numbers made it

00:10:30 ◼   ► look, speaking of version numbers being weird. movable

00:10:32 ◼   ► type just get just by default gave you all three. Right,

00:10:36 ◼   ► right. And so it was, you know, those were very nerdy days. And

00:10:39 ◼   ► somebody thought, well, let's give people a choice. Why not?

00:10:42 ◼   ► Right. So the way I did during fireball was I installed it and

00:10:49 ◼   ► was torn between whether I should write my own system or

00:10:51 ◼   ► use movable type. And it's I always think in hindsight,

00:10:53 ◼   ► there's what a lot of times I regret not writing my own thing

00:10:56 ◼   ► from scratch. And then there's other times where I think, well, I probably wouldn't have gotten

00:11:00 ◼   ► during fireball started until like 2009. If I'd done. Yeah, you tweaking your pearl. Yeah, I don't

00:11:07 ◼   ► know. On the other hand, I got marked. I got marked out pretty quick. So maybe I could have.

00:11:10 ◼   ► I don't know. It's hard. It's it's one of those mysteries we'll never have answered. But anyway,

00:11:15 ◼   ► I installed it, looked at the default templates. I didn't do anything with it. There's no public

00:11:20 ◼   ► remnants of that experimentation left. I never told anybody. It was just me trying to figure out

00:11:24 ◼   ► how it all worked. Would this suit my needs? Is this a better use of my time? You know,

00:11:28 ◼   ► can I customize it? Can I still customize everything the way I want it figured out that

00:11:32 ◼   ► I could. And then in start of starting with a template and tweaking it, I started from

00:11:37 ◼   ► nothing. I just erased everything, figured out how the template system worked and built

00:11:42 ◼   ► the way during fireball looks from scratch. And you know, and I was, you know, like one

00:11:47 ◼   ► window was my, what I was building from scratch from a totally blank slate, uh, literally

00:11:54 ◼   ► blank slate gray. And on the other was like their default template for the same thing.

00:12:00 ◼   ► So like, here's the default template for your homepage of your blog. And I'd look at what

00:12:04 ◼   ► they had. And I'd look at what I wanted. And you know, I could say, Oh, here's how you

00:12:08 ◼   ► do that. Here's how you get dates, I can kind of see how you format dates, blah, blah, blah.

00:12:11 ◼   ► And I copy and paste it over. And I got to the RSS part. And I was like, What the fuck

00:12:15 ◼   ► is this shit? I honestly didn't get it. And they called it syndication. And the only syndication

00:12:21 ◼   ► the way I thought of the word syndication as a media nerd was like syndicated newspaper

00:12:26 ◼   ► columnists, right? Like, you know, like instead of comics too. Yeah. And comics. Right. So

00:12:32 ◼   ► like Calvin and Hobbes was syndicated so that, you know, 500 newspapers across the country

00:12:37 ◼   ► or the world all had the same comics and there were national op ed columnists. So, you know,

00:12:45 ◼   ► not everybody can be the New York times where they have their own stable of in house award

00:12:49 ◼   ► winning columnists, small town papers would—and still do, I guess—have syndicated columnists.

00:12:56 ◼   ► Well I thought, "Why would I want to be syndicated? I want people to read my stuff

00:12:59 ◼   ► at my site. I don't understand this at all. What does this mean if I have this syndication

00:13:04 ◼   ► that people can put my articles on their site? Forget it." I really didn't understand

00:13:09 ◼   ► what the hell it was for, why there were three versions. Anyway, the whole point of the story

00:13:13 ◼   ► is then when NetNewswire shipped or started shipping and I started using the betas, it

00:13:19 ◼   ► all just clicked. I was like, "Oh, I get it." So you can see when there's new articles and

00:13:24 ◼   ► read them right here. Oh, I better quick. And then immediately, within 30 minutes, I

00:13:30 ◼   ► had an RSS feed on Daring Fireball. But I literally, it was NetNewswire that made me

00:13:38 ◼   ► understand what the potential and what it was meant to be.

00:13:42 ◼   ► I think it was a lot of people's first exposure to RSS

00:13:46 ◼   ► The readers before then there hadn't been like a desktop

00:13:50 ◼   ► Reader like this right been a number of browser-based ones some that you could run locally even but there hadn't been like an app

00:13:58 ◼   ► you could just download and you know start going and

00:14:01 ◼   ► Yeah, so for you and I think a lot of people that was that was the first exposure

00:14:05 ◼   ► The other interesting thing and in hindsight and here we are in 2019

00:14:11 ◼   ► It's a very different story, but and it just makes the the complete 17 year

00:14:17 ◼   ► storyline so interesting to me is that in 2002 Coco the the you know application programming

00:14:25 ◼   ► frameworks

00:14:28 ◼   ► That were new with Mac new to the Mac with Mac OS X and came over from next step with Apple's

00:14:36 ◼   ► acquisition slash reunification with next in

00:14:40 ◼   ► 1997

00:14:42 ◼   ► Was

00:14:45 ◼   ► uncertain like longtime Mac developers were looking at it with a still in

00:14:50 ◼   ► 2002 even with a quizzical I you know, and there was still open, you know, there were vigorous debates

00:14:55 ◼   ► Over the carbon versus cocoa versus the pragmatic. Hey, I'm just gonna do whatever it is that works which is

00:15:02 ◼   ► you know, I think the right way to have looked at it all along rather than be

00:15:08 ◼   ► religious or dogmatic about one side or the other. But part of it, part of your inspiration was it

00:15:14 ◼   ► wasn't just that you wanted to make a good reader, it was that you wanted to make a, you know,

00:15:19 ◼   ► you were intrigued by Coco and really wanted this, this was something you could really sink

00:15:24 ◼   ► your teeth into. Yeah, absolutely. I had been coming from working on an app that started on

00:15:30 ◼   ► Mac OS 7, I guess, and had been carbonized for OS X. But I was no longer with that company,

00:15:38 ◼   ► and I wanted to write something new. And at that point, it seemed like writing something new in

00:15:44 ◼   ► Cocoa would be great, because Cocoa just did so much more, so much more easily than writing

00:15:51 ◼   ► everything using the Macintosh toolbox or carbon, whatever you want to call it. That just left so

00:15:57 ◼   ► much so much for you to handle that Coco just like did and part of me just couldn't believe it like

00:16:04 ◼   ► wait a minute they just up and did all these things for me that I don't have to deal with

00:16:10 ◼   ► I just found that amazing and yeah so I think it was about 10 months from start to to shipping

00:16:17 ◼   ► netnews at 1.0 and I was learning Coco I was brand new to it but still yeah it really accelerated the

00:16:23 ◼   ► development and was just so much fun.

00:16:28 ◼   ► And it resulted in something that, and I think this is true of NetNewsWire 5 shipping this

00:16:34 ◼   ► week, that felt so at home with the system.

00:16:39 ◼   ► Looked, felt, it's like, you know, it breaks down for a lot of apps in a lot of ways, but

00:16:48 ◼   ► usually it's a compliment if you can say about a third party app, this looks like what

00:16:53 ◼   ► it should look like, what we would hope it would look like if Apple were to do this.

00:17:00 ◼   ► In a lot of ways, the one comparison—we could get into it later—but one obvious

00:17:07 ◼   ► comparison and something I know for a fact that you've looked at over the years many

00:17:11 ◼   ► times is, well, how does Apple Mail do blank? Because reading email and reading RSS, there's

00:17:18 ◼   ► a lot of similarities. A feed is similar to a mailbox or an account perhaps. And then

00:17:25 ◼   ► in the account is a bunch of messages and in a feed are a bunch of articles and you

00:17:30 ◼   ► click on an article or you click on a message and then you read the message or you read

00:17:34 ◼   ► the article. And mail back then had drawers.

00:17:38 ◼   ► **Ezra Klein:** Yes, yes it did. Yeah.

00:17:41 ◼   ► **Beserat Debebe:** Net News Wire had drawers. Drawers were very

00:17:44 ◼   ► cool.

00:17:44 ◼   ► >> Yeah, though, to be fair, NetNewsWire never put the source list in a drawer where mail

00:17:50 ◼   ► actually did in those days.

00:17:51 ◼   ► >> Yeah, I do remember that.

00:17:52 ◼   ► >> All your mailboxes were in a drawer, yeah.

00:17:56 ◼   ► NetNewsWire's drawer was used for a directory of feeds.

00:17:59 ◼   ► >> I remember that, right.

00:18:00 ◼   ► >> Yeah, yeah, which was an awful lot of work to maintain.

00:18:05 ◼   ► So I'm not still doing that, though.

00:18:06 ◼   ► I kind of wish I did, but boy, it's just too much work.

00:18:11 ◼   ► It's interesting because there's a, you know, I think a lot of the coverage this week of

00:18:23 ◼   ► NetNewswire is sort of a, hey, it's not just the, hey, NetNewswire is back, but a, hey,

00:18:29 ◼   ► is RSS making a comeback? And in some ways it's warranted because I think the heyday

00:18:36 ◼   ► day of reading people's blogs via RSS was certainly a decade ago. But it's also a weird

00:18:45 ◼   ► thing because in a way, RSS has never ever, ever been more popular and continues to grow

00:18:51 ◼   ► at a crazy rate because of podcasts. And podcasts are all RSS feeds. Every single podcast. Well,

00:19:00 ◼   ► maybe not every. I guess there's now these weird ones that you have to sign up for a

00:19:04 ◼   ► specific app and they're tied to a paid service or something.

00:19:09 ◼   ► But I wouldn't call that a podcast.

00:19:11 ◼   ► I wouldn't either.

00:19:12 ◼   ► I've argued that.

00:19:13 ◼   ► I wouldn't.

00:19:14 ◼   ► It's just a show.

00:19:15 ◼   ► It's an audio show.

00:19:16 ◼   ► Sure.

00:19:17 ◼   ► And we've had audio shows ever since Edison invented the radio.

00:19:21 ◼   ► But what everybody thinks of as podcasts, including my podcasts, the Omni podcast that

00:19:28 ◼   ► hosts are distributed to whatever podcast app you use to listen by RSS, and each episode

00:19:37 ◼   ► is an RSS entry. So it's astoundingly popular, and even though people don't realize it,

00:19:45 ◼   ► you have no reason—

00:19:46 ◼   ► [

00:19:46 ◼   ► It's plumbing in that case.

00:19:48 ◼   ► It's, yeah, why you shouldn't have to know.

00:19:50 ◼   ► - Right, I don't know how many, you know,

00:19:52 ◼   ► the staggering growth in the listeners of podcasts,

00:19:55 ◼   ► you know, I'm sure that literally, I'll bet 98% of them,

00:19:58 ◼   ► maybe 99% of them have never even heard

00:20:00 ◼   ► of the initials RSS.

00:20:02 ◼   ► - Right. - And that's fine.

00:20:03 ◼   ► But one of the things that Apple has done as the,

00:20:07 ◼   ► I think very honorably as the steward

00:20:10 ◼   ► of the iTunes podcast app and directory

00:20:16 ◼   ► is they've made that directory open to third-party clients,

00:20:20 ◼   ► not just third-party clients on their own platforms.

00:20:23 ◼   ► You know, like, Android podcast apps

00:20:26 ◼   ► can use the iTunes directory

00:20:28 ◼   ► to get what you were trying to do with NetNewswire,

00:20:30 ◼   ► which is like, let's just have a list of as many good RSS,

00:20:35 ◼   ► good or even decent, you know,

00:20:36 ◼   ► anything that's not really, I mean,

00:20:38 ◼   ► I don't know what your criteria were,

00:20:40 ◼   ► but for the most part, what seems like with Apple is,

00:20:42 ◼   ► as long as it's not, you know, hate speech

00:20:45 ◼   ► and or like pornography or something that, you know,

00:20:49 ◼   ► they listed in the iTunes podcast directory.

00:20:53 ◼   ► And so third-party apps like Overcast and whatever else,

00:20:58 ◼   ► you can search for a feed and they can just find it, right?

00:21:02 ◼   ► So you can search for OMNI and the Omni shows.

00:21:07 ◼   ► Is that the name of the podcast, the Omni show?

00:21:10 ◼   ► - The Omni show.

00:21:11 ◼   ► - Right, the Omni show will show up.

00:21:13 ◼   ► And so you don't even need to do the tricky thing,

00:21:16 ◼   ► which is find a URL to the RSS feed for the Omni show

00:21:21 ◼   ► and paste that and manage a list of URL subscriptions.

00:21:24 ◼   ► You could just go to a directory and do it.

00:21:26 ◼   ► So there's certainly merit there.

00:21:27 ◼   ► And I think the way that it's worked out with podcasts

00:21:29 ◼   ► has certainly shown that there is,

00:21:30 ◼   ► but you need somebody like Apple at the heart of it

00:21:33 ◼   ► to A, who you can trust and B,

00:21:36 ◼   ► who can do the hard work of maintaining

00:21:39 ◼   ► this ever-growing mountainous database of feeds.

00:21:43 ◼   ► Yeah, and I've just last night I was thinking like that would be another great open source

00:21:48 ◼   ► project.

00:21:49 ◼   ► Hmm.

00:21:50 ◼   ► We could get people, you know, involved.

00:21:52 ◼   ► But then I thought, and I've really got my hands full just with Net News Wire, I would

00:21:56 ◼   ► really like somebody else to do this.

00:21:59 ◼   ► You know, there are a lot of things like that, that would be so helpful in bringing us back

00:22:04 ◼   ► to the open web.

00:22:05 ◼   ► Another one I've talked a lot about is something like Technorati, you know, those blog search

00:22:11 ◼   ► The index, a bunch of blogs.

00:22:13 ◼   ► And if I want to go see who on the blogosphere

00:22:15 ◼   ► is talking about Net News Wire,

00:22:17 ◼   ► I have a feed that watches for that.

00:22:19 ◼   ► And so I see that from wherever, whenever it comes up.

00:22:23 ◼   ► We used to have a bunch of this stuff and we don't anymore.

00:22:27 ◼   ► - Yeah, I haven't thought- - I hope it comes back.

00:22:29 ◼   ► - I haven't thought of Technoradi in a long time.

00:22:31 ◼   ► And there was a time when man, was that super useful.

00:22:35 ◼   ► - Oh, sure, yeah.

00:22:37 ◼   ► There were some smaller things like BlogBridge

00:22:39 ◼   ► And I think Yahoo even had a blog search engine

00:22:41 ◼   ► and they were all pretty useful.

00:22:42 ◼   ► - Yeah, but it was definitely an interesting way to find,

00:22:45 ◼   ► not just when people were talking about a topic

00:22:49 ◼   ► you're interested in, but as somebody who had a blog,

00:22:51 ◼   ► you could find, I would constantly find like,

00:22:56 ◼   ► interesting blog posts linking to my own blog posts.

00:23:01 ◼   ► You could search Technorati, I forget how you did it,

00:23:03 ◼   ► but it wasn't too hard.

00:23:04 ◼   ► And you could search for blog posts that they had indexed

00:23:08 ◼   ► linked to daringfireball.net and I frequently found things that I had not seen before.

00:23:13 ◼   ► Matthew: Yeah, and in those days that's the way we had conversations. They were just kind of ad hoc

00:23:19 ◼   ► across the web. And you know, so if somebody wrote something linked to me, I might have some kind of

00:23:25 ◼   ► reply. Well, that's another blog post and I would link back to whatever they wrote. And you know,

00:23:30 ◼   ► that's not as easy as Twitter, but it was more substantial, I think.

00:23:37 ◼   ► I think it was definitely more substantial. I mean and again there's trade-offs. It's you know like with everything

00:23:42 ◼   ► I'm not gonna say Twitter's bad or Twitter ruined it and there's a certain convenience and there's

00:23:47 ◼   ► There are certain advantages to the centralization of Twitter

00:23:50 ◼   ► And knowing that there's just one place where I can look at for at replies to at Gruber and find a bunch of conversations

00:23:59 ◼   ► But boy even at 280 characters the modern limit, it's it it loses a lot of nuance

00:24:07 ◼   ► Yeah, sure does. Yeah. And then there are disadvantages to that centralization too.

00:24:13 ◼   ► So I tend to prefer decentralized systems. On the ground side, even if Twitter were not borderline

00:24:25 ◼   ► evil, that's just way too much power in the hands of, you know, unaccountable people.

00:24:31 ◼   ► Yeah, I agree. On the whole, I would take the trade-offs of the web we had circa 2005-2006,

00:24:43 ◼   ► which coincidentally was right around when Twitter first popped up. I think coincidentally.

00:24:50 ◼   ► I think that even if Twitter itself had never become popular, I still think the same sort

00:24:58 ◼   ► of shift away. I mean, somebody, some other platform would have done the Facebook ization

00:25:04 ◼   ► and Twitter ization of, of, and D, you know, centralization of, of this sort of thing.

00:25:12 ◼   ► Yeah. In another timeline, we have different names for these same things. It's just some

00:25:16 ◼   ► other companies did it. I, it is interesting though. It does seem like a lot of people

00:25:24 ◼   ► are starting to push back on this. I saw David Hanemeyer Hanson had a nice tweet linking

00:25:30 ◼   ► to the Suite Setups review of Net News Wire 5. And just mention one of many excellent

00:25:37 ◼   ► points to be made about getting back, if you've gotten away from RSS feed reading, like just

00:25:42 ◼   ► the fact that you don't get tracked. It's not about throwing tracking ads at you and

00:25:48 ◼   ► stuff like that.

00:25:49 ◼   ► Yeah, absolutely right. I said something about corporate surveillance, I think. Yeah, that's,

00:25:55 ◼   ► you know, that's one of the things you can get away from. Actually can do it.

00:26:00 ◼   ► Have you noticed because then the other thing that is sort of like what's old is new again,

00:26:05 ◼   ► and I don't think it's a coincidence. I think it's sort of tied to the potential for RSS

00:26:10 ◼   ► reading again, I with my whole aside from five minutes ago about how RSS is more popular

00:26:16 ◼   ► than ever because of podcasting. Henceforth, when I'm talking about RSS reading, I'm really

00:26:20 ◼   ► talking about sort of the net newswire sort of genre of feed reading where you're reading

00:26:26 ◼   ► articles mostly from people who write blogs. But the other thing that's really resurged

00:26:34 ◼   ► in popularity is email newsletters.

00:26:36 ◼   ► Yeah, I find that fascinating.

00:26:40 ◼   ► both free and paid. A friend of the show, Ben Thompson at Stratechery is doing a fantastic

00:26:48 ◼   ► job with his paid subscription daily update newsletter with one free post a week. There's

00:26:56 ◼   ► a couple other people in… Neil Seibart has Above Avalon, similar business model. I think

00:27:06 ◼   ► One reason it's more popular is for those sort of,

00:27:09 ◼   ► if you want, if your business model

00:27:11 ◼   ► for doing your writing full-time is going to be based on,

00:27:16 ◼   ► not just on advertising and sponsorships,

00:27:21 ◼   ► which is really the same thing,

00:27:22 ◼   ► like mine at Daring Fireball and here in the talk show,

00:27:27 ◼   ► if you're gonna go for reader support,

00:27:32 ◼   ► it really makes sense that you kind of need something

00:27:37 ◼   ► behind a paywall of some sort.

00:27:41 ◼   ► It doesn't really work to say,

00:27:44 ◼   ► I'm gonna publish everything for free,

00:27:46 ◼   ► and if you wanna pay me, pay me.

00:27:47 ◼   ► I mean, people will pay something,

00:27:49 ◼   ► but what really prompts people to pay

00:27:52 ◼   ► is if they have to pay to read.

00:27:54 ◼   ► And at a technical level, it's a lot easier with email

00:27:58 ◼   ► than it is with a website, in my opinion.

00:28:03 ◼   ► And maybe easier is the wrong word,

00:28:05 ◼   ► 'cause I'm not really thinking of this

00:28:08 ◼   ► as the developer of making it work,

00:28:12 ◼   ► or the publisher who's going to use this as my business model.

00:28:15 ◼   ► I'm thinking as just the reader who wants to,

00:28:18 ◼   ► okay, I wanna read Ben Thompson's stuff,

00:28:20 ◼   ► or I wanna read the New York Times, or the Washington Post,

00:28:25 ◼   ► or any of these other publications

00:28:27 ◼   ► that let you have X number of free articles a month

00:28:30 ◼   ► and then you have to pay.

00:28:32 ◼   ► I really, I do it.

00:28:34 ◼   ► I pay for a very, I don't know,

00:28:37 ◼   ► at least half a dozen subscription things,

00:28:40 ◼   ► probably closer to at least 10 maybe.

00:28:43 ◼   ► I pay for the Times, the Washington Post.

00:28:44 ◼   ► I pay for a bunch of newsletters.

00:28:47 ◼   ► I pay for the Wall Street Journal.

00:28:50 ◼   ► I'm always getting logged out of them.

00:28:53 ◼   ► The New Yorker, I have a print New Yorker subscription,

00:28:56 ◼   ► but it comes with a free online one.

00:28:57 ◼   ► I can't tell you how many times a month

00:29:00 ◼   ► I have to sign back in to the New Yorker website

00:29:03 ◼   ► 'cause they're telling me I'm out of free articles,

00:29:05 ◼   ► even though I'm a paid subscriber.

00:29:07 ◼   ► - Yeah, happens to me too with Washington Post.

00:29:10 ◼   ► - Yeah, that never happens with Stratechery.

00:29:13 ◼   ► - Yeah, right, it always just shows up.

00:29:14 ◼   ► - Guess what shows up in my email box every day,

00:29:17 ◼   ► my email from Ben Thompson with his thoughts

00:29:19 ◼   ► on the business news from the day before,

00:29:21 ◼   ► the last few days.

00:29:23 ◼   ► And it's a, this is the other thing

00:29:27 ◼   ► that to me makes it easier.

00:29:28 ◼   ► It is an easier, better reading experience

00:29:31 ◼   ► because guess what I don't have?

00:29:32 ◼   ► I don't have any pop-ups showing up on my email

00:29:36 ◼   ► telling me that they have a cookie policy

00:29:39 ◼   ► and I'm inherently agreeing to this.

00:29:41 ◼   ► I mean, how many times, I mean, I don't understand.

00:29:43 ◼   ► I know it's a GDPR and it's this European thing.

00:29:45 ◼   ► Guess what?

00:29:46 ◼   ► Frickin' nonsense.

00:29:47 ◼   ► I would rather delete every frickin' cookie in the universe

00:29:50 ◼   ► than have to dismiss one of those things again.

00:29:52 ◼   ► - Mm-hmm, that and would you like notifications

00:29:55 ◼   ► from this website?

00:29:56 ◼   ► - Oh. - No thanks.

00:29:57 ◼   ► - And the popovers that cover the actual content

00:30:01 ◼   ► of the article, even if they're not trying to say,

00:30:04 ◼   ► you can't read this 'cause you don't subscribe,

00:30:07 ◼   ► they pop over and they say,

00:30:09 ◼   ► hey, why don't you sign up for our newsletter or whatever?

00:30:11 ◼   ► Give us your email address.

00:30:12 ◼   ► And they cover the article.

00:30:14 ◼   ► That never happens when I'm reading email.

00:30:16 ◼   ► And very, very similarly,

00:30:18 ◼   ► it does not happen when I'm reading RSS.

00:30:20 ◼   ► - Right.

00:30:22 ◼   ► Now, the difference is, I will say that

00:30:25 ◼   ► if I were reading most,

00:30:27 ◼   ► actually I guess every single one,

00:30:29 ◼   ► I can't think of a single site

00:30:31 ◼   ► in my NetNewswire subscriptions

00:30:32 ◼   ► where if I went to that person's website,

00:30:34 ◼   ► 'cause almost every single one is a person's website

00:30:37 ◼   ► where they would be covering their content with popovers,

00:30:40 ◼   ► but it's just a nice way to read.

00:30:43 ◼   ► And I feel like that is,

00:30:49 ◼   ► just one of many ways that the entire big corporate media world has just sort of lost

00:30:56 ◼   ► the ball in today's world where they're, you know, and I don't blame them. I get it. It's

00:31:02 ◼   ► tough. It's never been. The business has never been tougher to do good journalism. And I get it

00:31:08 ◼   ► that it's, I'm not trying to say it's easy just because during fireball is doing okay.

00:31:15 ◼   ► I'm not saying it's easy, but it's so clear that you know, hey, is this this is this a nice

00:31:20 ◼   ► experience for our readers is just clearly nowhere near the top of the priority list.

00:31:26 ◼   ► Right. And that seems stunning to me, like job one is to create something nice to read, right?

00:31:34 ◼   ► Right. So the experience of reading it should be way, you know, way at the top of the list. And

00:31:40 ◼   ► The fact that these sites are almost uniformly hostile to actually reading the content is just

00:31:47 ◼   ► madness. I know I've used this analogy before and it seems like a stretch because it would be so

00:31:54 ◼   ► it would actually lead to physical confrontations in the real world. But when you buy a copy of

00:32:03 ◼   ► of a newspaper and you're reading it on the subway,

00:32:06 ◼   ► nobody ever comes up and covers up the article

00:32:10 ◼   ► you're reading with a flyer for something else.

00:32:15 ◼   ► You don't get interrupted as you're,

00:32:20 ◼   ► or you don't scroll a newspaper,

00:32:22 ◼   ► you scroll your eyes, you go down.

00:32:24 ◼   ► Nothing actually covers up something,

00:32:26 ◼   ► like when you hit the space bar,

00:32:27 ◼   ► when you're reading an article on a website

00:32:29 ◼   ► and all of a sudden that's when they put the interstitial up

00:32:31 ◼   ► that covers the article you're reading

00:32:33 ◼   ► and tells you you're done.

00:32:35 ◼   ► That never happens in the real world.

00:32:37 ◼   ► It's, you know, the worst part about reading a newspaper

00:32:40 ◼   ► is maybe your hands get a little ink on them

00:32:42 ◼   ► or something like that.

00:32:43 ◼   ► I guess some people struggle to read a broadsheet,

00:32:45 ◼   ► but I never, I always, you know, you fold it in half.

00:32:50 ◼   ► - Yeah, right, there are ways.

00:32:52 ◼   ► - I just think it's crazy, and I really feel like

00:32:57 ◼   ► that the web publishing world, and you know,

00:33:00 ◼   ► see this too with how much JavaScript is in the payloads for these websites nowadays with

00:33:06 ◼   ► all these ad networks. Even with the privacy implication of the tracking aside, it's

00:33:11 ◼   ► just an enormous amount of code and you can see it when you monitor your tabs in a process

00:33:17 ◼   ► monitor, like activity monitor, to see what's going on and all of a sudden you just have

00:33:21 ◼   ► an article you're reading open and it's using 20% of your Mac CPU or something like

00:33:26 ◼   ► It's madness. And I really feel like people are ready to go back to the relaxing, you know,

00:33:37 ◼   ► let's use something to read these articles that just is optimized for making it as pleasant as

00:33:42 ◼   ► possible. Yeah, people who like to read, I mean, they like to read. Or they want to like to read,

00:33:50 ◼   ► they want to enjoy it. Right. One of the things I delight in is, on my personal blog, there's no

00:33:55 ◼   ► JavaScript. It's on a cheap shared host. I pay almost no money for it. And yet it's fast.

00:34:04 ◼   ► Right. Because without, you know, all that junk, it's, you know, it's all pre rendered. It's just

00:34:10 ◼   ► HTML. No cookies are even involved. It's just, it's just super fast.

00:34:14 ◼   ► I like it when people tell me that they that when they're worried about their internet connection,

00:34:19 ◼   ► that they go, they go to the, they open a browser tab and type da, let it auto complete.

00:34:25 ◼   ► and see if Daring Fireball loads fast, then they know everything, then it must be something else.

00:34:30 ◼   ► And if Daring Fireball loads slow, then maybe there is something wrong with their internet

00:34:34 ◼   ► connection. That is music to my ears. Yeah, right. It's one of the joys of statically

00:34:41 ◼   ► rendered sites. Even though some all this crap in them, even though every once in a while,

00:34:46 ◼   ► something is my fault or the sort, you know, like I need to, you know, do my annual reboot of Apache

00:34:51 ◼   ► or something like that. But for the most part, it really is edifying to hear that. But it

00:34:59 ◼   ► also makes me crazy because it's so easy.

00:35:04 ◼   ► - How about just don't do the things. You can save a whole lot of time. I know, I know.

00:35:12 ◼   ► But yeah.

00:35:13 ◼   ► - All right, let me hold that thought because I want to take a break here. Thank her for

00:35:18 ◼   ► sponsor. And then I have a programming story I want to tell you. Our first sponsor, speaking

00:35:24 ◼   ► of fast web hosts, is Linode. L-I-N-O-D-E. Looks like "linode" to me, but it's pronounced

00:35:32 ◼   ► Linode because they specialize in Linux. They just opened their newest data center in Toronto.

00:35:38 ◼   ► It's built using their most up-to-date hardware and their next generation network backbone.

00:35:43 ◼   ► Actually this might be out of date, this information I'm telling you. I think Mumbai, India is

00:35:46 ◼   ► is actually open now too.

00:35:48 ◼   ► Anyway, Linode is dedicated hosting in virtual containers

00:35:54 ◼   ► with data centers all over the world.

00:35:56 ◼   ► The fact that they have them in countries like Canada

00:35:58 ◼   ► is really, really important if you're in Canada

00:36:02 ◼   ► and you have to comply with in-country data protection

00:36:04 ◼   ► requirements and legal requirements.

00:36:06 ◼   ► It's not just about getting the latency down just

00:36:08 ◼   ► because it's nearer to you physically

00:36:10 ◼   ► or maybe nearer to your audience.

00:36:12 ◼   ► For some people, it's actually a legal requirement.

00:36:15 ◼   ► Very important.

00:36:16 ◼   ► They're expanding, literally expanding all over the world.

00:36:18 ◼   ► Toronto, Mumbai, can't get much further apart than that,

00:36:21 ◼   ► I don't think.

00:36:22 ◼   ► Anything you wanna build, any kind of website you want,

00:36:25 ◼   ► you can build it on Linode.

00:36:27 ◼   ► They have dedicated CPUs if you need them,

00:36:29 ◼   ► distributed applications, hosted services.

00:36:31 ◼   ► Everything features native SSD storage, of course.

00:36:36 ◼   ► Everything's hooked up to a 40 gigabit network.

00:36:39 ◼   ► You can pick from 10, I think it's 11 now though,

00:36:41 ◼   ► worldwide data centers.

00:36:43 ◼   ► You pay for what you use with hourly billing

00:36:45 ◼   ► across all plans and add on services.

00:36:47 ◼   ► So you can pay based on your typical traffic.

00:36:50 ◼   ► And if something happens every once in a while

00:36:51 ◼   ► where you know you're gonna get a big burst of traffic

00:36:54 ◼   ► and you might need more resources,

00:36:55 ◼   ► you only pay for it while you need it.

00:36:57 ◼   ► Super, super easy.

00:36:59 ◼   ► And one of the things is they have great pricing.

00:37:03 ◼   ► Plans start at just five bucks a month.

00:37:05 ◼   ► And that's not like a special offer,

00:37:07 ◼   ► special deal or a super limited thing

00:37:10 ◼   ► that you couldn't really use.

00:37:11 ◼   ► An awful lot of people could go a long way

00:37:15 ◼   ► on their default $5 plan and they have a special offer for listeners of the show. Use this

00:37:20 ◼   ► code "Talkshow2019." You get a $20 credit. You could use that for four months of service

00:37:28 ◼   ► and no questions asked. Don't like it? Done with it when you're done? Cancel it. Four

00:37:32 ◼   ► months free with a $20 credit. The URL is linode.com/thetalkshow. So that's a little

00:37:38 ◼   ► confusing. It's sort of like an intelligence test there. The URL is linode.com/thetalkshow.

00:37:45 ◼   ► The promo code to get the $20 credit is talkshow2019. Anyway, I am a customer. I'm moving slowly

00:37:53 ◼   ► but surely everything during Fireball over there. Just working on something this week,

00:37:58 ◼   ► which I'm actually about to talk to Brent about, over to my Linode server. I can't say

00:38:03 ◼   ► enough about how good and easy and for somebody who's been using the same server for over

00:38:08 ◼   ► over 10 years, how much nicer things have gotten in command line land. So my thanks

00:38:13 ◼   ► to Linode. They're not just a sponsor. I'm a customer. I really recommend them. And remember

00:38:18 ◼   ► that code talk show 2019 save 20 bucks. So anyway, I forget who said it. I should actually

00:38:25 ◼   ► Google it. I should probably do more research as the host of the show. You've probably heard

00:38:29 ◼   ► the adage. I'm sure you have premature optimization is the root of all evil. Oh yeah, for sure.

00:38:36 ◼   ► premature. Let's see here. There we go. You can hear my Apple extended keyboard to there.

00:38:45 ◼   ► I got one also. Yeah, they're still the best. Its source is credited to Donald Knuth. Is

00:38:52 ◼   ► it Knuth or Knuth? I actually think it's a good question. I think it's Knuth, but damn.

00:38:58 ◼   ► The most celebrated computer scientist who's ever walked the earth after maybe after Alan

00:39:04 ◼   ► and Turing. I don't know how to pronounce his name. But it's a well-known adage. I

00:39:13 ◼   ► think people misinterpret it. I know you believe it. One of the things that I wanted to—why

00:39:18 ◼   ► I thought of talking to you about it is that Net News Wire is small, fast, and stable.

00:39:29 ◼   ► You know a Ted there's a part of me and I know what you think too

00:39:32 ◼   ► Like I just I looked at it after you unpacking it and installing it and looking at it in the bundle in my applications folder

00:39:38 ◼   ► It's like nine point nine megabytes

00:39:40 ◼   ► Which is by today's standards a very small app

00:39:44 ◼   ► Yeah tiny but there's a part of me that's so old and remembers, you know when apps needed to fit on floppy disks

00:39:52 ◼   ► Megabytes geez what the hell's in there? How many floppies is that gonna be?

00:39:58 ◼   ► Right and you know part of the reason that cocoa apps could always be if you know if engineered well

00:40:04 ◼   ► And didn't use a lot of third-party frameworks could be very small is because the cocoa that the system frameworks

00:40:10 ◼   ► You don't need them in your app you they're there in the system and so the app itself just

00:40:15 ◼   ► Just needs your code the code for your little app

00:40:18 ◼   ► And you know it's a total digression

00:40:22 ◼   ► But that's why Swift apps have been bigger than objective-c apps because up until very recently

00:40:27 ◼   ► because the Swift binary interface was still changing

00:40:32 ◼   ► between versions of Swift.

00:40:34 ◼   ► Swift apps needed to bundle all the Swift libraries

00:40:36 ◼   ► and frameworks within each app bundle.

00:40:38 ◼   ► But all of a sudden, now that that's stable,

00:40:42 ◼   ► Swift apps are gonna get smaller too.

00:40:44 ◼   ► But NetNewswire, it's super fast.

00:40:47 ◼   ► It's really, really fast.

00:40:49 ◼   ► It's fast at everything.

00:40:51 ◼   ► I remember when I first started using Evergreen again,

00:40:57 ◼   ► and I fished out all of my feeds from my old version

00:41:01 ◼   ► and then NewsWire, which itself was also fast,

00:41:04 ◼   ► and imported them into the new app and launched it,

00:41:09 ◼   ► or hit reload or something after importing it.

00:41:12 ◼   ► And I was like, "Well, when's it gonna load?"

00:41:14 ◼   ► "Oh, it did already."

00:41:15 ◼   ► (laughing)

00:41:16 ◼   ► It loaded all 50 different feeds, updated all of them.

00:41:20 ◼   ► No exaggeration within a handful of seconds, two seconds,

00:41:25 ◼   ► There they are. They're updated. I think that people tend to, the misinterpretation of that

00:41:33 ◼   ► premature optimization is the root of all evil, is the idea that you don't have to optimize

00:41:40 ◼   ► as you go. You don't have to keep things fast as you go. You can, "Ah, we'll fix it later."

00:41:44 ◼   ► You can let it get slow, and then we'll optimize it later because Donald Knuth says premature

00:41:50 ◼   ► optimization is the root of all evil. That is not what he meant. And I think that's actually

00:41:56 ◼   ► the way a lot of software goes haywire. I love the old, I've told this story before

00:42:01 ◼   ► many times, you know, that the rule Don Melton imposed on the WebKit team when he started

00:42:08 ◼   ► this Safari project at Apple was that every time you checked code in, you had to run,

00:42:14 ◼   ► know, the the tests and benchmarks and the rule was nothing could regress performance

00:42:20 ◼   ► wise. So if you were adding feature x to Safari and the WebKit browser, and you ran the do

00:42:26 ◼   ► you it was all working and then you ran the tests and it made something slower. You couldn't

00:42:31 ◼   ► check it in, you had to figure out how to get it working where it didn't make anything

00:42:34 ◼   ► slower all that's a great rule, right. And this was informed by his time at Mozilla,

00:42:41 ◼   ► where they would say, "Well, this works.

00:42:45 ◼   ► We'll make it fast later."

00:42:47 ◼   ► - Right. - And later never happened.

00:42:49 ◼   ► And all of a sudden, right.

00:42:52 ◼   ► - So I take this rule to mean a different thing.

00:42:54 ◼   ► Don't write code assuming you know

00:42:58 ◼   ► what the best optimizations are gonna be.

00:43:01 ◼   ► I mean, write intelligently,

00:43:03 ◼   ► but then run it and test it and figure out,

00:43:06 ◼   ► is it actually slow?

00:43:07 ◼   ► Where is it slow?

00:43:09 ◼   ► How can we change it?

00:43:11 ◼   ► Don't, because guaranteed, a lot of the time,

00:43:15 ◼   ► what you think is gonna be slow isn't actually slow at all.

00:43:18 ◼   ► And it's something you didn't even think about,

00:43:20 ◼   ► ah, that's the slowdown.

00:43:22 ◼   ► But you have to measure it, you have to find out.

00:43:23 ◼   ► - Right, exactly.

00:43:25 ◼   ► And that is exactly the lesson that I'm paying the price for

00:43:29 ◼   ► as we speak.

00:43:30 ◼   ► I forget when I first wrote it.

00:43:33 ◼   ► Might've been as far back as 2009.

00:43:34 ◼   ► It's probably about 10 years old.

00:43:36 ◼   ► But I wrote and still use my own little bot

00:43:40 ◼   ► I bought to automatically post articles to the @DaringFireball Twitter account.

00:43:48 ◼   ► And I know there are a bunch of services that do this.

00:43:51 ◼   ► You can just sign up.

00:43:53 ◼   ► But I wanted the tweets to be formatted just the way I want them.

00:43:57 ◼   ► And so of course I wrote my own.

00:44:00 ◼   ► And it's something that I was running on a server with a little Perl script.

00:44:07 ◼   ► It just reads my RSS feed.

00:44:10 ◼   ► a list of all the articles, uh, looks for ones that are new, something that hasn't been

00:44:15 ◼   ► tweeted yet. If it finds one posted as a tweet and then saves, saves that ID for that article

00:44:25 ◼   ► so that it won't get tweeted again, uh, and stops. And then it's a cron job. Cron is a,

00:44:32 ◼   ► for those of you who don't know that I'm going out in a wheelchair. I'm going to try to talk

00:44:35 ◼   ► programming on a non-programmer's podcast, but I think I can do it. CRON is a longstanding

00:44:42 ◼   ► 30, 40-year-old Unix utility that you can use to set up recurring tasks. So you could

00:44:48 ◼   ► say run this script every five minutes or run this one every hour or run this script

00:44:53 ◼   ► every Sunday at midnight or something like that. You can set up a schedule. It'll do

00:44:58 ◼   ► do these tasks. So I have it set up as an every-five-minute cron task. The logic being

00:45:05 ◼   ► if I go on a posting spree and I post two things quickly, why not have them show up

00:45:12 ◼   ► five minutes apart on your Twitter stream so that it doesn't feel like the @DaringFireball

00:45:18 ◼   ► account is harassing you? A few of the other things I've added to the script over the

00:45:26 ◼   ► years is it also won't post anything. I forget how long it doesn't really matter. But I think

00:45:33 ◼   ► it's like 10 minutes. So it won't post anything that was posted within the most recent 10

00:45:39 ◼   ► minutes. The idea being that gives me 10 minutes to fix any typos or mistakes before it gets

00:45:44 ◼   ► tweeted. And

00:45:45 ◼   ► Curt Jaimungal it gives Chris Pepper 10 minutes to email

00:45:48 ◼   ► you.

00:45:49 ◼   ► Dave Asprey Exactly. Well, that's actually often what

00:45:51 ◼   ► And an incredible percentage of the mistakes I make, the typos and stuff like that, are

00:45:58 ◼   ► fixed within the first 10 minutes.

00:46:00 ◼   ► And so that's one of the things it does.

00:46:03 ◼   ► And for the most part, this thing has just run and run and run for like 10 years, and

00:46:08 ◼   ► with a few tweaks here and there.

00:46:12 ◼   ► But about a month ago, it just stopped working.

00:46:15 ◼   ► Just nothing.

00:46:19 ◼   ► And I was traveling at the time, and I didn't even notice. And I guess I should have some

00:46:25 ◼   ► kind of—figure out—it's on my list of things to do as I fix this, is to figure out

00:46:30 ◼   ► some way that I can get notified that it hasn't been working. But somebody on Twitter said,

00:46:37 ◼   ► "Hey, is the @DaringFireball account dead? What's going on?" And I look, and I was

00:46:41 ◼   ► like, "Huh. There's like four days of stuff missing." And I couldn't figure

00:46:43 ◼   ► out what was going on. And it was weird. I SSH'd in the machine, and what I could do

00:46:49 ◼   ► is instead of just letting cron run it automatically,

00:46:51 ◼   ► I can just type the name of the script and it should run.

00:46:54 ◼   ► And I have it set up so that when it runs that way,

00:46:56 ◼   ► it prints some useful information for me to read

00:47:00 ◼   ► about what, you know, if it's posting anything

00:47:02 ◼   ► or sees anything.

00:47:04 ◼   ► And it was giving me this weird error

00:47:06 ◼   ► and it didn't really make, it was very unhelpful.

00:47:09 ◼   ► And then I figured it out.

00:47:10 ◼   ► What it was was that,

00:47:13 ◼   ► (laughs)

00:47:18 ◼   ► I'm getting dangerous to you out in the weeds here.

00:47:20 ◼   ► So TLS 1.1 is a standard-- it's part of HTTPS.

00:47:26 ◼   ► So if you're using secure HTTP, TLS

00:47:30 ◼   ► is a newer, more cryptographically secure

00:47:33 ◼   ► version.

00:47:34 ◼   ► The server I was running the script on was so old,

00:47:37 ◼   ► and at the time-- Linux is a lot better now,

00:47:40 ◼   ► where you can do apt-get, update something,

00:47:43 ◼   ► and it'll update the system.

00:47:45 ◼   ► The server I was running this on really couldn't be updated easily.

00:47:50 ◼   ► I would really kind of have to download, take everything, create a new instance with a modern

00:47:56 ◼   ► version of Linux and reinstall everything, which is a lot of work.

00:48:02 ◼   ► But the server had a version of OpenSSL that only did TLS 1.0.

00:48:07 ◼   ► At some point in July, I believe—I still could be wrong on this, but it makes all the

00:48:12 ◼   ► sense in the world that Twitter finally pulled the plug on their APIs for Twitter posting

00:48:18 ◼   ► and no longer accepted TLS 1.0. So I had a server that couldn't speak TLS 1.1 trying

00:48:24 ◼   ► to speak to an API that only spoke TLS 1.1 and forget what I was using to do the actual

00:48:32 ◼   ► posting but was giving me an error message that was not anywhere near as clear along

00:48:38 ◼   ► those lines as you would think.

00:48:40 ◼   ► sounds like programming. Now, here's the part where I bit myself on premature optimization.

00:48:49 ◼   ► What I did 10 years ago is I was keeping all of the tweets that had already been posted

00:48:58 ◼   ► in what in Perl is called a hash, what in a lot of programming environments is called

00:49:04 ◼   ► a—what do you call it? What do you call an array where the indexes are keys?

00:49:09 ◼   ► - A dictionary.

00:49:10 ◼   ► - A dictionary, right.

00:49:12 ◼   ► A lot of programming languages call it a dictionary.

00:49:14 ◼   ► This is a data structure that's very simple.

00:49:16 ◼   ► You have a key and you have a value.

00:49:18 ◼   ► So I could say for the key Brent,

00:49:21 ◼   ► I could say that the value is friend.

00:49:24 ◼   ► This would describe my relationship with people.

00:49:26 ◼   ► And then for the key Amy, the value would be wife.

00:49:31 ◼   ► And then I could look up Amy

00:49:32 ◼   ► and then print the value and it would say wife.

00:49:35 ◼   ► Very simple, very popular,

00:49:38 ◼   ► used in, you know, has different words and all sorts of different languages, but every

00:49:41 ◼   ► modern language has something like this. And then what I did, and here's where I made the

00:49:46 ◼   ► mistake is I thought, well, wait, I want this. I'm going to use this for years and years

00:49:50 ◼   ► to come. I post thousands of articles a year, I think, and I don't know how many articles

00:49:56 ◼   ► I had posted to during fireball as of when I wrote this 10 years ago. But as of now,

00:50:01 ◼   ► I think I'm close to 30,000 or just cross 30,000 total articles posted to during fireball.

00:50:07 ◼   ► This is going to be thousands and thousands of articles, tens of thousands of articles.

00:50:12 ◼   ► Seems like that would be slow.

00:50:14 ◼   ► So I use something in Perl called the TIE, T-I-E, and let you tie a hash to a database

00:50:21 ◼   ► file.

00:50:22 ◼   ► It's like Berkeley DB or something like that.

00:50:24 ◼   ► You give it a file name, and then once you've tied it, it acts a little bit from, at least

00:50:31 ◼   ► in my opinion, it's sort of like the object database in Frontier, where you've got this

00:50:37 ◼   ► hash and every time the script runs, the hash springs back to life and has all of the keys

00:50:44 ◼   ► and values and when this ends, they're all written to that one database file. And so

00:50:51 ◼   ► I don't have to deal with a lot of open and read and read all the lines and close the

00:50:56 ◼   ► file and worry about all the file stuff. Once you have it set up and you run the script,

00:51:00 ◼   ► it just runs and it's magic, right? Sounds great. Well, it turns out, I don't know if

00:51:06 ◼   ► If it's an Andean thing, I don't know.

00:51:08 ◼   ► I think it's more of an old version of the Perl module

00:51:12 ◼   ► that does it.

00:51:13 ◼   ► When I copied that back to my Mac,

00:51:15 ◼   ► I was just, in the meantime,

00:51:16 ◼   ► I was just gonna run it manually from my Mac.

00:51:18 ◼   ► And in fact, that's what I am doing.

00:51:20 ◼   ► The version of Perl on my Mac,

00:51:23 ◼   ► which is a lot more modern

00:51:24 ◼   ► than the one on this 10-year-old server,

00:51:26 ◼   ► could no longer read that DBM file.

00:51:28 ◼   ► And the DBM file, when I opened it in BBEdit

00:51:33 ◼   ► and then tried opening it in like a hex editor.

00:51:36 ◼   ► I could see some of the texts,

00:51:39 ◼   ► but when you open like a binary database,

00:51:42 ◼   ► it's like just a bunch of, it's not human readable.

00:51:44 ◼   ► It's a bunch of gibberish.

00:51:46 ◼   ► So there's probably some way around it.

00:51:48 ◼   ► There's probably some archaic way

00:51:49 ◼   ► that I could write more code and force Perl

00:51:51 ◼   ► to use the old version of the DB file format.

00:51:56 ◼   ► But anyway, I sat there thinking-

00:51:57 ◼   ► - But that sounds like setting yourself up

00:51:58 ◼   ► for future problems.

00:52:01 ◼   ► Well, why didn't I just write it in a simple human readable format? And so I started thinking

00:52:08 ◼   ► about it, and I actually broke the seal on it today because I knew you were going to

00:52:12 ◼   ► be on the show. I thought, "I've got to write this and see it because I want to talk

00:52:14 ◼   ► to Brent about this." And I thought, "Well, what's the stupidest, easiest, most obvious

00:52:19 ◼   ► way that I could do it?" And I thought, "Well, I could do JSON. That's superhuman and readable."

00:52:25 ◼   ► But then I thought, why even do JSON?

00:52:30 ◼   ► But then I thought, ah, but then you're using a JSON library and you have to read everything

00:52:33 ◼   ► into a data structure.

00:52:34 ◼   ► And if there are 30,000 things, why even have a 30?

00:52:37 ◼   ► And then I just sat there thinking and thinking and thinking.

00:52:40 ◼   ► And I thought, well, the dumbest thing I could possibly do is just write them to a log file

00:52:45 ◼   ► and don't even read the whole thing into a data structure.

00:52:48 ◼   ► Just every time there's a new thing, run the whole script, go through the whole log file

00:52:53 ◼   ► line by line and see if it's already been posted. Even if it's 30,000 lines long, maybe

00:52:59 ◼   ► you have to, if you get unlucky, you have to go all 30,000 lines to find the one you

00:53:03 ◼   ► up. Yeah, we already posted it. Don't even read it into a data structure. Never read

00:53:08 ◼   ► more than a line at a time. So I wrote like a test file and I loaded it up with a million

00:53:15 ◼   ► lines. That would be the equivalent if I had a million posts on Daring Fireball, which

00:53:18 ◼   ► I think would take me somewhere around at my pace,

00:53:21 ◼   ► like 300 years.

00:53:23 ◼   ► So it seems like enough.

00:53:24 ◼   ► - I'll still be a reader.

00:53:25 ◼   ► - Yeah, and the whole thing runs in a second.

00:53:27 ◼   ► (laughing)

00:53:28 ◼   ► - Yeah, right.

00:53:29 ◼   ► - Like even in the worst case scenario,

00:53:31 ◼   ► where it has to get to the 999,999 log line of the file,

00:53:36 ◼   ► it runs in less than about a second.

00:53:39 ◼   ► And the actual posting of the tweets to Twitter

00:53:43 ◼   ► takes like two seconds anyway.

00:53:44 ◼   ► So the whole script always took two or three seconds

00:53:47 ◼   ► and I'm only running it every five minutes.

00:53:49 ◼   ► - Right, and there's no user interface, you know,

00:53:52 ◼   ► relying on this, so it's, yeah, that's perfect, yeah.

00:53:56 ◼   ► - And it's literally the stupidest way

00:53:59 ◼   ► you could possibly do it, and it's fine.

00:54:01 ◼   ► - When I was at Userland, Dave Weiner

00:54:05 ◼   ► would have a preference for what he called

00:54:08 ◼   ► low-tech solutions, you know,

00:54:10 ◼   ► and it was exactly things like this.

00:54:13 ◼   ► You know, it turns out this is way faster

00:54:15 ◼   ► you think it is and it's just simple human readable. Yeah, that's the way to go.

00:54:21 ◼   ► I do think that one of the ways that the computing world has changed from the 90s until now, and it's

00:54:28 ◼   ► a way that the Unix world has won out philosophically is that whenever possible, make things human

00:54:39 ◼   ► and readable, whether it's a file format that you're writing

00:54:42 ◼   ► or a network API that you're sending over the wire.

00:54:47 ◼   ► In the '90s, everything was custom binary stuff.

00:54:51 ◼   ► And I mean, I don't remember any apps

00:54:55 ◼   ► other than literally a text editor like BBEdit,

00:54:58 ◼   ► but like in the early '90s, I don't remember any apps

00:55:00 ◼   ► who had a file format that was text.

00:55:02 ◼   ► Like you couldn't open a MacWrite file in a text editor.

00:55:08 ◼   ► everything was binary and network stuff was binary, right?

00:55:11 ◼   ► Like it wasn't like when, you know,

00:55:13 ◼   ► like Apple talk was speaking in plain text

00:55:15 ◼   ► that if you wanted to debug it,

00:55:16 ◼   ► you could just look at what's going over the wire

00:55:18 ◼   ► and read it.

00:55:19 ◼   ► Whereas the Unix philosophy has always been,

00:55:21 ◼   ► when it's feasible, make it as human readable as possible.

00:55:26 ◼   ► And I feel like the whole industry

00:55:27 ◼   ► has come back around on that.

00:55:29 ◼   ► Like JSON is a perfect,

00:55:30 ◼   ► that the rise of JSON is a perfect example of that.

00:55:33 ◼   ► - I remember being so surprised

00:55:38 ◼   ► I first saw the web and learned that it's just a text file behind that page and like and you could

00:55:44 ◼   ► even figure out what things meant you know if you know that h stands for header then h1 is like oh

00:55:49 ◼   ► that's got to be the big one I mean no like holy cow yeah coming from the computing world before

00:55:56 ◼   ► then yeah nothing was that transparent or simple yeah well I remember when I figured out how email

00:56:02 ◼   ► worked that you could, this is before everything was encrypted, you could just log on to the SMTP

00:56:08 ◼   ► server for your host and you would just type email commands and then you can just type the headers.

00:56:15 ◼   ► You would just, you could just, instead of using an email client, you could just talk right to the

00:56:18 ◼   ► SMTP server and just write to colon space Brent. I think I, yeah, I think I did that exactly once

00:56:26 ◼   ► just to prove that like, wow, yeah, Hey, that really works. Well, I did it to send like,

00:56:31 ◼   ► like prank messages to other Drexel students from like the Provo saying that they were on academic

00:56:36 ◼   ► suspension. And see what I did. I did like that. But what I do is I would, you couldn't manually

00:56:42 ◼   ► do it. But you could use AppleScript to make you Dora use a different outgoing email address. Right?

00:56:48 ◼   ► Yeah. But then when I did do it, I in those days, everyone had email signatures, which you Dora

00:56:54 ◼   ► would automatically apply. So I forgot to turn that off. That was the kind of confusing thing.

00:57:01 ◼   ► But yeah. But it was a revelation. It really was though, it I think it not only was a good practice

00:57:10 ◼   ► in terms of debug ability and maintain ability. And hey, this, you know, like, I learned this

00:57:18 ◼   ► lesson before I should I this is why I'm mad at myself that 10 years ago, John Gruber used this

00:57:23 ◼   ► stupid database file for a thing that didn't need to be optimized at all for literally

00:57:29 ◼   ► up to a million entries, let alone the tens of thousands that I would ever get to in practice.

00:57:35 ◼   ► I can't believe I didn't try the obvious thing first. And by ten years ago, I knew that.

00:57:41 ◼   ► I knew better than that, that the person to write comments for when I write scripts and

00:57:49 ◼   ► code is not some hypothetical dummy who might be reading my code, and it's me in the future

00:57:56 ◼   ► because I'm going to forget everything about why I did it this way.

00:57:59 ◼   ► Yes.

00:58:00 ◼   ► Yeah.

00:58:01 ◼   ► I don't really tweak markdown often, but markdown is—my markdown script is fairly

00:58:07 ◼   ► complicated.

00:58:09 ◼   ► But I still think it's very well commented because at least when I do want to change

00:58:13 ◼   ► something or add something and I go in, I'm like, the only way I can figure out what the

00:58:20 ◼   ► hell is going on is by reading the comments. And the comments were all written for me to

00:58:26 ◼   ► read in the future. So they're written with respect for what I think will be my intelligence,

00:58:31 ◼   ► but they're also written knowing you're going to forget everything about how you did this

00:58:35 ◼   ► or why this thing that looks like it doesn't… like it's… why are you doing all this

00:58:40 ◼   ► work here that doesn't look like it needs to be done and here's the comment explaining

00:58:44 ◼   ► what would happen when you didn't do this.

00:58:48 ◼   ► Yeah, right.

00:58:50 ◼   ► Speaking of AppleScript, NetNewswire 5.0, AppleScriptable.

00:58:54 ◼   ► Yeah.

00:58:55 ◼   ► You know, I had a much longer list of things that were going to be in 5.0.

00:58:59 ◼   ► Of course, most of the time I thought it was a 1.0 app and there were a lot of things that

00:59:04 ◼   ► got cut.

00:59:05 ◼   ► But one thing I was adamant about was that AppleScript support had to be in there on

00:59:09 ◼   ► day one. People need to know it's there and to expect it. And a friend of mine named Olaf

00:59:14 ◼   ► Hellman did all of that work and did a great job.

00:59:18 ◼   ► Trenton Larkin One of the... I'd like to talk about that because,

00:59:23 ◼   ► you know, it is in some ways a 1.0 app.

00:59:26 ◼   ► Jon Sorrentino Yeah, it's a 1.0 app in disguise as a 5.0.

00:59:30 ◼   ► Trenton Larkin It's, you know, sort of like a reboot of the

00:59:34 ◼   ► franchise. And you know, that's the, the only real complaints I've seen people writing about

00:59:44 ◼   ► are the obvious things, which is obvious for every 1.0, which is that, well, here's some

00:59:49 ◼   ► feature requests, x, y, and z. And some of them are things that are certainly on the

00:59:53 ◼   ► list. You know, everybody has every app has feature requests that you can't get to all

00:59:58 ◼   ► of them. But some of them, you know, like the obvious one is that right now, net news

01:00:03 ◼   ► wire 5.0 only has one syncing service option, which is Feedbin. If you are a long time or

01:00:13 ◼   ► current user of a different feed syncing service, and there are several and there are a bunch

01:00:17 ◼   ► of good ones, that's obvious. I guess it's not a non-starter. You could decide to just

01:00:23 ◼   ► switch over, but it's probably a non-starter because you want to keep using the iOS app

01:00:29 ◼   ► of choice that you're using for feed reading or something like that. But you have to draw

01:00:34 ◼   ► the line somewhere, right? I mean, this app has been in the works for five years. So,

01:00:40 ◼   ► you know, shipping is an art, right?

01:00:44 ◼   ► Yeah. Yeah. And so yeah, there are so many decisions and calls to make. And luckily,

01:00:50 ◼   ► I've been doing this a long time. So I have some practice at it. So my thinking when it

01:00:56 ◼   ► came to to Feedbin and other syncing systems was I had to have one. I couldn't ship without

01:01:02 ◼   ► anything because if I have one it tells the people even if I didn't do theirs it's the

01:01:08 ◼   ► kind of thing that we'll do. Right. You know that we care about it and you know it's a

01:01:12 ◼   ► matter of adding more rather than doing syncing at all. And it's pretty easy to call to say

01:01:19 ◼   ► yeah we want to add Feedly syncing and fresh RSS and Inoreader and you know basically all

01:01:25 ◼   ► of them because there's no reason not to. The hard work was getting syncing the infrastructure

01:01:33 ◼   ► in the first place and then after that it's really kind of just plugging in the details of

01:01:38 ◼   ► the different APIs. So we'll be able to do the rest with less effort. But then there are so

01:01:46 ◼   ► many feature requests that I'm not sure if they belong in the app or not or like yeah when you

01:01:54 ◼   ► get to that, I think 10% roughly of people probably would like that. So where does that

01:01:58 ◼   ► go on the priority list? There's all kinds of stuff like that. So a lot of decisions

01:02:03 ◼   ► still to make in the future.

01:02:04 ◼   ► Dave Asprey Well, the other big difference between Net

01:02:08 ◼   ► News Wire, this Net News Wire project and previously is that it is an open source project

01:02:15 ◼   ► both in terms of licensing and in terms of actual practice,

01:02:20 ◼   ► where you actually have a community of contributors

01:02:27 ◼   ► who are actually writing a lot of the code, right?

01:02:32 ◼   ► So in theory, you can have an open source app

01:02:35 ◼   ► where you just say, here's my source code,

01:02:36 ◼   ► here's an open source license,

01:02:39 ◼   ► you can download the source code

01:02:40 ◼   ► and do what you want with it,

01:02:41 ◼   ► but there may not be a actual community

01:02:46 ◼   ► contributing to the app.

01:02:48 ◼   ► - Yeah, so that's a whole new thing for me,

01:02:52 ◼   ► learning how to manage that kind of community.

01:02:54 ◼   ► And it's really tons of fun.

01:02:57 ◼   ► I'm enjoying it hugely.

01:02:58 ◼   ► And we've been taking it slow.

01:03:00 ◼   ► We have maybe a half dozen contributors or so by now.

01:03:05 ◼   ► I don't have to manage 40 people or something

01:03:09 ◼   ► working on this all at once.

01:03:11 ◼   ► But yeah, it's interesting.

01:03:16 ◼   ► So one of the things, of course, that can happen is, you know, I might think to myself,

01:03:19 ◼   ► "Well, I'd like Feedly syncing next."

01:03:22 ◼   ► But then someone comes along and says, "Long, I want to do whatever other system first."

01:03:28 ◼   ► And then I'm like, "Okay, go for it.

01:03:30 ◼   ► Start work.

01:03:31 ◼   ► We'll answer any questions, help you out, do it."

01:03:34 ◼   ► And they meant that might happen before Feedly happens, for instance.

01:03:38 ◼   ► So some things really depend on who comes in and what they feel like working on.

01:03:44 ◼   ► The ultimate cause of how things work and what goes in the app or not are still mine,

01:03:49 ◼   ► obviously, but there's an element of serendipity, I guess, I don't know what to call it, just

01:03:54 ◼   ► based on who shows up and who wants to do stuff.

01:03:57 ◼   ► >> One of the interesting technical decisions you made, and I say this, I do most of my

01:04:02 ◼   ► computing for long, I won't go into the details, but lately I do almost all of my

01:04:06 ◼   ► Mac computing on my MacBook. And that is running Mojave, dot latest, but my iMac, just because

01:04:15 ◼   ► of the distance I sit from it and where my eyes are, I don't see it as well. So it's

01:04:20 ◼   ► sort of my podcast station. I'm actually using it right now to podcast. But I'm actually

01:04:28 ◼   ► very conservative about updating. I'm still running 10.13. I've already forgotten what's

01:04:34 ◼   ► the name. I hate it.

01:04:35 ◼   ► Is that high Sierra high Sierra? I?

01:04:37 ◼   ► Hate the names. I really wish they would stay I like that iOS uses numbers because I can I can always tell which one

01:04:45 ◼   ► You know guess what comes after 13 14

01:04:47 ◼   ► Right I really but anyway. I'm running high Sierra net news wire

01:04:51 ◼   ► 5.0 requires

01:04:54 ◼   ► 10.14.6 or later yeah, and

01:04:57 ◼   ► I'm curious of your thinking behind that

01:05:01 ◼   ► Well, we do have to draw the line somewhere there has to be you know a baseline and I think it's actually ten point fourteen point

01:05:08 ◼   ► Four whatever it was the first release where you didn't have to embed the Swift libraries in the app

01:05:14 ◼   ► Hmm, and I think the Swift libraries were bigger than the whole rest of the app combined

01:05:20 ◼   ► You know including the app icon and anything and you know

01:05:23 ◼   ► That's like a pretty good place to start like we can be one of the first apps that you know

01:05:28 ◼   ► You don't need all that. So it's like a five megabyte download. I just I just wonderful

01:05:33 ◼   ► I just double clicked it here on my

01:05:35 ◼   ► High sierra machine and is it you're correct. It is indeed 10.14.4 is the required version

01:05:41 ◼   ► So that to me is also so I get it at a technical level that now

01:05:46 ◼   ► Where I just mentioned that before that you no longer have to embed all these swift libraries. Um

01:05:51 ◼   ► You can make the download smaller

01:05:54 ◼   ► it just is that's just more elegant. But it's also clearly a privilege of being a free and

01:06:02 ◼   ► open source project that you probably if you were intending to sell this for $40 I don't think you

01:06:08 ◼   ► would have drawn the line there. Probably true. That's it. That's tough, though, because in

01:06:14 ◼   ► previous years, I always tended to become more aggressive about requiring the latest OS. And the

01:06:20 ◼   ► And the reason is if supporting the previous version, it's more work, it's more testing,

01:06:28 ◼   ► it's not nearly as inexpensive as people might think.

01:06:32 ◼   ► And so one of the big deals here with NetNewswire is, you know, it is free and open source.

01:06:37 ◼   ► We make no money, everyone's a volunteer, I've got a day job.

01:06:40 ◼   ► I need to be pretty ruthless about what the priorities are.

01:06:45 ◼   ► And supporting an older OS just isn't a priority because that's a problem that kind of solves

01:06:52 ◼   ► itself.

01:06:53 ◼   ► Right?

01:06:54 ◼   ► Every day, there are fewer people still on 10.13.

01:07:00 ◼   ► And so it just didn't...

01:07:02 ◼   ► And it hurts because, hey, I want everyone to use the app, but it just didn't make sense

01:07:06 ◼   ► to make that a priority.

01:07:10 ◼   ► So I wanted to draw the line at 10.14, and then 10.14.4 really ended up being the perfect

01:07:17 ◼   ► spot.

01:07:18 ◼   ► Yeah.

01:07:19 ◼   ► I do think that's one way that the Mac world—I'm not going to say it's worse.

01:07:24 ◼   ► It's different, though.

01:07:26 ◼   ► And I feel like in the old days, a well-written Mac app would run farther back and further

01:07:33 ◼   ► forward without changes.

01:07:37 ◼   ► And I feel like for various reasons, developers are more on the treadmill of requiring across

01:07:45 ◼   ► the board.

01:07:46 ◼   ► And you know, for people who don't know, your day job, you work at the Omni group.

01:07:51 ◼   ► But you're not a developer there anymore.

01:07:52 ◼   ► You are what you do you have a title or you just unofficially product marketing director.

01:07:57 ◼   ► My title is marketing human.

01:07:59 ◼   ► Marketing human.

01:08:01 ◼   ► Yep.

01:08:02 ◼   ► And basically, my job is I write for the blog, I do the podcast.

01:08:06 ◼   ► Right, you know add sponsorships various stuff like that

01:08:10 ◼   ► Interact with users. Yep

01:08:13 ◼   ► But the Omni group

01:08:16 ◼   ► And do you guys have a hard and fast rule?

01:08:19 ◼   ► I mean, I guess it depends on how old the app is that you've got apps that you know

01:08:22 ◼   ► New ones that are more recent and probably cut move the cutoff date and ones that are a little you know

01:08:27 ◼   ► None of them are old. That's one of the

01:08:30 ◼   ► great

01:08:31 ◼   ► achievements of the Omni group that it's that they've sort of been doing this for

01:08:36 ◼   ► 25 years and have never really had like a down cycle or let something languish too long

01:08:42 ◼   ► But how far back do you guys tend to go at the Omni group?

01:08:46 ◼   ► So I think in years past Omni group would go back maybe a couple releases of the OS

01:08:53 ◼   ► I think these days it's more likely to be

01:08:55 ◼   ► Back one. Yeah, I don't know. It's not all in my head

01:08:59 ◼   ► But I think yeah Omni has moved along with the rest of the industry to be a little more aggressive about that

01:09:04 ◼   ► And frankly, you know, it's easier now, but you know back in that hmm. I mean you had to go by

01:09:10 ◼   ► Jaguar right right ten dot two. I mean I remember people lining up outside the App Store

01:09:15 ◼   ► You know to get the new Mac OS release these days, you know, it's just it was also suffer update

01:09:22 ◼   ► It was also expensive. I got I believe the first few updates at Mac OS 10 were like 120 bucks

01:09:27 ◼   ► - Absolutely right.

01:09:29 ◼   ► - Yeah, and people would line up.

01:09:31 ◼   ► - Yeah, they totally would, yeah.

01:09:32 ◼   ► - 120, could you imagine if they,

01:09:34 ◼   ► could you even imagine if like next month,

01:09:37 ◼   ► Apple, Phil Sheeler comes on stage

01:09:40 ◼   ► and he's proud to introduce,

01:09:42 ◼   ► we told you about it at WWDC, here's Mac OS Catalina,

01:09:47 ◼   ► and it's $120. (laughs)

01:09:49 ◼   ► - Yeah, right, and it ships on DVDs.

01:09:51 ◼   ► - I think people would laugh, even if he didn't say DVDs,

01:09:54 ◼   ► Even if you just said it was going to be $120 in the app store, I think the audience would

01:09:59 ◼   ► laugh. I don't even think they would believe them. I think it would play as a gag even

01:10:03 ◼   ► if they were serious. And I think that there's such a high percentage of Apple customers

01:10:10 ◼   ► across all the platforms, including the Mac, which is neat in my opinion when they talk

01:10:16 ◼   ► about how many new to the Mac customers they still have every quarter. I think you would

01:10:22 ◼   ► have a hard time convincing them that 10 years ago we paid $120 to get the new version of

01:10:28 ◼   ► Mac OS X.

01:10:29 ◼   ► Yeah, and not only that, people lined up long lines around the block to get the new Mac

01:10:35 ◼   ► OS. Yeah.

01:10:37 ◼   ► The other another long standing developer, I know you use and love the app, but BB Edit

01:10:42 ◼   ► from barebone software has also and it's just why I've no another app that I've noticed

01:10:47 ◼   ► the trend where BB Edit is—I don't know what its current requirements are, but I think

01:10:53 ◼   ► somewhere, like you said, I think it's pretty much like current minus one. And for similar

01:11:00 ◼   ► reasons. It's just too hard to test, too hard to—almost to put your name behind,

01:11:06 ◼   ► right? Like if you tried to support further back, you don't want—you're not trying

01:11:12 ◼   ► to anger. Like if you have a customer who is very conservative about updating their

01:11:18 ◼   ► system software and they have a Mac running Mac OS 10.12, say, or, you know, I don't

01:11:26 ◼   ► know. My parents' iMac is probably running like 10.12 or something like that. You know,

01:11:32 ◼   ► whether through apathy or whether through just a very conservative nature, which is

01:11:38 ◼   ► very reasonable, right? Especially if you're using machine for, you know, some kind of

01:11:41 ◼   ► of important production stuff and you've got everything working just right and you

01:11:44 ◼   ► know it all just works right and you just don't want to take a chance that updating

01:11:49 ◼   ► the system. And all sorts of stuff does break. I believe Catalina is going to finally break

01:11:58 ◼   ► 32-bit compatibility. So if there are any apps that people depend on that are 32-bit

01:12:06 ◼   ► Mac apps, you better not update to Catalina.

01:12:10 ◼   ► So it's reasonable.

01:12:11 ◼   ► Well, after all these years, Userland Frontier, this is the last OS it runs on.

01:12:16 ◼   ► Because it's a 32-bit app and the work to 64-bit eyes, I don't know what the verb is.

01:12:22 ◼   ► I don't know how to verb it.

01:12:24 ◼   ► 64-bit eyes, that works.

01:12:25 ◼   ► 64-bit eyes is, I'm not going to say impossible, but it's akin to rewriting it, I would guess.

01:12:32 ◼   ► Knowing how old that C code is and how many assumptions there are.

01:12:36 ◼   ► Well, and that that C code is using carbon API's and right. Yeah. So you just start from

01:12:43 ◼   ► scratch. Yeah.

01:12:49 ◼   ► But you know, so you want to respect those customers and you would like to make them

01:12:52 ◼   ► happy. But there's a part of there's a part two that you want to say to them, you just

01:12:56 ◼   ► want to be honest with them and say, I get it, I get why you're still running an old

01:13:01 ◼   ► version of Mac OS. And I respect that. We respect that as a company or whatever. But

01:13:06 ◼   ► we can't stand behind the latest version of our app running on that because we don't have

01:13:09 ◼   ► the resources to test it adequately.

01:13:11 ◼   ► Yeah, that's right.

01:13:12 ◼   ► Right.

01:13:13 ◼   ► So keep running our old version of our app.

01:13:15 ◼   ► Yeah.

01:13:16 ◼   ► And that's what I, you know, people have asked me about menus quite a bit.

01:13:19 ◼   ► And so I say, yeah, I wish I had a better answer for you, but our priorities are with

01:13:24 ◼   ► new features rather than the great amount of work that that would entail.

01:13:28 ◼   ► Right.

01:13:29 ◼   ► And, you know, sooner rather than later, 10.14 is going to be old.

01:13:33 ◼   ► Mm-hmm.

01:13:35 ◼   ► I'm another thing people have commented on with net news where five is that there as

01:13:44 ◼   ► of this moment there's no theming options at all. It's you know articles all render

01:13:51 ◼   ► with this default article theme modern generous font sizes but very very I think it's very

01:13:59 ◼   ► appropriate as the default theme and I find it very readable and I read a lot of stuff

01:14:04 ◼   ► with it every day. But it's also very generic. It is very much along the lines of, you know,

01:14:13 ◼   ► it's using the system font, so it's San Francisco. It's very plain, which I think is great as

01:14:21 ◼   ► a default, but obviously some people would, you know, and NetNewsWire has a history of

01:14:26 ◼   ► supporting themes that you could customize to the full extent of what CSS and HTML allow.

01:14:33 ◼   ► Yeah, so that's something I'd like to get to fairly soon. When that feature first came

01:14:39 ◼   ► out in NetNix Wire 2, people really loved it. And people would make new themes and send

01:14:45 ◼   ► them to me, and some of them I would actually include in the app.

01:14:49 ◼   ► Did you include mine? I think you did.

01:14:51 ◼   ► Yeah, was yours the one that looked like male, basically?

01:14:54 ◼   ► Yeah, sort of.

01:14:55 ◼   ► Yeah, I think I did, yeah.

01:14:57 ◼   ► Yeah, it looked like a cross between male and male smith.

01:14:59 ◼   ► Yeah, okay. Yeah, that was in there.

01:15:01 ◼   ► Yeah.

01:15:02 ◼   ► that was tons of fun and so people really that was just a way to have fun with the app and um

01:15:07 ◼   ► I I you know I love that so there were um yeah that was just a great thing and and I get why

01:15:14 ◼   ► people might not want the you know plain kind of default theme yeah I totally do so I would like to

01:15:20 ◼   ► not only make uh do that feature but make the old net newswire themes compatible so you can use an

01:15:27 ◼   ► old theme file and just, I don't, I don't know. I don't know how that'll turn out, but I don't

01:15:33 ◼   ► know. Give it a try. That's an interesting idea, but I don't know about that. I, it shouldn't be

01:15:39 ◼   ► difficult to find out if it's cool or not. So that's like an evening's work. I suspect.

01:15:43 ◼   ► Do you read more, do you subscribe to more feeds now than you used to about the same or fewer?

01:15:48 ◼   ► In the old days, I used to have around 150. These days I have double that.

01:15:56 ◼   ► Read fewer but the ones who I because and what I've but I what I do is I've unsubscribed

01:16:02 ◼   ► Or stopped subscribing to

01:16:06 ◼   ► Feeds from bigger publications like

01:16:14 ◼   ► Because they don't they don't put the you know, if they don't put the full article in the feeds

01:16:20 ◼   ► I just don't I don't want it. I don't want it. I don't want it

01:16:23 ◼   ► I don't want to use net newswire just to know that there's something new there

01:16:26 ◼   ► It's I really do want to do my reading in the app

01:16:29 ◼   ► right a

01:16:32 ◼   ► Lot of my feeds are from people who blog like once a month or whatever

01:16:35 ◼   ► I mean there are plenty like yours that are more frequent bloggers, but there are people who don't write that often

01:16:41 ◼   ► But when they do I sure want to see it

01:16:43 ◼   ► The old net newswire had a feature that I love

01:16:46 ◼   ► Where I forget what the cutoff was but if a feed hadn't been updated in X

01:16:52 ◼   ► Days. Oh, yeah, right. It would turn the name of the feet Brown. Yes

01:16:57 ◼   ► And people would say oh god, my blog has turned Brown and then whose wire

01:17:01 ◼   ► Any thought to bring a nap back yeah, I've thought about it I

01:17:07 ◼   ► intended to at least have the the old dinosaurs window in in

01:17:13 ◼   ► The new that news wire and I you know, I still might but it got cut for the shipment

01:17:19 ◼   ► But so that was a related feature where you could open up a window that would show you all your dinosaurs

01:17:24 ◼   ► And you could pick whatever last hasn't been updated in 30 days or 90 days or whatever and you could see which ones

01:17:31 ◼   ► were

01:17:33 ◼   ► Apparently dead and you could unsubscribe right from there

01:17:35 ◼   ► But yeah that was related to the brown feeds feature

01:17:39 ◼   ► One of my favorite little things and it was funny because I didn't I guess I noticed it but I only noticed it subliminally

01:17:49 ◼   ► because I didn't complain about it. It was Josh Ginter who wrote the Sweet Set-Up Review

01:18:01 ◼   ► of NetNewswire. I linked to it yesterday when I linked to the NetNewswire announcement.

01:18:07 ◼   ► But he pointed out explicitly that right now there's not a lot of Smart Feed options

01:18:12 ◼   ► in NetNewswire, but one of them is Last Day, which is to me super useful. But he observed

01:18:18 ◼   ► And it's something, like I said, I noticed it subliminally because I hate when software

01:18:22 ◼   ► works the other way.

01:18:23 ◼   ► But last day doesn't mean like from midnight on.

01:18:26 ◼   ► It means like whatever time it is, it's like a rolling 24 hours.

01:18:30 ◼   ► Yeah.

01:18:31 ◼   ► And it's called actually called today.

01:18:33 ◼   ► Yeah.

01:18:34 ◼   ► Like, yeah, we're stretching the meaning.

01:18:36 ◼   ► But yeah, I mean, come on.

01:18:38 ◼   ► I only had a couple of complaints.

01:18:40 ◼   ► As a night owl who does often does read after midnight, you know, like I've trying to think

01:18:47 ◼   ► what apps. I feel like there's a way that I set up a smart—I have a similar smart

01:18:52 ◼   ► mailbox in Apple Mail. But I think that like on iOS where you can't—I could be wrong.

01:18:59 ◼   ► If I'm wrong, forgive me. But I think that on iOS where you can't—you don't customize

01:19:04 ◼   ► your smart feeds. You only get the ones that are built in. There is no customization. The

01:19:10 ◼   ► Today feed cuts off at midnight.

01:19:13 ◼   ► And I hate it.

01:19:14 ◼   ► Oh, it makes me mad all the time.

01:19:16 ◼   ► I'll like check and I'll be like,

01:19:18 ◼   ► "I need to make sure I don't have an email."

01:19:20 ◼   ► I'm like, "I only have 200 emails today, that's great."

01:19:22 ◼   ► And then I realized it's 1205.

01:19:24 ◼   ► (laughs)

01:19:25 ◼   ► And I have like 98 from yesterday

01:19:27 ◼   ► and I have to fish them out.

01:19:29 ◼   ► It's just little things like that

01:19:31 ◼   ► that make me happy about apps.

01:19:33 ◼   ► Like you said, it should be fun to use an app.

01:19:39 ◼   ► And I kind of feel like in some ways we've gotten away from that, even though computers

01:19:46 ◼   ► are more powerful than ever, but I feel like we're not using them for fun. We're using

01:19:49 ◼   ► them for stuff that's not fun, like sandboxing.

01:19:53 ◼   ► Jared: And one of the things that kills me about so many apps these days is despite these

01:19:58 ◼   ► amazingly fast computers, they have gotten so slow. The apps have gotten so slow. It

01:20:05 ◼   ► It just feels like a slog sometimes. So my design goal here was, you know, make it just

01:20:11 ◼   ► freakishly snappy.

01:20:13 ◼   ► Pete: Well, I think you succeeded.

01:20:15 ◼   ► Jared: Thank you.

01:20:16 ◼   ► Pete; One of my other favorite things, and it is a hallmark of NetNewswire, I would have

01:20:20 ◼   ► told you as a friend, I would have taken you aside, had an intervention and told you you

01:20:25 ◼   ► cannot ship without it, is arrow key navigation through the app.

01:20:31 ◼   ► Yep

01:20:32 ◼   ► Which I really I wish could have like I don't understand. I want to go around

01:20:37 ◼   ► Cupertino and bang Apple people's heads and you know

01:20:42 ◼   ► just slap them upside the head and say look at how in this app you can just use these arrow keys and move between pains and

01:20:48 ◼   ► everything happens very fast and

01:20:50 ◼   ► When you go down in the list, you don't have to wait for the next thing to load

01:20:54 ◼   ► It's just as soon as it takes more time to press the button the arrow key button than it does for the view to render

01:21:00 ◼   ► It feels, I always said it makes net news. It makes it feel like you're playing a game to go

01:21:07 ◼   ► through net news wire. It has like the low latency of a game to just move around your articles.

01:21:13 ◼   ► Yeah. Yeah. And all the single key shortcuts. My favorite new one, I don't, I can't believe

01:21:19 ◼   ► I never thought of it before. And someone actually suggested it is to use the N key for next unread.

01:21:24 ◼   ► Oh, I didn't just never had that, but that's new in 5.0. Oh, I like that. Yeah. Yeah. I

01:21:30 ◼   ► I use that all the damn time.

01:21:32 ◼   ► - So one of the things that another hallmark

01:21:34 ◼   ► of net newswire, and it works, it sounds crazy.

01:21:37 ◼   ► And I think back in like,

01:21:39 ◼   ► whenever you first started doing it, 2002, 2003,

01:21:41 ◼   ► it was early on, but you use naked alphabet keys,

01:21:46 ◼   ► or I should say unmodified alphabet keys as shortcuts.

01:21:53 ◼   ► So you don't have to press Command + K to mark a feed.

01:21:57 ◼   ► All the articles is read.

01:21:58 ◼   ► You can just hit K.

01:22:00 ◼   ► - Yeah.

01:22:01 ◼   ► - And so to get to the next article,

01:22:02 ◼   ► you don't have to hit command N

01:22:04 ◼   ► 'cause command N would be new.

01:22:06 ◼   ► I don't know what that would do in that news wire, but.

01:22:08 ◼   ► - New feed.

01:22:08 ◼   ► - Oh yeah, so it's already used,

01:22:10 ◼   ► but you can hit just plain N, no modifier,

01:22:12 ◼   ► which when you first started,

01:22:15 ◼   ► when you first implemented that,

01:22:17 ◼   ► the traditionalist in me,

01:22:19 ◼   ► almost religious, I know what idiomatic Mac software

01:22:26 ◼   ► is supposed to be like,

01:22:28 ◼   ► And part of the reason I love Brent Simmons' work

01:22:33 ◼   ► is that he clearly gets it too.

01:22:34 ◼   ► I remember thinking, did this guy have a stroke?

01:22:36 ◼   ► What is wrong with him?

01:22:37 ◼   ► You can't do that.

01:22:40 ◼   ► But then I tried it before I complained.

01:22:43 ◼   ► And I was like, you know what?

01:22:43 ◼   ► You can do this because it's not really an editing app.

01:22:47 ◼   ► And if you are editing like the name of a feed

01:22:51 ◼   ► or that brief era when NetNewswire actually had

01:22:54 ◼   ► a blog editor built into it,

01:22:57 ◼   ► which eventually was spun out and is still live today as Mars Edit with our friend Daniel

01:23:02 ◼   ► Jowkut at Red Sweater. If you were in an editing view, of course hitting K didn't mark the

01:23:09 ◼   ► current feed on red. It typed K. It somehow seemed wrong to me, and then I realized in

01:23:16 ◼   ► practice as long as they're only active when it makes sense in terms of what currently

01:23:23 ◼   ► has the input focus, it'll never get in the way. And I love it.

01:23:29 ◼   ► [laughs]

01:23:30 ◼   ► I wish.

01:23:31 ◼   ► I mean, the app is basically, in a generic sense, just a database navigation app. So,

01:23:37 ◼   ► yeah, why not make it fast and simple?

01:23:39 ◼   ► I would really like that feature in Mail. I guess it's one of those things where I

01:23:45 ◼   ► could probably—well, see, there's a lot of things you can do with like Keyboard Maestro

01:23:50 ◼   ► or Apple scripts or something like that.

01:23:52 ◼   ► And a lot of times when I think of features where I want to request to somebody and then

01:23:55 ◼   ► I think, "Well, let me see if I can hack it together with Keyboard Maestro," and it works

01:23:58 ◼   ► perfectly and I think, "Well, then I won't bother them."

01:24:02 ◼   ► I wish mail had a next on red command.

01:24:05 ◼   ► I do too.

01:24:06 ◼   ► That's exactly what I'm thinking.

01:24:07 ◼   ► Boy, that would make my life easier where I could just skip through and I don't want

01:24:10 ◼   ► to have to scroll because, you know, it's like sometimes you get these marketing emails

01:24:14 ◼   ► and it's like just to scroll to the bottom is like six hits of the space bar, you know?

01:24:18 ◼   ► Right.

01:24:19 ◼   ► that. I know I don't want to read this. I just want to go next. Next, next, next.

01:24:23 ◼   ► Jared: And maybe another key that deletes it and then goes to the next.

01:24:28 ◼   ► Pete: Yeah. Archives or whatever you kids do today. I like deleting.

01:24:32 ◼   ► Jared; No, deleting is great.

01:24:33 ◼   ► Pete; I think I actually let the domain expire so I can tell the story. I've tried to give up on my

01:24:44 ◼   ► terrible collection of domain names that go unused. Remember, this is back in the same

01:24:51 ◼   ► era, that early 2000s era. Remember when our friend Merlin Mann was talking about inbox

01:24:59 ◼   ► zero? And inbox zero was like a philosophy, a way—a philosophy combined with a series

01:25:07 ◼   ► of strategies to keep your email inbox at zero on reds, and it would make you feel better

01:25:13 ◼   ► about your life. I do it every single day.

01:25:17 ◼   ► I don't. Let's see how many un-reds I have. I wish I could. It would make me feel better.

01:25:25 ◼   ► It actually is a source of anxiety. My four main email accounts have 37 un-red. That's

01:25:33 ◼   ► had. 1,228. 6,408. Nope. It just went up because I launched it. 6,914 and then 13,000. Nope.

01:25:48 ◼   ► 13,600. Nope. The one with 6,000. This tells you how long it's been since I launched mail

01:25:56 ◼   ► on this iMac. What did I say? Was it 6900? It's actually at 7800. I just downloaded 900

01:26:05 ◼   ► emails while we're talking. And I actually declared bankruptcy on that one earlier in

01:26:11 ◼   ► the year where I couldn't bring myself to mark them as red. So what I did is I created

01:26:18 ◼   ► a new mailbox and then selected them all, left the red state as it was and just moved

01:26:24 ◼   ► them to that mailbox out of the inbox. But anyway, there was this inbox zero and it was

01:26:32 ◼   ► a popular thing and I think it was a fine idea. But I registered the domain name select

01:26:38 ◼   ► all delete.

01:26:39 ◼   ► Nice.

01:26:40 ◼   ► And I was going to make a single page website with my... You've heard of inbox zero? Let

01:26:48 ◼   ► Let me tell you about a better way. It's called select all and delete. Step one, select all

01:26:54 ◼   ► messages in the mailbox. Tip, command A. Step two, hit the delete key.

01:27:03 ◼   ► It's going to be easier.

01:27:06 ◼   ► Step three, we'll walk away. Select all delete. I'll tell you what, my feeds stay close to

01:27:16 ◼   ► zero for the most part. I find it very—and it's very different because there's no

01:27:21 ◼   ► spam. There's no email marketing. I don't get marketing messages in RSS. I don't get

01:27:27 ◼   ► pitches from PR companies in RSS. And there's other people, everybody to each their own.

01:27:36 ◼   ► I'm sure some people subscribe to 500 feeds and never, never ever catch up. I know Dave

01:27:42 ◼   ► Dave Weiner, who co-invented, who you worked with and you mentioned before and has done

01:27:47 ◼   ► so much work in terms of actually literally creating the RSS formats and popularizing

01:27:53 ◼   ► the use of them for blogging and helping to create podcasting, etc., etc., is a believer

01:27:59 ◼   ► in what he calls a river of news, where you just subscribe to stuff you're interested

01:28:02 ◼   ► in, put them all in one stream, and just read until you get bored. Scroll down until you

01:28:08 ◼   ► get bored and then come back later and there'll be new stuff at the top, which is sort of

01:28:12 ◼   ► of, I think, how most people read Twitter, right? Yeah, I think so too. I realize that,

01:28:16 ◼   ► you know, I don't know how many other John Siracuses there are who are Twitter completionists,

01:28:21 ◼   ► but I subscribe to way too many feeds in Twitter. To me, Twitter, the success of Twitter,

01:28:27 ◼   ► popularity of Twitter is validation of the Dave Weiner river of news theory. Yeah, I think

01:28:34 ◼   ► Facebook's similarly. Yeah, people just kind of read through the stream until they're bored or

01:28:39 ◼   ► or whatever. Yeah. But that's not how I use RSS. It's how I use Twitter and I'm happy

01:28:43 ◼   ► to use Twitter that way. But I use Twitter where if there's a feed where I feel like

01:28:47 ◼   ► I've got like a lot of unreads and I feel like I don't feel like reading this, I just

01:28:50 ◼   ► unsubscribe. I ruthlessly unsubscribe to RSS feeds these days. Whereas in the early days,

01:28:56 ◼   ► I would just keep adding and maybe just like drag them to the bottom or something. I'm

01:29:00 ◼   ► pretty ruthless about just marking stuff as red, you know, without really looking at it

01:29:06 ◼   ► Mean these things it's not email. It's not addressed to me

01:29:09 ◼   ► I don't have to see it and I can trust the universe that you know, if there's something really important

01:29:14 ◼   ► I'll see it somehow some way so

01:29:16 ◼   ► The K the K button

01:29:19 ◼   ► That's what K stands for. I

01:29:21 ◼   ► Love it. All right. Let me take a break here. I think our second and final sponsor of this episode

01:29:28 ◼   ► Which because it's the end of August is a little abbreviated. It's our friends at Express

01:29:32 ◼   ► VPN

01:29:34 ◼   ► look

01:29:35 ◼   ► VPN virtual private network you ever use a public Wi-Fi network at an airport or

01:29:41 ◼   ► Coffee shop and maybe like your iPhone will warn you when you connect. Oh say hey, this network is not secure

01:29:46 ◼   ► Maybe you look around like a good way to tell you're on a public Wi-Fi network as you go to the sharing sheet and

01:29:53 ◼   ► everybody else in the airport terminal where you are or maybe on the plane like when you're on the go-go thing and the plane and

01:30:00 ◼   ► You see all of these random strangers in the the airdrop list

01:30:05 ◼   ► That's because you're all on the same network and it's not encrypted.

01:30:08 ◼   ► A VPN is a secure encrypted way.

01:30:12 ◼   ► You connect to a VPN, you can use a public network.

01:30:14 ◼   ► Your connection to the internet is over SSL directly to the VPN provider and then everything

01:30:20 ◼   ► else goes through there.

01:30:22 ◼   ► It's all encrypted on the local network and you won't have that problem.

01:30:28 ◼   ► Much more secure.

01:30:29 ◼   ► Some companies require VPNs for obvious reasons to do company work because it's that much

01:30:37 ◼   ► that difference. It's a difference between insecure and secure. But you could use one

01:30:42 ◼   ► and for your own private use and ExpressVPN is a great way to do it. It secures and anonymizes

01:30:48 ◼   ► your internet browsing by encrypting your data and hiding your public IP address from

01:30:52 ◼   ► the sites you visit. So it also helps reduce tracking because sites don't see your IP

01:30:58 ◼   ► they see ExpressVPN's IP address. They've got easy to use apps that run seamlessly in

01:31:04 ◼   ► the background of your computer, your phone, your tablet, and turning on ExpressVPN protection

01:31:10 ◼   ► only takes one click. You don't have to be a network administrator or a computer expert

01:31:16 ◼   ► or security expert to configure weird things. Really, one click, one tap on the phone app

01:31:22 ◼   ► and you're boom, you're connected to ExpressVPN. You can safely surf on public Wi-Fi without

01:31:27 ◼   ► being snooped on or having your personal data stolen. And it costs less than seven bucks

01:31:32 ◼   ► a month to start using it. It's the number one rated VPN service by TechRadar and it

01:31:36 ◼   ► comes with a 30-day money back guarantee. So if you don't like it, cancel it, get your

01:31:41 ◼   ► seven bucks back. Protect your online activity today and find out how you can get three months

01:31:46 ◼   ► free. So in addition to just being seven bucks a month regularly, you can get three months

01:31:50 ◼   ► free by going to ExpressVPN.com/tts. That's ExpressVPN.com/tts, tts for the talk show.

01:32:02 ◼   ► And you'll get three months free when you sign up for a one-year package. Let me do

01:32:07 ◼   ► some follow-up. I gotta get this off my chest. I don't want to bore you. Did you listen to

01:32:13 ◼   ► the show with Dalrymple? I think you did because we talked about NetNewswire.

01:32:15 ◼   ► Yeah, I did. I kind of spaced out during some of the apple card. Yes. Well, guess what?

01:32:20 ◼   ► That's what the follow ups about. Excellent. All right. Here's a problem I had with apple

01:32:25 ◼   ► card. And I talked about it with Jim, which was that I signed up for apple card. And the

01:32:31 ◼   ► signup was just as easy as promised. And boom, there it is in my in my phone's wallet app.

01:32:38 ◼   ► The day after I recorded with Jim, doorbell rang and FedEx or UPS or somebody put an envelope

01:32:44 ◼   ► through the mail slot and there was my actual card had the actual physical titanium card.

01:32:51 ◼   ► But the one thing I didn't have was an easy way to switch my Apple stuff to use Apple

01:32:56 ◼   ► card and that was one of the reasons I signed up for the card was because you you get your

01:33:00 ◼   ► iTunes purchases or like I pay 10 bucks a month for iCloud storage. I want all that

01:33:06 ◼   ► stuff on the Apple card. I get 3% cash back. There was no easy way to do it. What I had

01:33:11 ◼   ► to do and I talked about it last week was the only way I could see to do it was to go

01:33:15 ◼   ► in and enter the credit card number, the 16 digits and the expiration and the secret CV

01:33:21 ◼   ► V code all manually like a like an animal. And then it just showed up in my list as a

01:33:26 ◼   ► quote, MasterCard with a generic MasterCard logo instead of Apple card. I can verify that

01:33:33 ◼   ► while I was in that state, I was still getting 3% cash back on Apple purchases, but it didn't

01:33:40 ◼   ► seem right. Anyway, long story short, I reached out to Apple and top people on the Apple,

01:33:48 ◼   ► Apple hard table, uh, looked into it. And the problem was that I'm one of the old, old

01:33:54 ◼   ► farts who has two Apple IDs in active views. Actually I have a bunch of Apple IDs, Mike,

01:33:59 ◼   ► my Apple developer connection, one's a separate one, but I've got an iCloud account, which

01:34:04 ◼   ► I use for like iCloud storage and iMessage and all of that. It's a Mac.com address, but

01:34:13 ◼   ► I don't use that for iTunes. I signed up for iTunes way back when using a daring fireball

01:34:18 ◼   ► address and I suspected that might be the problem, but the real problem is that I didn't

01:34:26 ◼   ► have two factor authentication on the store account. I only turned on two factor for the

01:34:32 ◼   ► iCloud account. Oh, God, this is tedious, john. It is tedious. It's probably a bad idea.

01:34:39 ◼   ► But my thinking was, what do I really care about? With two factor? I don't want to get

01:34:43 ◼   ► hacked. I don't want anybody hacking my email. I don't want anybody hacking my iCloud backups.

01:34:50 ◼   ► You know, I've got important data in iCloud. I don't really care if my iTunes account gets

01:34:55 ◼   ► hacked. What are people going to do watch the movies I've already bought? No, I don't

01:35:00 ◼   ► care? Are they going to buy a movie that I don't want? Well, then I'm going to get

01:35:04 ◼   ► the notification from my credit card and I'm going to see that it was fraud and they'll

01:35:09 ◼   ► take care of it, right? There's not as much downside. And I felt very confident that my

01:35:13 ◼   ► password was adequately secured. It's a unique password that I don't use anywhere

01:35:18 ◼   ► else. But anyway, Apple Pay doesn't work without Two-Factor. And so the fact that I

01:35:24 ◼   ► this split account was the thing. And once I turned two-factor on the other account,

01:35:31 ◼   ► I was able to add the Apple Card magically the way you're supposed to. So there you go.

01:35:37 ◼   ► Nice update on that story. The other thing is I said, "Hey, wouldn't it be nice if you

01:35:41 ◼   ► could use your Apple Cash to pay your Apple Card credit balance?" Turns out you can do

01:35:49 ◼   ► this but I didn't realize it because the only way it's exposed is when you go into the Wallet

01:35:54 ◼   ► app, you click your Apple card, and you click Pay Early. Instead of waiting for your bill

01:36:00 ◼   ► to be due and getting a notification, you can just pay it off whenever you want. If

01:36:04 ◼   ► you pay now, you get the little slide-up sheet from the bottom that says, "Here, confirm

01:36:08 ◼   ► it." You can switch the source of your payment in that sheet from your bank account to your

01:36:14 ◼   ► Apple Cash card. Even if you only have $5 on your Apple Cash card, you can just put

01:36:20 ◼   ► it right towards your Apple credit card. I didn't realize it because I hadn't tried

01:36:24 ◼   ► to pay the card, so I didn't realize that it was there. I was just looking at the section

01:36:29 ◼   ► where you can add bank accounts. I thought, "Wouldn't it be nice if you could add

01:36:32 ◼   ► your Apple cash card?" So anyway, you can do that.

01:36:36 ◼   ► And then last but not least, I was talking to Jim about a guy who I remember fondly from

01:36:43 ◼   ► the '90s on the Home Shopping Network who would yell and scream at you to buy baseball

01:36:49 ◼   ► cards and tell you you would regret this for the rest of your life. A couple of listeners

01:36:57 ◼   ► remember him fondly as well and they have better memories than me. They remember his

01:37:00 ◼   ► name. His name was Don West. He apparently was also involved with pro wrestling up in

01:37:05 ◼   ► Canada, which tells you a lot about his attitude. So, I'm going to put a link in the show notes

01:37:11 ◼   ► to a YouTube video. You can watch him doing his thing. You're going to think I was drunk

01:37:18 ◼   ► high to have enjoyed watching this on a nightly basis and you'd be right. And then also, Will

01:37:25 ◼   ► Farrell…

01:37:26 ◼   ► This deal makes no sense.

01:37:28 ◼   ► Exactly. You're going to regret this for the rest of your life. SNL had a series of

01:37:33 ◼   ► skits in the '90s where Will Farrell played him and they're hilarious, including one

01:37:40 ◼   ► where instead of selling baseball cards, they're selling Star Wars memorabilia and then they

01:37:46 ◼   ► they they're trying to sell Mark Hamill for $80,000. Well, that's

01:37:53 ◼   ► a discount. Yeah. So there's that's it for follow up. Trying

01:38:01 ◼   ► to think what else is going on here. I still can't get Apple

01:38:03 ◼   ► cash set up on my phone. Why bugged? I don't know. I you know,

01:38:07 ◼   ► there's big button to press, I press the button, turns into a

01:38:11 ◼   ► little spinny spins for a while, then turns back into a button.

01:38:14 ◼   ► Do you have two factor on it?

01:38:15 ◼   ► Yeah, no, probably.

01:38:18 ◼   ► I don't know.

01:38:18 ◼   ► That would be my sentence.

01:38:21 ◼   ► I know, but I, yeah, I'm pretty sure I do.

01:38:23 ◼   ► You would think at some point it would tell me there was an error and what it was.

01:38:27 ◼   ► Nah, just spins, gives up.

01:38:31 ◼   ► Um, do you see that, uh, breaking news before we started recording that Jack

01:38:35 ◼   ► Dorsey's Twitter account was hacked?

01:38:37 ◼   ► I just saw the headline, but no, no details.

01:38:40 ◼   ► I'm, I'm delighted wrongly.

01:38:43 ◼   ► it should, you know, that's a terrible thing. Yeah, because it could be it could be anybody.

01:38:49 ◼   ► Well, there's one part there's one particular person who and I even when I wrote about it on

01:38:54 ◼   ► during fireball, there's one particular person who I'm terrified of having his Twitter account hacked.

01:38:59 ◼   ► Because I believe it could literally lead to like, a shooting war. Sure. Yeah, yeah.

01:39:05 ◼   ► So if we know that is if Jack Dorsey's Twitter account could be hacked, I, I worry I sincere,

01:39:13 ◼   ► I don't think it's an overblown concern. I mean, Jack Dorsey, I think, understands how

01:39:17 ◼   ► Twitter works a lot better than the other guy I'm thinking of.

01:39:21 ◼   ► Yeah.

01:39:22 ◼   ► And so, if he could be hacked and somebody could spew a bunch of racial nonsense or whatever

01:39:28 ◼   ► they were posting, I think it would be pretty… You got to worry that it's possible that

01:39:33 ◼   ► you know whose Twitter account could be hacked and somebody could post something truly dangerous.

01:39:40 ◼   ► So I want to laugh.

01:39:42 ◼   ► Yeah, but I kind of am laughing. I would be delighted, this should not happen, if the

01:39:50 ◼   ► president's account were hacked and somebody came on and started like posting rational,

01:39:55 ◼   ► non-racial nonsense. It just seemed like presidential and good.

01:40:02 ◼   ► I would salute that. I mean, that would be-

01:40:04 ◼   ► But honestly, no, don't do it.

01:40:07 ◼   ► to it. But I'm trying to think. It's the end of August. There's not a lot of news.

01:40:14 ◼   ► What about the—I know everybody's talking about it. Jim and I talked about these rumors.

01:40:20 ◼   ► I'll bring it up with you, and then I'll leave it alone until we find out if it actually

01:40:24 ◼   ► ships. But the whispers on the street that Apple might be in some way with some products

01:40:30 ◼   ► returning to the six-color Apple logo.

01:40:32 ◼   ► Yeah, I wonder, I mean, I do walk the streets a lot and I hear people talking as they walk

01:40:38 ◼   ► by. Yeah, I don't know. I saw that. I saw the events and that would be cool. But weren't

01:40:45 ◼   ► there only five colors in that?

01:40:46 ◼   ► No, it's six.

01:40:47 ◼   ► It is six? Okay.

01:40:48 ◼   ► Yeah. And that's actually where our friend Jason Snell's sixcolors.com comes from.

01:40:54 ◼   ► Yeah, right. Sure. Yeah.

01:40:57 ◼   ► the, and they do go in rainbow order. It's just that they like bit shifted by two. And

01:41:04 ◼   ► so instead of starting at like red, orange, yellow, green, blue, violet, they, uh, uh,

01:41:13 ◼   ► starts with green at the top and then it's got blue at the bottom.

01:41:17 ◼   ► Eric Michael Rhodes I would like to see Apple just kind of return

01:41:20 ◼   ► to more color, uh, in general. Like I have mail open in one of my computers right now

01:41:25 ◼   ► I'm looking at the sidebar, which is gray on corpse blue

01:41:30 ◼   ► and like, yeah, they used to be able to use colors

01:41:34 ◼   ► for things and that it was actually really nice.

01:41:36 ◼   ► - Yeah.

01:41:38 ◼   ► - I mean, it's been this like,

01:41:39 ◼   ► it seems like the post linen era where everything

01:41:41 ◼   ► has to be just kind of blue, gray and--

01:41:44 ◼   ► - Monotone.

01:41:46 ◼   ► - Yeah.

01:41:46 ◼   ► - Right, and even when they use a different color,

01:41:48 ◼   ► like in the notes app, everything is yellow.

01:41:50 ◼   ► - Yeah, right.

01:41:51 ◼   ► - I hope so too.

01:41:54 ◼   ► I feel like the pendulum has to swing back on that.

01:41:56 ◼   ► And I actually think it's interesting.

01:41:58 ◼   ► And you've always been, I mentioned this,

01:42:00 ◼   ► but like NetNewswire 5 looks very, very much

01:42:03 ◼   ► like a 2019 Mac app should,

01:42:06 ◼   ► but there's a little bit of color in those toolbar icons.

01:42:11 ◼   ► - And it goes out of its way to highlight

01:42:14 ◼   ► the feed icons coming from all over.

01:42:16 ◼   ► - Right.

01:42:17 ◼   ► - And that adds an awful lot of liveliness to it too.

01:42:19 ◼   ► - But I think it's sort of telling about how far

01:42:22 ◼   ► to the extreme, the current aesthetic is that NetNewswire 5 counts as a colorful Mac app.

01:42:29 ◼   ► Right?

01:42:30 ◼   ► true. Yeah. Right. Yep.

01:42:34 ◼   ► You know, and I don't want to blame everything on Johnny Ive, but I blame Johnny Ive.

01:42:39 ◼   ► Well, because it's his fault.

01:42:42 ◼   ► Right. I can't help it. You know, and I, you know, I don't know how far in advance is,

01:42:48 ◼   ► his exit from the company, retirement, whatever you want to call it, was known. How much of

01:42:55 ◼   ► this was still up in the air when they were making the decisions for what iOS 13 and MacOS

01:43:01 ◼   ► 10.15 Catalina. See, I can't even remember the goddamn numbers. But I can't help but

01:43:08 ◼   ► feel that if there's going to be some kind of post-Johnny Ive pendulum swing in the other

01:43:15 ◼   ► direction it wouldn't have been this year. It'll start next year.

01:43:19 ◼   ► Oh sure, yeah. Yeah, that makes sense.

01:43:22 ◼   ► Anything else that you wanted to talk about before we sign off for this Labor Day weekend?

01:43:30 ◼   ► No. I guess there's an Apple event coming up. We've got new OS's. People seem to be having a

01:43:37 ◼   ► rock—developers are having kind of a rocky summer. And I don't know what to say about that. Some

01:43:42 ◼   ► summers are easier than others. That's kind of the thing I keep hearing about most though.

01:43:46 ◼   ► I guess my friends are developers. Yeah.

01:43:49 ◼   ► Yeah. And I feel like the Mac is in an interesting state. And without getting, I don't want to

01:43:55 ◼   ► make it political because I don't think it should be political, but with Catalina, Catalina

01:44:00 ◼   ► catalyst, which is the UI kit, you know, bring your iPad apps to the Mac technology that

01:44:08 ◼   ► they sort of preannounced last year so that they could ship their own home and news and

01:44:14 ◼   ► voice recorder apps, and now it's going to be part of Mac OS 10.15. It's sort of weird,

01:44:23 ◼   ► and there's people arguing on Twitter about whether that's the future of the Mac and whether

01:44:28 ◼   ► SwiftUI is the future of the Mac. And in the meantime, AppKit, aka good old-fashioned Cocoa,

01:44:34 ◼   ► just keeps rolling along.

01:44:36 ◼   ► Yeah, I mean, I just wrote a app with it. That's really, really good. AppKit is super.

01:44:44 ◼   ► You did mention, you mentioned that one of the reasons for drawing the line in the sand

01:44:48 ◼   ► at 10.14.4 was that's where you didn't need to embed the Swift libraries. That means,

01:44:53 ◼   ► of course, that you use Swift to write either all or most of NetNewsWire 5. I actually don't

01:44:59 ◼   ► even know. I know you used it to some degree, but...

01:45:03 ◼   ► The actual application user interface code, much of what's in the frameworks, there's

01:45:08 ◼   ► some really, really old stuff like the stuff I started with, the RSS parser, like whatever

01:45:13 ◼   ► four years ago, that's written in Objective-C. But pretty much everything else is Swift.

01:45:19 ◼   ► And what are your opinions on it? After now having dug your teeth in and used it to write

01:45:24 ◼   ► a real app that is actually shipping?

01:45:29 ◼   ► Swift is, it's a lot of fun.

01:45:33 ◼   ► Sometimes it's like driving a hot rod,

01:45:35 ◼   ► but then you just like run into a brick wall

01:45:37 ◼   ► at 80 miles an hour.

01:45:39 ◼   ► So that's kind of fun until that moment,

01:45:43 ◼   ► but you know, you get up, shake it off,

01:45:45 ◼   ► go back down at 80 miles an hour or whatever.

01:45:49 ◼   ► So it's a lot of fun.

01:45:49 ◼   ► I still, it's a lot prettier to look at than Objective-C,

01:45:55 ◼   ► but I still find Objective-C's philosophy,

01:45:59 ◼   ► the way it works under the hood,

01:46:01 ◼   ► to be beautiful in a way that I don't find in Swift.

01:46:07 ◼   ► Swift's amazing, but Objective-C,

01:46:10 ◼   ► not on the page but under the hood, is lovely.

01:46:14 ◼   ► And not even its implementation necessarily,

01:46:16 ◼   ► but the concept, message passing,

01:46:19 ◼   ► and all that kind of stuff inherited from Smalltalk.

01:46:22 ◼   ► I think, yeah, that just really appeals to me.

01:46:25 ◼   ► - This completely dynamic runtime

01:46:27 ◼   ► that you can sort of mess with in unforeseen ways,

01:46:33 ◼   ► or could at least in the old days,

01:46:35 ◼   ► which was definitely what small talk was all about.

01:46:40 ◼   ► - Yeah, and the idea wasn't-

01:46:41 ◼   ► - Says me who never wrote a line in small talk in his life.

01:46:45 ◼   ► - Yeah, and it's not about,

01:46:46 ◼   ► you could use it for like evil, stupid hacks.

01:46:49 ◼   ► It's actually about, you know, it's really about writing applications in the most elegant way possible.

01:46:56 ◼   ► And Objective-C was such a compromise, right?

01:46:59 ◼   ► Because it's that kind of small talky stuff, but with C, which is such the opposite thing, all combined into one.

01:47:07 ◼   ► And that, you know, that made for a deeply strange language.

01:47:12 ◼   ► But the Objective-C part was really, really, really cool.

01:47:17 ◼   ► And it was great for writing apps.

01:47:18 ◼   ► I mean, you know, we talked earlier about 2002, I'm working on that news wire.

01:47:22 ◼   ► And the thing was, the Coco framework was amazing

01:47:25 ◼   ► and so far beyond anything that that I'd ever seen.

01:47:29 ◼   ► And it was and it was built on the capabilities of Objective C.

01:47:33 ◼   ► In fact, all our apps still are even even the ones written in Swift.

01:47:37 ◼   ► You know, we're still using app kit and UI kit and whatever.

01:47:40 ◼   ► And those are those are Objective C frameworks.

01:47:44 ◼   ► Right. Until Swift UI has years to sort of

01:47:48 ◼   ► I'm not saying you can't use it now, but it's early days and it's such a massive undertaking.

01:47:56 ◼   ► Until SwiftUI really can supersede AppKit and UIKit, that's still going to be the case.

01:48:03 ◼   ► Yeah, and that's going to be a while.

01:48:05 ◼   ► It looks to me like Apple's got the right attitude.

01:48:08 ◼   ► You still have a host of AppKit or UIKit, and then you can use SwiftUI where it makes

01:48:13 ◼   ► sense to and where it actually works.

01:48:15 ◼   ► And so that's what we'll be doing.

01:48:16 ◼   ► And so gradually, over time, we'll have a more and more SwiftUI universe.

01:48:21 ◼   ► And that's cool.

01:48:23 ◼   ► I like that.

01:48:24 ◼   ► It's a testimony to the genius of the original Next frameworks, which date back to 1989,

01:48:32 ◼   ► 1990, just how philosophically they're still aligned with the way that things still work

01:48:38 ◼   ► and are useful and feel modern today.

01:48:41 ◼   ► I mean, how many ways of making computers do X, Y, and Z in 1990 are still applicable

01:48:48 ◼   ► today?

01:48:49 ◼   ► Yeah, right.

01:48:50 ◼   ► Good point.

01:48:51 ◼   ► I mean, maybe there's some command line stuff at the C level that still hasn't changed

01:48:56 ◼   ► much.

01:48:57 ◼   ► But in terms of building rich applications, boy, there's not a lot.

01:49:01 ◼   ► I mean, I'm sure Adobe has frameworks that probably go back that far internally.

01:49:08 ◼   ► It's really remarkable.

01:49:13 ◼   ► Before we sign off, Brent, got any plans for Labor Day? I guess that hopefully this episode

01:49:17 ◼   ► will come out tomorrow. People can listen to it as they barbecue. What better way to

01:49:20 ◼   ► enjoy fun with your family than listening to us talk about RSS Reader?

01:49:25 ◼   ► Yeah, absolutely. I mean, that's what the holidays are for, RSS.

01:49:29 ◼   ► Gather the kids.

01:49:30 ◼   ► Me, I'm going to go drink and eat with some family members. So yeah, I've got a good

01:49:35 ◼   ► day.

01:49:36 ◼   ► Yeah, we've got a good forecast here. Beautiful weather. If I could have—if it was technically—well,

01:49:41 ◼   ► I guess it is technically feasible to podcast from outside. If it was acoustically pleasing

01:49:49 ◼   ► to record a podcast while outside, I'd have done this from my deck because it is absolutely

01:49:55 ◼   ► positively peak Philadelphia weather. Nice and warm, nice and sunny.

01:49:59 ◼   ► Not too muggy?

01:50:01 ◼   ► No, it's really nice. It's really—

01:50:04 ◼   ► Good.

01:50:05 ◼   ► I don't know what happened to the humidity,

01:50:07 ◼   ► but it's like September came early.

01:50:10 ◼   ► - Cool.

01:50:11 ◼   ► - Anyway, enjoy the holiday.

01:50:11 ◼   ► My best to Sheila.

01:50:13 ◼   ► - Thank you.

01:50:15 ◼   ► - And it's always good to have you on.

01:50:16 ◼   ► I'm gonna make sure that we don't go another full year.

01:50:18 ◼   ► I'm gonna make sure Skype never tells me

01:50:20 ◼   ► it's been more than a year.

01:50:21 ◼   ► - I've turned brown in your Skype.

01:50:23 ◼   ► (laughing)