272: 60% Satisfied
00:00:00
◼
►
See, all is right in the world, ladies and gentlemen.
00:00:02
◼
►
None of that can make the show because it's heinously boring and annoying.
00:00:04
◼
►
Because it's a shame, because there were some good titles, but it's not going to happen.
00:00:08
◼
►
Alright, let's start the show now that we're all friends again.
00:00:12
◼
►
We should make the title Fishstick and just not include that in the show and have nobody
00:00:15
◼
►
know what that is.
00:00:17
◼
►
That would be kind of funny, actually.
00:00:20
◼
►
Alright, so we have to start the show with Casey Schill's for ATP merchandise.
00:00:25
◼
►
We have realized that MKBHD, the popular tech YouTuber, was selling a shirt on Cotton Bureau
00:00:32
◼
►
at around the same time that we are, because I think his shirts have just ended recently.
00:00:38
◼
►
And we have come to the opinion or conclusion or have been told—I don't remember exactly
00:00:44
◼
►
where this came from—that MKBHD sold around 4,000 shirts over the lifetime of his time
00:00:51
◼
►
at Cotton Bureau.
00:00:52
◼
►
Now this is this is inaccurate you're already you're already gone off. I should have put more notes in the notes
00:00:56
◼
►
No, I'll tell you how I'll tell you how it's accurate people can't be over trying to make us feel better
00:01:04
◼
►
But here's here's the sad facts
00:01:06
◼
►
Last show I said, oh look at that MKBHD shirt
00:01:09
◼
►
It's only sold like 500 and something and there's one day left. We can beat that. Let's go beat that guys and we did
00:01:14
◼
►
Thanks to everyone who bought a shirt or anything else. We were I think we're around like 700 something
00:01:21
◼
►
"Yay, 700 and MKBHD had 500, we win, right?"
00:01:25
◼
►
Well, that particular shirt had sold around 500
00:01:29
◼
►
with one day left in the campaign,
00:01:32
◼
►
but he has sold many more than just that shirt.
00:01:36
◼
►
One other shirt of his sold 4,000 across two campaigns.
00:01:40
◼
►
So now we're up to 4,500 across two campaigns.
00:01:42
◼
►
He's sold many, many shirts.
00:01:45
◼
►
Many of them had sold in the high hundreds or the thousands.
00:01:47
◼
►
So if you just look at that one shirt we were looking at,
00:01:51
◼
►
Yes, he sold 4,000 of that single shirt over two campaigns.
00:01:55
◼
►
But if you look across all of his shirts,
00:01:57
◼
►
the numbers are grim.
00:01:59
◼
►
So we have no hope of beating MKBHD
00:02:03
◼
►
in terms of shirt sales, which is fine.
00:02:04
◼
►
He's got like millions and millions of viewers.
00:02:06
◼
►
We do not have millions and millions of listeners.
00:02:09
◼
►
We are the elite, right Marco?
00:02:10
◼
►
Are we coastal elites?
00:02:11
◼
►
- Yeah, yeah. (laughing)
00:02:14
◼
►
But thanks to everyone who bought something.
00:02:16
◼
►
The store is doing well.
00:02:17
◼
►
People are enjoying the pins they've gotten.
00:02:19
◼
►
No one has gotten any of the other merchandise yet,
00:02:20
◼
►
but the pins are shipping now,
00:02:22
◼
►
and people are getting them, and people are liking them.
00:02:24
◼
►
I'm still waiting for my pin, but looking forward to it.
00:02:27
◼
►
- I actually received my pins, and boy, are they nice.
00:02:30
◼
►
I gotta say, I know this is a shameless shilling,
00:02:33
◼
►
but I'm really happy.
00:02:34
◼
►
I already put one on my 60% satisfied backpack,
00:02:37
◼
►
and it's really nice. (laughing)
00:02:40
◼
►
- You should get that and a hat,
00:02:40
◼
►
now that you can't have a computer's hat.
00:02:42
◼
►
Just put your hat and say 60% satisfied.
00:02:45
◼
►
So yeah, so the campaign's going on
00:02:48
◼
►
for another week or so, I believe.
00:02:52
◼
►
If you would like something, get something, please.
00:02:55
◼
►
Do not wait, do not hesitate.
00:02:56
◼
►
Every time, I know I made the same speech last week,
00:02:59
◼
►
but every time we get so many people who write in and say,
00:03:02
◼
►
"Oh, I really wanted a shirt, but I just,
00:03:05
◼
►
I told myself I'd do it later and I forgot.
00:03:07
◼
►
Can you get me a shirt just for me?"
00:03:09
◼
►
And the answer is no, we cannot do that.
00:03:11
◼
►
Don't be that person, don't wait.
00:03:13
◼
►
Just order a shirt, it'll be great.
00:03:15
◼
►
The hoodies particularly are wonderful.
00:03:18
◼
►
The polo shirts, if that's your thing, they are also wonderful.
00:03:22
◼
►
We've sold over 100 of them last I looked, which is magnificent because that makes me
00:03:26
◼
►
think that Marco will let me do this in the future.
00:03:29
◼
►
Because like I said, I had to fight him a little bit on that issue.
00:03:32
◼
►
So buy a shirt or a pin, anything.
00:03:35
◼
►
They're great.
00:03:36
◼
►
I would appreciate if you would do that.
00:03:39
◼
►
All right, some follow-up.
00:03:40
◼
►
We had a little bit of information on 32-bit deprecation.
00:03:44
◼
►
wrote in and said that 32-bit Mac OS frameworks still target the old Objective-C runtime,
00:03:50
◼
►
which is different than 64-bit Mac OS or iOS, that's always used in modern runtime.
00:03:55
◼
►
So this means that frameworks need to worry about the fragile base class problem, which
00:04:00
◼
►
we can explain maybe later if you want.
00:04:03
◼
►
They have to worry about exposing all the space that's required for each class and other
00:04:07
◼
►
limitations unless extra tricks are done manually by the implementer.
00:04:11
◼
►
The end result is that almost all new development is done for iOS first, and Mac frameworks
00:04:14
◼
►
are either stuck in the past or evolve much slower. Removing the support for 32-bit frameworks
00:04:18
◼
►
means the same framework code is much easier to ship on both Mac and iOS, which is good,
00:04:23
◼
►
which we want. The objectivity runtime thing is a big factor in this, but it is, I think it's a
00:04:29
◼
►
little bit optimistic. I think that the, you know, if this is removed, suddenly frameworks will be
00:04:35
◼
►
released for both simultaneously. It'll help, of course, but there are many other reasons why
00:04:39
◼
►
development is done for iOS for us in the Mac later.
00:04:43
◼
►
This is but one of the many reasons.
00:04:46
◼
►
All right, was raised to listen the problem?
00:04:48
◼
►
On the last episode, Marco and I were lamenting the fact
00:04:51
◼
►
that oftentimes we were getting like these misfired
00:04:54
◼
►
audio messages that were queued up and ready to send
00:04:58
◼
►
in the messages app.
00:05:00
◼
►
And we had a case of simultaneous invention
00:05:02
◼
►
when both of us realized, wait a second,
00:05:03
◼
►
what about raise to wake or raise to record
00:05:06
◼
►
or whatever it's called and raise to listen?
00:05:08
◼
►
And this is, if you're sending a message,
00:05:11
◼
►
you can raise the phone up to your ear
00:05:13
◼
►
and it will let you dictate like an audio message.
00:05:16
◼
►
I shouldn't say dictate,
00:05:17
◼
►
but it'll let you record an audio message
00:05:19
◼
►
and then that can get sent.
00:05:20
◼
►
We thought maybe that would be it.
00:05:21
◼
►
So both of us turned that off,
00:05:22
◼
►
turned off that feature in messages.
00:05:24
◼
►
And I am happy to report,
00:05:26
◼
►
I have not had one of those misfires yet,
00:05:27
◼
►
but that doesn't necessarily unequivocally confirm
00:05:31
◼
►
that that was the problem,
00:05:32
◼
►
but certainly so far so good.
00:05:33
◼
►
Marco, how about you?
00:05:35
◼
►
- Yeah, I have not had the problem recur,
00:05:37
◼
►
but it's only been a few days because of our weird schedule this week, and so I can't fully
00:05:42
◼
►
say that I fixed that problem. The other thing is, so we got a lot of feedback from people
00:05:47
◼
►
on this, lots of iPhone X owners who are tired of accidentally causing things to happen,
00:05:52
◼
►
especially audio messages and messages when put in their phones in their pockets, and
00:05:57
◼
►
learned some interesting things. One of them, I think, is actually, in my opinion, this
00:06:01
◼
►
is a bug that Apple should fix. I know why, I can see why it does it this way, but I think
00:06:06
◼
►
this is a bug, if you hit the sleep/wake button,
00:06:11
◼
►
iOS will continue to accept touch input
00:06:13
◼
►
for like a half second or so after that.
00:06:16
◼
►
And the reason why seems to be that it is trying to,
00:06:19
◼
►
it's giving a small delay to try to tell
00:06:22
◼
►
whether you are double tapping the button
00:06:24
◼
►
or holding the button down to activate
00:06:26
◼
►
Apple Pay or Siri, respectively.
00:06:28
◼
►
Or if you have a triple tap accessibility shortcut enabled,
00:06:31
◼
►
it's waiting to see if you're triple tapping the button.
00:06:33
◼
►
The only way to distinguish whether you're single tap
00:06:36
◼
►
or double tap or triple tap or tap and hold,
00:06:39
◼
►
is to just wait a second before it executes
00:06:42
◼
►
the single tap action.
00:06:43
◼
►
So, the problem, and all that is, I think, unavoidable.
00:06:47
◼
►
There has to be some delay for it to know,
00:06:49
◼
►
like, did you just double tap this or not?
00:06:51
◼
►
The problem, in my opinion, is that when you single tap it,
00:06:55
◼
►
touch input should be suspended.
00:06:57
◼
►
I think when you tap that sleep/wake button,
00:06:59
◼
►
the entire screen should disable input for that half second
00:07:03
◼
►
until it knows whether it is going to sleep or not.
00:07:07
◼
►
Because I can't think of any of those situations
00:07:10
◼
►
where you're like holding it down or double tapping it
00:07:12
◼
►
or triple tapping it where you need to have screen input
00:07:15
◼
►
during that half second.
00:07:16
◼
►
So I think that needs to be delayed
00:07:17
◼
►
because it needs to be disabled because right now,
00:07:20
◼
►
and you can test this out for yourself,
00:07:22
◼
►
open up your phone, open up mail,
00:07:24
◼
►
or any app that has like a table view.
00:07:27
◼
►
Hit the sleep/wake button and then in the next half second,
00:07:30
◼
►
tap a message, and you will see it start to animate in
00:07:34
◼
►
before it goes to sleep, and then when you wake the phone
00:07:36
◼
►
back up, that message will be open.
00:07:38
◼
►
So it is definitely still accepting touch input
00:07:41
◼
►
after you hit the sleep/wake button for a brief period.
00:07:44
◼
►
So that's the actual cause of this problem.
00:07:46
◼
►
That needs to be fixed by iOS, in my opinion.
00:07:50
◼
►
- Yeah, I think I agree.
00:07:51
◼
►
- And somebody on Twitter suggested that if you disable
00:07:55
◼
►
all of those things that can wait for more touch in,
00:07:58
◼
►
more clicks, so basically if you turn off Siri, Apple Pay,
00:08:03
◼
►
and the accessibility shortcut on the iPhone 10,
00:08:05
◼
►
somebody else sort of was saying that that actually
00:08:07
◼
►
makes the sleep skip all those delays and be instant.
00:08:10
◼
►
I didn't actually try that though,
00:08:11
◼
►
'cause I don't wanna turn all that stuff off.
00:08:13
◼
►
We are sponsored this week by Hover,
00:08:15
◼
►
a great domain name registrar.
00:08:17
◼
►
Visit hover.com/atp to learn more
00:08:20
◼
►
and get 10% off your first purchase.
00:08:22
◼
►
Whenever I need a domain, I go to Hover.
00:08:24
◼
►
They have the best website, the best search,
00:08:27
◼
►
the best tools and you get tons of stuff built into the cost.
00:08:31
◼
►
Things like free Whois privacy, free forwarding,
00:08:34
◼
►
all sorts of great stuff.
00:08:35
◼
►
And there's no tricks, there's no shady upsells,
00:08:38
◼
►
there's no scammy add-ons, it's just great and easy.
00:08:41
◼
►
And so I'll tell you how easy it is.
00:08:43
◼
►
This past week, I was making a Slack group
00:08:45
◼
►
for a private community and I wanted a domain,
00:08:48
◼
►
I wanted a .com that would just redirect
00:08:50
◼
►
to the Slack invite URL, which is this big, ugly, long thing.
00:08:53
◼
►
I just wanted a simple .com, somebody could type in,
00:08:56
◼
►
I could tell them, I could maybe print it on posters
00:08:57
◼
►
and hang it up in the community, whatever else.
00:08:59
◼
►
And I went to Hover and I had a .com,
00:09:02
◼
►
that was a great name, it was easy to search for,
00:09:05
◼
►
I had it registered, bought, redirected to this URL
00:09:08
◼
►
with DNS propagation and everything in less than 15 minutes
00:09:13
◼
►
because Hover is that good and that easy to use.
00:09:16
◼
►
I was able to go from the idea
00:09:19
◼
►
to having a fully functioning domain with a redirect
00:09:21
◼
►
in less than 15 minutes.
00:09:23
◼
►
I was blown away by how easy it was.
00:09:25
◼
►
And that's just how good Hover is.
00:09:27
◼
►
Their website is easy to use, everything is intuitive,
00:09:30
◼
►
it's well designed, it's respectful of you,
00:09:32
◼
►
it makes good choices for you, so for instance,
00:09:34
◼
►
it turned on Whois privacy for me,
00:09:36
◼
►
because why would you ever not want that?
00:09:38
◼
►
They are sensible people and they give you
00:09:39
◼
►
wonderful deals, wonderful domains, and a wonderful website.
00:09:43
◼
►
So I strongly recommend you check out Hover.
00:09:45
◼
►
They have all the domain extensions you might need,
00:09:47
◼
►
they have all the features you need,
00:09:48
◼
►
they have a feature called Hover Connect
00:09:50
◼
►
that lets you automatically and very quickly
00:09:51
◼
►
connect to popular web hosts,
00:09:53
◼
►
and they also offer full DNS control if you don't want that.
00:09:56
◼
►
And their customer support is top notch
00:09:58
◼
►
if you ever need any help with anything.
00:09:59
◼
►
So check out Hover today at hover.com/ATP
00:10:03
◼
►
to learn more and get 10% off your first purchase.
00:10:06
◼
►
Once again, hover.com/ATP for 10% off your first purchase.
00:10:10
◼
►
Hover, get a domain name
00:10:12
◼
►
for whatever you're passionate about.
00:10:13
◼
►
(upbeat music)
00:10:16
◼
►
- All right, late breaking news.
00:10:19
◼
►
I have not yet had a chance to read this,
00:10:21
◼
►
so I am falling down on my chief summarizer
00:10:22
◼
►
and chief duties. There is an article on Daring Fireball entitled "Scuttlebolt
00:10:27
◼
►
Regarding Apple's Cross-Platform UI Project." And this guess is with regard to
00:10:32
◼
►
what people are calling marzipan, but I haven't had a chance to read this and
00:10:36
◼
►
I'm not gonna try to read this while we're recording, so I'm assuming one of
00:10:39
◼
►
you has at least the short, short version they can share with us.
00:10:42
◼
►
I read it when you were talking about jam bands.
00:10:44
◼
►
No wonder you were so quiet.
00:10:46
◼
►
It was just published like as we started recording it appeared on the site, so it was nice timing, so
00:10:51
◼
►
So kudos to Gruber for making it in time for our show.
00:10:54
◼
►
And you're welcome for getting into an argument with Marco that hopefully never made the show,
00:10:59
◼
►
so most people are scratching their heads right now.
00:11:07
◼
►
So Marzipan, we talked about this a couple shows back when, many shows back when the
00:11:11
◼
►
rumor first broke, the idea is that a cross-platform GUI project to make it easier to write applications
00:11:18
◼
►
that work on both the Mac and iOS.
00:11:21
◼
►
Marzipan was supposedly the coding.
00:11:22
◼
►
Wow, it was December 2017.
00:11:23
◼
►
That's a pretty old article, actually.
00:11:25
◼
►
Seems like only yesterday that we were talking about this and, you know, the possibilities
00:11:29
◼
►
for such a thing, the dangers, you know, all that stuff.
00:11:33
◼
►
See whatever episode number we talked about that in.
00:11:35
◼
►
But we haven't heard much about it since, except for us vaguely referring to it whenever
00:11:39
◼
►
we mention things that might appear WWDC.
00:11:42
◼
►
So Gruber has some info about that, most of it's secondhand, but here's the gist of it.
00:11:53
◼
►
The main thing, I'm going to skip to the end, because I already bought the article and say
00:11:56
◼
►
the main piece of information he has here is a suggestion that despite all the discussions
00:12:00
◼
►
and despite the fact that this Marzipan rumor is from December, that it seems like maybe
00:12:04
◼
►
it might not make WWC 2018, and that this is more of a 2019 project, kind of like the
00:12:08
◼
►
Mac Pro and that it would be scheduled for Mac OS 10.15 and iOS 13.
00:12:14
◼
►
So not for this year.
00:12:15
◼
►
There's some discussion of what it might actually be other than being a cross-platform framework.
00:12:22
◼
►
Gruber has heard that it might be like a declarative UI and he likens it to like both HTML and
00:12:28
◼
►
React as instead of like procedurally constructing a button and setting the button up and telling
00:12:35
◼
►
it where to display or whatever you would have a declarative thing where you just sort of
00:12:39
◼
►
describe the button and its surroundings. I'm not sure how that, you know, how that relates to
00:12:44
◼
►
React. I know React is like plain old web React, but of course HTML, I guess it's redundant with
00:12:49
◼
►
HTML. But like, I wanted to ask Casey about this. How does this, when you hear declarative UI
00:12:56
◼
►
on Apple platforms, like on iOS on the Mac, does that relate in any way to RxSwift?
00:13:03
◼
►
How would you characterize RxSwift as declarative UI in any way?
00:13:09
◼
►
No, RxSwift really has nothing to do with creating user interfaces.
00:13:12
◼
►
So RxSwift is a mechanism by which you can react to things that have happened in the
00:13:17
◼
►
user interface.
00:13:19
◼
►
But it's unfortunate because React became a buzzword that like three or four different,
00:13:23
◼
►
wildly different projects all started using all at the same time.
00:13:25
◼
►
So RxSwift is reactive X, which was actually a .NET thing.
00:13:31
◼
►
And so in any case, RxSwift is about reacting to a button tap on a plain vanilla UI button,
00:13:40
◼
►
for example.
00:13:41
◼
►
It has nothing to do with the creation of a button or anything like that.
00:13:46
◼
►
Now this is in contrast with React Native, which is a Facebook project, is that right?
00:13:52
◼
►
Which is about making user interfaces in a semi but not really cross-platform way, which
00:13:59
◼
►
in putting a kind of,
00:14:02
◼
►
is that the one that has like kind of a fake DOM
00:14:04
◼
►
in front of everything, is that right?
00:14:06
◼
►
- I thought React Native,
00:14:08
◼
►
this is the blind lady blind here.
00:14:09
◼
►
I've only used actual real React, right?
00:14:11
◼
►
So these React adjacent projects,
00:14:13
◼
►
I have limited familiarity with.
00:14:15
◼
►
But my tiny limited familiarity with React Native
00:14:17
◼
►
was that it's actually the reverse,
00:14:19
◼
►
that the UI elements were still done
00:14:21
◼
►
with the native UI toolkit,
00:14:22
◼
►
and it was merely the, it's kind of like our RX Swift.
00:14:25
◼
►
The cross-platform part of it would be the handling
00:14:27
◼
►
of events in terms of when this happens, do that,
00:14:30
◼
►
and the state management stuff,
00:14:31
◼
►
but that the actual UI would be defined
00:14:33
◼
►
and rendered by the native platform.
00:14:35
◼
►
But that comes from zero experience with React Native.
00:14:37
◼
►
But plain old React uses JSX,
00:14:40
◼
►
which is basically like HTML plus JavaScript combined.
00:14:42
◼
►
And HTML, I think is the better example here.
00:14:45
◼
►
It's declarative in that you just write tags.
00:14:47
◼
►
You just write tags for your buttons
00:14:49
◼
►
and for your input elements and for your paragraphs
00:14:51
◼
►
and so on and so forth.
00:14:52
◼
►
You don't write procedural code that says,
00:14:53
◼
►
please draw a paragraph here.
00:14:55
◼
►
And then inside the paragraph,
00:14:56
◼
►
Please draw this.
00:14:57
◼
►
There are no commands that you're telling us
00:14:59
◼
►
so you just type angle brackets and letters
00:15:02
◼
►
and stuff like that.
00:15:02
◼
►
That's what they mean by declarative.
00:15:03
◼
►
And you can make declarative UIs in all sorts of languages.
00:15:06
◼
►
You could write it in XML.
00:15:06
◼
►
There was a whole bunch of sort of XML UI definition toolkits
00:15:09
◼
►
that have come and gone at various things.
00:15:11
◼
►
You could define it in JSON.
00:15:13
◼
►
You could define it in a PLIS or at a ZIB file
00:15:16
◼
►
or a NIB file or a ZIB file
00:15:17
◼
►
or whatever the hell Apple's using these days.
00:15:19
◼
►
Like interface builder files are an example
00:15:21
◼
►
of that more like freeze dried objects,
00:15:23
◼
►
but declarative versus procedural
00:15:25
◼
►
as a general split end.
00:15:27
◼
►
Usually people want to do things declaratively
00:15:31
◼
►
if they don't wanna deal with the details.
00:15:33
◼
►
Like I don't care, rather than it telling me,
00:15:36
◼
►
rather than me writing a recipe for how to build this UI,
00:15:38
◼
►
why don't I just essentially draw this UI
00:15:40
◼
►
with data instead of code, you know, data-driven stuff.
00:15:45
◼
►
So I don't wanna have to write the code to Google.
00:15:47
◼
►
Let's go, let me just write a bunch
00:15:49
◼
►
of configuration information
00:15:51
◼
►
and then something else comes and look at this
00:15:52
◼
►
and say, oh, I see how you're describing your UI.
00:15:54
◼
►
Apple has done this in a strange way before with,
00:15:57
◼
►
maybe Mark will know, was it auto layout
00:15:59
◼
►
that let you draw the little ASCII art diagrams
00:16:01
◼
►
of what like buttons should be and stuff?
00:16:02
◼
►
- Yeah, that's one of the features of auto layout.
00:16:04
◼
►
I use it all the time.
00:16:05
◼
►
- Some people hate that UI.
00:16:07
◼
►
What we're describing is like when we say ASCII art,
00:16:09
◼
►
like you can draw like square brackets and equal signs
00:16:12
◼
►
and greater than signs and stuff to sort of draw--
00:16:14
◼
►
- It's called visual format language.
00:16:16
◼
►
- Yeah, like a little ASCII diagram of like,
00:16:18
◼
►
I want a button and then a space and then another button.
00:16:21
◼
►
And then, you know, it's very strange.
00:16:23
◼
►
Some people find it great, it's like, oh, this is great,
00:16:25
◼
►
I can just sort of draw out my UI
00:16:27
◼
►
and pass it as a string to this API
00:16:29
◼
►
and other people find it terrible.
00:16:30
◼
►
Oh, I can't believe I'm passing this opaque string
00:16:32
◼
►
to an API and expecting it to do something.
00:16:34
◼
►
Why don't you just let me make a bunch of calls?
00:16:35
◼
►
- I mean, to be fair, everything about auto layout is weird
00:16:39
◼
►
and a little obtuse and a little unintuitive.
00:16:42
◼
►
It is one of the least weird, least obtuse,
00:16:45
◼
►
least unintuitive parts of auto layout.
00:16:47
◼
►
- Yeah, but so this project for this cross-platform project
00:16:53
◼
►
cross-platform UI, the rumor here is that it is, aside from the cross-platform parts,
00:16:58
◼
►
the other twist on it is that it is a more declarative way to define user interfaces
00:17:03
◼
►
rather than being more procedural.
00:17:06
◼
►
And if true, it would mean that—we were talking before about the cross-platform thing—if
00:17:11
◼
►
Apple's going to make a unified UI for both the Mac and iOS, presumably they would use
00:17:16
◼
►
their current best idea of how to make a UI.
00:17:20
◼
►
like AppKit was the best idea in the 90s,
00:17:22
◼
►
and then UIKit was a chance to think,
00:17:24
◼
►
what's our best thinking now in the iPhone era?
00:17:27
◼
►
And if they're going to do one that's across both of them,
00:17:29
◼
►
they can take all the best ideas that come from the new one.
00:17:31
◼
►
And it's a little bit surprising to me
00:17:34
◼
►
that they would go in such a new direction
00:17:38
◼
►
as with a declarative UI, because there are limitations.
00:17:42
◼
►
There are things you want to do procedurally,
00:17:44
◼
►
even something as simple as pulling information dynamically
00:17:47
◼
►
to fill something like a scrolling table view.
00:17:49
◼
►
It's a little bit tricky to do that declaratively
00:17:52
◼
►
because you don't, you kind of have to do it on the fly,
00:17:55
◼
►
like in response to incoming data,
00:17:57
◼
►
you can't really declare the entire UI
00:17:59
◼
►
because you don't know it ahead of time.
00:18:00
◼
►
So sometimes it's tricky to do, you know, like,
00:18:02
◼
►
I don't know, like there's a place for procedural code
00:18:06
◼
►
and any sort of religiously declarative way to do UIs
00:18:09
◼
►
can run up against strange limitations.
00:18:11
◼
►
Whereas if you have something that works procedurally,
00:18:13
◼
►
you can build a declarative language on top of it,
00:18:16
◼
►
but underneath it is still the procedural way
00:18:18
◼
►
to do everything so you can hook into that?
00:18:20
◼
►
I don't know, we'll see.
00:18:21
◼
►
Anyway, that's the rumor about what it may be
00:18:24
◼
►
and the idea that it being cross-platform, of course,
00:18:27
◼
►
that you'd be able to make one UI using one framework
00:18:30
◼
►
and it would work in both places.
00:18:33
◼
►
Not that you would have the exact same controls
00:18:34
◼
►
in every place, but that it wouldn't be completely different
00:18:36
◼
►
like AppKit versus UIKit or UIColor versus NSColor
00:18:40
◼
►
and all that stuff, that there would be a single shared set
00:18:43
◼
►
of classes for different widgets.
00:18:44
◼
►
You'd use the appropriate widgets in the appropriate places,
00:18:46
◼
►
but in general, the UI code would be the same.
00:18:49
◼
►
And the final bit is that the code, final bit of rumor,
00:18:52
◼
►
and this is the code name Marzipan is,
00:18:55
◼
►
may have been the name of this thing at one point,
00:18:58
◼
►
but apparently it's not called that anymore.
00:18:59
◼
►
Not that we would ever know this,
00:19:00
◼
►
'cause Apple doesn't usually tell us the code names
00:19:02
◼
►
of things, but apparently Marzipan is an outdated thing.
00:19:06
◼
►
And who knows how outdated,
00:19:07
◼
►
because the story was from many months ago,
00:19:10
◼
►
but whatever it is, if Apple tells us the code name,
00:19:14
◼
►
chances are good that they're not gonna say it's Marzipan.
00:19:16
◼
►
according to this article.
00:19:18
◼
►
So, I mean, the reason I wanted to put this in here,
00:19:20
◼
►
aside from us fumbling in the last minute
00:19:22
◼
►
to try to characterize what a declarative UI is,
00:19:25
◼
►
is what's, not what's left for WWDC,
00:19:31
◼
►
but no Mac Pro, no artist formerly named as Marzipan.
00:19:36
◼
►
What do they show us at WWDC?
00:19:41
◼
►
What's left?
00:19:42
◼
►
What are we looking forward to now,
00:19:44
◼
►
now that all our Mac Pro hopes and dreams have been shattered,
00:19:47
◼
►
and now that it seems like, if you believe this article,
00:19:49
◼
►
perhaps no cross-platform UI either.
00:19:53
◼
►
- Maybe watchOS will finally give me background audio?
00:19:55
◼
►
Maybe SiriKit will finally give me an audio intent?
00:19:58
◼
►
- That's all Marco cares about.
00:20:00
◼
►
Marco cares about one word that's gonna be floating
00:20:02
◼
►
in the background of a slide that will say,
00:20:04
◼
►
new watchKit audio APIs.
00:20:07
◼
►
- I mean, it's basically been my entire developer life.
00:20:10
◼
►
With Instapaper, I was always hoping
00:20:12
◼
►
for any new API on UI WebView
00:20:14
◼
►
because it was almost never any and I had so many hacks.
00:20:17
◼
►
And I was like, please make this easier.
00:20:19
◼
►
Now I'm just kind of hoping like,
00:20:21
◼
►
yeah, you know what, please just like,
00:20:22
◼
►
make me like a Siri intent for audio
00:20:25
◼
►
or make me, you know, make watchOS not suck
00:20:28
◼
►
as much as it does suck for me right now.
00:20:31
◼
►
Give me a volume control on watchOS.
00:20:33
◼
►
By far, my number one feature request from customers
00:20:37
◼
►
is to be able to control volume from the crown
00:20:39
◼
►
from my watch app because I can't do.
00:20:41
◼
►
and the reason they can't do it
00:20:43
◼
►
is not within my control to fix.
00:20:44
◼
►
And so that's kind of,
00:20:47
◼
►
that's what I'm hoping for here.
00:20:48
◼
►
And that's like, you know, every WWDC,
00:20:51
◼
►
you, the developers get like fun new APIs,
00:20:54
◼
►
fun new abilities, even the kind of quieter OS releases
00:20:58
◼
►
usually have that kind of thing.
00:21:00
◼
►
I mean heck, even you know, infamously Snow Leopard
00:21:03
◼
►
added Grand Central Dispatch.
00:21:04
◼
►
Like there's, you know, the no new features release
00:21:07
◼
►
had this massive new API.
00:21:09
◼
►
So, you know, Apple's API and frameworks teams
00:21:11
◼
►
are pretty good at getting interesting, useful stuff
00:21:15
◼
►
out there pretty much every year.
00:21:16
◼
►
So, even if there's not like a major headlining difference
00:21:21
◼
►
for like consumers of the Apple products,
00:21:25
◼
►
and even if there is no like massive paradigm shift
00:21:28
◼
►
for developers like a Marsa pen kind of thing might be,
00:21:31
◼
►
that's still, you know, there's still gonna be stuff
00:21:33
◼
►
for us there, it just might not be like mind blowing
00:21:36
◼
►
or sensational.
00:21:37
◼
►
I'm sure they're gonna heavily push AR and VR even further,
00:21:40
◼
►
especially AR, 'cause the iPhone can't really do VR.
00:21:43
◼
►
So I'm sure they're gonna very heavily push AR stuff
00:21:46
◼
►
I honestly don't give two craps about AR,
00:21:49
◼
►
and I don't see any killer app on the horizon for it,
00:21:54
◼
►
so I don't really get excited about that.
00:21:58
◼
►
But I do get excited about just like,
00:22:00
◼
►
a bunch of little stuff and maybe one or two big things
00:22:03
◼
►
might become easier or possible now that weren't before.
00:22:06
◼
►
But that's what I like, and I think most developers, if you're getting real about
00:22:11
◼
►
what actually matters day to day to a developer's life, that's the kind of stuff that matters
00:22:15
◼
►
I want to talk about the AR and VR stuff in a little bit, but I'm trying to think of
00:22:19
◼
►
still what they could show at WWDC, because they do want to have some kind of headlining
00:22:24
◼
►
Even if it's mostly independent of the week's worth of sessions, something as the – what's
00:22:31
◼
►
the headline feature for the tech news sites, "FWDC keynote?"
00:22:34
◼
►
be a hardware keynote where the headline thing is that they have newly revised laptops, and
00:22:39
◼
►
that's the number one story, because there's a lot of—that would make for a compelling
00:22:45
◼
►
headline given all of the press surrounding the laptops in recent months.
00:22:50
◼
►
But that's not particularly developer-focused, and then just have the sessions be like, "Oh,
00:22:54
◼
►
and we have new versions of Xcode, and everything's better, and Swift has ABI stability, and AR
00:22:58
◼
►
and VR are still cool, and the new OSes," and stuff like that.
00:23:03
◼
►
- Well, and also, you said it isn't exactly
00:23:05
◼
►
developer focused, but first of all,
00:23:07
◼
►
releasing new MacBook Pros is very developer focused
00:23:10
◼
►
because almost every developer in that room
00:23:12
◼
►
will be using a MacBook Pro during that keynote,
00:23:13
◼
►
and afterwards, and the MacBook Pro is,
00:23:16
◼
►
if I had to guess, by far the most common machine
00:23:18
◼
►
used by Apple developers.
00:23:20
◼
►
But also, keep in mind that this is,
00:23:24
◼
►
the keynote is a public Apple event.
00:23:26
◼
►
It's an Apple keynote, it's not that different
00:23:29
◼
►
from the fall keynote in terms of how Apple needs
00:23:31
◼
►
to frame it, what kind of products might be announced there.
00:23:35
◼
►
It's just kind of convention that hardware
00:23:37
◼
►
doesn't always get announced there,
00:23:38
◼
►
but that is a public event,
00:23:40
◼
►
and that is really aimed at consumers.
00:23:42
◼
►
Developers happen to be sitting in their room
00:23:43
◼
►
while Apple talks to the world.
00:23:45
◼
►
The actual developer keynote is the State of the Union
00:23:48
◼
►
two hours later that's in the afternoon,
00:23:50
◼
►
that that's when we actually get all like,
00:23:52
◼
►
oh, here's this brand new big API,
00:23:54
◼
►
or here's major changes to Xcode.
00:23:56
◼
►
That's when the developer quality of life stuff
00:24:00
◼
►
actually gets introduced.
00:24:01
◼
►
The keynote, the official keynote that's livestreamed
00:24:04
◼
►
to the world is really a consumer-focused statement
00:24:08
◼
►
that is couched in developer context,
00:24:12
◼
►
but it's really talking to consumers.
00:24:14
◼
►
- So as we dig, it gets closer, maybe we'll know better,
00:24:16
◼
►
but for now, I was disappointed when it seemed like
00:24:19
◼
►
the Mac Pro's not gonna, well, Apple announced
00:24:21
◼
►
the Mac Pro's not gonna make it, and now it seems like
00:24:23
◼
►
they're not even gonna tease it, 'cause why would they?
00:24:25
◼
►
The whole point of them telling us that it's only coming
00:24:27
◼
►
in 2019 was to make it so we don't hope for anything.
00:24:30
◼
►
still would love a tease but this just doesn't seem like something they're gonna do and now this is
00:24:34
◼
►
just a rumor but still a rumor with uh you know a fairly reliable source group usually gets this
00:24:39
◼
►
stuff right uh that whatever marzipan is or was don't be looking for a new declarative cross
00:24:46
◼
►
platform framework to be announced wwc so it takes away the other uh you know the big hardware story
00:24:53
◼
►
as far as i was concerned was the mac pro and the big software story was this marzipan rumor
00:24:56
◼
►
both gone if you believe everything. And then all you've got left is all like last year there's
00:25:02
◼
►
going to be a new version of iOS, there's going to be a new version of macOS, maybe there'll be
00:25:06
◼
►
some new hardware, there's a new version of Xcode, there's a new version of Swift,
00:25:09
◼
►
like just a typical WWDC. I suppose as we get closer you know that the rumors will get more
00:25:16
◼
►
accurate rumors but right now I'm not feeling bummed about it but when the Mac Pro was taken
00:25:21
◼
►
away I was like oh well at least maybe they'll show that cross-platform framework. The only
00:25:25
◼
►
thing i have a hold on to is my like dark horse ridiculous probably not going to happen but if
00:25:30
◼
►
you want something to hope about is if apple is changing cpu architectures in any way one
00:25:36
◼
►
potential strategy is to super duper pre-announce it so that developers have plenty of time to adjust
00:25:40
◼
►
they pre-announced the intel transition but not by that much but there was a period of time when
00:25:46
◼
►
developers were shipped like uh power mac g5s with pentium 4s in them and stuff and uh
00:25:53
◼
►
ported their software and stuff like that.
00:25:54
◼
►
So if Apple really wants to get ahead of the game and say,
00:25:58
◼
►
we're pre-analyses this by two and a half years,
00:26:00
◼
►
but just so you know, we're gonna change architectures
00:26:03
◼
►
and here's a bunch of things on it,
00:26:04
◼
►
that would be cool and super exciting,
00:26:06
◼
►
but it just doesn't seem like a thing they're doing.
00:26:09
◼
►
- Well, and I think one more thing to be optimistic about
00:26:11
◼
►
for this, for like, what's left for WBC.
00:26:14
◼
►
WBC keynotes have been pretty poorly predicted
00:26:19
◼
►
in recent years.
00:26:20
◼
►
Like there's always been a lot of stuff
00:26:22
◼
►
that gets announced that we had no clue,
00:26:25
◼
►
that we had no expectation of beforehand,
00:26:28
◼
►
there were no rumors about it.
00:26:30
◼
►
Apple is getting a lot better at secrecy recently.
00:26:33
◼
►
And when it comes to things that aren't hardware,
00:26:36
◼
►
that don't have things like supply chain leaks
00:26:38
◼
►
and everything, like a lot of the stuff
00:26:39
◼
►
that gets announced at WBC, like APIs, Swift,
00:26:43
◼
►
stuff like that, there have been a lot of major
00:26:46
◼
►
WBC announcements in recent years
00:26:48
◼
►
that nobody expected and nobody predicted.
00:26:51
◼
►
So I wouldn't say like, oh, what's left?
00:26:53
◼
►
I don't know, it could just be a boring one.
00:26:55
◼
►
There's really not a strong correlation
00:26:57
◼
►
between what we know and can think to expect now
00:27:00
◼
►
versus what actually comes in a month.
00:27:03
◼
►
- I think that's true.
00:27:04
◼
►
I don't think this is an appropriate time
00:27:07
◼
►
to do our official WWDC pontificating episode,
00:27:10
◼
►
but that being said, since we've kind of opened up
00:27:13
◼
►
this whole conversation, a couple things that jump to mind
00:27:15
◼
►
that would be really cool, especially for developers anyway,
00:27:18
◼
►
having more UI kit on the watch rather than watch kit so having any UI kit for
00:27:23
◼
►
us on the watch would be cool a potential for custom watch faces in any
00:27:28
◼
►
capacity I don't think either of these things is particularly likely but both
00:27:32
◼
►
of them would make a pretty big splash amongst the people who care about the
00:27:35
◼
►
Apple watch we could see like Xcode or an Xcode equivalent for iPad which I
00:27:41
◼
►
still am hyper skeptical that that is gonna be a thing anytime soon but there
00:27:46
◼
►
There seems to be enough smoke there that I'm starting to think that I'm the one that's
00:27:49
◼
►
wrong and maybe it is coming soon.
00:27:52
◼
►
And this is not Apple style at all, but what if the headlining feature of iOS 12 is that
00:28:01
◼
►
there's no headlining feature?
00:28:03
◼
►
What if they really—
00:28:04
◼
►
I thought I was gonna get at—we had that story about downscaling.
00:28:06
◼
►
What was it like?
00:28:07
◼
►
Apple—I think it was just a rumor, like that there was a bunch of things planned for
00:28:11
◼
►
iOS 12 and now they've been pushed aside because Apple's worried about stability
00:28:14
◼
►
and ditto for the Mac thing.
00:28:15
◼
►
That was what's making me think that there'll be even less here than we expect.
00:28:19
◼
►
And yeah, they could spin it like you were saying, Casey, like, "Oh, the feature is no
00:28:22
◼
►
new features," even though they already did that once.
00:28:25
◼
►
That would get a lot of applause, but it doesn't really make for a lot of really interesting
00:28:27
◼
►
sessions, right?
00:28:30
◼
►
Things are more stable, and we fixed a lot of bugs.
00:28:32
◼
►
That's exactly what we want, but you can't really do a one-hour WWDC session about how
00:28:37
◼
►
a bunch of bugs are fixed.
00:28:40
◼
►
I don't know.
00:28:41
◼
►
We'll presumably talk about this again in a few weeks, but it is an interesting predicament
00:28:45
◼
►
because any of the places where we all were looking for smoke, it seems that those fires
00:28:51
◼
►
have been extinguished. So I'm not sure what's left to your point.
00:28:55
◼
►
So to what Margot was talking about before, the thing about WWDC things being surprises
00:29:00
◼
►
is software doesn't have supply chain leaks, right, for the most part. It's not like people
00:29:07
◼
►
all over the world have to build millions of these things and it's inevitable to leak
00:29:10
◼
►
out. It all happens in California for the most part, and those people are really good
00:29:14
◼
►
to keeping secrets, so we don't have any visibility into them. And the process, from what I can
00:29:20
◼
►
tell from the outside of how things appear at WWDC, is they're worked on for years and
00:29:25
◼
►
years and years inside Apple. And the most large, important projects have at least one,
00:29:31
◼
►
sometimes two years where they think they're going to be shown at WWDC, and they say, "No,
00:29:37
◼
►
actually, let's wait until next year." So if you're outside Apple, it's like, "Wow, look
00:29:42
◼
►
at this amazing thing when did they do that and if you're inside Apple it's
00:29:44
◼
►
like did that get what year did we release that because I know we were
00:29:49
◼
►
gonna release it this year but then we didn't and then the next year oh yeah
00:29:52
◼
►
that's the year we actually released it but we've been working on it for five
00:29:54
◼
►
and a half years so it's hard to keep track of when we actually released it
00:29:58
◼
►
the rumors are that the home pod was like that Swift was certainly in
00:30:01
◼
►
development for years and years inside Apple before it was shown to the world
00:30:04
◼
►
god knows APFS and every file system project inside Apple spent a long time
00:30:08
◼
►
not being released until it finally was released.
00:30:11
◼
►
Every year we thought it was gonna be the year
00:30:13
◼
►
of the file system until it finally was.
00:30:15
◼
►
So that's kinda why they catch you by surprise
00:30:18
◼
►
because when APFS comes out,
00:30:19
◼
►
although I think I did predict that one correctly,
00:30:21
◼
►
but the prediction was factoring into the formula
00:30:25
◼
►
that they had been working on this for years.
00:30:27
◼
►
And even though it seems like this is the year
00:30:29
◼
►
it should come out, it won't, it will be next year.
00:30:31
◼
►
Swift was mostly out of nowhere.
00:30:34
◼
►
Like no one knew it was a real thing,
00:30:36
◼
►
but again, worked on for years.
00:30:38
◼
►
And so anything that we're hearing rumors about now,
00:30:41
◼
►
like a project that started recently,
00:30:42
◼
►
like this don't call it Marzipan thing,
00:30:45
◼
►
that probably has to incubate inside Apple for many years
00:30:49
◼
►
and miss a bunch of WWDCs because it's not ready yet
00:30:51
◼
►
before it actually appears.
00:30:53
◼
►
So having it miss this year actually isn't that surprising.
00:30:56
◼
►
With the file system stuff, they miss so many years
00:31:01
◼
►
that we eventually stopped talking about it
00:31:02
◼
►
until we could start talking about it again.
00:31:04
◼
►
Or they made that, they went down the run of ZFS
00:31:07
◼
►
I almost got out and even got onto an Apple web page.
00:31:10
◼
►
And ditto for all sorts of Objective-C changes and things that are in Xcode.
00:31:15
◼
►
It seems to me that things, like any big company, Apple usually is cautious and not in a hurry
00:31:24
◼
►
to put out features like that, especially if they have large developer impact.
00:31:27
◼
►
They want to be sure that they work.
00:31:29
◼
►
Sometimes they want to dog food themselves for a while.
00:31:33
◼
►
So that's why I think it's so surprising.
00:31:34
◼
►
When it comes out, it's a project that was hot inside Apple five years ago when it was
00:31:39
◼
►
really getting going.
00:31:40
◼
►
And by the time it comes out, you know, if you didn't know about it five years ago, it's
00:31:43
◼
►
like, "Wow, where did this come from?"
00:31:44
◼
►
Yeah, it's like, "Yeah, we've been working on this for five years."
00:31:46
◼
►
Like, the entire teams of people have been doing this, and it was practically ready last
00:31:51
◼
►
And the reason it's so good this year is because it was practically ready right last year.
00:31:54
◼
►
So I'm hoping any sort of cross-platform declarative UI follows that path where, by the time we
00:32:01
◼
►
see it, Apple is super sure that it's great. They've dogfooded internally, it's really
00:32:06
◼
►
polished, it's good, and that's when it comes out and not like, "Oh, it's in a somewhat
00:32:12
◼
►
releasable state and we could show people now, let's just do that," because that's not
00:32:15
◼
►
a great way to go.
00:32:17
◼
►
We are sponsored this week by Squarespace. Start building your website today at squarespace.com.
00:32:22
◼
►
Enter offer code ATP at checkout to get 10% off. Make your next move with a beautiful
00:32:27
◼
►
website from Squarespace. Squarespace sites look incredible with almost no time investment
00:32:33
◼
►
from you. So if you need to make a website for pretty much any new project you want to
00:32:37
◼
►
do, whether you're creating a new blog, or a new business, or you want to show things
00:32:41
◼
►
off in a portfolio, or even more complicated things like you want to launch an online store,
00:32:46
◼
►
or you want to put an online podcast up and you want to host a podcast, Squarespace can
00:32:50
◼
►
do all these things for you, and all built into all of their plans. And they have tons
00:32:55
◼
►
of intuitive, easy to use tools.
00:32:58
◼
►
And you can make these sites no matter what your skill level, whether you are a novice
00:33:01
◼
►
or whether you're an advanced computer nerd, you can make a Squarespace site in pretty
00:33:05
◼
►
much no time with pretty much no effort.
00:33:07
◼
►
They make it super easy to do a lot of complex things.
00:33:10
◼
►
So you don't have to worry about it.
00:33:11
◼
►
You don't have to worry about hosting and upgrades and patches and uptime for your site
00:33:16
◼
►
and everything.
00:33:17
◼
►
They take care of all of that on rock solid networks, rock solid infrastructure, and if
00:33:21
◼
►
need any help whatsoever, they have award-winning customer support too. And
00:33:25
◼
►
it's great even if you're making a site for somebody else and they've come to
00:33:29
◼
►
you, the computer nerd in their life, to make a site for them, you can make it on
00:33:32
◼
►
Squarespace and then it's out of your hands. Then when they need support they
00:33:36
◼
►
don't have to go to you, they go to Squarespace. So whether you're making a
00:33:39
◼
►
site for yourself or somebody else, Squarespace is the place to do it. You
00:33:44
◼
►
can start a free trial to see what I mean at squarespace.com/ATP. Start
00:33:48
◼
►
that free trial today. There's no credit card required. When you decide to sign up, make
00:33:52
◼
►
sure to head to squarespace.com/ATP and use the offer code ATP to get 10% off your first
00:33:59
◼
►
purchase. That's squarespace.com/ATP. Code ATP for 10% off your first purchase. Thank
00:34:05
◼
►
you so much to Squarespace for sponsoring our show. Make your next move with Squarespace.
00:34:09
◼
►
Oh, and I guess this is still on the W2C topic, which is why I moved it up briefly. Marco
00:34:18
◼
►
talked about how he doesn't care about AR or VR, and there's no killer app for it.
00:34:23
◼
►
And I mostly agree with that, although I still think placing furniture is a—that's not
00:34:28
◼
►
a killer app, but it's a good application.
00:34:30
◼
►
I was doing some AR stuff on my phone that I actually found somewhat useful or at least
00:34:35
◼
►
So I think there's—
00:34:36
◼
►
Oh yeah, placing furniture, if you're like trying to ballpark a measurement on something,
00:34:38
◼
►
like there are interesting and useful uses for it.
00:34:43
◼
►
But what I'm saying is I don't think we've seen
00:34:46
◼
►
a killer app yet.
00:34:47
◼
►
And usually, I mentioned a little bit of this
00:34:50
◼
►
on Under the Radar this week, or last week,
00:34:51
◼
►
I forget which one, but usually,
00:34:53
◼
►
if a new technology comes around,
00:34:58
◼
►
and nobody can figure out the killer app for it,
00:35:00
◼
►
like almost right away,
00:35:02
◼
►
there generally doesn't come one.
00:35:04
◼
►
It doesn't usually happen later.
00:35:06
◼
►
Usually the killer app for something,
00:35:08
◼
►
if there's going to be one,
00:35:08
◼
►
is pretty obvious right from the start.
00:35:11
◼
►
So we've had AR now for a while,
00:35:13
◼
►
and we've had a few cool uses for it.
00:35:16
◼
►
Pokemon Go is by far the biggest use, I think,
00:35:18
◼
►
for the world.
00:35:20
◼
►
There's always gonna be fun little game integration
00:35:23
◼
►
and stuff, there's gonna be occasional utility functions
00:35:25
◼
►
like measuring or placing furniture,
00:35:27
◼
►
but I just don't see the killer app
00:35:30
◼
►
that's gonna make something like AR goggles,
00:35:32
◼
►
which is what this rumor's about.
00:35:34
◼
►
I don't imagine that's gonna be worthwhile.
00:35:40
◼
►
Nothing about AR has motivated me that like, oh wow, now I can like look at something on
00:35:47
◼
►
I can also look at something not on a table and it's easier.
00:35:50
◼
►
That's why I brought up this article here about the rumor about Apple AR VR glasses.
00:35:55
◼
►
First of all, this is like the second or third iteration of a years old rumor about Apple
00:36:00
◼
►
supposedly working on things that you put over your eyeballs that have screens incorporated
00:36:05
◼
►
I think the most recent one was that Apple, several years ago, that Apple had canned their
00:36:08
◼
►
internal glasses project because the tech wasn't ready or they didn't like it, they
00:36:13
◼
►
spent some time looking into it and they figured let's put this on the shelf.
00:36:17
◼
►
Here comes the rumor back again, this time with a wireless angle of like oh but it's
00:36:22
◼
►
different than other headsets because you don't have to have it connected with wires
00:36:24
◼
►
which is a big hassle for AR and VR goggles from some other companies.
00:36:31
◼
►
But I think for AR to, you know, we call it killer app because it's done in terms of like
00:36:36
◼
►
the software being the reason you buy the hardware.
00:36:38
◼
►
But in this case, kind of like the iPhone,
00:36:41
◼
►
the hardware is what enables the software.
00:36:44
◼
►
Like if you couldn't make a flat, small, all-screen phone,
00:36:49
◼
►
it doesn't matter how good your iPhone software is.
00:36:51
◼
►
You can't-- no one's going to want to use that.
00:36:53
◼
►
The killer app is the phone hardware itself.
00:36:55
◼
►
And once you have a big touchscreen,
00:36:58
◼
►
the software can finally run on it.
00:36:59
◼
►
You can hold it in your pocket, and the battery
00:37:01
◼
►
can last the amount of time, and the screen is responsive,
00:37:03
◼
►
and so on and so forth.
00:37:04
◼
►
enables you to have all these applications.
00:37:07
◼
►
So I think one of the reasons AR is less compelling
00:37:10
◼
►
and more of a specialized technology at this point
00:37:14
◼
►
is because you have to kind of hold your phone up
00:37:16
◼
►
and you can put it in front of signs
00:37:17
◼
►
and have it translate them or put things on tables
00:37:19
◼
►
and stuff like that.
00:37:20
◼
►
But it's not particularly comfortable or common activity.
00:37:24
◼
►
Unlike the plain old non-augmented reality
00:37:28
◼
►
of looking at your phone and flicking around with your--
00:37:30
◼
►
- Also known as reality.
00:37:32
◼
►
- Well, you know, looking at your phone
00:37:34
◼
►
flicking around with your thumb, that interface to your phone, right?
00:37:37
◼
►
Well, if there ever is—and I don't entirely buy this rumor because it seems it doesn't
00:37:42
◼
►
have enough substance there—but this rumor is about 8K displays in front of each eye.
00:37:46
◼
►
AR glasses, wireless AR glasses with 8K displays in front of each eye, which is far beyond
00:37:50
◼
►
what most expensive, huge VR sets use these days.
00:37:56
◼
►
But if you could have something that you could put on your face that would let you see—normally,
00:38:01
◼
►
the rest of the world but also see 8K display overlaid on it controlled wirelessly by some
00:38:07
◼
►
powerful device and this rumor has it being some box but that just, whatever, okay. I'm
00:38:12
◼
►
sure that's what it is inside Apple but I'm not sure that's what they would ship. I think
00:38:16
◼
►
that changes the AR game because I don't want to hold something up in front of my face.
00:38:21
◼
►
I don't want to look through a phone-sized portal into an augmented reality world but
00:38:27
◼
►
If I can wear, perhaps not this product, but in the somewhat distant future,
00:38:32
◼
►
if I can wear something in my head that is not too much different than the glasses I'm wearing right now,
00:38:36
◼
►
and can have a powerful computing device overlay useful information onto that world,
00:38:43
◼
►
I'm much more likely to find that useful, and it's much more likely to find the actual killer app
00:38:48
◼
►
when the hardware is able to support that.
00:38:50
◼
►
Because I don't think anyone wants to launch an app and hold a phone up at something,
00:38:54
◼
►
But I think if people could walk around all day and see information readily available to them, even if it's just driving directions,
00:39:00
◼
►
I know they have heads-up displays to do that in cars now,
00:39:02
◼
►
if you could get turn-by-turn driving directions overlaid with AR in your car, that would be a killer app,
00:39:09
◼
►
because glancing at the nav screen is dangerous and much more difficult.
00:39:12
◼
►
And most cars don't have HUDs, and I wouldn't trust that to automakers anyway,
00:39:16
◼
►
but if it could be displayed inside my glasses, my eyes on the road the whole time,
00:39:19
◼
►
I wouldn't miss a turn because I can't tell if it was telling me in 500 feet or in 300 feet,
00:39:23
◼
►
I can't correctly estimate what 500 and 300 feet is, and I can't tell if the thing is
00:39:26
◼
►
lagging so I miss my turn.
00:39:28
◼
►
If there's a big green line on the ground, I can figure it out.
00:39:31
◼
►
So I think there's not going to be a really big AR killer app until we get hardware like
00:39:36
◼
►
this, which is why I'm interested in rumors like this.
00:39:39
◼
►
Not that I think anything is coming anytime soon, but I am happy when I see rumors like
00:39:43
◼
►
this because I want to believe them, and I want to believe that Apple does continue to
00:39:47
◼
►
investigate both AR and VR.
00:39:50
◼
►
The release of ARKit makes it even more plausible.
00:39:54
◼
►
Yes, Apple actually is doing this internally.
00:39:56
◼
►
What do they have so far?
00:39:57
◼
►
They've got a bunch of frameworks
00:39:58
◼
►
that they're working on improving.
00:39:59
◼
►
And the frameworks are really good.
00:40:00
◼
►
And they improved last year,
00:40:01
◼
►
and I hope they improve more this year.
00:40:04
◼
►
The killer app, we don't see it yet.
00:40:06
◼
►
Hardware, glasses like that, we don't see it yet.
00:40:08
◼
►
But if and when it does come,
00:40:10
◼
►
I think it will be the game changer for AR.
00:40:15
◼
►
And until that happens,
00:40:17
◼
►
I'm glad that Apple is not like holding this stuff back
00:40:20
◼
►
and say, oh, we shouldn't even bother releasing ARKit
00:40:22
◼
►
until we have glasses.
00:40:22
◼
►
They should, and they are.
00:40:24
◼
►
But I'm hopeful.
00:40:26
◼
►
This is for like, I guess, WWC 2021,
00:40:29
◼
►
when the glasses come out.
00:40:30
◼
►
I don't know.
00:40:31
◼
►
Maybe they come free with your Mac Pro.
00:40:33
◼
►
- Oh yeah. - Yeah.
00:40:34
◼
►
- Yeah, right, Apple would ship anything for free.
00:40:36
◼
►
- Right. (laughs)
00:40:37
◼
►
- Remember how the glasses used to come with like,
00:40:39
◼
►
the crappy 3D TVs,
00:40:41
◼
►
and you'd get like one pair of glasses with it,
00:40:43
◼
►
but if your family wants to watch each new pair of glasses,
00:40:45
◼
►
it was like a hundred bucks.
00:40:46
◼
►
- I never had one of those.
00:40:47
◼
►
- I got a free pair with my TV.
00:40:49
◼
►
I totally missed the 3D era when I was buying TVs, thank God.
00:40:53
◼
►
- Be glad, I used it exactly twice, I think,
00:40:57
◼
►
both doing the same thing.
00:40:58
◼
►
I was playing the PlayStation 3 remaster
00:41:02
◼
►
of Shadow of the Colossus, which had a 3D mode,
00:41:04
◼
►
and I used the glasses that came with my TV.
00:41:07
◼
►
It was kind of interesting.
00:41:08
◼
►
I don't recommend it.
00:41:10
◼
►
- The funny thing is we can kind of predict
00:41:11
◼
►
if Apple does release this,
00:41:13
◼
►
we kind of know how it will go at this point
00:41:15
◼
►
based on previous releases.
00:41:16
◼
►
I wouldn't expect another iPhone.
00:41:18
◼
►
I would expect it to be announced way too early,
00:41:23
◼
►
to ship late, to ship with incomplete buggy software,
00:41:28
◼
►
and to be really slow and generally weird
00:41:31
◼
►
for about two years before they finally get something
00:41:33
◼
►
that's pretty good.
00:41:35
◼
►
- Possibly, but like every time I look at these rumors,
00:41:38
◼
►
even, you know, the, oh, 8K display in front of each eye,
00:41:40
◼
►
I'm like, how good, how far advanced
00:41:45
◼
►
would the technology have to be before it's a product
00:41:49
◼
►
that people would actually wanna use?
00:41:50
◼
►
'Cause I, even Apple in the state it is today,
00:41:53
◼
►
I don't see them releasing something like the Oculus
00:41:56
◼
►
or the HTC Vive or Vive
00:42:00
◼
►
where it's like a giant shoebox in your head.
00:42:03
◼
►
Apple just won't do that.
00:42:04
◼
►
It's just too, too much.
00:42:05
◼
►
Or even like the HoloLens, right?
00:42:08
◼
►
But we are so far from technology that lets it be glasses
00:42:12
◼
►
like the ones I have on my face.
00:42:13
◼
►
So, so far, like there's a long gap.
00:42:16
◼
►
On the other hand, as I've said about phone thinness
00:42:18
◼
►
many times, you don't just immediately release the thing
00:42:21
◼
►
that looks like a regular pair of glasses.
00:42:22
◼
►
You have to do all the things in between
00:42:25
◼
►
and work your way up to it slowly.
00:42:26
◼
►
Is that what Apple's doing internally?
00:42:28
◼
►
Or are they gonna actually release the big thicker thing
00:42:32
◼
►
and then, like you said, Marco,
00:42:35
◼
►
go through two or three years of it being thick
00:42:37
◼
►
and ridiculous and geeky and unwieldy
00:42:38
◼
►
until they finally get down to the nice one?
00:42:41
◼
►
It's rare that you can jump immediately to the iPhone, which was already pretty thin,
00:42:46
◼
►
pretty light, and did all the things we wanted it to do.
00:42:49
◼
►
That's why it's so amazing.
00:42:50
◼
►
But an 8K display in front of each eye?
00:42:55
◼
►
Wirelessly communicating?
00:42:56
◼
►
The batteries alone to power this would be substantial.
00:42:59
◼
►
This by the way ties into—I can't believe this article didn't tie it in—but it ties
00:43:02
◼
►
into the micro-LED thing, right?
00:43:05
◼
►
If Apple's doing micro LED displays, as far as I understand about that technology, as
00:43:12
◼
►
with any new screen technology, initially it's really expensive and really hard to make.
00:43:18
◼
►
So if you're going to start it on a product, start it on the one with the small screen,
00:43:21
◼
►
the obvious answer is the watch.
00:43:22
◼
►
The whole reason Apple will be doing this micro LED stuff is because they want a micro
00:43:26
◼
►
LED display on a watch in the future, because the screens are small.
00:43:29
◼
►
But you know what else has a small screen?
00:43:31
◼
►
Potential glasses.
00:43:32
◼
►
So don't expect micro LED displays on your giant 27-inch display.
00:43:37
◼
►
First expect them on your watch and maybe on your glasses in 2021.
00:43:41
◼
►
I just, I thought this rumor was hilarious because two AK screens wirelessly, no, not
00:43:50
◼
►
Now that doesn't mean in the future it can't happen by any means.
00:43:52
◼
►
And if there's anything I've learned as I've gotten older is that the future is far closer
00:43:56
◼
►
to today than I ever think it is.
00:43:58
◼
►
But I don't know, man.
00:44:00
◼
►
a whole lot of data to be pushed over no wires at all really, really fast. I mean, remember
00:44:06
◼
►
how much time the three of us have been pontificating about external retina displays? And that still
00:44:13
◼
►
is – I guess you can say it's here now, but it took a long time from when we first
00:44:17
◼
►
started talking about it and arguing about whether or not Thunderbolt had the bandwidth
00:44:20
◼
►
to do it. It's just – I don't see how this can happen even close to the way they
00:44:26
◼
►
want it to in 2018. But who knows? Maybe in 2020 it is possible.
00:44:30
◼
►
I can use lots of compression.
00:44:32
◼
►
The things that the glasses have going for it, the watch has going for it is obviously
00:44:37
◼
►
It's a really small screen, all things considered.
00:44:39
◼
►
So if you're going to debut a new display technology, they're working out to make it
00:44:42
◼
►
the size of a postage stamp.
00:44:44
◼
►
The thing glasses have going for it is that, depending on how they handle the lensing and
00:44:49
◼
►
all that stuff like that, you can make the actual screen very, very small.
00:44:55
◼
►
you know, it's right next to your eyeball and it doesn't have to be that bright because
00:45:01
◼
►
it's right next to your eyeball.
00:45:02
◼
►
And you have the possibility of using lenses and stuff which you don't have the possibility.
00:45:06
◼
►
It's in a fixed position, very close to your eyeball, so there's lots of things you can
00:45:09
◼
►
do that let you make the screen, I'm thinking mostly of battery, make it so this thing can
00:45:16
◼
►
take way less battery power than an 8K desktop display which has to spray light all over
00:45:24
◼
►
the room hoping that it will find its way into your eyeballs, this thing knows where
00:45:27
◼
►
your eyeballs are, it doesn't have to be as bright, it can be very very tiny, you can
00:45:31
◼
►
use lenses to magnify things.
00:45:34
◼
►
So I don't think it's...
00:45:36
◼
►
In labs, I can imagine somewhere in some university right now there's some AR pair of glasses
00:45:42
◼
►
that has 8K displays in front of each eye that cost $200,000 to make.
00:45:47
◼
►
Probably that's what's inside Apple as well.
00:45:49
◼
►
How do you turn that into a product?
00:45:51
◼
►
I don't know. That's Apple's job to figure out.
00:45:55
◼
►
What do you think, like, if you think about the logistics of if Apple releases AR glasses
00:46:01
◼
►
and if they become as popular as, say, the Apple Watch. Like, I think that's a good
00:46:05
◼
►
comparison of what they might expect, like, or what might be a realistic outcome is that
00:46:10
◼
►
they become as popular as the Watch. Do you guys get kind of, first of all, there's
00:46:15
◼
►
the logistical questions of like,
00:46:17
◼
►
well, what about people who wear prescription glasses?
00:46:21
◼
►
What about sunglasses?
00:46:23
◼
►
Like, do you, does Apple sell lots of different glass
00:46:28
◼
►
that can go into these?
00:46:28
◼
►
Do they become a prescription company
00:46:31
◼
►
and you tell them your prescription
00:46:32
◼
►
and they have a bunch that they can make
00:46:35
◼
►
or they can custom make for you?
00:46:36
◼
►
What if the future, you know, the quote, the future,
00:46:40
◼
►
involves wearing a certain kind of glasses
00:46:43
◼
►
that people with certain weird eyesight problems
00:46:45
◼
►
like Casey, what if they just never make one for you
00:46:47
◼
►
and then you can't participate in the future of computing?
00:46:50
◼
►
What if they make one but in Apple style
00:46:54
◼
►
they basically only make one style
00:46:56
◼
►
and then all of society is walking around
00:46:59
◼
►
with the same pair of glasses?
00:47:00
◼
►
Like, that's a little creepy.
00:47:02
◼
►
Like, I just, like the Apple Watch creeps me out enough
00:47:05
◼
►
that I kind of feel like everyone's part of the Borg,
00:47:07
◼
►
which I don't even understand that reference.
00:47:08
◼
►
I never even saw that show.
00:47:10
◼
►
But I just, I kind of feel like when I see,
00:47:14
◼
►
when I see a pretty large number of people out in public
00:47:18
◼
►
all wearing the exact same watch as a watch,
00:47:22
◼
►
I find that kind of creepy and corporate
00:47:23
◼
►
takeover overlord kind of-y.
00:47:25
◼
►
And then if everybody was also wearing
00:47:28
◼
►
the same kind of glasses with the same frames
00:47:31
◼
►
and everything, I don't know.
00:47:32
◼
►
I just don't, A, I don't want that world
00:47:36
◼
►
'cause I would feel like everyone is just kind of
00:47:40
◼
►
corporate, a little too far, a little too much like
00:47:43
◼
►
that we love Apple for even my taste.
00:47:47
◼
►
And I'm a pretty big fan of Apple,
00:47:48
◼
►
but even that's, I think, too far.
00:47:50
◼
►
And also, there are all these logistical
00:47:53
◼
►
and practical challenges of glasses are,
00:47:56
◼
►
first of all, pretty diverse.
00:47:57
◼
►
Second of all, not everybody even can wear glasses.
00:48:00
◼
►
Third of all, people who can wear glasses
00:48:02
◼
►
don't always want to.
00:48:03
◼
►
Fourth, people who can and want to wear glasses
00:48:06
◼
►
need different kinds of glasses,
00:48:08
◼
►
different types of lenses, different types of optics,
00:48:11
◼
►
different shading and tint for those lenses.
00:48:15
◼
►
There's so many logistical challenges
00:48:18
◼
►
with this kind of product,
00:48:20
◼
►
and even if it succeeds, it's kind of creepy and weird
00:48:22
◼
►
in a lot of different ways,
00:48:23
◼
►
and makes a bunch of aspects of society creepy and weird,
00:48:26
◼
►
as we kind of got previewed from glass holes.
00:48:29
◼
►
How does this work?
00:48:33
◼
►
How do they get past all that stuff?
00:48:35
◼
►
- Well, that's why I think you're thinking
00:48:38
◼
►
that it might be as successful as the watch
00:48:39
◼
►
is very optimistic,
00:48:40
◼
►
because the watch is a known quantity
00:48:42
◼
►
and the only real hurdles you have to overcome
00:48:44
◼
►
are like you said, fashion, but for the most part,
00:48:47
◼
►
you don't have all those concerns about like, you know,
00:48:50
◼
►
people don't have prescription wristwatches, right?
00:48:53
◼
►
Like if it fits around your wrist with an adjustable strap,
00:48:56
◼
►
you're pretty much good to go.
00:48:58
◼
►
If you can wear a regular watch,
00:48:59
◼
►
which is already a thing and a known quantity,
00:49:01
◼
►
you can wear one of these
00:49:02
◼
►
and it doesn't have to be that different from them.
00:49:05
◼
►
The adoption for glasses has to be slower.
00:49:10
◼
►
First of all, it's on your face, which is the thing you didn't mention.
00:49:12
◼
►
Yes, wrist or, you know, watches are on your wrist and it's a personal, the most personal
00:49:15
◼
►
product Apple has made, but it's not on your face.
00:49:17
◼
►
On your face is a whole other realm.
00:49:19
◼
►
Just ask anyone who gets tattoos.
00:49:20
◼
►
Yes, people have tattoos.
00:49:21
◼
►
Do you have a tattoo on your face?
00:49:23
◼
►
No, why not?
00:49:24
◼
►
It's a little bit different.
00:49:25
◼
►
That's your face.
00:49:26
◼
►
Your face is your face to the world, as they say.
00:49:29
◼
►
So anything that goes on your face, there is a lot of problems in terms of how weird
00:49:34
◼
►
and embarrassing this is, how comfortable it is.
00:49:37
◼
►
before you get into division, before you get into anything like that.
00:49:40
◼
►
So I think the outtake is definitely going to be slow.
00:49:42
◼
►
But long term, with any of these things, it's the whole semiconductor industry mantra from
00:49:49
◼
►
two years ago or whatever, as the price of compute drops to zero, many new applications
00:49:53
◼
►
become possible.
00:49:54
◼
►
Right now the price of compute and the size of compute and the power constraints of compute
00:49:57
◼
►
is not zero, but it's going down all the time.
00:50:00
◼
►
But imagine if you could get the computing power of the iPhone X into something that
00:50:06
◼
►
it sips power and it's the size of a grain of rice.
00:50:09
◼
►
Obviously it's this, you know, far future or whatever.
00:50:12
◼
►
Then a lot of your concerns about
00:50:14
◼
►
how do you do this with the glasses,
00:50:15
◼
►
well, it's like, it's the size of a grain of rice.
00:50:17
◼
►
Just get whatever glasses you want
00:50:19
◼
►
and stick the grain of rice in it, right?
00:50:21
◼
►
Like that it is such a small thing
00:50:23
◼
►
that it doesn't come to dominate,
00:50:24
◼
►
not only is it not a product in its own right,
00:50:26
◼
►
but it doesn't even come to dominate
00:50:27
◼
►
the products that it's part of.
00:50:29
◼
►
The watch is not quite there yet because,
00:50:32
◼
►
but it's closer than we might think
00:50:34
◼
►
and that the computing power of the Apple Watch
00:50:37
◼
►
does not dominate the band.
00:50:38
◼
►
The band doesn't care about the computing aspect of the watch.
00:50:42
◼
►
The entirety of the computing part of the watch
00:50:44
◼
►
is in the little watch thing.
00:50:46
◼
►
Still thicker than we would like, it's still bigger,
00:50:48
◼
►
but imagine if that computing part in the screen part,
00:50:50
◼
►
again, the computing part is the size of a grain of rice
00:50:53
◼
►
and the screen is a flappy piece of paper that sips power.
00:50:56
◼
►
Suddenly, your possibilities for what that watch
00:50:57
◼
►
could look like are no longer led by the technology.
00:51:02
◼
►
So with glasses, I have to think that the end game
00:51:04
◼
►
is you get whatever glasses you want
00:51:05
◼
►
and you apply to them some very small thing
00:51:08
◼
►
that projects something into your eyeball
00:51:10
◼
►
that lets you see stuff that communicates wirelessly
00:51:12
◼
►
with something else that drives them, right?
00:51:14
◼
►
That's the end game.
00:51:16
◼
►
In between there are all the phases
00:51:18
◼
►
where it looks large and clunky,
00:51:20
◼
►
where you either have to wear your prescription glasses
00:51:23
◼
►
inside it or they're incorporated with it
00:51:24
◼
►
or it attaches awkwardly to your existing glasses.
00:51:27
◼
►
I think you could even start it as an accessory
00:51:30
◼
►
to regular glasses as long as you can find a way
00:51:32
◼
►
to aim into someone's eyeball,
00:51:33
◼
►
but all the initial products are not like that.
00:51:35
◼
►
All the initial products are,
00:51:37
◼
►
it's a thing right next to your eye
00:51:39
◼
►
that incorporates glasses
00:51:41
◼
►
and either you can wear glasses with it or you can't.
00:51:44
◼
►
And that means it will necessarily be
00:51:45
◼
►
much more constrained than the watch.
00:51:46
◼
►
Lots of people won't even be able to use it.
00:51:48
◼
►
It will be for early adopters only.
00:51:50
◼
►
But you're hoping that the people who can use it
00:51:53
◼
►
recognize the value in it and rant and rave about it
00:51:56
◼
►
and can't wait for it to be more widely available.
00:52:00
◼
►
And obviously Apple's not dumb.
00:52:02
◼
►
Like they know all these things about that.
00:52:04
◼
►
I bet there are some people who work at Apple
00:52:06
◼
►
who wear glasses, I'm just guessing.
00:52:08
◼
►
It's not as if this is an unknown thing.
00:52:11
◼
►
This is again, one of the things that they have to tackle
00:52:14
◼
►
in terms of making this a product
00:52:16
◼
►
that they can sell in any form.
00:52:18
◼
►
What is their answer to that?
00:52:19
◼
►
There are lots of possible answers,
00:52:22
◼
►
but like the most recent rumor about this project
00:52:26
◼
►
being put on the shelf at Apple could have been,
00:52:29
◼
►
we just can't make anything of this yet.
00:52:32
◼
►
The technology's not there, there is no combination of things that makes a product that is remotely viable.
00:52:38
◼
►
So let's revisit this in a few years.
00:52:40
◼
►
And this rumor could be, "Hey, guess what? Apple's revisiting it."
00:52:42
◼
►
I'm mostly content with that.
00:52:45
◼
►
I just want to make sure that they're pursuing it because it seems like the potential upside is very big.
00:52:49
◼
►
And you'd rather see Apple doing this research, building ARKit into a powerful, robust, stable, feature-rich framework.
00:52:59
◼
►
you know, building devices with powerful GPUs to do AR and VR.
00:53:04
◼
►
Keep doing that so that if and when the hardware comes out
00:53:08
◼
►
of your labs and you get something that's even remotely
00:53:10
◼
►
viable for some subset of the population,
00:53:12
◼
►
all the software pieces are in place.
00:53:14
◼
►
Because I think-- and this is the reason
00:53:16
◼
►
this isn't a lot of science fiction movies or whatever--
00:53:18
◼
►
the potential upsides are really big.
00:53:20
◼
►
Being able to just look around and have information
00:53:23
◼
►
in your field of vision when you need it overlaid
00:53:27
◼
►
onto the real world is potentially incredibly powerful.
00:53:30
◼
►
Yes, it can be dystopian and stupid and, you know,
00:53:33
◼
►
also just sci-fi, I always take advantage of that,
00:53:34
◼
►
but there are plenty of completely benign,
00:53:36
◼
►
really awesome applications that are just waiting
00:53:40
◼
►
for the hardware, essentially.
00:53:42
◼
►
Even if it's something to put someone's name
00:53:44
◼
►
next to their face.
00:53:45
◼
►
If you work in a big office like I do
00:53:46
◼
►
and you're terrible with names like me,
00:53:48
◼
►
that's a killer feature right there.
00:53:50
◼
►
When I look at somebody that does face recognition
00:53:51
◼
►
and puts their name underneath it
00:53:52
◼
►
because I always forget people's names.
00:53:55
◼
►
That's not an exciting feature.
00:53:56
◼
►
It does not require massive computing hardware.
00:53:58
◼
►
The application itself that does it involves technology
00:54:01
◼
►
that existed for many, many years in a very reliable form.
00:54:04
◼
►
Why don't we have it now?
00:54:05
◼
►
'Cause there's no way to get information in your eyeballs
00:54:08
◼
►
when you look at somebody.
00:54:09
◼
►
That's the limiting factor, not the reading of faces,
00:54:13
◼
►
not the looking up of names,
00:54:14
◼
►
not the constructing a raster image to overlay on something.
00:54:17
◼
►
It's, if I hold my phone with people,
00:54:20
◼
►
I look like I'm crazy,
00:54:21
◼
►
but if I just look at them with my glasses,
00:54:22
◼
►
everything's fine.
00:54:23
◼
►
So I hope I live long after season play like this
00:54:25
◼
►
because I can't remember your name, I'm very sorry.
00:54:28
◼
►
- It's Casey, we've been doing this show
00:54:31
◼
►
for almost five years.
00:54:32
◼
►
- I know, I know almost three Casey's.
00:54:34
◼
►
We are sponsored this week by Rover,
00:54:38
◼
►
the nation's largest network of five star pet sitters
00:54:40
◼
►
and dog walkers.
00:54:41
◼
►
For $25 off your first booking,
00:54:43
◼
►
visit rover.com/accidentaltech
00:54:46
◼
►
and use promo code accidentaltech during checkout.
00:54:49
◼
►
Rover is the dog people,
00:54:51
◼
►
they are the nation's largest network
00:54:52
◼
►
of five star dog sitters and dog walkers.
00:54:55
◼
►
They are here for you with access to reviewed,
00:54:58
◼
►
trusted sitters and walkers for every dog owner
00:55:00
◼
►
and lifestyle.
00:55:01
◼
►
Your dog deserves the best.
00:55:03
◼
►
So they only accept 20% of sitters who begin their profiles.
00:55:07
◼
►
And Rover offers all this in an easy to use iOS
00:55:11
◼
►
and Android app.
00:55:12
◼
►
You can search, book, fave, pay, all through their app.
00:55:15
◼
►
And then you can even receive adorable photos.
00:55:17
◼
►
You can get maps of where your dog walker walked their dog.
00:55:20
◼
►
You can even know where they did their business.
00:55:22
◼
►
If you wanna know that for some reason,
00:55:23
◼
►
you can get custom updates.
00:55:24
◼
►
And you can even meet your dog walker
00:55:26
◼
►
before you trust your dog with them.
00:55:28
◼
►
They have free in-person interviews
00:55:30
◼
►
and home environment visits
00:55:31
◼
►
so that you can find the perfect match
00:55:33
◼
►
between sitters, owners, and pets.
00:55:35
◼
►
When you're shopping or after you've done them,
00:55:38
◼
►
you can have verified reviews,
00:55:40
◼
►
you can write reviews, you can read reviews,
00:55:42
◼
►
all through their app.
00:55:44
◼
►
You can browse photos of the sitter's home,
00:55:46
◼
►
browse their previous pets, previous stays.
00:55:49
◼
►
All the bookings from Rover are backed by insurance,
00:55:52
◼
►
a reservation guarantee, and 24/7 access
00:55:54
◼
►
to pet care professionals.
00:55:57
◼
►
So see for yourself.
00:55:58
◼
►
For $25 off your first booking,
00:56:00
◼
►
visit rover.com/accidentaltech
00:56:04
◼
►
and use promo code accidentaltech during checkout.
00:56:07
◼
►
That's rover.com/accidentaltech
00:56:09
◼
►
with promo code accidentaltech
00:56:11
◼
►
for $25 off your first booking.
00:56:13
◼
►
Thank you so much to Rover for sponsoring our show.
00:56:16
◼
►
Marco, you just released a couple of updates
00:56:21
◼
►
for Overcast, most particularly your GDPR update,
00:56:25
◼
►
and had a post about that.
00:56:27
◼
►
Would you like to summarize anything about this update
00:56:31
◼
►
before I ask you a couple questions about it?
00:56:34
◼
►
- Yeah, basically this was my privacy update for Overcast.
00:56:37
◼
►
It bundled in a few bug fixes,
00:56:40
◼
►
like one or two very minor enhancements,
00:56:42
◼
►
and the most visible change for it
00:56:46
◼
►
is that on first launch, you are now asked
00:56:51
◼
►
If you have an email address as your login to Overcast,
00:56:55
◼
►
you're asked if you want to convert it to anonymous
00:56:56
◼
►
and with that option being pretty well promoted
00:56:59
◼
►
in that screen.
00:57:01
◼
►
And also new registrations,
00:57:03
◼
►
when you start the app like Clean,
00:57:05
◼
►
you are prompted to create an anonymous account
00:57:08
◼
►
as like the primary encouraged action
00:57:10
◼
►
and like kind of buried at the bottom
00:57:12
◼
►
is you can log in with email if you want to.
00:57:14
◼
►
And there is no longer even a way
00:57:16
◼
►
to create an email-based account from scratch in the app
00:57:20
◼
►
like any more, you have to create an anonymous account first
00:57:23
◼
►
and add an email later if that's what you want.
00:57:25
◼
►
So all of this was--
00:57:25
◼
►
- Can you describe what an anonymous account is?
00:57:28
◼
►
- Yeah, and this has been very hard to properly communicate
00:57:33
◼
►
to people in the interface and on Twitter and everything.
00:57:38
◼
►
So basically, all Overcast users have a sync account
00:57:43
◼
►
on the server.
00:57:45
◼
►
Overcast is server-based, it uses the servers
00:57:47
◼
►
to crawl the feeds, to sync things, for the app to know
00:57:52
◼
►
whether you have new episodes and everything.
00:57:54
◼
►
So all overcast usage is being based on having
00:57:59
◼
►
some kind of account on the server.
00:58:00
◼
►
So basically, I have two different types.
00:58:05
◼
►
You can have an email and a password,
00:58:07
◼
►
so you can just log into a regular login form.
00:58:09
◼
►
Type in your email, type in your password.
00:58:11
◼
►
You can have a forgot password, you can change your email,
00:58:13
◼
►
you can change your password, all the regular user stuff.
00:58:16
◼
►
That's one way you can do it.
00:58:18
◼
►
The other option is the server just generates
00:58:22
◼
►
a random number for you and gives it to your app
00:58:25
◼
►
as the login token and there's no email and no password.
00:58:29
◼
►
Those are anonymous accounts.
00:58:30
◼
►
So basically, those columns in the database are null
00:58:33
◼
►
which makes MySQL keying easy.
00:58:37
◼
►
So you have a null email, null password.
00:58:40
◼
►
You can't log into the website because there is no,
00:58:44
◼
►
because that token is not available
00:58:45
◼
►
to the website right now.
00:58:47
◼
►
And the devices can maintain your account
00:58:51
◼
►
through multiple device logins
00:58:53
◼
►
or through like a restore or an upgrade of your main device
00:58:57
◼
►
because it stores that login token in iCloud.
00:59:01
◼
►
So it totally bypasses the need for an email and password.
00:59:06
◼
►
It's still using an account
00:59:09
◼
►
and you still get a login token.
00:59:11
◼
►
And if you lose that login token,
00:59:14
◼
►
you have no way to access the account.
00:59:16
◼
►
But in actual real world usage,
00:59:19
◼
►
most people use that type of account just fine.
00:59:23
◼
►
Like even before I did this update,
00:59:25
◼
►
about a third of Overcast accounts were this anonymous kind.
00:59:30
◼
►
And I'd never hear from people saying,
00:59:32
◼
►
"I lost my account, it locked me out."
00:59:35
◼
►
I'd never hear from that.
00:59:36
◼
►
So this seems to be just fine
00:59:38
◼
►
for pretty much everybody who uses it.
00:59:40
◼
►
So now that is the default,
00:59:41
◼
►
and that is the encouraged and official way to do things.
00:59:45
◼
►
And this is all in the service of getting me out
00:59:49
◼
►
of the business of having this many email addresses.
00:59:51
◼
►
Like, I posted, when I made this big blog post,
00:59:56
◼
►
I mentioned how, I think it was 68% starting,
01:00:00
◼
►
about 68% of overcast accounts so far were email accounts.
01:00:04
◼
►
And I would like to drop that as far as possible.
01:00:06
◼
►
Now I don't know what's realistic to expect here.
01:00:09
◼
►
I have a few options if I wanna kind of boost things,
01:00:11
◼
►
but none of them are very pleasant.
01:00:13
◼
►
You know, what I want is for at least new accounts
01:00:17
◼
►
to drop down to very few of them being email-based.
01:00:22
◼
►
And I did that prompting screen in part for GDPR compliance,
01:00:26
◼
►
which I actually, it's, one of the problems with GDPR
01:00:30
◼
►
is that it's a little bit vague on certain points.
01:00:32
◼
►
And it's mostly a feature, not a bug,
01:00:35
◼
►
'cause then people should interpret it pretty conservatively
01:00:38
◼
►
and be extra cautious about dealing with your private data.
01:00:41
◼
►
There is some question about whether I even have
01:00:46
◼
►
qualifying private data and whether I even have
01:00:49
◼
►
the kind of usage of that data for marketing reasons
01:00:53
◼
►
that would even require consent,
01:00:55
◼
►
or explicit consent in this way.
01:00:58
◼
►
But I'm assuming that I do,
01:01:00
◼
►
I'm assuming that email addresses count as personal data,
01:01:02
◼
►
and I'm assuming that just having your email address
01:01:04
◼
►
requires some kind of consent.
01:01:06
◼
►
And so therefore, I am making people opt in to
01:01:10
◼
►
accept the privacy policy to even keep using
01:01:13
◼
►
their email address in the app.
01:01:15
◼
►
So I think I'm covered there.
01:01:16
◼
►
But this is partly about GDPR,
01:01:18
◼
►
that's kind of what motivated it,
01:01:20
◼
►
but it's much more about,
01:01:22
◼
►
I just don't wanna have people's emails.
01:01:24
◼
►
Like to me, that's a liability.
01:01:25
◼
►
Like I talked a few months back,
01:01:27
◼
►
at least on Under the Radar, and I think I did here too,
01:01:30
◼
►
about how I was trying to come up with a plan to,
01:01:32
◼
►
you know, similarly to how any like right thinking service
01:01:35
◼
►
store your password, they store a hash of your password.
01:01:39
◼
►
In a way that is, hopefully if they use a secure hash,
01:01:43
◼
►
in a way that makes it impossible or impractical at least
01:01:47
◼
►
to get your password if somebody steals your database
01:01:50
◼
►
and gets the hash.
01:01:52
◼
►
I was investigating for a while,
01:01:55
◼
►
can I do that with emails too?
01:01:58
◼
►
And hash the email.
01:02:00
◼
►
So I don't even have a copy of your email.
01:02:02
◼
►
And there's a bunch of challenges to doing that,
01:02:05
◼
►
like just practical challenges of things like
01:02:07
◼
►
how do you look up an email with a database index
01:02:11
◼
►
if it's a hash that doesn't have a fixed key
01:02:15
◼
►
or salt to it, rather.
01:02:17
◼
►
Like the key would have to be fixed,
01:02:18
◼
►
but the salt would presumably change with every iteration
01:02:21
◼
►
with any secure hash if you have problems with that.
01:02:23
◼
►
So there's lots of different challenges of hashing emails,
01:02:25
◼
►
and I might tackle them in the future,
01:02:28
◼
►
but for now I've realized,
01:02:30
◼
►
why don't I just try to store away fewer emails?
01:02:32
◼
►
That's step one is like,
01:02:34
◼
►
me store a lot less personal data to begin with. And then I'll start looking at ways
01:02:38
◼
►
to maybe erase it completely.
01:02:39
◼
►
>> It makes a lot of sense. I will probably forever hold on to my email-based account
01:02:45
◼
►
because I occasionally upload things. And I don't use the website near as much as I
01:02:50
◼
►
used to since getting AirPods because it's so easy to flip back and forth between my
01:02:56
◼
►
computer and my phone for what's being piped into my AirPods. But I will probably still
01:03:03
◼
►
hold onto email addresses and make your life miserable
01:03:04
◼
►
for as long as I can.
01:03:06
◼
►
- Well, and so there's a couple other things here.
01:03:08
◼
►
So you mentioned you want to still upload files.
01:03:12
◼
►
So right now, the only way to upload files
01:03:14
◼
►
is on the website, and the only way to log into the website
01:03:17
◼
►
is with an email address and password.
01:03:19
◼
►
And I should clarify too, for anybody who wants to,
01:03:22
◼
►
who's thinking about going and deleting your email
01:03:24
◼
►
from Overcast, you can always switch both ways.
01:03:27
◼
►
You can add an email to an account,
01:03:29
◼
►
and you can remove an email from an account
01:03:31
◼
►
at any time right from the app in the settings screen.
01:03:33
◼
►
So if you wanna try anonymous for a while
01:03:36
◼
►
and see if you ever actually need to log in with email,
01:03:38
◼
►
you can do that, it's no problem.
01:03:40
◼
►
And then you can always change your mind later.
01:03:41
◼
►
So please, I don't want your email, please lose it.
01:03:44
◼
►
So the other thing is right now you can't log into
01:03:48
◼
►
the website through any other method besides
01:03:50
◼
►
email and password, but I can change that.
01:03:52
◼
►
And the reason why I'm able to encourage people
01:03:56
◼
►
to use all these anonymous accounts at all
01:04:00
◼
►
is because almost nobody uses the website.
01:04:02
◼
►
It's very infrequently used,
01:04:04
◼
►
it's used by a very small percentage of logged in users.
01:04:07
◼
►
You can use the website without being logged in
01:04:09
◼
►
for things like looking up a share link,
01:04:10
◼
►
looking up a podcast, viewing share links, stuff like that.
01:04:13
◼
►
You don't have to be logged in for that.
01:04:15
◼
►
You only have to be logged in to basically have
01:04:17
◼
►
synced playback from your account.
01:04:20
◼
►
And the website is terrible,
01:04:21
◼
►
it has been terrible since day one.
01:04:23
◼
►
And there's just, one of the reasons it's terrible
01:04:26
◼
►
and that I haven't really fixed it up
01:04:27
◼
►
or added features to it, is that almost nobody uses it.
01:04:30
◼
►
And there's a small chicken and egg problem there,
01:04:32
◼
►
but for the most part, there just isn't that much demand
01:04:34
◼
►
for people to listen to podcasts in their web browsers.
01:04:37
◼
►
By far, the most listening happens on iPhones.
01:04:40
◼
►
- The most important feature of the website
01:04:42
◼
►
is so you can give someone a URL
01:04:43
◼
►
to listen to a timestamp in a podcast,
01:04:45
◼
►
and they don't need to have the application.
01:04:46
◼
►
They can just go to the web and it plays.
01:04:48
◼
►
That, I feel like, is the main reason
01:04:50
◼
►
that a website needs to exist.
01:04:51
◼
►
- Agreed, and that, you don't need a login for that.
01:04:54
◼
►
Like, you can generate those links on the phone,
01:04:56
◼
►
then anybody can view them without logging in.
01:04:58
◼
►
So the only reason to log in is if you wanna play stuff
01:05:02
◼
►
from your Mac or Windows PC or something like that
01:05:05
◼
►
in the browser, that also syncs to the same account
01:05:07
◼
►
you use for the iPhone.
01:05:09
◼
►
And while there are people who do that,
01:05:11
◼
►
there's not that many of them.
01:05:12
◼
►
Relative to the user base,
01:05:13
◼
►
it's a very, very small percentage that does that.
01:05:16
◼
►
So for instance, I think CarPlay is more popular than that,
01:05:19
◼
►
by a lot, actually, possibly by like 10 times.
01:05:22
◼
►
So it's a very small number of people who use the website.
01:05:25
◼
►
And file uploads are also, you know,
01:05:27
◼
►
that's a big feature for some people.
01:05:31
◼
►
It's not a big feature for a lot of people.
01:05:32
◼
►
It's only available to paying subscribers,
01:05:34
◼
►
which is already a fairly small percentage
01:05:37
◼
►
of the active user base.
01:05:38
◼
►
And even among them, you know,
01:05:40
◼
►
not all paying subscribers upload files.
01:05:44
◼
►
Many of them just subscribe
01:05:45
◼
►
because they wanna support the app
01:05:46
◼
►
or 'cause they don't wanna see the ads.
01:05:48
◼
►
So the number of people who are actually needing
01:05:50
◼
►
to upload files is fairly small,
01:05:52
◼
►
and they're also,
01:05:55
◼
►
Like I can work on ways to allow that either through the iOS app or through other means
01:06:00
◼
►
or I can make different various ways to log into the website without using an email.
01:06:06
◼
►
If I can link your account from your phone to the website.
01:06:09
◼
►
There are ways to do it basically so I'm not totally out of luck.
01:06:12
◼
►
That was going to be my next question.
01:06:14
◼
►
Lots of people suggested using CloudKit APIs that let you use, basically let you pull that
01:06:19
◼
►
token off of iCloud for the people by using a JavaScript API that you can run on your
01:06:24
◼
►
website that has access to the same information that your iOS application has access to, and
01:06:29
◼
►
you don't have to handle any of the authentication stuff. They just have to be logged into their
01:06:33
◼
►
iCloud account. But as far as your website is concerned, it just gets the token from
01:06:37
◼
►
there and goes through the whole shebang. But that, I mean, that would allow Casey to
01:06:41
◼
►
go email-less, I suppose. But if so few people use the website, I don't see why you wouldn't
01:06:47
◼
►
just keep it so that if you want to use the website, you need an email address.
01:06:50
◼
►
- Yeah, I mean, you're right, that would do it,
01:06:52
◼
►
and I haven't looked at the CloudKit JS stuff before.
01:06:56
◼
►
I know it exists.
01:06:57
◼
►
I know a few people have used it probably,
01:07:00
◼
►
but I don't know anything about it.
01:07:01
◼
►
I don't know if it's good, I don't know if it's reliable.
01:07:02
◼
►
I don't know what it requires from the websites,
01:07:05
◼
►
but I would like to investigate that.
01:07:08
◼
►
There's also various things you can do.
01:07:09
◼
►
Like, I can have the phone send a one-time link
01:07:13
◼
►
to your email that you can open up in a browser
01:07:16
◼
►
and have that log you in.
01:07:17
◼
►
There's stuff like that you can do
01:07:18
◼
►
that it's not that big of a deal.
01:07:20
◼
►
So I'm gonna be investigating that kind of thing
01:07:22
◼
►
in the near future probably,
01:07:24
◼
►
but it isn't a burning problem right now.
01:07:27
◼
►
- So I have a question.
01:07:28
◼
►
One of the things you talked about in your post
01:07:30
◼
►
is blocking tracking pixels.
01:07:33
◼
►
And a tracking pixel basically is an image
01:07:36
◼
►
that is effectively invisible,
01:07:40
◼
►
but when Overcast or some other client
01:07:43
◼
►
goes to get that image to display
01:07:45
◼
►
in like show notes, for example,
01:07:47
◼
►
That inherently passes some information about that user
01:07:51
◼
►
to the server that's serving that image.
01:07:54
◼
►
So it's kind of a back door into getting
01:07:57
◼
►
a little bit information about users without their consent.
01:08:00
◼
►
I have heard of tracking pixels,
01:08:02
◼
►
you know, and I've seen it used plenty of times on the web.
01:08:05
◼
►
I had no idea that this was a thing
01:08:07
◼
►
in the show notes for podcasts.
01:08:09
◼
►
I mean, it makes sense.
01:08:10
◼
►
I'm not saying it's unreasonable
01:08:12
◼
►
from a technological perspective,
01:08:13
◼
►
but I had no idea that that was a thing.
01:08:15
◼
►
How did you even find out about this?
01:08:18
◼
►
- Well, you know, I follow the podcast industry news,
01:08:21
◼
►
and tracking pixels have been a thing
01:08:24
◼
►
in RSS feeds for a long time.
01:08:26
◼
►
I think FeedBurner even offered them to the masses,
01:08:29
◼
►
but there's been various feed hosting
01:08:31
◼
►
and analytics platforms and packages
01:08:34
◼
►
that have offered tracking pixels for a while.
01:08:36
◼
►
The podcast industry,
01:08:39
◼
►
like I wrote a bit about this in the post,
01:08:40
◼
►
like the fundamental behavior of a podcast player
01:08:45
◼
►
that no publisher can break without cutting off
01:08:50
◼
►
large portions of their audience,
01:08:52
◼
►
is that they publish in an RSS feed,
01:08:55
◼
►
in that RSS feed are URLs of audio files.
01:08:58
◼
►
And the podcast player, at some point,
01:09:01
◼
►
if you are subscribed in your podcast app,
01:09:04
◼
►
at some point the podcast app downloads that audio file
01:09:08
◼
►
that's listed in the RSS feed for the episode
01:09:10
◼
►
that you are going to listen to.
01:09:12
◼
►
And then after that, the publisher hears nothing
01:09:15
◼
►
from the player.
01:09:17
◼
►
So the kind of information void here is the publisher
01:09:21
◼
►
of that podcast, all they know is that they served
01:09:25
◼
►
a copy of this audio file to a person at this IP address
01:09:30
◼
►
at this time, that's it.
01:09:32
◼
►
They don't know if you listened to it at all.
01:09:35
◼
►
If you do, they don't know when you listened to it,
01:09:37
◼
►
it could have downloaded it onto your phone
01:09:39
◼
►
and you listened six months later.
01:09:41
◼
►
They don't know if you listened to the first five seconds
01:09:43
◼
►
and then deleted it or never went back to it.
01:09:46
◼
►
They don't know if you skipped the ads,
01:09:48
◼
►
which a lot of them want to know.
01:09:50
◼
►
They don't know how far you got.
01:09:51
◼
►
They don't know if certain segments of the show
01:09:55
◼
►
are boring to people and they always skip over them,
01:09:57
◼
►
although really what they wanna know is ads.
01:09:59
◼
►
But there's also, they wanna know content decisions.
01:10:02
◼
►
As podcasting becomes a bigger and bigger business,
01:10:06
◼
►
the big players in the business are people coming from
01:10:10
◼
►
the big content world from the web, from TV,
01:10:14
◼
►
from radio, et cetera, and they're used to the kinds
01:10:16
◼
►
of things they can do on web pages.
01:10:19
◼
►
If you're running a web publication,
01:10:22
◼
►
you can track everything about what people are doing
01:10:25
◼
►
while they read.
01:10:26
◼
►
You can track how long they spend on the page,
01:10:30
◼
►
how far they scroll down the page, how quickly they scroll,
01:10:33
◼
►
whether they're the kind of person who highlights text
01:10:36
◼
►
as they read or not and what parts they highlight
01:10:37
◼
►
and whether they click around the page.
01:10:39
◼
►
you can measure so much.
01:10:41
◼
►
And then you can embed tracking codes with cookies
01:10:44
◼
►
and things like that that follow those people
01:10:46
◼
►
around the web.
01:10:47
◼
►
So you can say, not only does this person click around
01:10:50
◼
►
when they read, but this is a person that,
01:10:52
◼
►
a little while ago, went to Amazon and looked up,
01:10:54
◼
►
you know, patio chairs, and now they're over on my site
01:10:57
◼
►
reading about sunglasses and it sounds like they might
01:11:00
◼
►
be going to the beach.
01:11:00
◼
►
Like, you can make those kind of correlations
01:11:02
◼
►
and then later on, the things that your website
01:11:05
◼
►
tells Facebook about them can then be used to advertise
01:11:08
◼
►
them an Instagram about the article they read on your site three hours ago. So it's this
01:11:12
◼
►
whole crazy web of data and also this list of things like they can algorithmically generate
01:11:19
◼
►
articles, bots can generate articles that they know people will like based on previous
01:11:24
◼
►
data, they can analyze how those articles perform in real time, they can A/B test different
01:11:29
◼
►
arrangements of sentences and paragraphs, different types of construction, different
01:11:32
◼
►
topics and they can A/B test that to generate even more articles that are even more effective
01:11:38
◼
►
later, and podcast publishers want to bring that kind of world to podcasts. Now, I should
01:11:46
◼
►
clarify, not all podcast publishers, not even most podcast publishers, a few of the biggest
01:11:53
◼
►
ones, like the biggest ones that have massive companies, massive budgets, massive listener
01:11:59
◼
►
counts, big podcasting, basically, they want more data so they can sell more accurate ads,
01:12:07
◼
►
targeted ads for higher rates to big brand advertisers like Coca Cola who want that kind
01:12:11
◼
►
of data. That's what they want. Nobody like us wants this. And oh, and also, those, you
01:12:18
◼
►
know, the big publishers want to be able to make content decisions based on that kind
01:12:24
◼
►
of data. So they want to know like, oh, if we structure the intro this way, and if we
01:12:29
◼
►
do this segment before this segment, then listenership drops 4%. But if we rearrange
01:12:35
◼
►
them then the data shows that this is better this way because people will hang on two percent
01:12:40
◼
►
longer time or something like that. And what that leads to is, in my opinion, what the
01:12:47
◼
►
web has now, which is a lot of spam, a lot of garbage content, a lot of micromanaging
01:12:53
◼
►
of creative content and creative people and consumption of that content by data people,
01:13:00
◼
►
a huge amount of privacy invasion and tracking
01:13:04
◼
►
that is creepy and that people don't want or like
01:13:07
◼
►
or even know about.
01:13:08
◼
►
Just kind of a general, kind of cutthroat,
01:13:13
◼
►
bargain basement, penny scraping ad market,
01:13:18
◼
►
that right now, podcasting has none of these things,
01:13:21
◼
►
and podcasting is awesome right now.
01:13:24
◼
►
And we've gone like a decade
01:13:25
◼
►
without having any of these things.
01:13:26
◼
►
So I don't know why anybody wants this.
01:13:29
◼
►
I know why they want it, but I think they're misguided
01:13:33
◼
►
So, because the big publishers want this,
01:13:37
◼
►
and because podcasting is hot,
01:13:39
◼
►
and there's a lot of money being made here,
01:13:41
◼
►
both the big publishers want it,
01:13:44
◼
►
and also there's tons of ad tech companies
01:13:47
◼
►
trying to break into podcasting.
01:13:50
◼
►
Basically, they smell money, and they're like,
01:13:52
◼
►
"Oh, we'll use the tools we have
01:13:54
◼
►
"to expand into this market."
01:13:55
◼
►
So the tools that ad tech has are tracking,
01:13:59
◼
►
A/B testing, stuff like that.
01:14:01
◼
►
This is why a lot of podcasts now serve you local ads.
01:14:04
◼
►
It's just another part of this movement
01:14:06
◼
►
where they literally inject ads into the podcast
01:14:10
◼
►
at the moment you download it
01:14:12
◼
►
that are tailored to your IP address
01:14:14
◼
►
and anything else they know about you from that.
01:14:16
◼
►
And ad tech companies are selling
01:14:17
◼
►
all sorts of wonderful solutions to podcast publishers
01:14:20
◼
►
saying we can solve your data problem.
01:14:23
◼
►
we can track people past the download
01:14:26
◼
►
with our proprietary technology.
01:14:29
◼
►
And most of it is total BS.
01:14:31
◼
►
Most of it is just totally like
01:14:33
◼
►
they are not really knowing anything here,
01:14:35
◼
►
they're not really getting any data,
01:14:36
◼
►
or they're getting data from very few people.
01:14:38
◼
►
But the way, so I'm always on the lookout for,
01:14:41
◼
►
whenever any ad tech company says,
01:14:42
◼
►
"We've solved podcast data, we can tell you more
01:14:45
◼
►
"about where your customers are coming from,
01:14:47
◼
►
"how far they're listening and everything,"
01:14:49
◼
►
it all boils down to a few very small things they can do.
01:14:52
◼
►
Number one, they can embed images in the feed,
01:14:56
◼
►
they can embed tracking pixels,
01:14:58
◼
►
and they can assume that if somebody downloads the podcast
01:15:01
◼
►
and then the tracking pixel shows that they got,
01:15:04
◼
►
they can assume that person is playing the episode
01:15:07
◼
►
and has viewed the show notes.
01:15:08
◼
►
And then they can maybe extrapolate from that
01:15:10
◼
►
what percentage people are viewing that or whatever,
01:15:11
◼
►
and that's fine.
01:15:13
◼
►
And number two, they can try to slow stream the file
01:15:17
◼
►
to you, basically.
01:15:18
◼
►
So to try to measure how far you listen,
01:15:21
◼
►
instead of sending the file as fast as you can download it,
01:15:24
◼
►
if they can tell that you're streaming it,
01:15:26
◼
►
whether you're in a web browser or an app they control
01:15:28
◼
►
or if they can just kind of figure through heuristics
01:15:31
◼
►
that you might be streaming instead of downloading
01:15:32
◼
►
for some other reason, then they will serve it to you
01:15:35
◼
►
like just a little bit ahead of the play head
01:15:38
◼
►
so that if you cut off the stream after listening
01:15:40
◼
►
for five seconds, it hasn't served you much more than that
01:15:43
◼
►
so they know how much they served you
01:15:45
◼
►
so they can tell how far you listened.
01:15:47
◼
►
That's basically every podcast ad tech thing.
01:15:49
◼
►
It's like dynamic ad insertion, tracking pixels in the body,
01:15:54
◼
►
and slow streaming files.
01:15:55
◼
►
That's about the extent of it.
01:15:58
◼
►
And again, there's lots of efforts to change this.
01:16:01
◼
►
I don't know how that's gonna ever get off the ground,
01:16:03
◼
►
but it's fine.
01:16:05
◼
►
I should also point out, by the way,
01:16:07
◼
►
that a few months ago, Apple launched podcast analytics.
01:16:11
◼
►
For forever now, the podcasters have been begging Apple
01:16:15
◼
►
to give them more data,
01:16:17
◼
►
because Apple is the biggest podcast player out there.
01:16:20
◼
►
And it's, you know, for most general audience podcasts,
01:16:22
◼
►
Apple Podcasts is something like 60 or 70% of their audience.
01:16:25
◼
►
So if you have data, but you don't have data
01:16:28
◼
►
from Apple Podcasts, your data is not that useful.
01:16:31
◼
►
Apple actually gave people data.
01:16:33
◼
►
They didn't give like personal data,
01:16:36
◼
►
but now as a podcaster, ever since I think about November
01:16:39
◼
►
or so, you can log into the Apple Podcast back end,
01:16:43
◼
►
and you can see like what percentage of people listen,
01:16:46
◼
►
and how far into your show.
01:16:48
◼
►
And you can see what segments they skip.
01:16:50
◼
►
Like it's funny, you can look at the graph of an episode
01:16:52
◼
►
and you can see the ad breaks.
01:16:53
◼
►
'Cause you can see there's like a small drop off
01:16:54
◼
►
for the ad breaks.
01:16:55
◼
►
And there's like a slow curve or a slow slope down
01:17:00
◼
►
as you get to the end of the episode
01:17:02
◼
►
where you can tell people are like,
01:17:04
◼
►
not everybody finishes the episode, of course, right?
01:17:07
◼
►
But the funny thing is we've had this since like October,
01:17:09
◼
►
November, December, something like that.
01:17:11
◼
►
And that basically told us everything that podcasters
01:17:15
◼
►
say they wanna know.
01:17:16
◼
►
It didn't give any personal info,
01:17:17
◼
►
which is what they really want,
01:17:19
◼
►
but it did say, you know what, it turns out,
01:17:22
◼
►
most people who download it listen to it.
01:17:25
◼
►
Most people who listen to it listen to the end
01:17:28
◼
►
and don't skip the ads.
01:17:31
◼
►
That's about all we needed to know.
01:17:33
◼
►
Which, guess what, we already kinda knew that.
01:17:35
◼
►
We already kinda thought that,
01:17:36
◼
►
because our advertisers use things like special URLs
01:17:40
◼
►
and coupon codes and everything,
01:17:42
◼
►
and that's how they can gauge roughly
01:17:44
◼
►
how many people are hearing their ads
01:17:45
◼
►
and responding to them.
01:17:46
◼
►
That's why podcasts have repeat advertisers,
01:17:49
◼
►
because they can measure these things
01:17:51
◼
►
in the old-fashioned way,
01:17:53
◼
►
and they don't need all this tracking data.
01:17:55
◼
►
No one needs all that.
01:17:57
◼
►
Anyway, all this is a long-winded way of saying,
01:17:59
◼
►
which I'm very good at, a long-winded way of saying
01:18:02
◼
►
that the podcast industry is trying very hard
01:18:04
◼
►
to get more data about people,
01:18:07
◼
►
and I am interested in supporting none of that.
01:18:10
◼
►
I would like to keep giving them the exact data
01:18:12
◼
►
they have gotten forever,
01:18:13
◼
►
which is when you download the MP3 of the episode,
01:18:18
◼
►
they, by the nature of a download, get your IP address,
01:18:21
◼
►
and they get a user-agent string
01:18:22
◼
►
that says they're using overcast.
01:18:24
◼
►
And that's all I wanna tell them.
01:18:26
◼
►
That is the minimum.
01:18:28
◼
►
I mean, technically, I could remove the user-agent string,
01:18:30
◼
►
but they're not really using that for analytics purposes,
01:18:32
◼
►
anyway, they're using your IP address.
01:18:36
◼
►
That's, I think that's fine.
01:18:38
◼
►
I don't think I'm hurting anybody by doing that.
01:18:40
◼
►
That's how the industry's always worked,
01:18:42
◼
►
I'm just trying to prevent new things
01:18:44
◼
►
from invading our privacy in weird ways
01:18:46
◼
►
that we didn't consider.
01:18:47
◼
►
So, in Overcast 4.2, I blocked tracking pixels.
01:18:51
◼
►
And the way I do that is by blocking image loads
01:18:54
◼
►
from the UI WebView and replacing them
01:18:56
◼
►
with placeholder rectangles that if you want to see
01:18:59
◼
►
the image, you can tap the placeholder rectangle
01:19:01
◼
►
and it will load.
01:19:03
◼
►
Most people don't look at the show notes to begin with,
01:19:06
◼
►
and most people who do look at the show notes,
01:19:08
◼
►
most show notes don't even have images in them
01:19:09
◼
►
that are of legitimate content use,
01:19:12
◼
►
so it isn't that big of a problem for the consumer.
01:19:16
◼
►
And for the ad tech people,
01:19:17
◼
►
they have two tools at their disposal,
01:19:19
◼
►
and I just disabled one of them for overcast users.
01:19:22
◼
►
- So is there an API within WKWebView or whatever
01:19:26
◼
►
that allows, that calls you specifically for images,
01:19:29
◼
►
or are you doing some sort of more advanced technique
01:19:32
◼
►
to intercept these things?
01:19:34
◼
►
- I'm doing an advanced technique.
01:19:36
◼
►
So I'm using UIWebView, not WKWebView,
01:19:39
◼
►
and this is partly for historical reasons.
01:19:41
◼
►
It's mostly because when WKWebView came out,
01:19:44
◼
►
I couldn't find a way to nicely make it use
01:19:48
◼
►
my custom fonts from my app bundle.
01:19:50
◼
►
And there probably are ways to do that now
01:19:52
◼
►
that I just didn't find at the time,
01:19:54
◼
►
but it was more like, you know,
01:19:55
◼
►
I'd already written all this code with WebView,
01:19:57
◼
►
and this was not performance-sensitive code,
01:19:59
◼
►
so it was totally fine.
01:20:01
◼
►
The other thing is I'm pretty sure
01:20:02
◼
►
the way I'm doing this actually wouldn't work
01:20:03
◼
►
in WKWebView.
01:20:04
◼
►
So the way I'm doing it now is,
01:20:07
◼
►
So on the server side, ever since Overcast 1.0,
01:20:11
◼
►
I have run an HTML filter on the body HTML
01:20:15
◼
►
of podcast episodes called HTMLaud, L-A-W-E-D.
01:20:21
◼
►
It's been this PHP HTML filtering library
01:20:27
◼
►
that's been around for a long time,
01:20:28
◼
►
and it was pretty well regarded forever ago
01:20:30
◼
►
when I last researched these things.
01:20:32
◼
►
I'm running that on the HTML,
01:20:33
◼
►
and there have been a few problems with that.
01:20:35
◼
►
One of them is that it broke under image source set tags,
01:20:39
◼
►
'cause the version I'm using predates that.
01:20:44
◼
►
And I can try to update that,
01:20:46
◼
►
or I can try to swap out another library
01:20:47
◼
►
for server-side filtering,
01:20:48
◼
►
but server-side filtering is expensive.
01:20:51
◼
►
Computationally, it's expensive.
01:20:54
◼
►
Just filtering the strings that are HTML strings,
01:20:59
◼
►
I think is kind of a, it's just a cat and mouse game.
01:21:02
◼
►
Like, there's always gonna be new security vulnerabilities
01:21:04
◼
►
that can come up for, you know,
01:21:06
◼
►
oh, we found a way to execute arbitrary JavaScript,
01:21:08
◼
►
but if you put a line break here
01:21:09
◼
►
and move this byte over here
01:21:10
◼
►
and use this weird Unicode character sequence here
01:21:13
◼
►
and everything, so like, you know,
01:21:15
◼
►
libraries like HTMLOD are supposed to be really good
01:21:19
◼
►
about that, but there's always,
01:21:21
◼
►
you're always playing catch-up,
01:21:23
◼
►
and it's kinda hard to really guarantee
01:21:27
◼
►
that just by parsing the strings from some library in PHP
01:21:33
◼
►
that you're accurately like filtering the HTML
01:21:36
◼
►
in a safe way that doesn't allow arbitrary code
01:21:38
◼
►
to execute or things like that.
01:21:41
◼
►
Fortunately, also around the time I developed Overcast 1.0,
01:21:44
◼
►
there was this wonderful new browser ability
01:21:47
◼
►
called Content Security Policy, or CSP.
01:21:51
◼
►
And Content Security Policy is a header
01:21:52
◼
►
you can use on web pages that you guys are probably aware of
01:21:55
◼
►
that basically lets the server-side software say
01:21:59
◼
►
in the HTTP header, so before there's even any content
01:22:02
◼
►
in the page, although you can use a meta tag too if you want,
01:22:05
◼
►
but it lets people say right in the header
01:22:09
◼
►
what domains to accept things like JavaScript
01:22:12
◼
►
and images and other embeds from.
01:22:15
◼
►
And you can lock it down so that even if
01:22:19
◼
►
somebody gives you cross-site scripting vulnerability
01:22:22
◼
►
on some kind of content showing on your webpage,
01:22:24
◼
►
you can block that in all modern browsers
01:22:27
◼
►
by having a strict enough content security policy
01:22:30
◼
►
in your headers.
01:22:31
◼
►
there's not much reason not to do it. The only downsides to it are that you
01:22:36
◼
►
need to be a little more structured and and
01:22:39
◼
►
controlled about like where you put javascript and styles and stuff like
01:22:45
◼
►
that. So like you can't just throw in line javascript and in line css styles
01:22:49
◼
►
all over your pages like you have to actually put them in you know templates
01:22:53
◼
►
files or external files that you're declaring correctly in the or things
01:22:56
◼
►
like that. So like you have to be a little more, you know structured about
01:22:59
◼
►
write your code, but you should probably do that anyway.
01:23:01
◼
►
So ever since Overcast 1.0, I've been using
01:23:03
◼
►
content security policy on Overcast's website,
01:23:06
◼
►
so that even if I would display unfiltered body text
01:23:10
◼
►
from people's podcast feeds on overcast.fm,
01:23:15
◼
►
it shouldn't actually be dangerous.
01:23:16
◼
►
Now, I don't do that, just as a feature,
01:23:19
◼
►
I just don't display body text on the page,
01:23:21
◼
►
but I figured, in case I ever want to,
01:23:23
◼
►
or just as a safety measure, I have no reason
01:23:25
◼
►
not to support this, so I do.
01:23:27
◼
►
Although, unlike the iOS app situation on the web, it's less of a secure thing because
01:23:34
◼
►
you're relying on the browser to honor that thing, but on the iPhone app, you know what
01:23:39
◼
►
the browser's going to be, you know it actually will honor your content security policy.
01:23:43
◼
►
That's true.
01:23:44
◼
►
And also, you know, content security policy is not new anymore.
01:23:46
◼
►
It was new in 2014 when I was writing all this stuff.
01:23:49
◼
►
It's not new in 2018.
01:23:51
◼
►
So now, I think with a web browser, you should still be very secure in things like, you know,
01:23:57
◼
►
and escaping HTML stuff and stuff like that.
01:24:01
◼
►
But I think now, CSP will cover you pretty effectively
01:24:05
◼
►
in the vast majority of modern web browsing usage,
01:24:08
◼
►
if you screw up.
01:24:09
◼
►
But you still shouldn't screw up.
01:24:10
◼
►
- What about users with WebTV 1.0?
01:24:11
◼
►
- Right, they can't see anything on my site anyway.
01:24:15
◼
►
So in fact, doesn't modern HTTPS stuff
01:24:19
◼
►
not even work well at all?
01:24:21
◼
►
- Yeah, I was running Netscape 3 the other day
01:24:23
◼
►
in emulation and yeah, SSL is a problem.
01:24:27
◼
►
- Yeah, anyway, so what I'm doing on the iOS app
01:24:31
◼
►
is I'm actually using content security policy in the app
01:24:35
◼
►
by using NSURL protocol to serve the show notes.
01:24:41
◼
►
It's almost like running a local web server
01:24:44
◼
►
but without the overhead of opening a port
01:24:46
◼
►
and having it to go to localhost colon 8075 or whatever.
01:24:50
◼
►
So it is using the part of the Cocoa URL loading system
01:24:54
◼
►
that is kind of designed for you to hook in
01:24:56
◼
►
and make custom URL schemes.
01:24:57
◼
►
So I define a custom overcast local URL
01:25:00
◼
►
that's responded to by this app library that's there.
01:25:04
◼
►
That serves the show notes,
01:25:06
◼
►
and with it it serves the CSP header,
01:25:09
◼
►
and the CSP header restricts images and everything,
01:25:12
◼
►
JavaScript, everything, to only its known resources.
01:25:16
◼
►
And then even when you proxy, even when you tap the image
01:25:21
◼
►
to load it, it is still one of those URLs.
01:25:25
◼
►
It doesn't modify the CSP, it just loads the image
01:25:28
◼
►
like in the back end of the code from the server
01:25:31
◼
►
and then shoves it in there and displays it.
01:25:33
◼
►
So it's basically using web browser security technology,
01:25:38
◼
►
which is pretty well tested and pretty well supported
01:25:42
◼
►
to restrict what can be done in my show notes.
01:25:46
◼
►
And my plan is once this version has large,
01:25:50
◼
►
you know, widespread support,
01:25:52
◼
►
my plan is to disable HTML LOD,
01:25:55
◼
►
X-T-M-LOD, however that's pronounced,
01:25:56
◼
►
disable that on the server side
01:25:57
◼
►
because it's breaking all the German's podcast CMSs
01:26:01
◼
►
that use source sets and it's been breaking it
01:26:04
◼
►
for a long time and they're very upset with me over that
01:26:06
◼
►
and it's just, you know, it's gonna,
01:26:08
◼
►
I think it's gonna save me a lot of computation time
01:26:10
◼
►
on the servers too.
01:26:12
◼
►
- So NSURL protocol, I'm just curious about this
01:26:16
◼
►
'cause I've not used it.
01:26:17
◼
►
So you're kind of, you're not intercepting the call
01:26:22
◼
►
as much as you are responding to it.
01:26:25
◼
►
Can you tell me a little bit more
01:26:26
◼
►
and summarize what this is doing?
01:26:28
◼
►
- Yeah, sure.
01:26:29
◼
►
So basically the way NSURL protocol works
01:26:30
◼
►
is you can define a class that is a subclass
01:26:35
◼
►
of NSURL protocol and you can say,
01:26:37
◼
►
my URL scheme is say, you know, KCLIS, colon.
01:26:42
◼
►
And so, you can have your web view load
01:26:46
◼
►
kclist colon slash slash whatever,
01:26:49
◼
►
and then instead of it trying to load that off the internet
01:26:52
◼
►
or the system, it will first check your registered
01:26:55
◼
►
NSURL protocol to say, hey, we have a URL
01:26:58
◼
►
that begins with kclist colon, can you handle this?
01:27:00
◼
►
And you can say, yes I can, and then it'll come back
01:27:03
◼
►
to you later and say, all right, we got a request
01:27:07
◼
►
for this URL, let us know when you have the data.
01:27:11
◼
►
and give it to us.
01:27:13
◼
►
And then so your class can kick off whatever it needs
01:27:15
◼
►
to kick off, or it can return it synchronously,
01:27:17
◼
►
and just when it has data, it tells the system
01:27:19
◼
►
it has the data, and the WebView loads it,
01:27:21
◼
►
as if you were loading an internet URL.
01:27:24
◼
►
So it's a wonderful system.
01:27:26
◼
►
I use it with Instapaper for a few different things too.
01:27:29
◼
►
Put it back when I was doing a lot more WebView hacking.
01:27:31
◼
►
It's a wonderful system, and so it lets you, you know,
01:27:34
◼
►
basically do all the benefits of having a local web server
01:27:38
◼
►
in an app without actually running one.
01:27:41
◼
►
- So then when you get one of these calls for show notes,
01:27:45
◼
►
what is actually happening under the hood?
01:27:46
◼
►
You're making a call to your servers
01:27:48
◼
►
to get the slightly sanitized version or no?
01:27:51
◼
►
- The app already has the body text downloaded
01:27:53
◼
►
from the server, it's part of the sync payload.
01:27:55
◼
►
So when you display the web view,
01:27:59
◼
►
I'm literally loading a URL that's like
01:28:02
◼
►
ocinfo colon slash slash bunch of stuff
01:28:05
◼
►
and then that library in the app is saying,
01:28:08
◼
►
"Oh, you want the show notes for episode ID whatever,
01:28:11
◼
►
"and here's that HTML, and here's also a CSP header
01:28:15
◼
►
"to make sure it doesn't do anything crazy."
01:28:18
◼
►
So in theory, I don't have to be filtering the HTML at all.
01:28:22
◼
►
- That's fascinating, 'cause I had no idea
01:28:25
◼
►
how you were doing this, and I thought you were doing
01:28:27
◼
►
some sort of ridiculous parsing of the HTML,
01:28:31
◼
►
trying to figure out what is a tracking pixel,
01:28:33
◼
►
what is an image even, and what's not.
01:28:36
◼
►
I had a feeling that was not the approach you took,
01:28:37
◼
►
but I didn't know what the approach was.
01:28:39
◼
►
That was very interesting for me, if nobody else.
01:28:41
◼
►
So thank you.
01:28:42
◼
►
- I'm also doing, there's one other aspect of it
01:28:44
◼
►
that I think is also useful.
01:28:47
◼
►
I am doing a very small amount of filtering,
01:28:50
◼
►
but I'm doing it client-side in JavaScript.
01:28:54
◼
►
I'm having the JavaScript, there's, I guess,
01:28:57
◼
►
I mean, recently, in absolute terms,
01:29:00
◼
►
but in relative terms, it's probably been like
01:29:04
◼
►
five years old or something, but like,
01:29:06
◼
►
In the recent era, JavaScript got the ability,
01:29:10
◼
►
without using third-party libraries,
01:29:12
◼
►
to import a DOM from an HTML string
01:29:16
◼
►
and let you work on it as a DOM node,
01:29:18
◼
►
or as a DOM document.
01:29:20
◼
►
And so what I'm doing now also is,
01:29:22
◼
►
there's a few things that I wanna filter out,
01:29:24
◼
►
things like, I didn't want people to do meta-refreshes
01:29:27
◼
►
that could somehow get past me and stuff like that.
01:29:29
◼
►
So I passed, as part of the show notes HTML page
01:29:36
◼
►
showing. I don't just insert the hostile body HTML from the publisher into the template
01:29:47
◼
►
and serve it. I pass it to the JavaScript as a string that it then interprets that as
01:29:55
◼
►
a DOM and filters it using JavaScript for the handful of things that I was a little
01:30:02
◼
►
a little bit afraid of, so things like meta tags.
01:30:04
◼
►
And that also does that, it also uses that DOM
01:30:07
◼
►
for image replacements, rather than just showing
01:30:11
◼
►
a broken image, which would happen if I pasted
01:30:13
◼
►
in the full image and the CSP blocked it,
01:30:16
◼
►
it replaces it with the placeholder and lets me do that.
01:30:19
◼
►
And I do all that in JavaScript because that way,
01:30:20
◼
►
like, I don't have to worry what if my string parsing
01:30:24
◼
►
library doesn't parse HTML in quite the same way
01:30:28
◼
►
as WebKit, you know, I don't have to worry.
01:30:31
◼
►
when you're using JavaScript,
01:30:32
◼
►
it is parsing it the same way.
01:30:34
◼
►
So it's, again, just kind of like shifting the security
01:30:38
◼
►
onto the well-tested, built-in functionality of WebKit
01:30:42
◼
►
that if there's ever some kind of weird variance,
01:30:48
◼
►
some kind of weird security hole,
01:30:49
◼
►
that's gonna get fixed before I even know about it.
01:30:52
◼
►
And it isn't my problem that I have to go update
01:30:55
◼
►
some HTML parsing library.
01:30:58
◼
►
- That's super clever, I dig it.
01:31:00
◼
►
Alrighty, let's do some Ask ATP.
01:31:02
◼
►
And Alex Faber writes, "You've talked about Worky Work in the past and using Macs at Work.
01:31:07
◼
►
I'm wondering how you guys handle Private Apple IDs and Work Apple IDs.
01:31:10
◼
►
How do you guys, particularly looking at Casey and Jon here, deal with this?
01:31:14
◼
►
Do you guys keep working private strictly split or do you have a work private watch,
01:31:18
◼
►
for example, or do you just not care?"
01:31:20
◼
►
Jon, would you like to start?
01:31:22
◼
►
Jon Moffitt I'd like to start by saying that Worky Work
01:31:24
◼
►
is not a valid companion to Jobby Job.
01:31:26
◼
►
I know it seems like it should by parallel construction, but no.
01:31:29
◼
►
Jobby job, yes.
01:31:31
◼
►
Worky work, no.
01:31:33
◼
►
Jobby job or not.
01:31:34
◼
►
So as we all know if we use Macs or other Apple devices, they're not really great at
01:31:41
◼
►
letting you juggle multiple Apple IDs on the same computer.
01:31:45
◼
►
iOS and to some degree the Mac lets you pick different Apple IDs for different specific
01:31:50
◼
►
things, but you're not going to be swapping between your personal and work Apple IDs on
01:31:57
◼
►
fly to do certain things and you can't really assign on a per application basis.
01:32:02
◼
►
Alright, messages I want you to use this Apple ID, but photos I want you to use this Apple
01:32:06
◼
►
ID, but notes I want you to use this Apple ID.
01:32:08
◼
►
Not going to happen.
01:32:09
◼
►
Apple doesn't have that feature.
01:32:11
◼
►
They could have it, but they don't.
01:32:13
◼
►
So given that, I have never done the thing where you have a work Apple ID and a home
01:32:19
◼
►
I have a bunch of Apple IDs, most of the ones, I have my real Apple ID and then I have tons
01:32:24
◼
►
of other Apple IDs that mostly I used for like Mac OS reviews back in the day.
01:32:29
◼
►
But at work I use my real Apple ID and I just disable most of the things that I don't need
01:32:36
◼
►
to have at work.
01:32:37
◼
►
Mainly what I want to work is messages.
01:32:39
◼
►
If I get a message I like to be able to see it on my Mac and not just on my phone so I'm
01:32:42
◼
►
signed into iMessage with that Apple ID.
01:32:45
◼
►
But of course I'm not signed into iMessage with that Apple ID.
01:32:48
◼
►
I'm signed in to that Apple ID in the iCloud preference pane and then I just have different
01:32:52
◼
►
things toggled on and off. That situation is not ideal, especially if you actually need
01:32:56
◼
►
to have a work Apple ID. Like I don't do development in Xcode, so I don't, you know, I'm not uploading
01:33:01
◼
►
things to Apple servers and I don't need an Apple ID for my work at all. So that's a luxury
01:33:06
◼
►
I have doing server-side stuff. But if I had to have a work Apple ID, I would probably
01:33:11
◼
►
be signed into my work Apple ID on my Mac if I needed to. I really don't think I would
01:33:15
◼
►
switch back and forth, but I'm interested to hear what Casey does because I'm assuming
01:33:19
◼
►
he does need to have a work Apple ID.
01:33:22
◼
►
So my work Apple ID is what I use to publish work apps to the store and things of that
01:33:27
◼
►
But I am not logged in in any operating system level capacity to my work Apple ID.
01:33:35
◼
►
The only thing I have logged in in iCloud is my personal Apple ID, the same one I use
01:33:39
◼
►
on all my personal devices for much of the same reasons that you were talking about.
01:33:44
◼
►
And so the only time I ever really use my work Apple ID is when I need to sign into
01:33:49
◼
►
iTunes Connect or equivalent, and that's about it.
01:33:54
◼
►
And so when you're in Xcode, it's actually pretty good
01:33:56
◼
►
about allowing you to have, recently, this is very recently,
01:34:00
◼
►
pretty good about having multiple Apple IDs
01:34:02
◼
►
associated with Xcode, and it generally speaking
01:34:05
◼
►
does a reasonably decent job of picking the right one
01:34:08
◼
►
for the particular moment.
01:34:09
◼
►
So I have the same Apple ID I use everywhere.
01:34:12
◼
►
I do that mostly for messages and for apps,
01:34:15
◼
►
because there are some Mac App Store apps that I bought.
01:34:17
◼
►
Yes, Mac App Store is still a thing.
01:34:19
◼
►
It is still a product in their lineup.
01:34:21
◼
►
And so I want to use the same apps
01:34:25
◼
►
I've already paid for at home at work,
01:34:26
◼
►
and I also want to have messages, among many other things.
01:34:30
◼
►
And notes, actually.
01:34:31
◼
►
I've been using notes a lot more recently
01:34:32
◼
►
'cause it's gotten really good.
01:34:34
◼
►
So it's basically the same story for the both of us.
01:34:37
◼
►
Marco, your boss is a real turd,
01:34:38
◼
►
so how does this work for you?
01:34:40
◼
►
- Funnily, I know that, you know,
01:34:42
◼
►
lol, I don't have a job,
01:34:43
◼
►
but I have the exact same setup that you have,
01:34:45
◼
►
which is like I have Apple IDs for apps,
01:34:48
◼
►
and then I have a personal Apple ID that I have logged into things like the store. And
01:34:53
◼
►
you know, obviously this question is harder if you have to log in to the App Store or
01:34:57
◼
►
to iCloud for work. We don't have that issue. You know, like, we use our personal Apple
01:35:03
◼
►
IDs for the actual, like, login on the phone, and we use our work Apple IDs for iTunes Connect
01:35:11
◼
►
and submitting apps.
01:35:12
◼
►
Steven: Yep, exactly. Ryan Taylor asks, "Do you cover the camera on your laptop with a
01:35:16
◼
►
posted or other material. Do you advise your non tech friends to do so? Is it possible
01:35:20
◼
►
to design a webcam that always indicates when it's recording? Perhaps something mechanical
01:35:24
◼
►
instead of light? Are people why are people paranoid about laptop cameras but not microphones?
01:35:29
◼
►
Does the designer of the MacBook find it offensive when people put post-its on their cameras?
01:35:33
◼
►
Is that a design failure or user failure? I don't get why people do this personally.
01:35:39
◼
►
I do trust the little green light on my Apple devices,
01:35:43
◼
►
and I do not put Post-its on any of my cameras
01:35:47
◼
►
or anything like that.
01:35:49
◼
►
If I had a PC, I would consider it.
01:35:51
◼
►
I especially am confident in the lack of ability
01:35:57
◼
►
for the camera to turn on without proper user authorization
01:35:59
◼
►
on the new MacBook Pros where they use,
01:36:01
◼
►
what is that, that's not the T1, is it?
01:36:03
◼
►
- The Secure Enclave, yeah, yeah.
01:36:05
◼
►
- Well, the T1 is a touch bar.
01:36:07
◼
►
You know, actually, I don't know if the MacBook Escape
01:36:11
◼
►
and 12-inch MacBook have this protection.
01:36:14
◼
►
I'm guessing they don't.
01:36:15
◼
►
- I don't think they do. - Because they don't have
01:36:16
◼
►
a secure enclave anywhere, 'cause that requires,
01:36:19
◼
►
that specific implementation of this kind of thing
01:36:21
◼
►
requires an ARM chip that they don't have.
01:36:23
◼
►
So I think you're talking only about Touch Bar models
01:36:26
◼
►
and the iMac Pro.
01:36:28
◼
►
- Right, right, so those that have the secure enclave
01:36:31
◼
►
and all that, I am 100% confident that they cannot turn on
01:36:34
◼
►
without a user intervention or unless there was some sort of really terrible bug.
01:36:41
◼
►
But I've never covered any of my devices, cameras, ever.
01:36:45
◼
►
I just, I mean, if you really want to watch me picking my nose or whatever, you go to
01:36:49
◼
►
town man, because I just, I don't even lead an interesting life.
01:36:54
◼
►
I don't think it's a big deal.
01:36:56
◼
►
Jon Sorrentino I don't cover any of my cameras either, although
01:36:58
◼
►
I totally believe that every camera attached to any computer can be hacked.
01:37:03
◼
►
But you know, it's like you said, the microphone and all that stuff, like it's, there are too
01:37:09
◼
►
many things in this world that are potentially watching and listening to us and all of them
01:37:13
◼
►
are hackable and you're not actually getting much additional protection by putting a piece
01:37:20
◼
►
of paper over something.
01:37:21
◼
►
Like your net vulnerability to hacking is about the same as it was before.
01:37:28
◼
►
We're all mostly relying on the fact that we are not interesting targets.
01:37:32
◼
►
what's protecting us honestly, not anything else that we do in our lives. If you were
01:37:36
◼
►
a really interesting target, putting a piece of paper or a piece of tape over your thing
01:37:41
◼
►
is not going to stop people because, you know, the hackers don't go through the door with
01:37:47
◼
►
a lock on it, right? They go through the open ones or they don't go through the door at
01:37:50
◼
►
all, they get you to come out of the house or they social engineer you like. Yeah. So
01:37:54
◼
►
if it makes you feel more comfortable to do it, feel free. I would not recommend my non-tech
01:37:59
◼
►
friend do it. I've never advised a non-tech person or anybody for that matter that this
01:38:03
◼
►
is a thing that they should do because it's just I don't think it is a useful... I think
01:38:09
◼
►
obviously the drawbacks are obvious that you have to keep adding and removing that thing
01:38:14
◼
►
and remembering to put it on and off and worrying about it and all the other stuff. It makes
01:38:18
◼
►
using your devices less convenient. For example, say you did it on your phone and had to keep
01:38:22
◼
►
peeling this piece of tape off every time you did a FaceTime call or something or had
01:38:26
◼
►
some kind of muffler over the microphone that every time you had a phone call you had to
01:38:28
◼
►
to remove, that inking means is not worth
01:38:31
◼
►
the additional security if anything you're getting.
01:38:33
◼
►
So no, I would not recommend someone else do it.
01:38:35
◼
►
But if you wanna do it and it makes you feel better,
01:38:36
◼
►
feel free, but just perhaps think about
01:38:38
◼
►
what you're doing with your life.
01:38:40
◼
►
- Yeah, I'm with you.
01:38:41
◼
►
I think this is, it's the kind of thing where
01:38:44
◼
►
it looks like you're doing something
01:38:46
◼
►
to increase your security.
01:38:47
◼
►
It probably feels good.
01:38:48
◼
►
You're like, oh yeah, I'm really blocking out those hackers
01:38:50
◼
►
with this circular sticker that I'm putting over,
01:38:53
◼
►
with this piece of tape that I'm putting over my camera here
01:38:56
◼
►
But ultimately, that doesn't, as Jon said,
01:39:00
◼
►
it doesn't really make you that much more secure.
01:39:03
◼
►
And I think Ryan Taylor, the listener who asked this
01:39:06
◼
►
question, brings up a very good point of
01:39:08
◼
►
what about microphones?
01:39:09
◼
►
I think most sensitive information from companies
01:39:13
◼
►
that could be gleaned from a webcam would be via audio,
01:39:18
◼
►
I don't think anybody's worried about watching you
01:39:21
◼
►
pick your nose while you work.
01:39:23
◼
►
But if you're having a conversation about something
01:39:24
◼
►
confidential, like that's probably the more damaging thing.
01:39:29
◼
►
Although if somebody is to the level of hacking your camera,
01:39:32
◼
►
like hacking the hardware that your computer is using,
01:39:36
◼
►
I imagine the contents of your data on your computer
01:39:40
◼
►
are probably way more questionable and vulnerable
01:39:44
◼
►
and valuable to people.
01:39:46
◼
►
But at the same time,
01:39:50
◼
►
I don't know if there's any reliable way
01:39:54
◼
►
to block the microphone input from the built-in microphones
01:39:57
◼
►
on a modern Mac.
01:39:58
◼
►
Like, what do you do?
01:39:59
◼
►
Like shove sticky putty into the holes?
01:40:01
◼
►
Are you sure you even have the right holes
01:40:03
◼
►
or all of the holes?
01:40:04
◼
►
Like there's multiple microphones
01:40:06
◼
►
on all these machines now.
01:40:07
◼
►
Some of them are gonna be like behind speaker grills
01:40:09
◼
►
that you can't really actually plug up.
01:40:12
◼
►
So like, there's really no good way
01:40:14
◼
►
to block off microphones, so nobody does it.
01:40:17
◼
►
I think the reason why people do it to the camera
01:40:19
◼
►
is because it's easy and there's no real downsides
01:40:23
◼
►
unless you are somebody who uses video chatting
01:40:26
◼
►
a lot on your laptop.
01:40:27
◼
►
But otherwise, it's something that IT departments
01:40:30
◼
►
can mandate and look like they're doing their job
01:40:33
◼
►
and say, "Look, we're covering our butts.
01:40:34
◼
►
"We're saying we need to make our computers more secure
01:40:37
◼
►
"and we'll give you this eight cent sticker
01:40:40
◼
►
"to put over the camera and your laptop will look secure
01:40:44
◼
►
"and we can make sure you have that on there
01:40:45
◼
►
"because we can see it and we can look like
01:40:47
◼
►
"we're doing our job and we can feel secure."
01:40:49
◼
►
And the reality is it's mostly security theater.
01:40:52
◼
►
- And by the way, if you're trying to come up with like,
01:40:54
◼
►
part was part of this question,
01:40:55
◼
►
is there any way to make a light that,
01:40:57
◼
►
any way to make a camera that you can be sure
01:40:59
◼
►
that the green light is, you know, is real
01:41:01
◼
►
and it can't be hacked?
01:41:03
◼
►
Like perhaps something mechanical?
01:41:05
◼
►
Yeah, mechanical is the way you would do it.
01:41:06
◼
►
You'd have an actual opaque piece of metal
01:41:09
◼
►
that when it slides in front of the camera,
01:41:12
◼
►
and the only way for the camera to get a picture
01:41:13
◼
►
is for it to slide out.
01:41:14
◼
►
And if you wanna tell whether the camera is on,
01:41:16
◼
►
just assume every single time that metal doors open,
01:41:18
◼
►
cameras on that would do it. And I think we're thinking of this mostly from our perspectives
01:41:24
◼
►
or from the perspective of like we're a giant corporation and what might we want to protect,
01:41:28
◼
►
but the reason people hack webcams obviously is to get pictures of people like in their
01:41:35
◼
►
bedrooms or whatever and then either blackmail them or sell that footage or whatever. So
01:41:39
◼
►
it's a vulnerability that we don't think about because no one wants to see us naked, but
01:41:42
◼
►
it is a vulnerability that half the population has to worry about.
01:41:45
◼
►
Uh, so if you find yourself in that situation, again, I would recommend don't,
01:41:51
◼
►
you know, put stickers over your thing, uh, close the lid on your laptop,
01:41:54
◼
►
turn it off, like, you know, like don't, don't have your,
01:41:59
◼
►
your computer running all the time and pointing at your bedroom.
01:42:02
◼
►
And I know that's, you know,
01:42:04
◼
►
perhaps even more inky meat than just putting a sticker over it. And again,
01:42:07
◼
►
if you want to put a sticker over it, go for it. But, uh,
01:42:09
◼
►
I think a better idea would be to buy a computer where you have slightly more faith that it's
01:42:14
◼
►
harder to hack the camera.
01:42:15
◼
►
I don't know if I'm just shilling for Apple there, but like I said, Apple's not going
01:42:19
◼
►
to protect you.
01:42:20
◼
►
There have been proven hacks to get around that little light, so maybe the best choice
01:42:25
◼
►
is to get one of the PC laptops I've seen that you don't have to buy something that
01:42:29
◼
►
covers the camera, that it comes with a little mechanical door over the camera.
01:42:33
◼
►
have to use your hand to move it, but that's the only way to be sure. And you're not
01:42:42
◼
►
saving microphones, as Marco pointed out, so they may not be able to see your bedroom,
01:42:46
◼
►
but they can hear it, and can they produce some kind of blackmail out of that too? Who
01:42:51
◼
►
knows. Technology in the bedroom, it's a problem.
01:42:54
◼
►
Yeah. And also, there's a lot more cameras and microphones in most people's houses
01:43:00
◼
►
than just the one on your laptop now.
01:43:02
◼
►
with a lot more lack security than hopefully your laptop.
01:43:05
◼
►
- Yeah, yeah, and it's just, yeah.
01:43:07
◼
►
And to finish the 19 questions that Ryan Taylor asked,
01:43:11
◼
►
does the designer of the MacBook funs offensive
01:43:13
◼
►
when people put post-its on their cameras?
01:43:15
◼
►
Assuming that you're talking about Johnny Ive,
01:43:18
◼
►
'cause I don't know which of his staff designed it,
01:43:21
◼
►
I would say probably they find everything offensive
01:43:25
◼
►
because they design these things to look good in pictures
01:43:27
◼
►
with nothing political that they actually use.
01:43:29
◼
►
They should find the dongle-hell offensive
01:43:31
◼
►
that we have to do in practice.
01:43:33
◼
►
They should find the terrible cable management
01:43:35
◼
►
on the current power brick offensive.
01:43:37
◼
►
But ultimately, I don't think Johnny Ive
01:43:40
◼
►
spends two seconds thinking about Macs anymore.
01:43:43
◼
►
- I think the design of the camera on Apple laptops
01:43:49
◼
►
reflects the Apple design philosophy of like,
01:43:51
◼
►
say this was even part of the design brief,
01:43:53
◼
►
which is one problem is that people wanna know
01:43:58
◼
►
when the camera is recording them, right?
01:44:01
◼
►
and they want to feel secure, that they can tell
01:44:05
◼
►
if it looks like the camera's not recording,
01:44:07
◼
►
then it really isn't.
01:44:08
◼
►
So their solution to that, their elegant solution is,
01:44:10
◼
►
rather than having a clunky mechanical door,
01:44:12
◼
►
let's have a light next to the camera
01:44:15
◼
►
that's on when it's recording,
01:44:16
◼
►
and let's use some very clever technology to make it
01:44:18
◼
►
so that light actually is representative.
01:44:21
◼
►
And they did a pretty good job
01:44:22
◼
►
of making the light hard to hack, but it was indeed hacked
01:44:26
◼
►
at one point on one of the older things,
01:44:27
◼
►
showing that no matter how hard you try,
01:44:29
◼
►
you're never sure if you really got it 100% hack proof.
01:44:32
◼
►
You look at the circuit diagram,
01:44:33
◼
►
and you're like, oh, there's just no way
01:44:34
◼
►
that camera can be on without light being on,
01:44:35
◼
►
but they did something very clever.
01:44:36
◼
►
There was a good article about it a while back
01:44:38
◼
►
to get around it.
01:44:39
◼
►
I don't know if the modern ones have now worked around that,
01:44:41
◼
►
if the secure enclave is better, so on and so forth,
01:44:43
◼
►
but you can never be sure, but that's their solution,
01:44:45
◼
►
is it's clunky to have a door.
01:44:48
◼
►
It's fidgety to have a door.
01:44:50
◼
►
It would be fidgety to have a computer-controlled door.
01:44:52
◼
►
It's kind of silly to have a manual door.
01:44:56
◼
►
So let's not have a door at all.
01:44:57
◼
►
Let's just simply have a camera and solve the props,
01:44:59
◼
►
solve the harder problem which is how can we have a light that is always representative,
01:45:03
◼
►
that is always true, if I look at that light it really tells me other things on.
01:45:06
◼
►
That was their attempt.
01:45:08
◼
►
Unfortunately it is less reliable than the clunky solutions but maybe with a secure amplifier
01:45:15
◼
►
maybe it hasn't been hacked, maybe it is really reliable and I think that would be the Apple
01:45:19
◼
►
philosophy is let's not resort to the easy solution of a door, let's instead keep trying
01:45:25
◼
►
and harder to make a very secure piece of hardware where we actually do have control
01:45:29
◼
►
over the light because we make the whole widget.
01:45:31
◼
►
We make the silicon, we make the hardware, we make the OS, we should be able to make
01:45:37
◼
►
And they have a pretty good shot at making it not 100% hackproof because nothing is,
01:45:42
◼
►
especially if you have physical access to it, but very, very robust to the point of
01:45:46
◼
►
very diminishing returns.
01:45:48
◼
►
They may already be at that point with a secure enclave.
01:45:50
◼
►
So I don't entirely fault them for this approach, but it's certainly not the simplest solution
01:45:55
◼
►
which is a door.
01:45:56
◼
►
And then the microphone solution,
01:45:57
◼
►
well, you got nothing there, you're screwed.
01:45:59
◼
►
- Well, there's an even simpler solution.
01:46:01
◼
►
Make the camera optional.
01:46:03
◼
►
- Oh, yeah, everything, make it a preference.
01:46:05
◼
►
Good old make it a preference Marco, they call him.
01:46:06
◼
►
Every time he has a design problem,
01:46:08
◼
►
he says, "Let's add a preference."
01:46:09
◼
►
That's what I remember from him.
01:46:11
◼
►
- I mean, look at how many Apple fans have given us crap,
01:46:16
◼
►
especially given me crap,
01:46:18
◼
►
because I complained that they removed something I use.
01:46:21
◼
►
And they're like, "Well, you know, it's the future,
01:46:23
◼
►
and almost nobody used that.
01:46:26
◼
►
Well, how many people use the camera really?
01:46:28
◼
►
Like I know people use it for Skype and stuff,
01:46:30
◼
►
but like, and occasionally FaceTime,
01:46:32
◼
►
but you know, you can also use your phone for that now,
01:46:33
◼
►
and I think most people probably do that more often.
01:46:36
◼
►
You know, does it really need to be on every single laptop
01:46:40
◼
►
they sell anymore?
01:46:42
◼
►
Or, you know-- - Yes, it does.
01:46:43
◼
►
- Really, does it, why?
01:46:45
◼
►
- Yeah, I mean, it's like, obviously nobody uses
01:46:48
◼
►
every feature 100% of the time, right?
01:46:50
◼
►
Not even the keyboard, I bet some people only
01:46:52
◼
►
you ever use in clamshell.
01:46:53
◼
►
But I think the camera is well past the threshold
01:46:56
◼
►
of commonly used enough that it should be on everyone.
01:46:58
◼
►
Now, if they wanted to make an option,
01:46:59
◼
►
like I wouldn't object to a big option,
01:47:01
◼
►
who can object to options?
01:47:03
◼
►
Like, sure, let me configure my laptop
01:47:05
◼
►
with exactly what I need.
01:47:06
◼
►
But in the grand scheme of things that might be options,
01:47:10
◼
►
this would be pretty low down on the list
01:47:11
◼
►
because so many people need occasional use of the camera.
01:47:14
◼
►
It's really difficult to add after the fact.
01:47:17
◼
►
Maybe, again, maybe not with workplace stuff,
01:47:19
◼
►
If you underestimate exactly how much video conferencing goes on in the modern workplace,
01:47:26
◼
►
just because it's the default of telecommunication applications for work, it's nice to see other
01:47:31
◼
►
people's faces.
01:47:34
◼
►
I mean I've had video conferences with people in the same building.
01:47:38
◼
►
I had like three video conferences today.
01:47:41
◼
►
It's just a thing that happens today.
01:47:42
◼
►
Sometimes I think about it and if I had told myself as a kid that when you're an adult
01:47:47
◼
►
in the workplace you'll have video conferences that would sound all so cool and futuristic
01:47:51
◼
►
and now it's just like ugh meetings. But I think it's used a lot.
01:47:55
◼
►
Alright, well follow up question then. If it's that important and used that often,
01:48:00
◼
►
why are these cameras still so terrible? It does it because it doesn't matter for
01:48:03
◼
►
video conferencing. The compression is brutal. Like the reason is, you know, there's like
01:48:06
◼
►
six people in these little postage stamps and this terribly over compressed stuff. The
01:48:10
◼
►
quality is far below what the camera is even capable of. But I agree the camera should
01:48:14
◼
►
be better. Just because we pay so much money for these computers to put better cameras
01:48:19
◼
►
I remember when I was a kid, I used to watch Double Dare on Nickelodeon. And the grand
01:48:25
◼
►
prize was not irregularly a video phone from some manufacturer like AT&T or something like
01:48:33
◼
►
that, where I think you got like two video phones, one to put in your house, one to put
01:48:37
◼
►
in the one other person you can talk to's house. So like, you know, if I'm a kid, maybe
01:48:43
◼
►
our house and my grandparents house and those are the only two people we can talk to with video phones and it was like a
01:48:49
◼
►
refresh rate measured in seconds
01:48:51
◼
►
You know like there's one new image every four seconds and it was a postage stamp and it was terrible, but I thought it was
01:48:57
◼
►
Amazing one of the many reasons why I wanted to go on double dare
01:49:00
◼
►
Anyway, John not the one in the room right now asks. Do any of you have CarPlay?
01:49:06
◼
►
If so, do you use it? How much how does it work for you?
01:49:09
◼
►
CarPlay crashes about once every 30 or 40 minutes for me, often when we aren't asking it to do anything.
01:49:14
◼
►
iPhone X, genuine Apple cable, etc. For me, we recently got Erin a new car.
01:49:19
◼
►
We got her a Volvo XC90. That does have CarPlay. It is wired only.
01:49:24
◼
►
And I really, really like it. A lot more than I expected. It is not perfect. It is by no means perfect.
01:49:29
◼
►
But what I like about it is I don't have my phone paired with her car.
01:49:36
◼
►
if I ever drive her car somewhere and she's not with me then all I have to do to
01:49:42
◼
►
have my phone kind of take over her car is plug it in and
01:49:45
◼
►
Start carplay and then I can listen to overcast. I listen to Spotify I can do just about anything and I have been
01:49:53
◼
►
surprisingly efficient at maintaining a text message conversation by way of just
01:49:59
◼
►
Conversing with Siri, you know, I'm not looking at the screen at all
01:50:02
◼
►
I don't think it's possible to see a text message on screen. At most you can see who it's from.
01:50:07
◼
►
And I've had entire conversations via text message or via iMessages really, via Siri,
01:50:13
◼
►
via CarPlay. And it's actually worked out pretty well. Maybe if I lived with it every day, I would
01:50:19
◼
►
find it frustrating. It certainly infuriates me, as we talked about not too long ago, that
01:50:24
◼
►
you can't use Waze or Google Maps with CarPlay. That is very annoying. But since I'm only ever in
01:50:31
◼
►
in the car for like 15, 20 minutes at a time,
01:50:34
◼
►
I don't mind any of the limitations,
01:50:36
◼
►
and it's actually worked pretty consistently for me.
01:50:39
◼
►
Now, I know, Marco, that you don't have it in the Tesla,
01:50:42
◼
►
but I believe Tifs car does, right?
01:50:45
◼
►
- That is correct.
01:50:47
◼
►
However, I almost never drive Tifs car,
01:50:50
◼
►
so basically I almost never use CarPlay.
01:50:53
◼
►
I hear from people who have it, who love it,
01:50:56
◼
►
so it seems very popular.
01:50:58
◼
►
I will say as an audio app developer,
01:51:01
◼
►
there's often weird CarPlay bugs I hear about
01:51:06
◼
►
that are just very hard to debug or ever fix, really.
01:51:09
◼
►
Because sometimes, like, 'cause, you know,
01:51:11
◼
►
CarPlay is subtly different depending on implementations.
01:51:16
◼
►
From what I can gather, it seems to be mostly an iOS thing.
01:51:21
◼
►
I think the car manufacturers themselves,
01:51:24
◼
►
or the head unit manufacturers,
01:51:27
◼
►
are not doing much logic on their side.
01:51:29
◼
►
Like it seems to be an interface
01:51:31
◼
►
that's entirely rendered by the iPhone
01:51:33
◼
►
and just kind of sent like as a video signal
01:51:36
◼
►
to the head unit.
01:51:37
◼
►
So, but the problem is like there are like small differences
01:51:41
◼
►
in how cars will do things like send the Bluetooth commands
01:51:44
◼
►
or send playback commands and things like that.
01:51:46
◼
►
So there is some car to car variation
01:51:51
◼
►
or head unit to head unit variation.
01:51:54
◼
►
So it's a little hard to generalize
01:51:55
◼
►
doesn't say it's always this or always that
01:51:57
◼
►
or always stable or always unstable.
01:51:59
◼
►
But most of the logic is happening on the phones
01:52:01
◼
►
as far as I'm aware, so I think it is fair
01:52:05
◼
►
to characterize your experience with one.
01:52:07
◼
►
It's gonna be pretty similar to your experience
01:52:08
◼
►
within a different car.
01:52:11
◼
►
So all that said, I've had very little experience with it.
01:52:16
◼
►
And so it does look nice, and my usage stats show
01:52:20
◼
►
that a heck of a lot of people use it.
01:52:23
◼
►
but I can't use it because it isn't available in my car.
01:52:26
◼
►
If it was available, I would get it.
01:52:28
◼
►
Although I would probably still map my phone
01:52:31
◼
►
in the little dock so I could run Waze.
01:52:34
◼
►
- John, neither of your cars supported, is that right?
01:52:37
◼
►
- That's right, I have never used it.
01:52:40
◼
►
- Oh, that's too bad.
01:52:41
◼
►
It's not, it's good stuff.
01:52:42
◼
►
I mean, it's again, nowhere near perfect,
01:52:44
◼
►
but it's pretty good.
01:52:45
◼
►
As usual, I'd say the biggest problem with it is Siri.
01:52:47
◼
►
Although again, for the purposes of text messaging only,
01:52:50
◼
►
Siri does work pretty well for me.
01:52:52
◼
►
Thanks to our sponsors this week, Hover, Squarespace, and Rover, and we'll see you next week.
01:52:57
◼
►
Now the show is over, they didn't even mean to begin
01:53:04
◼
►
Cause it was accidental, oh it was accidental
01:53:09
◼
►
John didn't do any research, Marco and Casey wouldn't let him
01:53:15
◼
►
Cause it was accidental, oh it was accidental
01:53:20
◼
►
And you can find the show notes at ATP.fm
01:53:26
◼
►
And if you're into Twitter, you can follow them
01:53:31
◼
►
@C-A-S-E-Y-L-I-S-S
01:53:35
◼
►
So that's Casey Liss M-A-R-C-O-A-R-M
01:53:39
◼
►
Auntie Marco Arment S-I-R-A-C
01:53:44
◼
►
USA, Syracuse
01:53:47
◼
►
It's accidental
01:53:50
◼
►
They didn't mean to
01:53:55
◼
►
♪ Tech podcast so long ♪
01:53:59
◼
►
- Yeah, after show stuff.
01:54:02
◼
►
Any exciting baby stuff going on, Casey?
01:54:04
◼
►
- Yeah, how's your whole family life going?
01:54:06
◼
►
- Things are generally okay.
01:54:08
◼
►
Michaela is a much happier baby
01:54:10
◼
►
now that her insides aren't on fire, which is great.
01:54:13
◼
►
If you recall, she has either a milk and/or soy.
01:54:18
◼
►
It's not an allergy, what do they call it?
01:54:20
◼
►
Intolerance. - Intolerance, yeah.
01:54:21
◼
►
- Yeah, so she was an extremely fussy baby,
01:54:24
◼
►
at least by LISTS family standards.
01:54:27
◼
►
And so we went to the doc, figured out,
01:54:30
◼
►
oh, it's this intolerance,
01:54:32
◼
►
put her on this really crazy formula.
01:54:33
◼
►
It seems to be making her a much happier baby,
01:54:36
◼
►
which is great.
01:54:37
◼
►
That being said, I think we are hitting
01:54:39
◼
►
the three and a half to four month sleep regression
01:54:42
◼
►
that seems to be a normal thing,
01:54:43
◼
►
which from what we remember from Declan was terrible
01:54:48
◼
►
and seems like it's probably gonna be the same for Michaela.
01:54:52
◼
►
and I'm going out of town for a few days starting tomorrow.
01:54:54
◼
►
- You should have added some sleep unit tests.
01:54:56
◼
►
- I should have, you're right.
01:54:58
◼
►
I absolutely should have. - Wow.
01:54:59
◼
►
- That's a good regression joke.
01:55:00
◼
►
I'm proud of you, John.
01:55:01
◼
►
- Oh my God.