PodSearch

ATP

123: Imperfect Signaling Mechanism

 

00:00:00 ◼   ► So this is the show, right?

00:00:01 ◼   ► I guess our first sponsor--

00:00:02 ◼   ► [LAUGHTER]

00:00:03 ◼   ► If you want to, feel free.

00:00:05 ◼   ► It's been 18 minutes.

00:00:06 ◼   ► I guess we might as well.

00:00:07 ◼   ► I thought you were going to cut all this out.

00:00:09 ◼   ► [BEEPING]

00:00:11 ◼   ► Mere two or three days ago, we were talking about bit code

00:00:15 ◼   ► and how it may or may not allow Apple to change CPU

00:00:20 ◼   ► architectures.

00:00:21 ◼   ► I was coming down on the side of mostly not,

00:00:24 ◼   ► because bit code is an LLVM thing,

00:00:25 ◼   ► and LLVM IR actually is architecture

00:00:28 ◼   ► specific in certain ways, but I didn't have details

00:00:31 ◼   ► on what those ways were.

00:00:32 ◼   ► Bruce Holt on Twitter sent some information about that.

00:00:36 ◼   ► He said it's architecture specific in the same way

00:00:40 ◼   ► that C code might be, so you know when you specify int

00:00:43 ◼   ► or float or pointers or whatever in C,

00:00:46 ◼   ► the C standard doesn't dictate what size those are,

00:00:49 ◼   ► the size is dependent on the target architecture

00:00:52 ◼   ► that you're compiling for.

00:00:53 ◼   ► I mean these days, you know, they're all similar sizes

00:00:55 ◼   ► for 64-bit architectures and stuff,

00:00:57 ◼   ► But the C standard doesn't dictate what size those should be, which is why you should do

00:01:02 ◼   ► size of int and all that good stuff and not just assume that it's 16 or 32 or 64, same

00:01:06 ◼   ► thing with like float and double or whatever.

00:01:09 ◼   ► And so when the Clang compiler outputs LVM intermediary code, it burns in the sizes.

00:01:17 ◼   ► It has to nail down the sizes of every single thing.

00:01:19 ◼   ► So at that point it makes the decision.

00:01:21 ◼   ► And those decisions about the sizes and potentially also the alignment of structs and stuff like

00:01:25 ◼   ► that is made at the time the IR is generated. And after that, if you go to a different CPU

00:01:30 ◼   ► architecture, we said this about ending this, it's a similar thing, but if you go to a different CPU

00:01:34 ◼   ► architecture after that, it's too late. The sizes have already been determined, so the bitcode is not

00:01:39 ◼   ► portable across CPU architectures in that way. And I asked, well, what if you...

00:01:46 ◼   ► could you create LVM IR that is more neutral? He said, well, if you didn't use the types that

00:01:53 ◼   ► instead of indeterminate sizes everywhere you could.

00:01:55 ◼   ► And I was wondering like if Swift nailed down the sizes

00:01:57 ◼   ► of everything to a specific architecture

00:01:59 ◼   ► that it wouldn't make much of a difference,

00:02:00 ◼   ► but I guess you still have alignment issues

00:02:02 ◼   ► and stuff like that.

00:02:03 ◼   ► Anyway, so thanks for the details on that.

00:02:06 ◼   ► I would still love to see like nitty gritty source code,

00:02:11 ◼   ► like, you know, show me some sample programs,

00:02:13 ◼   ► compile them to different architectures

00:02:14 ◼   ► and show me how the bit code is or whatever.

00:02:15 ◼   ► I'll do that on my own.

00:02:16 ◼   ► If I was writing an article about,

00:02:18 ◼   ► say the new version of OS 10,

00:02:20 ◼   ► I would somehow find a way to incorporate

00:02:22 ◼   ► a big long section about bitcode.

00:02:24 ◼   ► Because hey, I did it with Swift

00:02:25 ◼   ► and it's not really OS 10 related.

00:02:26 ◼   ► But I'm not, so now I'm just kind of winging it

00:02:28 ◼   ► and collecting feedback from people on Twitter and stuff.

00:02:31 ◼   ► But yeah, like I said last week,

00:02:33 ◼   ► it seems like at this point it's much more about

00:02:36 ◼   ► taking advantage of new instructions

00:02:39 ◼   ► or new register sets or new vector units

00:02:41 ◼   ► or being able to ditch old instructions

00:02:44 ◼   ► when they're not useful anymore.

00:02:46 ◼   ► I'm sure there's lots of stuff in ARM7 and ARM7S

00:02:48 ◼   ► that Apple does not want to support forever.

00:02:51 ◼   ► And so or whatever the heck the watch is based on.

00:02:53 ◼   ► I don't even know if the, is the watch,

00:02:54 ◼   ► you might know this, Marco, is the watch ARM7S

00:02:56 ◼   ► when you do target for the watch?

00:02:58 ◼   ► - I think I saw something that it was ARM7K,

00:03:01 ◼   ► whatever that is.

00:03:02 ◼   ► - Oh yeah, yeah, I remember that.

00:03:04 ◼   ► - It was probably from Steve Trout and Smith

00:03:06 ◼   ► from his various poking around and tweets

00:03:08 ◼   ► and hacking and everything.

00:03:09 ◼   ► I'm pretty sure he had like a,

00:03:10 ◼   ► like a dump screen showing up like what,

00:03:12 ◼   ► what is, what this is running on this thing.

00:03:14 ◼   ► And it was, I think it was V7K,

00:03:15 ◼   ► but I don't really know what that is.

00:03:17 ◼   ► - Yeah, and I don't think anybody knows yet

00:03:19 ◼   ► like exactly what the S1 is. Is it like a little mini A5 or an A6 or is it some weird

00:03:25 ◼   ► hybrid? I haven't seen anything about that. Have you guys?

00:03:27 ◼   ► No. I heard rumors that it was somewhere around A4, A5, but no one really has codified that.

00:03:34 ◼   ► I don't know who all is hacking it besides Steve Trouton Smith. I'd be curious to see

00:03:38 ◼   ► something like Geekbench or some known benchmark run on it so that we can try to guess where

00:03:45 ◼   ► it fits on that spectrum.

00:03:46 ◼   ► I was thinking of someone slicing the top off and aiming a microscope or whatever they

00:03:50 ◼   ► do, you know, like to actually see what it looks like inside there. Someone eventually

00:03:54 ◼   ► does that.

00:03:55 ◼   ► Yeah, but like, hasn't, didn't Chipworks try that and they're basically like, well, it's

00:03:58 ◼   ► some cores and you know, we can't really tell. I don't think we even know if it's dual core

00:04:02 ◼   ► or not.

00:04:03 ◼   ► I mean, I guess you could, yeah, you could kind of tell what the family lineage of it,

00:04:07 ◼   ► maybe if it has the exact same layout and it's just a shrink, you could tell. But anyway,

00:04:10 ◼   ► What I'm getting is that the S1 potentially uses some architecture decisions from a long

00:04:18 ◼   ► time ago and that Apple has grand plans for the future and would love to, say, replace

00:04:22 ◼   ► one multiply add instruction with a much better multiply add instruction or a vector instruction

00:04:28 ◼   ► or some other thing.

00:04:30 ◼   ► And if the watch is bit code from day one, they can do that and no one has to recompile

00:04:34 ◼   ► their apps.

00:04:35 ◼   ► They will just abandon, you know, the S3 will not even include that old crappy instruction,

00:04:38 ◼   ► will only include new ones and there'll be no problem because they will just retarget

00:04:43 ◼   ► the bitcode that everyone uploads.

00:04:44 ◼   ► One theory I heard that I think is really interesting and possibly might explain, because

00:04:49 ◼   ► if you look at this, as we keep learning more about bitcode, mostly from you, and as we

00:04:55 ◼   ► keep seeing things like this is really not going to enable things like an automatic ARM

00:05:00 ◼   ► Mac transition, stuff like that, is it worth all this complexity and potential risk for

00:05:06 ◼   ► for whatever they wanna do with it,

00:05:08 ◼   ► if it's not gonna be something big

00:05:09 ◼   ► like an architecture change.

00:05:10 ◼   ► And one interesting theory I heard was that

00:05:13 ◼   ► rather than just being able to run apps on new,

00:05:17 ◼   ► little instruction tweets like that,

00:05:19 ◼   ► that they actually might be able to use

00:05:21 ◼   ► the app library that's out there

00:05:23 ◼   ► to test while developing new instructions,

00:05:26 ◼   ► 'cause they can change the architecture,

00:05:28 ◼   ► 'cause they have that ARM license to do that.

00:05:31 ◼   ► And so if they add their own instructions

00:05:34 ◼   ► or if they are actually changing the chip design,

00:05:38 ◼   ► they will now have a body of apps that they can then

00:05:42 ◼   ► tweak to use their new things and see

00:05:45 ◼   ► during the development stage to use that and say,

00:05:47 ◼   ► "Is this optimization worth it?"

00:05:48 ◼   ► And they can actually design the chip

00:05:51 ◼   ► to fit the apps that are out there in the world

00:05:53 ◼   ► and to benefit them most,

00:05:55 ◼   ► which I think is really interesting.

00:05:56 ◼   ► And that, I think, is a much more sizable advantage

00:06:02 ◼   ► than just being able to have a little bit faster vector

00:06:04 ◼   ► things once things actually already out there

00:06:06 ◼   ► when the instructions were developed

00:06:08 ◼   ► like in a black box somewhere.

00:06:10 ◼   ► - They already have, I think, a very good body of code.

00:06:13 ◼   ► Like it's nice that they can test against real world

00:06:15 ◼   ► third party apps in case third party apps

00:06:17 ◼   ► are doing weird stuff and maybe Apple doesn't have

00:06:19 ◼   ► as many games or whatever, but I think they have

00:06:21 ◼   ► an adequate code, because that's what they've been doing

00:06:23 ◼   ► with all the things, all the A, whatever chips they've made.

00:06:26 ◼   ► They use their own applications, they use the OS itself,

00:06:28 ◼   ► they use their own frameworks.

00:06:30 ◼   ► Like I don't think they're hurting

00:06:31 ◼   ► some code to test against. I think it's nice that they have the third-party code there,

00:06:34 ◼   ► but I wonder, like, with millions of apps, like, how do they even decide what counts

00:06:37 ◼   ► as representative? Do they even know, I guess maybe they know the most downloaded apps,

00:06:42 ◼   ► but do they know, they don't know how many apps are still launched. I don't know if they

00:06:45 ◼   ► even can...

00:06:46 ◼   ► Well, they do if people opted in, because that's all in the app analytics stuff on iTunes

00:06:49 ◼   ► Connect. But it only applies to people who opted into that checkbox on startup that says,

00:06:53 ◼   ► "Share data with Apple and developers."

00:06:54 ◼   ► Do they know how long they run them and stuff? Like, I'm wondering how they even pick a representative

00:06:58 ◼   ► sample. But anyway, yeah, more testability and more like real-world testability is good,

00:07:03 ◼   ► but that's what they've always been doing with their chips is they're designed in concert with

00:07:07 ◼   ► everything else that they do to improve things for their OS, for their frameworks, for the

00:07:14 ◼   ► applications that they run and their users run. I mean, wouldn't it make sense if they just grabbed,

00:07:19 ◼   ► say, Facebook, Twitter, Snapchat, and I can't even think of what else. But, you know, there's

00:07:24 ◼   ► got to be the same five to ten apps that are on probably like 90% of all iPhones. And obviously

00:07:31 ◼   ► the statistics are made up. But you know, if you grab just five or ten apps, you would

00:07:35 ◼   ► probably get an overwhelming amount of the usage of an average person's iPhone. I mean,

00:07:41 ◼   ► most average people spend an inordinate amount of time probably in messages, which obviously

00:07:46 ◼   ► they have the code for, and Facebook. You know? And so whatever the kids these days

00:07:51 ◼   ► are using. I'm sure if they had that and a couple other things, that would make a big

00:07:56 ◼   ► difference and it would prevent the, "Oh, here's a new version of iOS. Oh, and by the

00:08:01 ◼   ► way, Facebook doesn't work," because for whatever reason, they're too slow to update.

00:08:04 ◼   ► Eric Meyer I think those apps, though, probably end up

00:08:06 ◼   ► in Apple's framework code most of the time. That's why I mentioned games, because games

00:08:09 ◼   ► are the ones that are going to use the least of Apple's framework code, and they're also

00:08:14 ◼   ► the thing that Apple doesn't really have any of to test, and I think they're a very popular

00:08:17 ◼   ► genre of application on all of Apple's iOS devices.

00:08:21 ◼   ► So things like Facebook and Twitter, I would imagine spend most of their time in like UI

00:08:27 ◼   ► kit, core animation, all sorts of things that Apple controls.

00:08:31 ◼   ► It's nice to be able to say, "Oh, let's test the actual Facebook app."

00:08:33 ◼   ► But then again, Facebook could change its apps totally and have the paper app was all

00:08:37 ◼   ► crazily architected and stuff.

00:08:39 ◼   ► So there's only so much you can hang your head on with third-party stuff.

00:08:41 ◼   ► But yeah, like I said, more apps is better.

00:08:44 ◼   ► And one more thing, we haven't gotten this feedback yet,

00:08:46 ◼   ► but we just want to say it so it's preemptively clear.

00:08:50 ◼   ► Whether or not Bitcode helps Apple,

00:08:54 ◼   ► what could potentially help Apple with a transition

00:08:57 ◼   ► of say, Max to ARM, it doesn't matter, Bitcode or not.

00:09:01 ◼   ► If Apple wants Max to go to ARM, it can do it.

00:09:03 ◼   ► It has done it before.

00:09:04 ◼   ► You don't need Bitcode to change architectures.

00:09:07 ◼   ► None of this rules out Max going ARM

00:09:10 ◼   ► at some point in the future.

00:09:11 ◼   ► So I don't want someone to listen to this and say,

00:09:13 ◼   ► Remember when Bitcode came out

00:09:14 ◼   ► and you said the Macs would never go ARM?

00:09:15 ◼   ► We totally are not saying that.

00:09:17 ◼   ► - I might say that.

00:09:19 ◼   ► - Well, whatever.

00:09:20 ◼   ► I think it's, I'm saying feasibility.

00:09:21 ◼   ► I'm saying it's still totally possible.

00:09:23 ◼   ► Because we didn't have Bitcode

00:09:25 ◼   ► for the 68K to PowerPC transition.

00:09:27 ◼   ► And you know, for the PowerPC to x86,

00:09:30 ◼   ► like it is not something that Apple needs to have.

00:09:34 ◼   ► Bitcode does not need to be part of their transition.

00:09:36 ◼   ► If they decide they're gonna transition,

00:09:38 ◼   ► they can still do it the quote unquote old fashioned way.

00:09:40 ◼   ► And we've talked about this a million times in the fast

00:09:42 ◼   ► and it's gonna be harder than it was

00:09:43 ◼   ► in the previous transitions, and what are the upsides,

00:09:45 ◼   ► and what are the downsides, and blah, blah, blah.

00:09:47 ◼   ► So I would say bitcode is neutral

00:09:49 ◼   ► as far as max changing architecture

00:09:51 ◼   ► or anything in the future.

00:09:52 ◼   ► - Well, but again, I would say, you know,

00:09:54 ◼   ► don't forget that whenever we've had

00:09:56 ◼   ► the architecture changes in the past,

00:09:57 ◼   ► they've come with large performance increases.

00:10:00 ◼   ► And in this case, it probably wouldn't.

00:10:03 ◼   ► So that has afforded us luxuries like

00:10:06 ◼   ► translation layers and virtualization and emulation

00:10:09 ◼   ► that were possible in the previous ones

00:10:12 ◼   ► that would be unrealistic in the current environment

00:10:16 ◼   ► if going to ARM.

00:10:17 ◼   ► - But you're defining performance as speed.

00:10:20 ◼   ► What if performance is defined in the future as battery life?

00:10:23 ◼   ► So yes, you're right that you would lose speed,

00:10:26 ◼   ► especially when running x86 stuff,

00:10:28 ◼   ► but what if batteries double or triple in capacity,

00:10:32 ◼   ► not necessarily because of the batteries themselves,

00:10:34 ◼   ► but because ARM is so much better on batteries

00:10:38 ◼   ► than Intel is?

00:10:39 ◼   ► I actually think you're right,

00:10:41 ◼   ► but for the sake of playing devil's advocate,

00:10:43 ◼   ► it very well could be that Apple in the future

00:10:45 ◼   ► measures performance more by battery life

00:10:47 ◼   ► than it does raw speed.

00:10:48 ◼   ► - I mean, it's possible, but again,

00:10:50 ◼   ► I think the issue there would be,

00:10:53 ◼   ► if you have an ARM CPU running x86 code

00:10:57 ◼   ► in some kind of emulation layer,

00:10:59 ◼   ► even if the CPU is inherently more efficient,

00:11:03 ◼   ► which as we've discussed in the past,

00:11:04 ◼   ► Intel has a process advantage over lots of people,

00:11:07 ◼   ► but even if it's more efficient,

00:11:10 ◼   ► you still have the ARM CPU basically working its butt off

00:11:13 ◼   ► to emulate the x86 functionality.

00:11:15 ◼   ► So you'd have the CPU in a very high power state

00:11:17 ◼   ► most of the time, so I think that it would be

00:11:20 ◼   ► a rough transition.

00:11:21 ◼   ► Now Apple could just say,

00:11:22 ◼   ► "Hey, we're making this new line of Macs

00:11:25 ◼   ► "that a lot of people are gonna buy,

00:11:27 ◼   ► "and you better just recompile your apps to work on it

00:11:30 ◼   ► "because we just won't emulate x86.

00:11:32 ◼   ► "x86 just won't work on them.

00:11:33 ◼   ► "And if you want your app to be running on these,

00:11:35 ◼   ► you better just change it.

00:11:37 ◼   ► And they might be willing to do that

00:11:39 ◼   ► and take the risk that people might not buy the thing.

00:11:41 ◼   ► But ultimately, I think another big problem for ARM Max,

00:11:46 ◼   ► as we're seeing the direction of the ports ding

00:11:52 ◼   ► and the buses, (laughing)

00:11:54 ◼   ► a big problem for ARM Max is the lack of Thunderbolt.

00:11:59 ◼   ► Because if USB 3 is now being tied into Thunderbolt,

00:12:04 ◼   ► which it functionally might be,

00:12:06 ◼   ► and if Thunderbolt peripherals become very commonplace

00:12:09 ◼   ► and very much in demand, granted,

00:12:12 ◼   ► as we see from the MacBook One,

00:12:14 ◼   ► a lot of people don't need a lot of peripherals.

00:12:16 ◼   ► And you can have computers that are not compatible

00:12:19 ◼   ► with most or any peripherals in the market,

00:12:21 ◼   ► and they can sell okay,

00:12:23 ◼   ► but that's another huge mark against our Macs.

00:12:27 ◼   ► Again, they could make them,

00:12:29 ◼   ► but if they are not compatible with all of the cool stuff

00:12:33 ◼   ► that we're gonna have over USB-C, Thunderbolt 3.1,

00:12:36 ◼   ► whatever, in the next couple years,

00:12:39 ◼   ► and they probably can't be,

00:12:40 ◼   ► 'cause I think Intel really owns that whole thing

00:12:42 ◼   ► and is not going to let it go, then that's a problem.

00:12:46 ◼   ► And that might prevent our Macs from ever being

00:12:49 ◼   ► anything more than the MacBook One role in the lineup.

00:12:54 ◼   ► And the MacBook One, as we see now,

00:12:57 ◼   ► is already fine with Intel chips.

00:13:00 ◼   ► It wouldn't be that much faster with an ARM chip

00:13:04 ◼   ► if it had to keep the same battery life,

00:13:05 ◼   ► it might even be slower.

00:13:07 ◼   ► And we haven't even seen Skylake yet.

00:13:08 ◼   ► Skylake might be coming out in six months or a year,

00:13:11 ◼   ► and allegedly Skylake is gonna be a big deal

00:13:14 ◼   ► for power consumption, so like,

00:13:15 ◼   ► Intel might really step up the game again

00:13:17 ◼   ► in six months or a year and leap even further ahead,

00:13:21 ◼   ► or at least maintain its lead in practicality

00:13:24 ◼   ► and performance and everything.

00:13:25 ◼   ► So, I just, I don't see a future of ARM Macs,

00:13:29 ◼   ► I really don't.

00:13:30 ◼   ► I think it's something that everyone talks about,

00:13:33 ◼   ► this rumor unicorn of, "Oh, wouldn't this be great?

00:13:35 ◼   ► "We'd have infinite battery life."

00:13:37 ◼   ► And the truth is, not only would it not be that great,

00:13:40 ◼   ► not only would it not have as good a battery life

00:13:42 ◼   ► as you think to get the kind of performance we would need

00:13:44 ◼   ► to make it usable, but also,

00:13:47 ◼   ► even if it gave us tons of extra battery life,

00:13:50 ◼   ► Apple would just delete more of the battery

00:13:53 ◼   ► and make the thing thinner and lighter.

00:13:55 ◼   ► (laughs)

00:13:55 ◼   ► They wouldn't give us a computer that lasted a week.

00:13:59 ◼   ► would just give it a much smaller battery and say, "Look, we made it thinner!" Because

00:14:02 ◼   ► that's what they do. So it's this pipe dream, I think, that it probably won't ever happen,

00:14:08 ◼   ► and if it ever happens, I don't think it would really be that compelling.

00:14:12 ◼   ► You know, I actually think you make a really great point about Thunderbolt not really being

00:14:16 ◼   ► a thing on ARM, but if the MacBook One, if that is positing the theorem or presenting

00:14:24 ◼   ► the theorem that ports aren't really that big a deal anymore. And if a lot of people

00:14:30 ◼   ► are buying the MacBook One, then does not having Thunderbolt really matter?

00:14:33 ◼   ► - Yeah, I don't know. It depends. I mean, if you look at things they do in the laptop

00:14:39 ◼   ► lineup, everything they do, even at the low end, you can tell that they are like, they're

00:14:44 ◼   ► doing this to move forward into the future, right? Looking at the MacBook One, it is a

00:14:51 ◼   ► there is a very, very high chance that the things

00:14:55 ◼   ► about the MacBook One will propagate up the lineup

00:14:58 ◼   ► into whatever the MacBook Air is, or if it goes away,

00:15:01 ◼   ► it'll just skip that and then go to the MacBook Pro, right?

00:15:04 ◼   ► And so if the MacBook One doesn't,

00:15:07 ◼   ► I mean, next year, I'm sure the MacBook One

00:15:09 ◼   ► will support Thunderbolt over USB-C and whatever,

00:15:11 ◼   ► but if they made an ARM Mac at the bottom that didn't,

00:15:15 ◼   ► I think that would signal the imminent end

00:15:18 ◼   ► of Thunderbolt support.

00:15:20 ◼   ► that would be like, all right, well,

00:15:20 ◼   ► this is the beginning of the end for Thunderbolt, right?

00:15:22 ◼   ► And I don't think they're gonna do that yet.

00:15:24 ◼   ► And maybe in the future they can do that.

00:15:26 ◼   ► You know, once Thunderbolt is old and crusty

00:15:27 ◼   ► and something else comes along

00:15:29 ◼   ► that maybe can be powered by an ARM chipset,

00:15:32 ◼   ► maybe that time will come, you know,

00:15:34 ◼   ► on an infinite time scale.

00:15:35 ◼   ► But, you know, for the next, I don't know,

00:15:38 ◼   ► five years or whatever, I don't see it happening.

00:15:40 ◼   ► - You can always just buy Intel,

00:15:41 ◼   ► give the money back to the shareholders,

00:15:43 ◼   ► shut down the PC industry, just use their fabs

00:15:46 ◼   ► and their technology, yeah.

00:15:48 ◼   ► Yeah, we've talked about this in many past shows.

00:15:50 ◼   ► If you think this was an incomplete discussion

00:15:52 ◼   ► of Intel versus ARM on the Mac, you're right.

00:15:54 ◼   ► I don't know what the old show numbers were,

00:15:56 ◼   ► but suffice it to say that we've talked about this a lot.

00:15:58 ◼   ► The only point I wanted to make was that bitcode is neutral.

00:16:02 ◼   ► Does not help, does not hurt.

00:16:04 ◼   ► So whatever analysis we had before

00:16:06 ◼   ► and whatever view we have on it now, bitcode is not,

00:16:10 ◼   ► I assume you would agree, Marco,

00:16:11 ◼   ► bitcode is not a factor in your analysis

00:16:14 ◼   ► of whether or not ARM on the Mac makes sense.

00:16:16 ◼   ► - Not at all, no.

00:16:17 ◼   ► I don't think it's relevant really in the slightest because it doesn't enable that to

00:16:23 ◼   ► happen easily and all the other problems don't really have anything to do with the software.

00:16:29 ◼   ► I would say that Apple having sort of their "their own compiler" being like the driving

00:16:35 ◼   ► force behind LLVM and Clang and all that stuff and having their own language, those are positive

00:16:42 ◼   ► factors in any CPU architecture change in the future.

00:16:45 ◼   ► And arguably, as they make their new ARM chips or iOS devices, they are sort of "changing

00:16:51 ◼   ► architectures" because, like, you know, the architecture is ARM7, ARM7S, ARM7K, those

00:16:55 ◼   ► aren't the same as going from ARM to x86, but Apple is changing architecture and it

00:16:59 ◼   ► is important.

00:17:01 ◼   ► It does make it easier for them to make those changes.

00:17:03 ◼   ► The fact that they own and control all of this, or not really own, I don't know how

00:17:07 ◼   ► to phrase this, but the fact that they are the driving force behind their own compiler

00:17:11 ◼   ► and now their own language,

00:17:12 ◼   ► and it has all these neat features.

00:17:13 ◼   ► That does help them do these little things,

00:17:15 ◼   ► which is kind of the point of bit code,

00:17:16 ◼   ► but not as so much a factor in huge leaps

00:17:20 ◼   ► from ARM to Intel.

00:17:22 ◼   ► - Well, I think it also helps that as time goes on,

00:17:26 ◼   ► more people are writing more code in higher level ways

00:17:30 ◼   ► where the byte order and the alignment of a struct

00:17:34 ◼   ► and the exact byte size of an integer

00:17:37 ◼   ► doesn't matter as much anymore.

00:17:39 ◼   ► People are writing higher level code like in Swift

00:17:40 ◼   ► and other languages that are not C-based.

00:17:43 ◼   ► And they still have access to some of those things

00:17:46 ◼   ► in certain places, but usage of them, I think,

00:17:49 ◼   ► is going down a lot overall.

00:17:51 ◼   ► And so when Apple eventually needs to make that transition

00:17:53 ◼   ► to some other architecture, where they have to make a change

00:17:56 ◼   ► in something like by order or is word size still a thing,

00:18:01 ◼   ► or struct alignment, stuff like that,

00:18:03 ◼   ► if they have to make a change that would be

00:18:05 ◼   ► beyond the abilities of bit code to iron over,

00:18:08 ◼   ► I think it would not be as painful as it was in the past

00:18:13 ◼   ► for software developers.

00:18:15 ◼   ► - All right, so speaking of Swift,

00:18:16 ◼   ► tell us about Swift 2, Jon.

00:18:19 ◼   ► - This is just a minor point that I forgot to get to

00:18:21 ◼   ► on the last show where we talked about Swift 2,

00:18:24 ◼   ► and that is that the people making Swift 2,

00:18:28 ◼   ► and Swift 1 and the whole deal,

00:18:29 ◼   ► the people who are making that language,

00:18:31 ◼   ► and the people who are making Clang and LLVM,

00:18:33 ◼   ► for that matter, what those people do all day is,

00:18:36 ◼   ► yes, they talk about language features

00:18:38 ◼   ► and decide what the Swift language is going to look like, but the compiler people, they're

00:18:43 ◼   ► writing C++ code all day.

00:18:45 ◼   ► That's what their job is, because Clang and LVM are not written in Swift.

00:18:50 ◼   ► Clang and LVM are written in C++.

00:18:52 ◼   ► I don't know if there's any C component at all.

00:18:54 ◼   ► Anyway, they're programming in C++ all day, and that's got to be kind of annoying.

00:19:00 ◼   ► I was thinking, wouldn't it be neat if Swift is supposedly this language that can scale

00:19:04 ◼   ► from writing an operating system all the way up to writing a GUI application, and all the

00:19:08 ◼   ► way over to writing just one-off scripts and stuff, which is the stated goal of the language.

00:19:14 ◼   ► Wouldn't it be nice if you could write LLVM and Clang in Swift as well?

00:19:17 ◼   ► Which would be nice, but is not currently the case.

00:19:20 ◼   ► And then people...

00:19:22 ◼   ► It's the awkward situation of if the people who are designing your language are not using

00:19:26 ◼   ► your language primarily to do their work, it's not the end of the world, because obviously

00:19:31 ◼   ► the people who are designing Swift are using Swift

00:19:33 ◼   ► to do many things, if only to write the test suite

00:19:35 ◼   ► and all sorts of other stuff.

00:19:36 ◼   ► But the term I had in the notes for this is self-hosting,

00:19:40 ◼   ► which I think is the wrong term.

00:19:41 ◼   ► But whatever the term is for--

00:19:43 ◼   ► - No, no, I thought that's right.

00:19:45 ◼   ► - Maybe, I don't know.

00:19:46 ◼   ► I looked at the Wikipedia page for it

00:19:47 ◼   ► and I read the definition they had there

00:19:49 ◼   ► and it didn't seem exactly right.

00:19:50 ◼   ► But anyway--

00:19:51 ◼   ► - They believe it's called freebooting.

00:19:53 ◼   ► - You're making up these terms now?

00:19:55 ◼   ► - Nope, that's a real word.

00:19:56 ◼   ► - All right, well anyway, I rather than use the term for it,

00:19:59 ◼   ► which I'm not sure, I'm just going to explain the thing.

00:20:01 ◼   ► I think it would be great if the people who are working on the Swift language could also

00:20:06 ◼   ► write the Swift compiler in Swift and Clang and LLVM in Swift, because that would really

00:20:10 ◼   ► prove the sort of lower end of Swift's usefulness.

00:20:16 ◼   ► That would be a proof of concept for the language.

00:20:18 ◼   ► See, we can use this language to write the compiler, the compile-sys language, and compile-sys

00:20:22 ◼   ► language.

00:20:23 ◼   ► In fact, this is a great language to write compilers in.

00:20:25 ◼   ► That has not yet been demonstrated as far as I'm aware.

00:20:29 ◼   ► We don't know where Apple is using Swift because they're super secretive and stuff, and it's

00:20:32 ◼   ► not open source yet, so other people aren't using it, but I think that would be cool.

00:20:36 ◼   ► And I think the people designing Swift would like it too, because if they liked C++ so

00:20:40 ◼   ► much, they wouldn't have made Swift.

00:20:41 ◼   ► They would have just said, "Hey, the new language for Apple's developers is C++," and then everyone

00:20:44 ◼   ► would have had an aneurysm.

00:20:48 ◼   ► It's so true.

00:20:50 ◼   ► I could swear-- and I don't have a link handy--

00:20:54 ◼   ► but I could swear that several years ago, Mono, which is an

00:20:59 ◼   ► open source cut on the C# compiler, it declared itself

00:21:05 ◼   ► as self-hosting.

00:21:06 ◼   ► So that's why I think you were right, which means that in

00:21:10 ◼   ► order to compile code in Mono, you use a compiler written in

00:21:14 ◼   ► Mono, which is just--

00:21:16 ◼   ► that's weird.

00:21:19 ◼   ► But so I'm pretty sure that self-hosting is exactly what you're looking for.

00:21:24 ◼   ► Yeah, that's the term I've heard when people talk about Perl 6, because the Perl 6 parser

00:21:29 ◼   ► and language syntax is written in Perl 6 and all sorts of stuff like that.

00:21:33 ◼   ► But yeah, it's a fun hall of mirrors.

00:21:34 ◼   ► It's not that crazy, like what do you think C compilers are written in?

00:21:37 ◼   ► Usually written in C, right?

00:21:39 ◼   ► Yeah, it just melts my head thinking about that.

00:21:42 ◼   ► So weird.

00:21:43 ◼   ► Our first sponsor tonight is MailRoute.

00:21:46 ◼   ► Go to mailroute.net/ATP to see more about this.

00:21:51 ◼   ► Here's what this is.

00:21:52 ◼   ► So mailroute, if you can imagine a world without spam,

00:21:54 ◼   ► viruses, bounced email, all this stuff,

00:21:56 ◼   ► mailroute is basically an SMTP proxy for you.

00:22:00 ◼   ► So they accept your inbound mail.

00:22:02 ◼   ► You point your MX records to mailroute.

00:22:04 ◼   ► So they accept your mail from the internet.

00:22:07 ◼   ► And then they do a bunch of spam and virus filtering on it.

00:22:10 ◼   ► And then they deliver to your email server

00:22:13 ◼   ► only the good stuff.

00:22:14 ◼   ► So you still run your own server.

00:22:16 ◼   ► If you have a company, if you host it yourself,

00:22:20 ◼   ► if you run a server for your office or whatever,

00:22:23 ◼   ► you still run your email server.

00:22:25 ◼   ► Mail route, you put it as a middleman

00:22:27 ◼   ► between the internet and your mail server.

00:22:29 ◼   ► And it filters out so much stuff

00:22:32 ◼   ► that then your email server is relieved, first of all.

00:22:35 ◼   ► So I've heard stories of companies that had to have

00:22:38 ◼   ► six email servers for a big office,

00:22:40 ◼   ► and they can go down to one, and it's mostly idle.

00:22:44 ◼   ► They can do so much for you, and it scales all the way

00:22:48 ◼   ► from big companies like that all the way down

00:22:50 ◼   ► to individuals.

00:22:51 ◼   ► Now, I've used Mailer out for a few months now, at least,

00:22:55 ◼   ► for a while, and I really like it a lot.

00:22:58 ◼   ► Like, I always heard that Gmail had the best spam filtering,

00:23:02 ◼   ► and I've never used Gmail.

00:23:03 ◼   ► I use Fastmail, which is an IMAP post,

00:23:06 ◼   ► and they're a typical IMAP post,

00:23:08 ◼   ► and if they ever start to suck,

00:23:09 ◼   ► or if they get bought by Google,

00:23:11 ◼   ► I can just change to a different IMAP post,

00:23:12 ◼   ► and it's fine, or I can run my own.

00:23:14 ◼   ► That's how I like to live with IMAP.

00:23:17 ◼   ► (laughs)

00:23:18 ◼   ► Big part of my life apparently.

00:23:20 ◼   ► So that's how I like to live.

00:23:21 ◼   ► Putting mail, and all these IMAP posts and everything,

00:23:23 ◼   ► they all can run like spam assassin and stuff like that.

00:23:25 ◼   ► Like you can run your own spam filters.

00:23:27 ◼   ► I've done it, I've used other people's, they're decent.

00:23:31 ◼   ► But mail routes, in my experience, is just better.

00:23:34 ◼   ► I don't know all that they're doing,

00:23:36 ◼   ► I just know that it's better.

00:23:38 ◼   ► And there's all sorts of cool features that are involved,

00:23:39 ◼   ► like I have a configuration that they send me

00:23:43 ◼   ► email digest every few days with what they call the quarantine, which is messages they

00:23:48 ◼   ► think are probably spam, but they're not quite sure, and they just send you one email that

00:23:53 ◼   ► just has a list of them, and little links next to it that say that you can write from

00:23:56 ◼   ► that email if they misclassified something that is legitimate as spam, there's a little

00:24:01 ◼   ► link right there that you can tap to whitelist that sender so they never consider that spam

00:24:04 ◼   ► again. It's very easy to customize this, very easy to tweak it to your setup, but honestly,

00:24:10 ◼   ► it doesn't require that much tweaking.

00:24:12 ◼   ► Like, it is so good.

00:24:14 ◼   ► I think putting mail route in front of any IMAP post,

00:24:17 ◼   ► like FastMail or whoever else that you want to use,

00:24:20 ◼   ► it makes it world-class for spam fighting.

00:24:22 ◼   ► When I hear all about how Gmail's so good at spam filtering,

00:24:25 ◼   ► I don't feel like I'm missing out,

00:24:26 ◼   ► because I see my spam filtering as so incredibly good

00:24:30 ◼   ► that I really feel good about it.

00:24:32 ◼   ► So anyway, let me see.

00:24:33 ◼   ► So there's no hardware or software to install or maintain.

00:24:35 ◼   ► As I said, this is a cloud service.

00:24:38 ◼   ► They just receive your mail

00:24:39 ◼   ► and then redeliver it to you filtered out.

00:24:41 ◼   ► They support all sorts of words,

00:24:42 ◼   ► most of which I don't know what they mean.

00:24:44 ◼   ► LDAP Active Directory TLS, I know that one.

00:24:46 ◼   ► Mail bagging, thanks Relay.

00:24:48 ◼   ► Outbound Relay and everything you'd want

00:24:51 ◼   ► from people handling your email.

00:24:53 ◼   ► To remove spam from your life for good,

00:24:55 ◼   ► go to mailroute.net/ATP for a free trial

00:24:59 ◼   ► and if you use this link, mailroute.net/ATP,

00:25:01 ◼   ► you get 10% off for the lifetime of your account.

00:25:05 ◼   ► So every, you know, whatever, every year,

00:25:07 ◼   ► whatever they bill you, it's always 10% off.

00:25:09 ◼   ► You just get a lower price forever.

00:25:11 ◼   ► That's pretty cool.

00:25:12 ◼   ► Mailroute.net/ATP, remove spam from your life for good.

00:25:15 ◼   ► Thanks a lot to Mailroute.

00:25:17 ◼   ► - All right, so real-time follow-up,

00:25:18 ◼   ► I'm looking at the Mono C# compiler page,

00:25:22 ◼   ► which we'll put a link in the show notes.

00:25:24 ◼   ► MCS was able to parse itself on April 2001.

00:25:28 ◼   ► MCS compiled itself for the first time on December 28, 2001.

00:25:32 ◼   ► MCS became self-hosting on January 3, 2002.

00:25:36 ◼   ► So obviously there's some differences here and I don't know what they are but self hosting was at least in the right direction

00:25:41 ◼   ► John figure up so fast. I know it's so sad

00:25:44 ◼   ► Anyway, John tell me speaking of growing up. Tell me about your nose

00:25:48 ◼   ► This I meant to tweet this back at

00:25:53 ◼   ► WWDC with the actual day count

00:25:55 ◼   ► But I had my new Apple watch for I believe less than a week before I touched it with my nose for the first time

00:26:03 ◼   ► And I didn't do it like you know I was not I

00:26:06 ◼   ► Only realized after I had done it that hey you just touched your watch with you know

00:26:10 ◼   ► So it was like three or four days so nose touching is the thing just wanted to put that out

00:26:16 ◼   ► I haven't done it since but it was a situation

00:26:18 ◼   ► I was holding a bunch of stuff and you know and like a notification came in or something yeah

00:26:22 ◼   ► So if I recall correctly we decided that Mike was wrong about the six plus

00:26:29 ◼   ► But we are deciding unequivocally that Mike was right about nose tapping

00:26:33 ◼   ► I'm not willing to assign nose tapping to one person as the creator or

00:26:38 ◼   ► Discoverer of that concept had I never known that nose touching was a thing

00:26:41 ◼   ► I assure you I would have still touched it with my nose. So and speaking of not assigning one person

00:26:47 ◼   ► To a concept that is broader than that. Someone just tweeted at me that the oculus

00:26:54 ◼   ► CEO I think our founder or whatever described the iCalus as the Palm Pilot of VR and mentioned that

00:27:01 ◼   ► It's not the iPhone of VR. There is no iPhone of VR blah blah blah when I was away from ATP guest hosting on rocket

00:27:09 ◼   ► We talked about VR and I believe at that point I

00:27:11 ◼   ► compared the current just the current status state of

00:27:16 ◼   ► VR to the Palm Pilot

00:27:18 ◼   ► Saying that it's kind of feasible. It's better than the Newton but nothing is the iPhone of VR yet

00:27:24 ◼   ► Did I coin that phrase or did I read an interview with the oculus CEO from six months ago where he said the exact same thing?

00:27:30 ◼   ► I think it's much more likely that I read an interview from six months ago and that the CEO has been saying that using the same

00:27:36 ◼   ► analogy on all of his press and funding tours for years

00:27:39 ◼   ► So I also do not take credit for this unless I really was the first person to say in which case yay me

00:27:44 ◼   ► But I'm pretty sure he probably said it and I probably read it years ago. It's still apt though. It's a good analogy

00:27:49 ◼   ► So in conclusion Mike was right in conclusion Mike does not own the nose

00:27:53 ◼   ► (laughing)

00:27:55 ◼   ► - I don't think I'm willing to say he was wrong

00:27:57 ◼   ► about the 6 Plus though.

00:27:58 ◼   ► Even though I am personally back to using my 6,

00:28:01 ◼   ► I don't know what I'm going to do

00:28:04 ◼   ► when the new ones come out, presumably this fall.

00:28:07 ◼   ► But I'm tempted to try going the bigger phone

00:28:10 ◼   ► 'cause there really are a lot of advantages to it.

00:28:12 ◼   ► And there are times where I kinda miss it.

00:28:15 ◼   ► - That concept is entirely ridiculous

00:28:16 ◼   ► that somehow he would be right or wrong about what?

00:28:19 ◼   ► About that that size of phone

00:28:20 ◼   ► is the appropriate phone for everybody?

00:28:22 ◼   ► Well, he single-handedly invented the iPhone 6 Plus.

00:28:24 ◼   ► Yeah, or that he's the first one who said

00:28:27 ◼   ► this size of phone might be something that people like,

00:28:29 ◼   ► or that he found one person who previously said

00:28:31 ◼   ► they hate the big size, but then found that they liked it.

00:28:33 ◼   ► It's ridiculous, there is no right or wrong here.

00:28:35 ◼   ► I know it's just a joke, but I just wanna clarify

00:28:37 ◼   ► for the people who are actually trying to follow this,

00:28:39 ◼   ► that this is pointless, and there's no such thing

00:28:41 ◼   ► as Mike being right or wrong,

00:28:42 ◼   ► because what he's right or wrong about is nonsensical.

00:28:45 ◼   ► Like, it can't even be described,

00:28:46 ◼   ► or if you do describe it, you would read it

00:28:47 ◼   ► and realize how ridiculous it is.

00:28:49 ◼   ► There are no jokes in Syracuse County.

00:28:50 ◼   ► Yeah, apparently.

00:28:52 ◼   ► You know, I like jokes to have a foundation or have some sort of point, but this is like

00:28:55 ◼   ► serious consideration.

00:28:56 ◼   ► "Oh, Mike is right.

00:28:57 ◼   ► Mike is wrong."

00:28:58 ◼   ► No, it's terrible.

00:28:59 ◼   ► You're really critiquing this right now.

00:29:01 ◼   ► No, I'm just saying, like, let's have something to hang our hat on.

00:29:05 ◼   ► You know, let's have something that if we described it, it would make some sense.

00:29:08 ◼   ► Your joke does not qualify as a joke.

00:29:10 ◼   ► I think the issue here is that Mike was the first one to get the 6+ out of our little

00:29:14 ◼   ► group of friends and kept waxing poetic about how wonderful it is.

00:29:19 ◼   ► And then all of you weak souls, ahem Marco, ahem Steven Hackett, decided to listen to

00:29:24 ◼   ► him and caved largely because of his brow beating.

00:29:28 ◼   ► Is that why?

00:29:29 ◼   ► Is it because of his brow beating?

00:29:30 ◼   ► Like I don't, I don't...

00:29:31 ◼   ► I thought that it was tried.

00:29:33 ◼   ► Well, Marco, you probably bought one as a test unit, but I'm pretty sure Steven tried

00:29:36 ◼   ► it just so he could look Mike in the eye and say, "Oh my God, you're so wrong about this."

00:29:42 ◼   ► And then as it turns out, Mike was right in that there are plenty of advantages to the

00:29:46 ◼   ► six plus.

00:29:47 ◼   ► But Mike was right?

00:29:49 ◼   ► and no one else said there were advantages,

00:29:51 ◼   ► plus the millions of people who bought them,

00:29:53 ◼   ► who have been begging Apple for a larger phone,

00:29:54 ◼   ► who've been using larger phones for years in Android,

00:29:57 ◼   ► but Mike was the one that said, "You know what?

00:29:59 ◼   ► "Big phones, guys, they're actually kinda good."

00:30:02 ◼   ► - Well, and he wasn't the only one to,

00:30:04 ◼   ► like, you know, Rene got one on day one,

00:30:05 ◼   ► and Rene, like, when I asked him about it,

00:30:07 ◼   ► he was saying, "Oh, yeah, it's amazing,"

00:30:09 ◼   ► but Mike was the one who was, like,

00:30:10 ◼   ► actively, like, campaigning for it in public.

00:30:13 ◼   ► - Right, right. - He's on the payroll

00:30:14 ◼   ► of big phone, literally. (laughing)

00:30:18 ◼   ► Anyway, this is Mike Hurley, by the way,

00:30:20 ◼   ► in case you're wondering who that is.

00:30:21 ◼   ► We have got complaints that we have a lot of,

00:30:23 ◼   ► we've been yelling about Mike for the past five minutes,

00:30:25 ◼   ► and if you don't listen to the show,

00:30:26 ◼   ► you don't know who Mike Hurley is.

00:30:28 ◼   ► - We will link to Mike in the show notes.

00:30:29 ◼   ► What do you even link to?

00:30:31 ◼   ► I guess there's Relay?

00:30:32 ◼   ► - I don't even know.

00:30:33 ◼   ► I guess his Twitter account?

00:30:34 ◼   ► I don't know.

00:30:35 ◼   ► This is iMike that we're talking about,

00:30:37 ◼   ► and yeah, he's gonna hear this, and he's gonna fall over,

00:30:40 ◼   ► either very excited or very sad

00:30:43 ◼   ► that Syracuse does not believe in Mike was right.

00:30:45 ◼   ► I'm not really sure which.

00:30:46 ◼   ► - I just think it's not a good meme.

00:30:48 ◼   ► Nothing is so perfect that it can't be complained about.

00:30:52 ◼   ► And getting tangled up in that meme, like, it's just, there's no way to win.

00:30:56 ◼   ► The only winning move is not the mic.

00:30:58 ◼   ► Oh my god, what is happening?

00:31:01 ◼   ► This is what happens when we record on a different day, where everything's all off.

00:31:04 ◼   ► Yeah, we're a little bit punchy, we just recorded the last episode a couple days ago.

00:31:08 ◼   ► Please, please bear with us.

00:31:09 ◼   ► By the way, that was a WarGames reference, Jon, I just want you to know that I know that

00:31:13 ◼   ► was a WarGames reference.

00:31:14 ◼   ► Good job.

00:31:15 ◼   ► good and the super obvious references that you should always get lately Casey

00:31:19 ◼   ► but I'm very proud of my wait do you hear this do you hear this that's me

00:31:24 ◼   ► patting myself in the back good job just happened wow this show is taking a turn

00:31:30 ◼   ► all right we're done with we're done with follow-up now right our second

00:31:32 ◼   ► sponsor is hover hover is the best way to buy and manage domain names

00:31:37 ◼   ► especially if you pronounce it the right way go to hover.com and use promo code

00:31:42 ◼   ► code LOSTBACKPACK for 10% off your first purchase.

00:31:46 ◼   ► - Nice.

00:31:47 ◼   ► - I know it's not lost.

00:31:48 ◼   ► You knew where it was the whole time.

00:31:50 ◼   ► Just not with you.

00:31:51 ◼   ► Forgotten backpack maybe, but code is LOSTBACKPACK.

00:31:55 ◼   ► That gives you 10% off your first purchase.

00:31:56 ◼   ► Now, Hover is a domain registrar,

00:31:58 ◼   ► and I have tried so many of these things,

00:32:00 ◼   ► and I have bought many domain names in my life as a nerd.

00:32:04 ◼   ► I first bought domain names back when they cost $75 a year

00:32:09 ◼   ► from God knows who in the year 2000.

00:32:12 ◼   ► They don't cost $70 anymore, thank God,

00:32:14 ◼   ► but there are so many registrars now,

00:32:17 ◼   ► way more than we used to have,

00:32:18 ◼   ► and most of them are just terrible.

00:32:21 ◼   ► I have tried many of them,

00:32:23 ◼   ► and the only one I like a lot really is Hover.

00:32:26 ◼   ► And I can say that honestly, I'm not just BSing,

00:32:28 ◼   ► I'm not just saying this because it's an ad.

00:32:30 ◼   ► I have tried many, I have tolerated many,

00:32:34 ◼   ► but the only one I like really is Hover.

00:32:36 ◼   ► Man, I've bought them so many other places in the past,

00:32:38 ◼   ► and usually when you're checking out,

00:32:41 ◼   ► you have to like uncheck a bunch of optional services

00:32:45 ◼   ► or they kind of try to trick you into buying things

00:32:48 ◼   ► you don't need or like you have to like uncheck the box

00:32:52 ◼   ► that says spam me forever or don't give me privacy

00:32:55 ◼   ► to actually get privacy or not spam or whatever.

00:32:57 ◼   ► So many, there's so many like little gotchas

00:33:00 ◼   ► in most of these registrars that it's not very good.

00:33:03 ◼   ► Or even the ones that try to be nice,

00:33:05 ◼   ► 'cause you know they aren't all evil.

00:33:07 ◼   ► Even the ones that try to be nice

00:33:09 ◼   ► are often just really hard to use

00:33:11 ◼   ► or really cluttered or just really confusing,

00:33:13 ◼   ► just overall just not great.

00:33:16 ◼   ► And Hover, using Hover's tools, using their control panel,

00:33:20 ◼   ► it's so much better night and day

00:33:22 ◼   ► compared to every other panel I've ever seen.

00:33:24 ◼   ► Even the ones that aren't that bad,

00:33:26 ◼   ► Hover is still way better than those.

00:33:28 ◼   ► It is really just, again, night and day

00:33:31 ◼   ► compared to anyone else.

00:33:32 ◼   ► You even get a cool thing called Value Transfer Service.

00:33:34 ◼   ► This is, again, free.

00:33:35 ◼   ► So what they do, if you want, you don't have to,

00:33:37 ◼   ► but if you want, you can give them the login

00:33:40 ◼   ► to your old registrar and they will do the move for you

00:33:43 ◼   ► if you wanna move names into it.

00:33:44 ◼   ► And so they will transfer everything over properly

00:33:47 ◼   ► to make sure things like DNS,

00:33:49 ◼   ► which can be tricky to move over.

00:33:50 ◼   ► Like if you make a little mistake,

00:33:52 ◼   ► that could really mess you up for a few days

00:33:53 ◼   ► or for a few hours and all the transfer codes

00:33:56 ◼   ► and the locks and everything.

00:33:57 ◼   ► They can do all that for you

00:33:59 ◼   ► if you don't wanna deal with it.

00:34:00 ◼   ► They also have great email hosting solutions.

00:34:03 ◼   ► If you wanna get your own custom email address

00:34:04 ◼   ► for your domain, 20 bucks a year

00:34:06 ◼   ► gets you a fully functional email account

00:34:08 ◼   ► 10 gigs of storage, $29 a year gets you the big mailbox. This is in capital letters, the

00:34:13 ◼   ► big mailbox. A full terabyte of storage. So a terabyte of email for just 29 bucks a year,

00:34:19 ◼   ► plus some other nice bonuses that come with that. And if you need just email forwarding,

00:34:23 ◼   ► like you know, if you already have an email host like I do, I have a bunch of these little

00:34:27 ◼   ► things. If you want email forwarding, just five bucks a year gets you email forwarding

00:34:30 ◼   ► on a domain. So you can keep the mail hosting you already have and still receive mail at

00:34:36 ◼   ► at the new domain that you just bought.

00:34:37 ◼   ► So anyway, go to hover.com, check out all the cool stuff,

00:34:40 ◼   ► buy some domains, you can get all the jokey new ones,

00:34:44 ◼   ► dot plumbing and dot diamonds and all those crazy ones,

00:34:46 ◼   ► or you can get the nice, respectable old ones like dot com

00:34:49 ◼   ► if you can still find any.

00:34:50 ◼   ► Anyway, go to hover.com, use promo code lost backpack,

00:34:54 ◼   ► that's lost backpack, for 10% off your first purchase.

00:34:58 ◼   ► Thank you very much to Hover

00:34:59 ◼   ► for sponsoring our show once again.

00:35:01 ◼   ► - I love that promo code.

00:35:03 ◼   ► It's delightful.

00:35:04 ◼   ► So let's talk about some news from WWDC,

00:35:08 ◼   ► specifically around WebKit,

00:35:09 ◼   ► and now there's some new extension points into WebKit,

00:35:13 ◼   ► and you can make content blockers.

00:35:16 ◼   ► I don't know, Marco, do you wanna tell us

00:35:17 ◼   ► a little more about this, or is this more,

00:35:19 ◼   ► would you like to pump this to Jon?

00:35:21 ◼   ► - I can go over the brief version of it,

00:35:23 ◼   ► and Jon and I are actually in the session video,

00:35:26 ◼   ► which many people have pointed out to us on Twitter.

00:35:28 ◼   ► - I'm glad that we're not looking at our watches or phones

00:35:32 ◼   ► and we're actually paying attention.

00:35:33 ◼   ► I guess that's why they would put us in,

00:35:34 ◼   ► They picked the audience shots,

00:35:35 ◼   ► they picked the one of the people who were paying attention.

00:35:37 ◼   ► So yeah, we really, at least I really do pay attention.

00:35:39 ◼   ► Marco could, I think he was doing something else

00:35:41 ◼   ► in that video, but.

00:35:42 ◼   ► - No, I was watching that one.

00:35:43 ◼   ► - I'm looking at the slides,

00:35:44 ◼   ► I'm not sure where you're looking.

00:35:45 ◼   ► - Anyway, so the idea here is,

00:35:48 ◼   ► they know everyone's using ad blockers,

00:35:50 ◼   ► and the way most ad blocker extensions for browsers work

00:35:53 ◼   ► is they have to evaluate their own code

00:35:56 ◼   ► on every load request.

00:35:58 ◼   ► So every time something is requested to be loaded,

00:35:59 ◼   ► whether it's a page or a resource on that page,

00:36:03 ◼   ► the extension has to run JavaScript code

00:36:05 ◼   ► to run through its list of things that are prohibited,

00:36:08 ◼   ► and that is just very expensive to do in mass.

00:36:11 ◼   ► And it also exposes other problems,

00:36:13 ◼   ► like it is very expensive also.

00:36:15 ◼   ► It's kind of a privacy issue,

00:36:17 ◼   ► like if you don't really trust the people

00:36:19 ◼   ► who make the ad blocker,

00:36:20 ◼   ► and they're seeing every resource that you're loading

00:36:23 ◼   ► and it's passing through their code.

00:36:24 ◼   ► So there's a number of things about this that are non-ideal,

00:36:26 ◼   ► and because ad blockers are just so popular,

00:36:29 ◼   ► much to the chagrin of people writing terrible websites

00:36:33 ◼   ► that run terrible ads, because most of them these days,

00:36:35 ◼   ► unfortunately, boy, that's a tough business.

00:36:37 ◼   ► But basically, Apple wanted to improve the efficiency

00:36:41 ◼   ► and the privacy of ad blockers in Safari,

00:36:44 ◼   ► and then they also brought it to iOS,

00:36:46 ◼   ► and so it runs in iOS as well.

00:36:48 ◼   ► So now, it is trivially easy to make an ad blocker for iOS.

00:36:53 ◼   ► Like, I, and it's funny, Apple is not offering one,

00:36:57 ◼   ► but I suspect on day one of iOS 9 this fall,

00:37:01 ◼   ► I suspect there's gonna be hundreds, if not thousands,

00:37:05 ◼   ► of ad blockers in the store on day one.

00:37:08 ◼   ► It's gonna be a massive rush

00:37:09 ◼   ► because they're just so easy to make.

00:37:11 ◼   ► So the new system which allows all this,

00:37:14 ◼   ► it basically does not run executable code of yours

00:37:17 ◼   ► in the browser.

00:37:18 ◼   ► You just give it a giant JSON array

00:37:23 ◼   ► of like regexes and prefixes to block loads for.

00:37:28 ◼   ► And you can't alter the page by inserting things.

00:37:30 ◼   ► you can't change what's on the page,

00:37:32 ◼   ► but you can delete certain elements.

00:37:34 ◼   ► So you can apply a CSS display none to certain selectors,

00:37:39 ◼   ► certain CSS selectors, or you can block certain host names

00:37:42 ◼   ► or URL prefixes from loading JavaScript or images

00:37:45 ◼   ► or third party cookies or so.

00:37:47 ◼   ► They also added something called the Safari View Controller

00:37:50 ◼   ► in WWDC this year, which is gonna be in iOS 9.

00:37:52 ◼   ► And so this basically is the mini-browser killer.

00:37:55 ◼   ► So many of us, I forgot whether we talked about this or not,

00:37:58 ◼   ► Many of us have in our lives as iOS developers

00:38:01 ◼   ► written embedded web browsers for it

00:38:03 ◼   ► so that when people tap links in our apps,

00:38:05 ◼   ► they can view them in a little web browser

00:38:07 ◼   ► right in the app instead of being kicked out to Safari.

00:38:09 ◼   ► Writing these things is awful,

00:38:11 ◼   ► and they also can't access many nice things.

00:38:15 ◼   ► Like if you have a login in Safari,

00:38:18 ◼   ► if you have cookies and you've already logged

00:38:20 ◼   ► into some site in Safari,

00:38:22 ◼   ► if you open something up in a mini browser

00:38:24 ◼   ► in somebody's app, you gotta log in again.

00:38:26 ◼   ► You also don't have things like any kind of extension

00:38:30 ◼   ► that you run.

00:38:31 ◼   ► Like you can, if the app supports it,

00:38:34 ◼   ► the app can integrate one password

00:38:36 ◼   ► into its own little mini browser, but most don't.

00:38:38 ◼   ► And most extensions are not gonna have

00:38:41 ◼   ► that luxury of being integrated.

00:38:42 ◼   ► So if you have any extensions that are useful

00:38:45 ◼   ► to you in Safari, they won't run in these mini browsers

00:38:48 ◼   ► and everything.

00:38:49 ◼   ► And there's also like, there's some security concerns

00:38:52 ◼   ► about mini browsers and using them for OAuth and stuff.

00:38:55 ◼   ► There's a lot of arguments against mini browsers, basically,

00:38:58 ◼   ► both from users and from security

00:39:00 ◼   ► and from Apple's point of view.

00:39:01 ◼   ► There's lots of arguments against mini browsers.

00:39:02 ◼   ► So Apple released the Safari View Controller for iOS 9,

00:39:06 ◼   ► which allows you to basically pop up

00:39:09 ◼   ► an isolated Safari window from your app,

00:39:11 ◼   ► like a little slide-up sheet from your app

00:39:13 ◼   ► that looks and works just like Safari,

00:39:15 ◼   ► is still running, it's still in your app conceptually,

00:39:18 ◼   ► but it's running in a different process.

00:39:20 ◼   ► It's totally isolated from your app.

00:39:22 ◼   ► Your app is only notified when the user closes it, basically.

00:39:25 ◼   ► So it's a way for you to provide this the same

00:39:27 ◼   ► convenience of having like a built-in browser in your app that just you know

00:39:31 ◼   ► Instantly slides up and can be dismissed easily without with that being Safari and kicking people through to it

00:39:36 ◼   ► But it gives you all the features of Safari

00:39:37 ◼   ► So anyway, these ad blockers that are now possible to write will also work in those

00:39:42 ◼   ► Which gives people yet another reason to delete their many browsers out of their apps and switch to the Safari view controller

00:39:48 ◼   ► So it's this this whole improvement to this whole system here where they're gonna at that

00:39:52 ◼   ► they're gonna make most mini browsers obsolete,

00:39:55 ◼   ► and also enable ad blockers on iOS

00:39:58 ◼   ► and on Safari on the Mac in 10.11, El Capitan.

00:40:02 ◼   ► I don't know how, how do you say that?

00:40:04 ◼   ► That might be the first time I've tried to say it.

00:40:05 ◼   ► - That sounded pretty good.

00:40:07 ◼   ► I like it, that sounded pretty good.

00:40:08 ◼   ► It was enthusiastic.

00:40:09 ◼   ► - We just call it the captain.

00:40:10 ◼   ► - Oh, captain, my captain.

00:40:12 ◼   ► - Well, and people who are much cooler than me

00:40:13 ◼   ► who live on the West Coast keep saying

00:40:15 ◼   ► that people call it El Cap,

00:40:16 ◼   ► like rock climbers have been calling it El Cap,

00:40:17 ◼   ► apparently, for a long time,

00:40:19 ◼   ► but I don't know if I'm cool enough to do that.

00:40:20 ◼   ► I don't think I can.

00:40:22 ◼   ► Anyway, so they're doing all this cool stuff,

00:40:25 ◼   ► they're enabling all this cool stuff.

00:40:26 ◼   ► The upside is that I would suspect many apps

00:40:29 ◼   ► will lose their many browsers in the future.

00:40:31 ◼   ► And I'm looking forward, like,

00:40:33 ◼   ► I wrote the best mini browser I've ever written

00:40:35 ◼   ► for Overcast, I've written like four of them

00:40:37 ◼   ► in my life so far, they've all been awful.

00:40:39 ◼   ► Overcast, I think, has the least awful mini browser

00:40:42 ◼   ► that I've ever written.

00:40:44 ◼   ► I still can't wait to delete it.

00:40:46 ◼   ► Like, it's still not great, it's still not Safari,

00:40:49 ◼   ► and I am very much looking forward to deleting that

00:40:52 ◼   ► once I can require iOS 9, or at least once I can support

00:40:54 ◼   ► iOS 9.

00:40:55 ◼   ► Anyway, so basically in one fell swoop, they have both

00:40:59 ◼   ► obsoleted mini browsers, thank God, and also enabled

00:41:03 ◼   ► ad blocking for the first time on iOS in a way that

00:41:06 ◼   ► probably won't suck and is also ridiculously easy to make.

00:41:10 ◼   ► I think it's very interesting, first of all,

00:41:13 ◼   ► that they enabled the ad blocking.

00:41:14 ◼   ► There is definitely a pragmatic aspect to it,

00:41:17 ◼   ► as I said earlier, about how they wanted to,

00:41:21 ◼   ► they knew people were doing this anyway,

00:41:22 ◼   ► and so they wanna give a better way to do it

00:41:24 ◼   ► that uses less battery life and has fewer privacy concerns

00:41:26 ◼   ► and is faster.

00:41:28 ◼   ► But also, this is obviously a jab at web advertising.

00:41:32 ◼   ► And it's, you know, the skeptical view,

00:41:35 ◼   ► or the cynical view of this, can also point out,

00:41:37 ◼   ► like, well, they're also doing this at the same time

00:41:39 ◼   ► that they're launching the Apple News app,

00:41:41 ◼   ► which is based on web stuff and has iAds embedded,

00:41:45 ◼   ► which can't be blocked by this system.

00:41:47 ◼   ► (laughs)

00:41:48 ◼   ► And so they're kind of stabbing the web in the back here,

00:41:53 ◼   ► while also launching a web alternative

00:41:55 ◼   ► and asking publishers to opt into it

00:41:57 ◼   ► and using their ads or publishers ads,

00:42:00 ◼   ► but really kind of encouraging the use of their ads.

00:42:02 ◼   ► It's really interesting.

00:42:03 ◼   ► It might be a jab at Google,

00:42:05 ◼   ► it might be totally driven by practicality concerns,

00:42:08 ◼   ► as I said, like, you know, people are gonna do it anyway,

00:42:09 ◼   ► so I might as well do it right.

00:42:10 ◼   ► Also, as a user, like,

00:42:12 ◼   ► I wanna hear what you guys think about ad blockers, too,

00:42:14 ◼   ► As a user, I have never run an ad blocker before.

00:42:18 ◼   ► And I've started in the last few months,

00:42:21 ◼   ► I've started to be tempted to finally start running one

00:42:23 ◼   ► because, you know, I know people who make a living

00:42:26 ◼   ► on the web, I am a person who makes me living on the web.

00:42:29 ◼   ► I don't like the idea of ad blockers,

00:42:31 ◼   ► but web ads have gotten so bad.

00:42:35 ◼   ► Like it's, it was different story five years ago.

00:42:39 ◼   ► These days, the ads are so bad,

00:42:41 ◼   ► and they're even worse on mobile,

00:42:43 ◼   ► 'Cause so often they're so badly written and so intrusive

00:42:46 ◼   ► that you can't properly dismiss them on mobile

00:42:47 ◼   ► without clicking on some tiny little X in the corner

00:42:50 ◼   ► and stuff like, there are so many problems with this.

00:42:53 ◼   ► And when they take up screen space on mobile,

00:42:57 ◼   ► it's even, you know, it's kind of more expensive

00:42:58 ◼   ► 'cause you have less screen space to begin with.

00:43:01 ◼   ► And they're slow and it's just like,

00:43:03 ◼   ► I want to not need to block web ads.

00:43:08 ◼   ► But unfortunately, I need to block web ads now

00:43:10 ◼   ► because they have just gotten so bad.

00:43:12 ◼   ► And there's more than ever, there are things

00:43:16 ◼   ► that obscure the text, things that kind of show it,

00:43:19 ◼   ► like not even just interstitials, but almost like pop-ups,

00:43:23 ◼   ► but embedded in the page, whatever those are called,

00:43:24 ◼   ► pop-overs, slide-overs, whatever those are called.

00:43:26 ◼   ► And so they'll overlay a video,

00:43:29 ◼   ► that's like a video ad that starts playing over an article,

00:43:32 ◼   ► and you have to wait five seconds, like YouTube style,

00:43:34 ◼   ► to dismiss the ad before the article shows up behind it.

00:43:37 ◼   ► There's so much garbage out there,

00:43:38 ◼   ► and it's only getting worse,

00:43:41 ◼   ► And it seems to be getting worse at an accelerating rate.

00:43:44 ◼   ► Like it really, I am shocked every time I go to an article

00:43:47 ◼   ► on what used to be a reputable site,

00:43:49 ◼   ► or what seems like a reputable site,

00:43:50 ◼   ► and I get, you know, oh, I get a full screen ad

00:43:52 ◼   ► that I can't skip, but I can't properly close a mobile

00:43:54 ◼   ► and I can't even see the text, and it's just,

00:43:56 ◼   ► it's getting really bad.

00:43:59 ◼   ► And so, I don't know, what do you think?

00:44:01 ◼   ► Like, do you guys, I mean, there's obviously

00:44:02 ◼   ► an ethical question here, but there's,

00:44:05 ◼   ► it's ethical versus pragmatic, I don't know,

00:44:07 ◼   ► how do you guys fall on this?

00:44:09 ◼   ► I think that we would be remiss not to mention my favorite of all egregious ad practices,

00:44:15 ◼   ► which is going to Macworld and getting an autoplay video that's often playing way too

00:44:22 ◼   ► loudly and scares the ever-living crap out of me.

00:44:27 ◼   ► And so that is my personal favorite of all the god-awful egregious advertisements.

00:44:32 ◼   ► But to answer your question, I honestly don't even know if I'm running an ad blocker on

00:44:37 ◼   ► my main machine right now.

00:44:38 ◼   ► I'm on Aaron's MacBook Air, it's still alive, and hers does not have one.

00:44:45 ◼   ► I used to, for sure, run an ad blocker called GlimmerBlocker, and we'll put a link in the

00:44:50 ◼   ► show notes.

00:44:51 ◼   ► If memory serves, the way this works is it kind of puts a quiet proxy in between you

00:44:58 ◼   ► and the internet, and so this way, any browser you're using, and any version of any browser

00:45:02 ◼   ► you're using, it will use that proxy that's running locally, and GlimmerBlocker will block

00:45:09 ◼   ► ads from, you know, within that proxy.

00:45:14 ◼   ► It worked pretty well, but it was not flawless by any means.

00:45:17 ◼   ► And I used to run that for a long time, and honestly, I don't think I'm running it on

00:45:21 ◼   ► my work machine anymore, because accepting these, this new wave of even more egregious

00:45:26 ◼   ► ads that you just spoke of, Marco, which I completely agree with you, accepting the ones

00:45:31 ◼   ► that like occlude what you're trying to look at, the sidebar ads and things like that,

00:45:36 ◼   ► I've gotten so good at tuning those out that they're not even there anymore. Like my ad blocker

00:45:41 ◼   ► is my brain at this point. But I don't know, I feel I have mixed feelings about it. In the past,

00:45:47 ◼   ► I didn't care. I would absolutely run an ad blocker anytime, anywhere. But now, I have really

00:45:53 ◼   ► mixed feelings about it. I mean, this show is run on advertising. Now granted, it's a different kind

00:45:58 ◼   ► of advertising, but it's still advertising. So there are some ethical moral questions

00:46:03 ◼   ► that are rolling around in my head about it. But for now, I probably will continue not,

00:46:08 ◼   ► I think, running an ad blocker. Unless more websites that I frequent get these god-awful,

00:46:18 ◼   ► egregious autoplay videos in light boxes or whatever they are that take up the whole screen.

00:46:22 ◼   ► It is certainly getting worse. What do you think, Jon?

00:46:25 ◼   ► I'm much more annoyed by video pre-roll ads not so much because I'm opposed to video pre-roll ads

00:46:31 ◼   ► But for in two cases one the same video pre-roll ad that you see a hundred times Hulu is the biggest offender there obviously

00:46:37 ◼   ► But it happens on YouTube as well

00:46:39 ◼   ► And two when the I want to watch a 30-second video and I have to watch a 30-second ad like that doesn't seem to be

00:46:45 ◼   ► This is mostly talking about YouTube here because that's where I watched a lot of videos

00:46:48 ◼   ► doesn't seem to be a balance between

00:46:51 ◼   ► amount of advertising per content like it would be nice if I'm watching a 30-second video to choose not to

00:46:56 ◼   ► Put a long ad in front of that and they try to do some things like you don't see ads in front of every video

00:47:01 ◼   ► If you've seen an ad today the next one you'll see is longer

00:47:03 ◼   ► Well that by the way, most people don't know that that's you that YouTube ads the settings for those are set by the uploader

00:47:11 ◼   ► They choose whether to show ads on their videos and whether the ads are unskippable or not, right?

00:47:16 ◼   ► But if they choose how long the ads are because there are three second, you know, they're very the ads of varying length

00:47:21 ◼   ► It's not like television where they have to be fixed lengths as far as I can tell I think there was a really quick Geico

00:47:24 ◼   ► One that's like you can't skip this Geico ad because it's already over

00:47:27 ◼   ► That which was clever and then they add one on for twice as long to do their jingle or whatever. But anyway

00:47:32 ◼   ► Those bothered me more than like the ads you're talking about on websites and stuff

00:47:37 ◼   ► Even the ones that you have to dismiss I have to admit especially when I'm mobile what annoys me way more than any ad like

00:47:43 ◼   ► It like you said Marco. I'm annoyed by trying to hit the little X in the box and do all stuff

00:47:46 ◼   ► But what annoys me way more is after I successfully dismiss the ad that it can't scroll the freaking web page because of

00:47:51 ◼   ► Curl jacking or some other thing. I just want to read the content and very often I find that like, alright

00:47:57 ◼   ► I've dismissed the ad the page is loaded. I do scroll scroll scroll. It snaps me back to the top

00:48:02 ◼   ► I do scroll scroll

00:48:03 ◼   ► I accidentally hit something and it goes through like because it registered my scroll as a tap because it's trying to do some weird

00:48:08 ◼   ► Janky scrolling thing that annoys me more than ads. I have a fairly high tolerance because you know like Casey I have ad banner blindness

00:48:16 ◼   ► major case of ad banner blindness, so they don't bother me that much and

00:48:19 ◼   ► Even the ones that like I try to go an article in a big ad pops up like those are gross

00:48:23 ◼   ► But if I'm really interested in the article a lot of people in turn like oh just don't go to the site

00:48:26 ◼   ► Like no, I'll click through the ad if I if I think the article is going to be really good underneath it

00:48:32 ◼   ► I prefer not to have to do that, but it's not the end of the world to me, and I don't run a

00:48:36 ◼   ► An ad blocker in Safari although the main reason I run ad blocker in Safari gets back to what I think is the most interesting

00:48:43 ◼   ► part of this web content blocking thing that Apple's coming out with. I don't run

00:48:49 ◼   ► it because of my machine empathy, mentioned in previous shows, because I

00:48:53 ◼   ► know how Safari extensions work. Safari extensions came out for Safari on the

00:48:57 ◼   ► Mac and they're like made with web technologies. You can just make a bunch

00:49:02 ◼   ► of little data files and images and a bunch of JavaScript code and you can,

00:49:05 ◼   ► with your JavaScript code, you can do crap to web pages. And from a machine

00:49:10 ◼   ► that these respectively means wait a second every time I load a web page an

00:49:14 ◼   ► arbitrary collection of JavaScript gets to run and decide if it needs to do

00:49:19 ◼   ► something because that's the only way you can tell like you know there's some

00:49:21 ◼   ► filters you can do on all apply to this URL or whatever but like but yeah like

00:49:24 ◼   ► it's going to somewhere in the process of loading the page say now by the way

00:49:29 ◼   ► in addition to everything that has actually run on this page at some point

00:49:33 ◼   ► we're going to allow this extension to run its blob of JavaScript it's just

00:49:36 ◼   ► arbitrary and then this next extension can run its JavaScript this next

00:49:39 ◼   ► extension can run its JavaScript.

00:49:40 ◼   ► And that is horribly inefficient.

00:49:42 ◼   ► Even if it like tries to pre-compile the JavaScript

00:49:45 ◼   ► or whatever, like JavaScript is not that fast.

00:49:47 ◼   ► And I just don't want arbitrary code munging every webpage.

00:49:51 ◼   ► I would imagine that like anyone who does

00:49:53 ◼   ► any browser benchmarking, any kind of extensions running

00:49:56 ◼   ► would totally destroy your benchmarks.

00:49:57 ◼   ► 'Cause it's like mandatory minimum overhead

00:50:01 ◼   ► keeps going up every time you add an extension.

00:50:03 ◼   ► So people are like, "Oh, I love extensions.

00:50:04 ◼   ► I have 17 installed."

00:50:06 ◼   ► That's not good.

00:50:08 ◼   ► So anyway, those came out for OS X,

00:50:10 ◼   ► but they were not available on iOS for a variety of reasons.

00:50:13 ◼   ► Keyboards weren't even available on iOS back then.

00:50:15 ◼   ► Like it was the pre-iOS 8 days,

00:50:17 ◼   ► but certainly not available on iOS.

00:50:18 ◼   ► No one thought that was a big deal

00:50:19 ◼   ► because iOS just doesn't allow that kind of extensibility.

00:50:22 ◼   ► But now content blockers come out

00:50:24 ◼   ► and they're written in an entirely different way.

00:50:26 ◼   ► They are data-driven, they're compiled to an optimized form.

00:50:29 ◼   ► The matching expressions that you can do are very limited.

00:50:32 ◼   ► It's not just like full-fledged pro-regular expressions,

00:50:35 ◼   ► but you can do whatever the hell you want

00:50:36 ◼   ► because it's trivially easy to write a regular expression

00:50:38 ◼   ► that takes till the heat death of the universe

00:50:41 ◼   ► to try to match something, right?

00:50:43 ◼   ► And even in this session,

00:50:46 ◼   ► which we'll put the link in the show notes,

00:50:47 ◼   ► which you can watch for free,

00:50:49 ◼   ► you don't have to be a developer or anything,

00:50:50 ◼   ► Apple even emphasizes the ordering of the rules.

00:50:53 ◼   ► They are so gung ho in the efficiency,

00:50:55 ◼   ► not only are you gonna take your crap

00:50:56 ◼   ► and compile it into some super optimized form

00:50:58 ◼   ► and confine into a limited set of wildcards and stuff,

00:51:01 ◼   ► and then like, okay, and also try to put them in the order

00:51:04 ◼   ► that's the most efficient

00:51:05 ◼   ► so we know as soon as possible whether we need to apply this blocking or not.

00:51:08 ◼   ► That is so far from the OS X Safari extension philosophy.

00:51:13 ◼   ► That's basically what it takes to get onto iOS, right?

00:51:16 ◼   ► Is a totally different mindset.

00:51:18 ◼   ► And so I'm excited by that mindset and does that mindset help me get over my machine empathy

00:51:25 ◼   ► problem to install Safari ad blocker?

00:51:27 ◼   ► It gets over the technical part, but I'm still faced with two things.

00:51:31 ◼   ► the sort of ethical concerns of like,

00:51:33 ◼   ► the sites that I visit I want to support.

00:51:35 ◼   ► I don't have a problem with ads that they run,

00:51:37 ◼   ► even on mobile, even the fairly intrusive ones.

00:51:40 ◼   ► Like I read Macworld, the auto-playing videos

00:51:42 ◼   ► is a bridge too far obviously,

00:51:43 ◼   ► but Macworld had a thing that would slide out of the corner

00:51:46 ◼   ► and stuff and it annoyed me,

00:51:47 ◼   ► but it was a reason for me to stop reading Macworld?

00:51:49 ◼   ► No, like, if you're publishing a website,

00:51:52 ◼   ► I would, the advice I would give is

00:51:53 ◼   ► do not annoy people with your ads,

00:51:55 ◼   ► but I have a pretty high tolerance for that.

00:51:58 ◼   ► And the second thing is,

00:51:59 ◼   ► I'm always afraid ad blockers are going to break websites

00:52:02 ◼   ► or stop me from seeing something

00:52:05 ◼   ► that I'm supposed to be seeing in an article

00:52:06 ◼   ► because it is just kind of a heuristic of like,

00:52:08 ◼   ► well, it looks like this or it's from this host or whatever,

00:52:11 ◼   ► and you can have good ad blockers or bad ad blockers.

00:52:13 ◼   ► And by the way, some of the most popular ad blockers

00:52:16 ◼   ► allow advertisers to pay for their ads to be whitelisted.

00:52:19 ◼   ► So there's a whole other angle of ethical concerns

00:52:22 ◼   ► and annoyance there.

00:52:23 ◼   ► - That's messed up.

00:52:24 ◼   ► - Yeah, I mean, like it sounds worse than it is,

00:52:27 ◼   ► but it's still pretty bad.

00:52:29 ◼   ► You can read lots of articles about these controversies,

00:52:30 ◼   ► but hey, you can install any ad blocker you want

00:52:33 ◼   ► or uninstall any ad blocker you want or whatever.

00:52:35 ◼   ► But yeah, I'm not really enthusiastic

00:52:38 ◼   ► about allowing anything to screw up the web pages

00:52:41 ◼   ► that I'm watching 'cause I'm always afraid.

00:52:43 ◼   ► We've all had the experience where we go to a webpage

00:52:45 ◼   ► and something doesn't work.

00:52:46 ◼   ► On mobile or on desktop, you're clicking around,

00:52:48 ◼   ► you're like, maybe I should try a different browser,

00:52:50 ◼   ► maybe the site is just broken.

00:52:52 ◼   ► You don't know what the deal is.

00:52:54 ◼   ► And I don't wanna think, maybe the site is fine

00:52:57 ◼   ► and the problem is one of these stupid extensions

00:52:58 ◼   ► that I'm running that's screwing things up.

00:52:59 ◼   ► So I like my extensions to be very targeted.

00:53:02 ◼   ► One of the extensions I run is that thing that stops,

00:53:06 ◼   ► that site that stops you from copying

00:53:07 ◼   ► and pasting text off a page, whatever that thing is.

00:53:10 ◼   ► Like that is very targeted.

00:53:12 ◼   ► It's stopping one particular company

00:53:15 ◼   ► from doing one particular thing that's annoying.

00:53:16 ◼   ► And even that I worry about the efficiency of.

00:53:18 ◼   ► I have that installed in Safari.

00:53:20 ◼   ► And occasionally I go through

00:53:21 ◼   ► an extension cleaning spree in Safari and I say,

00:53:24 ◼   ► do I really need this extension?

00:53:25 ◼   ► Turn it off, off, off.

00:53:26 ◼   ► Basically the only extension I really stick with

00:53:28 ◼   ► is my essential extension for Sari,

00:53:30 ◼   ► which is the reload button.

00:53:32 ◼   ► The most complicated extension,

00:53:33 ◼   ► I believe it is one line of code that says reload the page.

00:53:36 ◼   ► It is essential.

00:53:37 ◼   ► And even that one, I worry,

00:53:38 ◼   ► there's lots of different ways you can do a reload button.

00:53:40 ◼   ► A lot of people wanted like a stop reload button,

00:53:42 ◼   ► like when the page is loading, it's a stop, right?

00:53:44 ◼   ► And then when a page is done, it becomes a reload button,

00:53:46 ◼   ► like the old reload button in Safari used to,

00:53:48 ◼   ► and the one that's in the address bar currently does now.

00:53:50 ◼   ► But to do that,

00:53:51 ◼   ► you would have to run more JavaScript in every page load.

00:53:53 ◼   ► So I refuse, my reload button has no intelligence.

00:53:56 ◼   ► It does not munch your page with JavaScript

00:53:58 ◼   ► because I just like, I want it to be as efficient as possible

00:54:01 ◼   ► if I could have a super duper compiled version

00:54:02 ◼   ► of the reload button, say if Apple could add it

00:54:04 ◼   ► to the stupid customized toolbar sheet,

00:54:06 ◼   ► then I would just get rid of my extension, but--

00:54:08 ◼   ► - Not that you're bitter.

00:54:09 ◼   ► - They seem not to want to do that

00:54:10 ◼   ► and I have to hit that little tiny X circle arrow thing

00:54:14 ◼   ► on the far side of the address bar.

00:54:16 ◼   ► So anyway, yeah, Bob, I don't,

00:54:19 ◼   ► I'm not as strongly against ad blocking

00:54:22 ◼   ► as an ethical immoral thing as some people are

00:54:24 ◼   ► because I feel like the social contract of the web

00:54:27 ◼   ► is not that when you make an HTTP request,

00:54:31 ◼   ► your browser must honor all of the content that comes back.

00:54:35 ◼   ► And I don't think that's how the internet works,

00:54:37 ◼   ► but practically speaking, if you visit a website a lot

00:54:41 ◼   ► and you want that website to stay in business,

00:54:43 ◼   ► forget about morals or ethics.

00:54:45 ◼   ► If you want the website to still be around,

00:54:49 ◼   ► you should show their ads so that will help them

00:54:52 ◼   ► still be around next week when you're gonna look

00:54:53 ◼   ► at their website.

00:54:54 ◼   ► - Yeah, I don't know, but there is one other side

00:54:57 ◼   ► of the ethical thing though that I think is worth

00:54:59 ◼   ► pointing out.

00:55:00 ◼   ► When you visit a page that is unknown to you,

00:55:04 ◼   ► you click on a link on Twitter or Facebook or whatever,

00:55:07 ◼   ► you go to a page that you've never been to before,

00:55:10 ◼   ► you don't know what to expect,

00:55:11 ◼   ► you don't know what that page is like,

00:55:12 ◼   ► you don't know what they will have on there,

00:55:14 ◼   ► and without your knowledge or your permission,

00:55:18 ◼   ► that page can sell your data.

00:55:21 ◼   ► And without, like, so, you know,

00:55:24 ◼   ► if they have a Google ad embedded, I would say,

00:55:29 ◼   ► then just by visiting that page,

00:55:31 ◼   ► without you having a choice in the matter,

00:55:35 ◼   ► you will be giving Google information about you.

00:55:38 ◼   ► And that information will follow you

00:55:40 ◼   ► all over the web after that, you know?

00:55:42 ◼   ► Just like John and your, what was it, was it lights?

00:55:44 ◼   ► Outside lights, what was it, lamps?

00:55:45 ◼   ► - Yep, yep.

00:55:47 ◼   ► - Yeah, so, like, there is, like,

00:55:50 ◼   ► It isn't cut and dry ethically to say,

00:55:52 ◼   ► "You know, you should let a pig load its ads."

00:55:54 ◼   ► Because it's like, well, you're also letting the pigs

00:55:56 ◼   ► load a bunch of stuff that you might object to,

00:55:59 ◼   ► or that is actually, they're actually taking something

00:56:02 ◼   ► from you also, without necessarily asking you first.

00:56:06 ◼   ► They're taking your data, they're offering your data

00:56:10 ◼   ► to other people, it's tricky, it's a blurry line,

00:56:14 ◼   ► and I don't know, I just hate what the web has become

00:56:19 ◼   ► so much, it hurts me because I love the web

00:56:24 ◼   ► and I've grown up with the web for the most part

00:56:27 ◼   ► and I want the web to still be healthy

00:56:30 ◼   ► but there's so much about it that's just gross

00:56:34 ◼   ► and deteriorating rapidly and offensive

00:56:38 ◼   ► and I don't see a good way out of this, I don't know.

00:56:42 ◼   ► - Yeah, ad blockers could be a better social signal,

00:56:45 ◼   ► like a better feedback mechanism because right now

00:56:48 ◼   ► Ad blockers are still the domain of the nerds.

00:56:50 ◼   ► And there's, if you're not, you know,

00:56:54 ◼   ► into tweaking things on your computer,

00:56:57 ◼   ► they're kind of a one-way thing where you just,

00:56:59 ◼   ► oh, I have an ad blocker installed and I don't see ads.

00:57:00 ◼   ► And most of them have a way for you to whitelist

00:57:02 ◼   ► the sites that you like and so on and so forth,

00:57:04 ◼   ► but that's not like, a regular person

00:57:06 ◼   ► probably doesn't know ad blockers exist at all.

00:57:07 ◼   ► If they do, they just install it

00:57:08 ◼   ► and never think about it again.

00:57:09 ◼   ► They're not gonna be in there tweaking the setting

00:57:11 ◼   ► and writing their little regular expressions

00:57:12 ◼   ► to whitelist and blacklist stuff, right?

00:57:14 ◼   ► Someone in the chat room says tons of people use them.

00:57:16 ◼   ► I don't want to reveal numbers from websites

00:57:19 ◼   ► that I've been affiliated with in the past,

00:57:20 ◼   ► but it is not as many as you might think,

00:57:24 ◼   ► even among the super nerds.

00:57:26 ◼   ► And, but anyway, regardless, even the people who use them,

00:57:29 ◼   ► no one's sitting there carefully tweaking

00:57:31 ◼   ► their white-in blacklists to sort of manage their list

00:57:35 ◼   ► of sites that they want to give money to,

00:57:37 ◼   ► essentially, by viewing their ads.

00:57:39 ◼   ► It's kind of like fire and forget.

00:57:41 ◼   ► It's like, oh, the web is better now,

00:57:42 ◼   ► and now we'll never think about it again.

00:57:44 ◼   ► And there is a possibility that Apple,

00:57:47 ◼   ► by sort of opening this door to mobile ad blockers

00:57:50 ◼   ► on their platform, which is a fairly popular platform,

00:57:53 ◼   ► I don't want it to be the same thing where it's like,

00:57:54 ◼   ► okay, like Marco said,

00:57:56 ◼   ► a million ad blockers are available on day one.

00:57:58 ◼   ► Everyone downloads a bunch of them,

00:57:59 ◼   ► maybe one or two of them become really popular.

00:58:01 ◼   ► Everyone who has an iPhone says,

00:58:02 ◼   ► oh, you gotta install this thing, why?

00:58:04 ◼   ► 'Cause you won't see ads in the web

00:58:05 ◼   ► and they install it and that's it.

00:58:06 ◼   ► It would be nicer if there was some sort of interface

00:58:09 ◼   ► in Safari or something,

00:58:12 ◼   ► a friendly interface that would prompt you,

00:58:14 ◼   ► say the first time you visit a site.

00:58:16 ◼   ► I don't know, that would be annoying

00:58:18 ◼   ► every time you visit a site.

00:58:19 ◼   ► Like some sort of interface to let regular people decide

00:58:24 ◼   ► whether they want to do this ad blocking thing.

00:58:26 ◼   ► So it isn't just like an arms race

00:58:28 ◼   ► between ads are blocked everywhere

00:58:30 ◼   ► and then websites trying to defeat the ad blockers

00:58:32 ◼   ► and everyone just has ad blockers installed

00:58:35 ◼   ► because it's really easy to do.

00:58:36 ◼   ► Everyone who gets an iPhone knows the first thing you do

00:58:38 ◼   ► is you download your favorite ad blocker

00:58:40 ◼   ► and that's just a stupid arms race

00:58:42 ◼   ► and we're all victims.

00:58:44 ◼   ► It would be nicer if there was a better,

00:58:47 ◼   ► you could say, well, the feedback mechanism

00:58:49 ◼   ► is you just don't go to the site.

00:58:50 ◼   ► But it's not that simple.

00:58:51 ◼   ► Like Marco said, there's lots of sites

00:58:52 ◼   ► that you read for years and years

00:58:53 ◼   ► and become part of your life

00:58:54 ◼   ► and their ads just start to get worse.

00:58:56 ◼   ► And we all think it's dumb on both sides of the thing.

00:59:01 ◼   ► It's like, look, this is not the way

00:59:02 ◼   ► you're gonna save your site.

00:59:03 ◼   ► Just look at what happened to Macworld.

00:59:05 ◼   ► Their ads got more and more aggressive.

00:59:06 ◼   ► Did that make the site more and more popular,

00:59:08 ◼   ► more and more profitable?

00:59:09 ◼   ► No, everybody got laid off.

00:59:10 ◼   ► It's a skeleton crew, the print edition is gone.

00:59:14 ◼   ► It's a desperation move towards the end.

00:59:16 ◼   ► I've never seen it work.

00:59:18 ◼   ► I've never seen a site that's having trouble monetizing

00:59:20 ◼   ► get more and more aggressive ads.

00:59:21 ◼   ► It's a negative feedback loop.

00:59:22 ◼   ► That just drives more people away

00:59:24 ◼   ► and makes your problem worse.

00:59:26 ◼   ► So maybe it helps someone's executives bottom line

00:59:28 ◼   ► for one quarter or something,

00:59:30 ◼   ► but in the end it's just hastening the end

00:59:32 ◼   ► of your profitability in your publication.

00:59:36 ◼   ► So I don't know if a friendlier interface to ad blockers

00:59:39 ◼   ► is the right kind of signal,

00:59:41 ◼   ► but people just silently complaining

00:59:43 ◼   ► and cursing when they go to sites is not great.

00:59:46 ◼   ► And the alternative of just,

00:59:47 ◼   ► well, just don't visit those sites,

00:59:49 ◼   ► I don't know if that's really feasible.

00:59:50 ◼   ► What if like,

00:59:51 ◼   ► if your favorite site for whatever news

00:59:55 ◼   ► starts doing really terrible ads,

00:59:58 ◼   ► it's not like you stopping to patronize that,

01:00:01 ◼   ► stopping going into that site

01:00:03 ◼   ► is gonna suddenly make an equivalent site pop up overnight.

01:00:07 ◼   ► what you're signing up for is perhaps multiple years

01:00:10 ◼   ► of never having a site where you can read about

01:00:12 ◼   ► whatever your favorite hobby is, right?

01:00:15 ◼   ► If you're really into woodworking

01:00:16 ◼   ► and your favorite woodworking site

01:00:18 ◼   ► that you've been going to for literally a decade

01:00:20 ◼   ► starts running really aggressive ads,

01:00:22 ◼   ► and the people saying like,

01:00:24 ◼   ► "Oh, just don't go to the site anymore."

01:00:25 ◼   ► Well, but what if all my friends are there

01:00:27 ◼   ► and I wanna read about woodworking or whatever?

01:00:29 ◼   ► Well, that site will go out of business

01:00:30 ◼   ► and five years later,

01:00:31 ◼   ► maybe someone else has found a new site

01:00:32 ◼   ► and build a new community where you'll have the same.

01:00:35 ◼   ► It would be nicer just to tell the people

01:00:37 ◼   ► who are running this site, this is not a great way for you

01:00:40 ◼   ► to get more money.

01:00:41 ◼   ► Maybe think of subscriptions or like, I don't know,

01:00:43 ◼   ► but you can't, that's a silly thing where you're like

01:00:45 ◼   ► talking to the people who run the site

01:00:47 ◼   ► and giving them advice.

01:00:48 ◼   ► But like, it's an imperfect signaling mechanism,

01:00:50 ◼   ► basically is what I'm saying,

01:00:51 ◼   ► between the people who are dissatisfied

01:00:53 ◼   ► and the people who are running the sites.

01:00:55 ◼   ► And this doesn't seem like we can get those things connected

01:00:57 ◼   ► and it's just like, the people running the sites

01:00:59 ◼   ► do one terrible thing, people using the sites are sad,

01:01:01 ◼   ► and then the site goes away anyway,

01:01:02 ◼   ► and it seems like not a great system.

01:01:05 ◼   ► Our final sponsor this week is, I recognize the irony,

01:01:10 ◼   ► is Autimatic.

01:01:12 ◼   ► Autimatic is a connected car adapter

01:01:14 ◼   ► that plugs into your car's diagnostic port,

01:01:16 ◼   ► the OBD, right, oh, yeah, onboard diagnostic.

01:01:20 ◼   ► The OBD2 port, the one that your mechanic uses

01:01:23 ◼   ► to diagnose your car's performance and problems.

01:01:26 ◼   ► Anyway, Autimatic pairs with your phone

01:01:28 ◼   ► and integrates with over 20 different apps

01:01:30 ◼   ► to give you a better driving experience.

01:01:32 ◼   ► go to automatic.com/ATP to see for yourself

01:01:36 ◼   ► and to get 20% off.

01:01:38 ◼   ► What it's always done is it's always paired

01:01:40 ◼   ► with the automatic iPhone or Android app

01:01:43 ◼   ► and it helps you in several ways by doing that.

01:01:46 ◼   ► If your check engine light comes on,

01:01:47 ◼   ► it can explain in plain English what the error code means

01:01:50 ◼   ► and it lets you clear the error code

01:01:52 ◼   ► if it's a temporary thing.

01:01:53 ◼   ► It can also give you a log of your trips

01:01:55 ◼   ► and your parking location.

01:01:56 ◼   ► So you can never lose your car and you can also see

01:01:59 ◼   ► how far you've been driving, how much gas you've been using.

01:02:02 ◼   ► It can score you when you're driving efficiency,

01:02:04 ◼   ► so you can set goals and save money on gas.

01:02:06 ◼   ► You can really save hundreds over time,

01:02:08 ◼   ► this could really add up.

01:02:09 ◼   ► And then you can also, if you're in an accident,

01:02:11 ◼   ► it can call emergency services for you,

01:02:14 ◼   ► if you aren't able to.

01:02:15 ◼   ► It can automatically call for you

01:02:16 ◼   ► and get you the help you need.

01:02:17 ◼   ► So very helpful device here.

01:02:20 ◼   ► Now, you may have seen that Automatic

01:02:23 ◼   ► just launched a new app store for the car.

01:02:25 ◼   ► So over 20 apps are now available at automatic.com/apps,

01:02:29 ◼   ► allowing you to use your car's data in all kinds of new ways.

01:02:32 ◼   ► So they have, first of all, they have if, this, then that,

01:02:35 ◼   ► IFTTT integration.

01:02:36 ◼   ► And they've had this for a little while now,

01:02:38 ◼   ► but now there's an app for that and everything.

01:02:39 ◼   ► And IFTTT gives you the power to build all kinds of recipes

01:02:43 ◼   ► based on your driving,

01:02:44 ◼   ► or various events that happen during your driving.

01:02:46 ◼   ► There's an app called Concur,

01:02:47 ◼   ► lets you pull your trips easily into expense reports.

01:02:50 ◼   ► FreshBooks can create invoices from your mileage.

01:02:53 ◼   ► Pebble watches, if you have a Pebble watch,

01:02:54 ◼   ► this can show your parking location right on your wrist.

01:02:57 ◼   ► License Plus can coach your teenager

01:02:59 ◼   ► into safer driving, if you have a teenager,

01:03:00 ◼   ► I feel bad for you, but I guess I'll be there eventually.

01:03:03 ◼   ► You can have it automatically send a Yo in the Yo app.

01:03:06 ◼   ► So that is a real thing.

01:03:08 ◼   ► So along with these apps, they've also launched

01:03:10 ◼   ► a developer platform for building your own apps

01:03:12 ◼   ► using car data.

01:03:14 ◼   ► So they have a modern REST API

01:03:16 ◼   ► with a real-time streaming API as well.

01:03:18 ◼   ► They do OAuth2, and they provide access

01:03:20 ◼   ► to a driver's trip history, including distance,

01:03:22 ◼   ► route, time, location, miles per gallon, et cetera.

01:03:25 ◼   ► The REST API is built for ease of use.

01:03:27 ◼   ► There's plenty of client libraries and examples

01:03:29 ◼   ► to quickly launch your app on Heroku if you want to,

01:03:32 ◼   ► on a dinosaur over there.

01:03:33 ◼   ► So get automatic.

01:03:35 ◼   ► Now, so you get all this.

01:03:37 ◼   ► You get these apps.

01:03:38 ◼   ► You get the trip logging, the mileage logging,

01:03:41 ◼   ► the parking locator, calling emergency services

01:03:43 ◼   ► in case of an accident, telling you what's going on

01:03:45 ◼   ► with check engine lights, all this.

01:03:46 ◼   ► Normally, it's 100 bucks up front

01:03:49 ◼   ► and there's no subscription fee.

01:03:50 ◼   ► So you don't pay per month, just 100 bucks up front.

01:03:53 ◼   ► Now for us, it's 20% off.

01:03:55 ◼   ► So it's actually down to just 80 bucks.

01:03:57 ◼   ► And that's it, 80 bucks one time, no subscription fees,

01:04:00 ◼   ► no monthly fees, that's it, just 80 bucks.

01:04:02 ◼   ► That includes free shipping and two business days,

01:04:04 ◼   ► and they have a 45 day return policy.

01:04:07 ◼   ► So if you're kind of on the fence, try it out.

01:04:09 ◼   ► 45 day return policy, really risk free.

01:04:11 ◼   ► Go to automatic.com/atp.

01:04:14 ◼   ► Gets 20% off, down to just 80 bucks.

01:04:17 ◼   ► Thanks a lot to Automatic for sponsoring our show once again.

01:04:20 ◼   ► - One more quick thing on Apple's content blocking that

01:04:22 ◼   ► I forgot to mention.

01:04:23 ◼   ► I mentioned that they have this limited matching vocabulary

01:04:26 ◼   ► that in the session they were telling you about the order to put things, and I'm going

01:04:29 ◼   ► by memory here, maybe Marco can confirm or deny, but wasn't there a thing where they

01:04:33 ◼   ► will actually refuse to load your blocker if they can determine that it is particularly

01:04:38 ◼   ► inefficient? Does that ring a bell, Marco?

01:04:40 ◼   ► >> I haven't looked too far into it. I think they said something like that, but in the

01:04:45 ◼   ► call to register your blocker code with it, there is a callback that you get. So maybe

01:04:52 ◼   ► there's an error that will pass you. I don't know.

01:04:54 ◼   ► But anyway, I was actually surprised by the degree to which Apple is so admin about optimization

01:05:03 ◼   ► here, and I think it just highlights the different worlds.

01:05:05 ◼   ► Like, "I'm the Mac, I do whatever you want, run JavaScript on every page, whatever."

01:05:10 ◼   ► Even that was probably foolish, and probably why they're revisiting that now.

01:05:14 ◼   ► But if you're going to go on iOS, it's like, "No, we can't have that.

01:05:18 ◼   ► We need to just get everything super efficient and compiled."

01:05:21 ◼   ► And I think a part of it is also because people are going to be downloading them from the

01:05:26 ◼   ► App Store.

01:05:27 ◼   ► So far, extensions are not hard to install, but they're a hell of a lot harder than downloading

01:05:31 ◼   ► an app from the App Store.

01:05:32 ◼   ► So Apple knows once they roll this thing out, a lot of people are going to be tapping those

01:05:37 ◼   ► icons and getting them in there.

01:05:39 ◼   ► And if they did allow people to run arbitrary JavaScript on every page of the phone, everyone's

01:05:43 ◼   ► phones would be paralyzed.

01:05:44 ◼   ► All right, then.

01:05:45 ◼   ► It's also kind of a privacy nightmare.

01:05:49 ◼   ► I mean, that's the other problem with it.

01:05:51 ◼   ► Yeah, iOS and now the watch are Apple's chances to do things--

01:05:55 ◼   ► like, we have a chance to do things right.

01:05:57 ◼   ► So let's look at what went wrong on the Mac,

01:05:59 ◼   ► and let's not reproduce-- or not on the Mac,

01:06:01 ◼   ► but in the PC industry, let's say,

01:06:03 ◼   ► and let's not reproduce those problems on iOS.

01:06:07 ◼   ► So tell us about Trim support in OS X.

01:06:11 ◼   ► I don't know much about it.

01:06:12 ◼   ► I've just been reading these-- I just actually installed 10.11

01:06:16 ◼   ► very recently and haven't played with that extensively.

01:06:20 ◼   ► But 9to5Mac and several other sites have pointed out that Apple has, when I first saw this

01:06:26 ◼   ► I'm like, "Oh, someone figured out how to hack El Capitan to support third-party SSDs

01:06:31 ◼   ► with trim and all that other stuff."

01:06:34 ◼   ► But no, this is apparently an Apple-supplied thing, command, that ships with the OS called

01:06:40 ◼   ► Trim Force.

01:06:41 ◼   ► That sounds awesome.

01:06:43 ◼   ► Yes.

01:06:44 ◼   ► It would be a reference to, well, I'm not going to tell you it would be a reference to.

01:06:47 ◼   ► Anyway.

01:06:47 ◼   ► [laughter]

01:06:48 ◼   ► Wow.

01:06:49 ◼   ► I didn't get your non-reference.

01:06:51 ◼   ► Yeah.

01:06:51 ◼   ► And when you run it, a little message that says, you know, "Okay, well, basically, we're going to enable trim on your third-party drives, but Apple..."

01:06:58 ◼   ► Let's read the text.

01:07:00 ◼   ► "By using this tool to enable trim, you agree that Apple is not liable for any consequences in the end-bin result, including but not limited to data loss or corruption."

01:07:07 ◼   ► Basically, Apple's washing your hands and be like, "Fine. You want to enable trim on a drive that we haven't tested and qualified to work with trim?"

01:07:14 ◼   ► correctly, feel free, not our problem anymore.

01:07:16 ◼   ► Which is how the trim enabler always was.

01:07:18 ◼   ► It's just that in Yosemite, I believe,

01:07:20 ◼   ► when they did the kernel extension signing thing,

01:07:24 ◼   ► the only way you could enable trim on third party SSDs

01:07:28 ◼   ► was to turn off the thing that verified

01:07:30 ◼   ► all the kernel extensions were signed and blah, blah, blah.

01:07:32 ◼   ► And so now they're giving you a way

01:07:35 ◼   ► to more safely use trim on your SSDs at your own risk.

01:07:39 ◼   ► and I'm not entirely sure if I'm going to do this

01:07:44 ◼   ► on my drives.

01:07:45 ◼   ► Oh, and by the way, the story says this is actually

01:07:46 ◼   ► on 10.10.4, I assume it'll be in 10.11 as well.

01:07:48 ◼   ► But I'm not sure if I'm going to do it on my STs

01:07:52 ◼   ► because I have, the question that this warning talks about,

01:07:55 ◼   ► like have not validated your drive, blah, blah, blah,

01:07:57 ◼   ► I haven't validated my drive either.

01:07:59 ◼   ► I have no idea if enabling trim support's gonna

01:08:01 ◼   ► cause data loss on my drive.

01:08:03 ◼   ► - Well also, if data loss, like if you didn't agree to this,

01:08:08 ◼   ► - Isn't Apple already identified from any kind of data loss

01:08:11 ◼   ► or corruption that you might suffer on your computer?

01:08:13 ◼   ► Does that really actually achieve any new protection

01:08:16 ◼   ► for Apple they didn't already have?

01:08:18 ◼   ► - Doesn't hurt.

01:08:19 ◼   ► Some lawyer probably loves that the text is there,

01:08:21 ◼   ► but yeah, the bottom line.

01:08:23 ◼   ► - I mean, they have the file system thing

01:08:25 ◼   ► that's already there,

01:08:26 ◼   ► corrupting everything slowly over time anyway.

01:08:27 ◼   ► - Yeah.

01:08:28 ◼   ► Yeah, as all the end user license agreements say,

01:08:32 ◼   ► this program is not suitable for any purpose,

01:08:35 ◼   ► or whatever the text is.

01:08:36 ◼   ► We do not promise that this does anything successfully.

01:08:39 ◼   ► It just sits, anyway.

01:08:41 ◼   ► It's nice to have a warning

01:08:42 ◼   ► so people know what they're getting to.

01:08:43 ◼   ► I'm sure my drive is fine.

01:08:44 ◼   ► I'm sure there's a million people

01:08:45 ◼   ► who have my exact same drive mechanism installed

01:08:47 ◼   ► on their PCs or their Linux systems

01:08:49 ◼   ► and they have trim support enabled

01:08:50 ◼   ► and it's working fine for them or whatever.

01:08:52 ◼   ► But I don't wanna be the guinea pig.

01:08:54 ◼   ► And as I said, when I got this big hunk in SSD,

01:08:56 ◼   ► I'm gonna use it in the Apple,

01:08:59 ◼   ► the quote unquote Apple supported way

01:09:01 ◼   ► until I see some problems.

01:09:03 ◼   ► If I fill my disc and things start slowing down,

01:09:06 ◼   ► then I know where to turn it.

01:09:07 ◼   ► I can go to the trim force thing.

01:09:10 ◼   ► If I don't see any slowdowns

01:09:11 ◼   ► and everything still seems lighting fast,

01:09:13 ◼   ► why would I risk it?

01:09:14 ◼   ► I'm just going to stick with what I have,

01:09:17 ◼   ► which is what Apple thinks is the appropriate thing

01:09:20 ◼   ► to do with this drive,

01:09:21 ◼   ► even though they're almost certainly wrong

01:09:22 ◼   ► because every SSD needs trim

01:09:23 ◼   ► because there's no way the drive can tell

01:09:25 ◼   ► which blocks are free, blah, blah, blah.

01:09:26 ◼   ► We all know about this CPAS shows

01:09:27 ◼   ► where we talk about SSD and trim, but--

01:09:29 ◼   ► - We never talk about the same thing twice.

01:09:31 ◼   ► - Until I run into that problem,

01:09:32 ◼   ► I just don't wanna deal with this at all.

01:09:34 ◼   ► But I am glad they're giving a nice way to enable it,

01:09:37 ◼   ► because trying to hack the system

01:09:38 ◼   ► and disable the kernel extension signing verification

01:09:42 ◼   ► was just the worst possible way to do that.

01:09:44 ◼   ► A supported way is great,

01:09:45 ◼   ► and so I applaud this effort in Yosemite 1014, supposedly,

01:09:49 ◼   ► and I assume in El Capitan as well.

01:09:52 ◼   ► All right.

01:09:53 ◼   ► - All right, thanks a lot to our three sponsors this week,

01:09:55 ◼   ► MailRoute, Hover, and Automattic,

01:09:57 ◼   ► and we will see you next week.

01:09:59 ◼   ► (upbeat music)

01:10:02 ◼   ► Now the show is over, they didn't even mean to begin

01:10:07 ◼   ► 'Cause it was accidental (accidental)

01:10:09 ◼   ► Oh, it was accidental (accidental)

01:10:13 ◼   ► John didn't do any research, Marco and Casey wouldn't let him

01:10:17 ◼   ► 'Cause it was accidental (accidental)

01:10:20 ◼   ► Oh, it was accidental (accidental)

01:10:23 ◼   ► And you can find the show notes at ATP.fm

01:10:28 ◼   ► And if you're into Twitter, you can follow them

01:10:32 ◼   ► @C-A-S-E-Y-L-I-S-S

01:10:37 ◼   ► So that's Kasey Liss M-A-R-C-O-A-R-M

01:10:41 ◼   ► Auntie Marco Arment S-I-R-A-C-U-S-A-C-R-A-C-U-S-A

01:10:49 ◼   ► It's accidental

01:10:52 ◼   ► They didn't mean to

01:10:55 ◼   ► Accidental

01:10:57 ◼   ► Tech podcast so long

01:11:02 ◼   ► It's hot here today.

01:11:04 ◼   ► Do you have central air? I don't remember.

01:11:06 ◼   ► Do not. The weather is fine, but you know, the computer room is on the sunny side.

01:11:10 ◼   ► When the sun goes down, so it gets hot late in the day, and I usually crank the AC in here to get it cooled down.

01:11:16 ◼   ► And then we start.

01:11:18 ◼   ► Do you think you would ever do central air in that house, or is it just too crazy to run all the ducts?

01:11:23 ◼   ► That's on the list, maybe next year.

01:11:26 ◼   ► - Well, I was just gonna say,

01:11:28 ◼   ► if you're gonna have your house invaded

01:11:29 ◼   ► and your attic invaded,

01:11:30 ◼   ► 'cause you usually have to put the units

01:11:31 ◼   ► and stuff in the attic,

01:11:33 ◼   ► you might as well roll it in this year if you can,

01:11:35 ◼   ► 'cause it's like if they're gonna be there

01:11:36 ◼   ► tearing everything up.

01:11:37 ◼   ► - They're not, they're just doing windows, remember?

01:11:39 ◼   ► Everything is outside except for the windows,

01:11:40 ◼   ► and the windows are basically still outside.

01:11:43 ◼   ► - And they're doing straight replacements,

01:11:44 ◼   ► so they're keeping the framing,

01:11:45 ◼   ► or are they reframing them too?

01:11:47 ◼   ► - No, same framing, same size windows.

01:11:48 ◼   ► - The same trim and everything.

01:11:50 ◼   ► - Yeah, the idea is to be as minimally invasive.

01:11:53 ◼   ► We'll see how this goes, but to be as minimally invasive to the interior as possible, because

01:11:56 ◼   ► all they're doing is taking off just enough of the trim to get the new windows in.

01:12:00 ◼   ► Nothing else is being done inside.

01:12:02 ◼   ► No walls, no floors, no ceilings, no nothing.

01:12:04 ◼   ► Yeah, because minimally invasive always is true when contractors and doctors and surgeons

01:12:10 ◼   ► say it.

01:12:11 ◼   ► Well, see, I mean, if they make a big mess of it, it's going to be a big mess until probably

01:12:16 ◼   ► next year, when we start doing interior stuff.

01:12:20 ◼   ► But going from the outside in.

01:12:21 ◼   ► - Gotta start somewhere.

01:12:23 ◼   ► - Yeah, we gotta protect from the weather

01:12:26 ◼   ► and then that preserves the inside

01:12:28 ◼   ► and then we can fix the inside.

01:12:30 ◼   ► - Well, and my construction just ended.

01:12:31 ◼   ► Casey, is yours ended yet or is it still finishing?

01:12:35 ◼   ► - My house construction is done asterisk.

01:12:38 ◼   ► So the kitchen is done except there's some tweaks

01:12:43 ◼   ► that need to be made to the cabinets and the installers,

01:12:46 ◼   ► one of whom is Aaron's cousin,

01:12:48 ◼   ► knows that that has to happen except last week

01:12:51 ◼   ► I think was last week he was on his honeymoon, so he's a little preoccupied.

01:12:54 ◼   ► And then

01:12:57 ◼   ► we kind of neglected to put two and two together and realize that, oh, now that we have this beautiful new kitchen with beautiful new

01:13:03 ◼   ► cabinets and beautiful new countertops,

01:13:05 ◼   ► the area where a backsplash would be,

01:13:08 ◼   ► these countertops and whatnot do not match where the old countertops were, so the wall is just freaking destroyed in

01:13:15 ◼   ► anywhere that used to have countertop, but does not. So it's not painted,

01:13:20 ◼   ► There's a hole in one part.

01:13:22 ◼   ► It's just a mess.

01:13:23 ◼   ► And so we need to figure out what to do about a back splash

01:13:26 ◼   ► and have somebody come in and do that.

01:13:29 ◼   ► - Yeah, so there's no way I would even say done asterisk.

01:13:31 ◼   ► If you still have tile and finishing work to do,

01:13:33 ◼   ► which you do, then that's still another two weeks at least.

01:13:38 ◼   ► - I sure as hell hope not.

01:13:39 ◼   ► It shouldn't be that long.

01:13:40 ◼   ► - Well, it's two days of work,

01:13:42 ◼   ► but it's gonna be two weeks until it's done.

01:13:44 ◼   ► - You have to learn the thing

01:13:45 ◼   ► that everyone who ever has home repairs learns

01:13:48 ◼   ► is that you can live in a house that is, quote unquote,

01:13:52 ◼   ► not done being constructed.

01:13:54 ◼   ► Like, how long do you think you can live

01:13:56 ◼   ► with your crazy-looking walls in the kitchen?

01:13:58 ◼   ► Actually, a surprisingly long time.

01:14:00 ◼   ► Like, as long as you have running water,

01:14:02 ◼   ► and plumbing, and toilets, and maybe washing machines,

01:14:05 ◼   ► and electricity, everything else can be crap

01:14:08 ◼   ► for years and years.

01:14:09 ◼   ► And I've known many people whose houses have been missing

01:14:12 ◼   ► inessential elements like that for a very long time.

01:14:15 ◼   ► - Well, that's the problem is,

01:14:17 ◼   ► Aaron and I, I don't think we're procrastinators. I don't think we're lazy, but we will find

01:14:23 ◼   ► other higher priority things to worry about if we don't conquer this backsplash issue

01:14:28 ◼   ► quickly. And so because of that now, we're recording a little early because of Aaron

01:14:33 ◼   ► and I, you know, we're going to be busy for a few days. But because we know ourselves

01:14:38 ◼   ► well enough to know that we will never accomplish these things if we don't light a fire under

01:14:42 ◼   ► our own butts right now. We really, as soon as we're done doing the stuff next week,

01:14:48 ◼   ► we're going to try to get the squared away as quickly as possible because otherwise it

01:14:52 ◼   ► will be in 15 years when we go to sell the house that we think to ourselves, "Oh, you

01:14:56 ◼   ► know what? That backsplash that we should have done in 2015, now that it's 2030, maybe

01:15:01 ◼   ► we should go do it."

01:15:02 ◼   ► And I'm telling you that I think that's fine.

01:15:04 ◼   ► No, I'm telling you that, you know, Casey, your suspicion is right that home construction

01:15:09 ◼   ► is like inertia, it has this inertia to it where like,

01:15:13 ◼   ► when you're in it, you can look at something

01:15:15 ◼   ► that's unfinished or broken or just kinda bad

01:15:18 ◼   ► and say, "Oh, let's do that too."

01:15:20 ◼   ► But once you are not currently doing construction,

01:15:23 ◼   ► once it is over, once everyone's out of your house,

01:15:26 ◼   ► the last thing you wanna do is start up another thing again.

01:15:28 ◼   ► Even if it's something small, like, "Oh, you know,

01:15:30 ◼   ► "we really gotta get somebody in here for two days

01:15:31 ◼   ► "to do this backsplash and maybe a couple of trim pieces

01:15:34 ◼   ► "here or there if that's necessary as well."

01:15:37 ◼   ► But getting started from zero,

01:15:40 ◼   ► it requires so much motivation and effort and work

01:15:44 ◼   ► that you're not gonna wanna do it.

01:15:46 ◼   ► So right now, before you've settled back down again,

01:15:51 ◼   ► get it done now.

01:15:52 ◼   ► Especially 'cause a tile backsplash

01:15:55 ◼   ► to go between your counters and your cabinets,

01:15:58 ◼   ► that's not a whole lot of tile.

01:16:00 ◼   ► That's not a big job, really.

01:16:02 ◼   ► It's not gonna be a massive imposition or expense

01:16:05 ◼   ► or time to get it done.

01:16:06 ◼   ► So you might as well get it done now,

01:16:08 ◼   ► 'cause again, because otherwise you'll turn it to John

01:16:11 ◼   ► and just not do it.

01:16:11 ◼   ► (laughing)

01:16:12 ◼   ► - It's so true.

01:16:13 ◼   ► - That's the way to live though.

01:16:15 ◼   ► - And just complain about it every year

01:16:16 ◼   ► for the next 15 years until you sell that house.

01:16:18 ◼   ► - You don't have to complain.

01:16:19 ◼   ► You just, like, I've learned to not care about many things

01:16:24 ◼   ► in my house that are falling apart,

01:16:26 ◼   ► as long as the functional things work.

01:16:28 ◼   ► - See, and I don't wanna get myself back in that position

01:16:30 ◼   ► because--

01:16:31 ◼   ► - I don't think your house was ever falling apart, was it?

01:16:32 ◼   ► - No, but that's how we had an air conditioner

01:16:35 ◼   ► didn't work for the eight years we've been in the house. I mean, well, it didn't work as relative,

01:16:39 ◼   ► of course. You know, it cooled. Well, let me put it to you this way. Once we got the AC redone,

01:16:44 ◼   ► I noticed that our garage is stifling hot now, and it never used to be that way. Well, you know why?

01:16:51 ◼   ► It's because the furnace, heat pump, whatever it's called, used to be in the garage. Now there's one

01:16:56 ◼   ► under the house, one in the attic. And it must have been leaking so much air-conditioned air

01:17:01 ◼   ► into the garage that I thought, because we do happen to have an insulated garage, I thought

01:17:06 ◼   ► we were just super well insulated. Oh no, my friends. As it turns out, we were cooling

01:17:10 ◼   ► our garage as well as our house. And so yeah, so we need to get the backsplash done. For

01:17:17 ◼   ► those of you who are going to tweet or email me telling me how easy it is to do a backsplash,

01:17:22 ◼   ► don't care. I'm incapable. I know I'm incapable. No matter what you think you know, in order

01:17:27 ◼   ► to make this job doable, I promise you I'm inept. It's not going to happen. I'm good

01:17:31 ◼   ► with ones and zeros, I'm good with flapping my gums, and that's about where it ends. So

01:17:36 ◼   ► I will have somebody come in and do that. And I also forgot to mention, it's actually

01:17:40 ◼   ► that my house is done asterisk, what is it, cross symbol? Because I forgot that we also

01:17:46 ◼   ► didn't ever have the gas line run, certainly to the upstairs furnace and perhaps the downstairs

01:17:53 ◼   ► furnace, because despite the fact that you guys believe there's no winter in Virginia,

01:17:58 ◼   ► we have been spoiled by gas heat during the, I guess, four-month fall that happens in Virginia

01:18:03 ◼   ► when winter normally happens. And so because of that, I don't want to have a heat pump

01:18:08 ◼   ► where it just coughs up like mildly warm air. I want to continue to have gas heat. And since

01:18:13 ◼   ► there's now a new furnace in the attic and the old furnace got moved, well, it's not

01:18:17 ◼   ► that got thrown away, but the downstairs furnace is now under the house. Now that gas line

01:18:23 ◼   ► needs to be plumbed, but after our AC guy was in the house for two weeks and we were

01:18:27 ◼   ► moved out of the house for two weeks, all of us needed a break, so he's gonna have

01:18:30 ◼   ► to come back in a few weeks and do that as well. So our home construction is done asterisk

01:18:36 ◼   ► cross symbol. How about you, Marco?

01:18:37 ◼   ► - Oh my God, no, get him there as soon as possible. I'm telling you, the longer he's

01:18:42 ◼   ► gone, the worse the idea of him coming back will be to you. You have to get it done now.

01:18:49 ◼   ► - Oh, I know.

01:18:50 ◼   ► - Don't listen to John. Get it done now.

01:18:52 ◼   ► Oh no, John is unequivocally wrong. And as soon as I say that, the internet rises up

01:18:57 ◼   ► and comes to his defense. But I'm telling you, internet, John is wrong.

01:19:01 ◼   ► Wrong for you, maybe, not wrong for me. What I'm saying is that I think it's okay to

01:19:07 ◼   ► live in an unfinished house for a long period of time, and I know people do that. But if

01:19:10 ◼   ► you can't bear the idea of living in an unfinished house, then by all means continue to repair

01:19:15 ◼   ► things. And in fact, you may want to use your construction inertia to get an AC unit installed

01:19:18 ◼   ► in your garage so your car doesn't get too hot.

01:19:21 ◼   ► - So I actually have a question about that.

01:19:22 ◼   ► So in your state of non-winter that apparently needs

01:19:27 ◼   ► two furnaces for a state that doesn't have winter.

01:19:29 ◼   ► - Allegedly, right.

01:19:31 ◼   ► - You have an insulated garage?

01:19:33 ◼   ► - Mm-hmm. - Why?

01:19:34 ◼   ► 'Cause it seems like most of the problem in Virginia

01:19:37 ◼   ► would be trapping the heat in in the summertime.

01:19:41 ◼   ► Like most people who live in the Northeast,

01:19:43 ◼   ► like me and John, don't have insulated garages

01:19:44 ◼   ► because the houses are too old and nobody built them.

01:19:46 ◼   ► - I own an insulated house.

01:19:48 ◼   ► - Right, yeah. (laughing)

01:19:49 ◼   ► - I'm lucky to have that.

01:19:51 ◼   ► So I'm wondering, and I don't have an insulated garage,

01:19:54 ◼   ► and it's not amazing, but it's fine.

01:19:57 ◼   ► It actually is cooler in the garage in the summertime

01:20:01 ◼   ► than it is outside, and my car is nice and cool.

01:20:04 ◼   ► I don't have to blast the AC when I get into my car

01:20:06 ◼   ► in the garage in the summertime,

01:20:07 ◼   ► because it isn't that hot,

01:20:08 ◼   ► 'cause it wasn't sitting in the sun.

01:20:10 ◼   ► So I wonder, what do you need the insulated garage for,

01:20:14 ◼   ► and is it causing more harm than good?

01:20:17 ◼   ► I don't think it's causing more harm than good, but I can tell you right now, I am well out of my comfort zone.

01:20:23 ◼   ► The reason I have an insulated garage is because we moved into the house with an insulated garage.

01:20:29 ◼   ► [laughs]

01:20:29 ◼   ► Like, it wasn't a--

01:20:31 ◼   ► Right. I guess nobody goes and like, uninsulates their garage.

01:20:34 ◼   ► Right, right. It wasn't a deliberate choice.

01:20:36 ◼   ► And it's not like, um, dry-walled or anything. Basically, in between the studs, at some point somebody had thrown in, you know,

01:20:43 ◼   ► little pink insulation like packets if you I'm sure there's a technical term for it I don't know

01:20:47 ◼   ► what it is don't care but anyway so most of the garage actually I don't know it's only the back

01:20:53 ◼   ► wall and I don't remember if the one side exterior wall is insulated or not now my my father who is

01:20:59 ◼   ► a little bit crazy has decided that even though he doesn't have an insulated garage for whatever

01:21:05 ◼   ► reason and he lives 45 minutes west of me he has put that same kind of insulation on his garage

01:21:10 ◼   ► doors, which I know there's a reason for it, and I know the garage doors tend to leak a

01:21:15 ◼   ► bit, but I'm still not entirely sure what he's after on that one. And it's funny because

01:21:21 ◼   ► when he did put the insulation into the garage doors, or had it put in or whatever, it ended

01:21:25 ◼   ► up that he needed to have the garage door people come back because now the springs weren't

01:21:29 ◼   ► strong enough to raise the damn garage door, because it was all this new weight on it.

01:21:35 ◼   ► But what about your construction? Because you were doing some as well, right Marco?

01:21:38 ◼   ► - Mine is totally done, we moved back into it, well.

01:21:40 ◼   ► - No asterisks? - Asterisks.

01:21:41 ◼   ► (laughing)

01:21:43 ◼   ► So you have the asterisk and the little T.

01:21:45 ◼   ► I have the little double bar T.

01:21:47 ◼   ► - Oh, okay, okay.

01:21:49 ◼   ► - Which I don't think those characters exist

01:21:50 ◼   ► outside of asterisks.

01:21:52 ◼   ► - Probably not. - I've never seen them,

01:21:53 ◼   ► you know, anyway.

01:21:54 ◼   ► So we, as part of, so the main rooms that we had done

01:22:00 ◼   ► are done, but we still have to wait for like one light

01:22:04 ◼   ► fixture to come in that just needs to be put on the ceiling

01:22:06 ◼   ► it was back ordered and then we have we also tacked onto the job a leaky

01:22:11 ◼   ► skylight in our in a different totally in our upstairs bathroom totally totally

01:22:15 ◼   ► far away from what we were working on but we figured we have people here and

01:22:19 ◼   ► we had this leaky skylight that keeps leaking water and rotting the support

01:22:23 ◼   ► beam that it's sitting on so we might as well get that fixed too so we don't rot

01:22:27 ◼   ► our house away like John like John yeah because water is the enemy of houses so

01:22:34 ◼   ► So yeah, we still have to get that done.

01:22:37 ◼   ► That's the thing that I am fixing, the water part.

01:22:40 ◼   ► So did you have that because of the god-awful winter that you had, or is this—

01:22:44 ◼   ► Oh no, actually, we didn't actually have any water inside our house, unlike many of

01:22:48 ◼   ► our neighbors who could be seen during the winter up on their roofs, futilely trying

01:22:51 ◼   ► to scrape snow off and hack at their ice dams.

01:22:54 ◼   ► No, we didn't have any water in the house.

01:22:57 ◼   ► But anyway, yeah, the outside of the house where the water does touch is slowly dying,

01:23:01 ◼   ► and so we're getting all that done.

01:23:02 ◼   ► I think my plan for our future retirement house is to either move to California where

01:23:10 ◼   ► it does not rain or build an entire house just out of glass and plastic.

01:23:17 ◼   ► Just nothing that can rot from water.

01:23:20 ◼   ► That's what modern houses are made out of these days.

01:23:23 ◼   ► If you get anything replaced on your house, like say they're going to replace, I don't

01:23:27 ◼   ► know, like the soffits or something, or even just front door stuff, they replace it with

01:23:32 ◼   ► non wood materials for the most part.

01:23:35 ◼   ► Like they use PVC or various other composites

01:23:38 ◼   ► that just do not rot.

01:23:39 ◼   ► There's no point in making something that you know

01:23:42 ◼   ► is going to come in contact with water out of wood

01:23:45 ◼   ► these days, except for the cost.

01:23:48 ◼   ► - Well and also, even when you use wood or drywall,

01:23:51 ◼   ► they have pressure treated wood,

01:23:53 ◼   ► they have mold resistant drywall.

01:23:55 ◼   ► These things cost a little bit more,

01:23:57 ◼   ► but no one uses them by default, except Holmes on Holmes,

01:24:00 ◼   ► no one else does.

01:24:01 ◼   ► And it's like, so, you know, now we've had a lot of work

01:24:04 ◼   ► done on our house total that involved lots of wood.

01:24:07 ◼   ► And we asked for mold resistant drywall the first time.

01:24:10 ◼   ► And they would only put it in the bathroom,

01:24:11 ◼   ► and we're like, come on.

01:24:13 ◼   ► You know, they were shady and they were weird.

01:24:14 ◼   ► So the second time we have a much better contractor,

01:24:17 ◼   ► and they had to replace, they found a bunch of rot

01:24:20 ◼   ► around the big sky that we were replacing,

01:24:22 ◼   ► in like this main roof area of our house.

01:24:24 ◼   ► There's tons of rotted support beams,

01:24:26 ◼   ► rotted joists in the roof around this area.

01:24:30 ◼   ► that of course when we got a new roof three years ago,

01:24:33 ◼   ► they didn't find, love those guys,

01:24:36 ◼   ► but we just asked, we're like,

01:24:38 ◼   ► "Hey, since you're replacing all this anyway

01:24:40 ◼   ► "and it has already rotted from water leaking in,

01:24:43 ◼   ► "can you use pressure treated wood this time?"

01:24:45 ◼   ► And at first they were like, "Well,"

01:24:47 ◼   ► and then they were like, "Yeah, I guess we can."

01:24:50 ◼   ► And it's like, "Why would you ever not use it?"

01:24:53 ◼   ► Yes, it costs a little bit more,

01:24:55 ◼   ► but it costs way less than doing the job a second time.

01:24:58 ◼   ► - Costs you way less, they'd love to do the job

01:25:00 ◼   ► - Second time.

01:25:01 ◼   ► (laughing)

01:25:02 ◼   ► - Yeah, maybe you've hit the nail on the head there.

01:25:05 ◼   ► - Yeah, for load-bearing things it's more difficult,

01:25:07 ◼   ► but I was mostly talking about trim pieces and stuff,

01:25:09 ◼   ► like trim stuff around your door

01:25:11 ◼   ► or the softness of your house or whatever.

01:25:13 ◼   ► Just make that all out of PVC

01:25:15 ◼   ► and you don't have to worry about it.

01:25:15 ◼   ► Because it's not load-bearing,

01:25:17 ◼   ► it doesn't matter that it's floppy,

01:25:18 ◼   ► it's all just decorative stuff,

01:25:20 ◼   ► especially stuff that's in contact with the ground,

01:25:22 ◼   ► like the little thing underneath your front door

01:25:23 ◼   ► that's against whatever your porch is,

01:25:25 ◼   ► using wood there is just crazy these days.

01:25:27 ◼   ► - Oh, goodness.

01:25:28 ◼   ► So John, yours has or has not started yet?

01:25:31 ◼   ► - Has not.

01:25:32 ◼   ► - Okay, and do you have a start date for that endeavor?

01:25:35 ◼   ► - We have our third start date so far.

01:25:37 ◼   ► (laughing)

01:25:38 ◼   ► So that's going according to expectations.

01:25:40 ◼   ► - Right, exactly.

01:25:41 ◼   ► - That's amazing.

01:25:43 ◼   ► - Yeah, and I forgot to mention that I already have started

01:25:46 ◼   ► the to-do list for next year, which is roof for sure,

01:25:49 ◼   ► because the house is about 10, no, I'm sorry,

01:25:51 ◼   ► 20 years old almost, so it's about time for that.

01:25:54 ◼   ► And I'm thinking we might do Windows as well.

01:25:57 ◼   ► So basically, each year I'm driving cars of various quality off a cliff in terms of how

01:26:03 ◼   ► much I'm spending.

01:26:04 ◼   ► It's delightful.

01:26:05 ◼   ► You should—everyone should buy a house.

01:26:06 ◼   ► It's the best.

01:26:07 ◼   ► Oh, yeah.

01:26:08 ◼   ► Your house is 20 years old and you're thinking of replacing the windows, right?

01:26:11 ◼   ► So we're getting windows replaced.

01:26:12 ◼   ► The windows we're keeping are the ones from, like, the '80s.

01:26:15 ◼   ► Yeah.

01:26:16 ◼   ► So our windows that we're keeping, because they're the "new windows," are the ones

01:26:20 ◼   ► that you're thinking of getting replaced.

01:26:21 ◼   ► The ones we're replacing are from 1932.

01:26:23 ◼   ► Oh, God.

01:26:25 ◼   ► Your house isn't insulated.

01:26:26 ◼   ► You're right.

01:26:27 ◼   ► be soon sort of or it was it was at one time insulated by a few pieces of

01:26:31 ◼   ► newspaper that have since fallen down into the wall cavities they're just

01:26:35 ◼   ► sitting on the bottom it's mostly insulated with mouse fur like when they

01:26:40 ◼   ► go up and down the walls their little fur rubs off that's our insulation well

01:26:43 ◼   ► you know fur I mean if you get a lot of it that would that wouldn't be that bad

01:26:46 ◼   ► our mice are small it takes a lot of mice to fill our wall cavities