490: Tiny Pictures of Knobs
00:00:00
◼
►
Alright, we should at least briefly talk about something that all three of us intended to
00:00:05
◼
►
talk about last week, and because we're idiots, it just completely slipped our mind to say
00:00:10
◼
►
anything. And I wanted to at least briefly talk about the really crummy and I would argue
00:00:17
◼
►
despicable events in America of last week, specifically around the Supreme Court saying
00:00:22
◼
►
that Roe vs. Wade is no longer a thing, and that any of the protections that Roe vs. Wade
00:00:28
◼
►
gave people, particularly women, with regard to the right to have agency over their own
00:00:34
◼
►
bodies, that that is no longer a thing. And I don't necessarily want to go too deep into
00:00:41
◼
►
this other than to say that I think I speak for all three of us in saying that it is my
00:00:47
◼
►
slash our belief that women should have agency over their own bodies and what happens to
00:00:52
◼
►
to their bodies.
00:00:54
◼
►
I would not find it funny if I was compelled
00:00:57
◼
►
to do things with or to my body without my permission.
00:01:02
◼
►
I would not find it funny if I couldn't get healthcare
00:01:07
◼
►
that I needed simply because some other people
00:01:09
◼
►
found it to be taboo.
00:01:11
◼
►
I don't think it's fair that other people can decide
00:01:16
◼
►
whether or not it's okay for, I don't know,
00:01:18
◼
►
let's say for me to get a vasectomy, for example.
00:01:21
◼
►
I don't think that's anyone's business but mine and Erin's.
00:01:24
◼
►
And I find it really disgusting that a bunch of old people
00:01:29
◼
►
seem to think that they know better for Erin, for example,
00:01:33
◼
►
than Erin does herself.
00:01:36
◼
►
And I really find it quite gross.
00:01:38
◼
►
As someone who has lived through infertility,
00:01:41
◼
►
we did not have to do in vitro fertilization,
00:01:43
◼
►
but we were very, very close to it.
00:01:45
◼
►
And depending on how you read the rulings
00:01:50
◼
►
and the laws of the land as they exist today,
00:01:52
◼
►
you could make a very strong legal argument
00:01:54
◼
►
that in vitro fertilization is now illegal.
00:01:56
◼
►
And I find that to be absolutely disgusting
00:01:59
◼
►
because here it is, you know,
00:02:01
◼
►
so many couples and so many families
00:02:03
◼
►
want desperately to have a child
00:02:05
◼
►
and they would do anything,
00:02:07
◼
►
including paying absolutely egregious sums of money
00:02:10
◼
►
for the privilege of having a child.
00:02:12
◼
►
And because this gets swept up in something
00:02:16
◼
►
that some people find taboo,
00:02:18
◼
►
It's now questionably legal.
00:02:20
◼
►
And I find this whole thing to be disgusting.
00:02:24
◼
►
I really think it is inappropriate for me
00:02:28
◼
►
to specify what should happen to anyone else's body.
00:02:32
◼
►
And I find that, in my personal opinion,
00:02:36
◼
►
abortion is health care.
00:02:37
◼
►
And I think that health care really
00:02:39
◼
►
should be universal in this country,
00:02:40
◼
►
but that's neither here nor there.
00:02:42
◼
►
And I just wanted to make it plain and public
00:02:43
◼
►
that I think that this is the wrong way.
00:02:46
◼
►
I think this is disgusting.
00:02:48
◼
►
and I am not in support of it.
00:02:49
◼
►
And I don't know if that does any good,
00:02:52
◼
►
but I just wanted to make it plain and public,
00:02:55
◼
►
my opinion on it, and I don't know if you guys
00:02:57
◼
►
have anything else to add or say or correct on that,
00:02:59
◼
►
but I'm all ears if you do.
00:03:00
◼
►
- Oh, absolutely I do.
00:03:03
◼
►
I can't believe that we've gone back in time on this.
00:03:06
◼
►
So like we've gone back what, 50 years,
00:03:09
◼
►
whatever it's been?
00:03:10
◼
►
- Something like that, yeah.
00:03:10
◼
►
- You know, in the view of time,
00:03:15
◼
►
Overall, things are better now than they were 50 years ago
00:03:19
◼
►
in most ways.
00:03:20
◼
►
But when you take such a big regression like this,
00:03:24
◼
►
it really can feel like they're not.
00:03:27
◼
►
And this is a major regression in a number of different areas
00:03:30
◼
►
for a number of different reasons.
00:03:32
◼
►
And the fact is--
00:03:33
◼
►
Casey, you said a minute ago that, quote,
00:03:36
◼
►
"in your opinion, abortion is health care."
00:03:38
◼
►
And in reality, it's more complicated than that.
00:03:42
◼
►
In reality, it literally is healthcare
00:03:45
◼
►
for a number of conditions.
00:03:47
◼
►
And people who are anti-abortion
00:03:50
◼
►
normally have a fairly simplistic view of the issue.
00:03:54
◼
►
And if you're one of these people listening to the show,
00:03:56
◼
►
if we somehow still have any conservative listeners,
00:03:59
◼
►
first of all, I respect that you listen to the show
00:04:01
◼
►
knowing that we're not conservative.
00:04:02
◼
►
- Yeah, agreed.
00:04:03
◼
►
- And that that hasn't scared you off
00:04:04
◼
►
and that you're willing to hear other opinions.
00:04:07
◼
►
Good on you for that.
00:04:09
◼
►
The view that anti-abortion people tend to have
00:04:13
◼
►
is this very simplistic, almost storybook view
00:04:16
◼
►
of all abortions are killing babies and that's it.
00:04:21
◼
►
And the reality is much more complicated than that.
00:04:24
◼
►
A thousand times more complicated than that.
00:04:26
◼
►
There are so many sides to this.
00:04:28
◼
►
There are so many conditions in which it is literally
00:04:31
◼
►
the only possible outcome to save the mother's life.
00:04:35
◼
►
There are many conditions where you have
00:04:38
◼
►
you know, tricky problems or literal health problems,
00:04:42
◼
►
literal healthcare is required that is considered
00:04:45
◼
►
an abortion for various conditions or situations
00:04:50
◼
►
that happen in real life all the time.
00:04:52
◼
►
So even if you think that women shouldn't be allowed
00:04:56
◼
►
to choose abortion for other reasons,
00:04:59
◼
►
which that's a big if, and I would question that as well,
00:05:03
◼
►
but even if you can set that part aside,
00:05:06
◼
►
The reality of the issue is so much more complicated
00:05:09
◼
►
than that and there's so many situations
00:05:11
◼
►
where it is the required medical procedure
00:05:13
◼
►
to preserve a woman's life,
00:05:16
◼
►
or at least physical and mental wellbeing,
00:05:19
◼
►
that to actually ban it, to actually make it illegal,
00:05:24
◼
►
is literally putting women's lives in danger.
00:05:27
◼
►
It is literally going to result in women dying.
00:05:31
◼
►
That is not an exaggeration, it is not a frivolous thing.
00:05:35
◼
►
This is not a thing that should be taken lightly.
00:05:37
◼
►
And anybody celebrating this as a victory,
00:05:39
◼
►
I think you don't have all the facts
00:05:41
◼
►
or you're willfully ignoring them.
00:05:43
◼
►
- This is literally a step backwards
00:05:46
◼
►
into a barbaric pastime that we did have
00:05:50
◼
►
where lots more people died who either couldn't afford
00:05:55
◼
►
to get the kind of under the table treatments
00:05:58
◼
►
or to travel somewhere where it was available
00:06:00
◼
►
or who took something more desperately available
00:06:04
◼
►
that ended up killing them or hurting them.
00:06:06
◼
►
We are now going back to that barbaric time
00:06:08
◼
►
in huge parts of our country.
00:06:11
◼
►
And this is going to affect thousands of people.
00:06:14
◼
►
It's going to result in more deaths,
00:06:16
◼
►
more illness, more problems.
00:06:18
◼
►
If you are still somehow on the anti-abortion side of this,
00:06:22
◼
►
I urge you to consider that the issue
00:06:24
◼
►
is more complicated than you think it is.
00:06:27
◼
►
And there's lots of situations.
00:06:29
◼
►
We personally, I mentioned this a long time ago
00:06:31
◼
►
when this happened, but my wife had to get an abortion.
00:06:34
◼
►
We had a failed pregnancy at five months,
00:06:38
◼
►
and we were about, I think, one week away
00:06:40
◼
►
from not being able to do it even in New York.
00:06:43
◼
►
It was deemed unviable of a pregnancy.
00:06:45
◼
►
We had to terminate it to preserve her health
00:06:48
◼
►
and her ability to possibly have more kids in the future.
00:06:50
◼
►
We had to terminate it.
00:06:52
◼
►
That was the required healthcare move at that time.
00:06:55
◼
►
And this was for a pregnancy that we very much wanted,
00:06:58
◼
►
but it wasn't gonna happen.
00:07:00
◼
►
And had we not been able to do that,
00:07:04
◼
►
we could have had some much more serious problems
00:07:06
◼
►
down the road.
00:07:07
◼
►
So I urge you out there,
00:07:10
◼
►
if you are on that side of the politics of this,
00:07:14
◼
►
please open your mind to the possibility
00:07:17
◼
►
that the issue is more complex than you think it is.
00:07:19
◼
►
And for everyone on the pro-choice side of this, like us,
00:07:24
◼
►
I urge you to just do whatever you can politically
00:07:28
◼
►
to help right this wrong.
00:07:29
◼
►
And frankly, I don't know how much we can do right now.
00:07:32
◼
►
I'm, like many of you, pretty jaded
00:07:36
◼
►
at America's prospects right now in lots of ways.
00:07:40
◼
►
I mean, this is just one issue of many large recent issues
00:07:45
◼
►
that we're having to deal with
00:07:46
◼
►
that are seemingly going the wrong direction.
00:07:48
◼
►
I mean, we have a legitimate chance here
00:07:51
◼
►
that our next major national election
00:07:54
◼
►
might literally be contradicted by state legislatures
00:07:58
◼
►
and possibly the Supreme Court.
00:08:00
◼
►
So our actual democracy is literally being threatened
00:08:04
◼
►
in very, very large ways
00:08:06
◼
►
that I don't think most Americans fully appreciate.
00:08:09
◼
►
So we have lots of problems right now,
00:08:10
◼
►
but this is a big one.
00:08:12
◼
►
And to have regressed so far
00:08:15
◼
►
in such a damaging and dangerous way is despicable.
00:08:19
◼
►
And as we just passed July 4th,
00:08:22
◼
►
I am super not proud of America right now.
00:08:24
◼
►
And we have a lot of work to do
00:08:26
◼
►
to fix the train wreck we've made for ourselves.
00:08:29
◼
►
- Couldn't agree more.
00:08:30
◼
►
- Yeah, a couple of things I'll add.
00:08:32
◼
►
In any kind of situation where you're trying to set
00:08:36
◼
►
some kind of policy or laws or whatever
00:08:39
◼
►
surrounding healthcare, and you're using some criteria
00:08:43
◼
►
other than what, the unfortunate phrase that we have
00:08:46
◼
►
in this country, which is terrible,
00:08:48
◼
►
evidence-based medicine, which basically is just medicine,
00:08:51
◼
►
if you're using anything other than what is best
00:08:56
◼
►
for your health to make a healthcare decision,
00:08:58
◼
►
something has gone wrong.
00:08:59
◼
►
And that's exactly what this issue is.
00:09:01
◼
►
What would be the best thing to do in this situation?
00:09:03
◼
►
What does the patient want?
00:09:05
◼
►
These are the things that should be in question
00:09:07
◼
►
when determining what course of healthcare to pursue.
00:09:10
◼
►
Nowhere in there is,
00:09:11
◼
►
yeah, but what do a bunch of other people think about this?
00:09:15
◼
►
Oh, I don't care that it has worse outcomes.
00:09:17
◼
►
And people say like, well, if it's not gonna kill you,
00:09:19
◼
►
it's fine, let's just wait to see this.
00:09:21
◼
►
Already, already with this decision,
00:09:23
◼
►
there's been situations where doctors
00:09:25
◼
►
have been afraid to do what they know is right,
00:09:27
◼
►
healthcare-wise, because they're afraid of getting sued
00:09:29
◼
►
or losing their license because they're in some terrible
00:09:31
◼
►
state that has terrible trigger laws that took effect
00:09:33
◼
►
as soon as the Roe v. Wade decision came down, right?
00:09:38
◼
►
That's not the right decision to make
00:09:40
◼
►
for the health of the patient.
00:09:41
◼
►
It's like, well, if they didn't die,
00:09:43
◼
►
we have to wait until they get worse,
00:09:45
◼
►
because it has to be only to save the life of the mother,
00:09:48
◼
►
and the mother's life isn't in threat now,
00:09:50
◼
►
so let's wait until her life is threatened,
00:09:53
◼
►
and then we're allowed to do the,
00:09:54
◼
►
this is not how medicine is supposed to work.
00:09:57
◼
►
Let's wait until it gets worse
00:09:58
◼
►
'cause then we're allowed to do the thing.
00:10:00
◼
►
We could do something now to save her
00:10:01
◼
►
and it would be the right thing to do,
00:10:03
◼
►
but actually, some people don't like that.
00:10:05
◼
►
They're not here, they're not the patient,
00:10:07
◼
►
but we've decided, these laws have decided for us
00:10:10
◼
►
that we have to make a decision based on something
00:10:12
◼
►
other than the best outcomes of the patient.
00:10:15
◼
►
This is setting aside all the other outcomes
00:10:16
◼
►
that Mark was talking about.
00:10:17
◼
►
Women will die, there'll be worse outcomes for everybody,
00:10:20
◼
►
there'll be worse outcomes for children,
00:10:21
◼
►
there'll be worse outcomes for mothers,
00:10:23
◼
►
be worth outcomes for everybody involved. This law and this decision, it runs counter to all that,
00:10:29
◼
►
so that's terrible. Another thing someone brought up in the chat room, someone was saying like this
00:10:33
◼
►
is that the Supreme Court didn't, you know, didn't ban abortion, just made it a state's voting issue,
00:10:38
◼
►
the Supreme Court doesn't, isn't supposed to set the policy for everybody. What the Supreme Court
00:10:42
◼
►
is supposed to do in theory, in practice, it's very grand, but in theory, is they're supposed
00:10:47
◼
►
to interpret the laws in light of the sort of foundational, you know, things like the Constitution
00:10:52
◼
►
or whatever. And the reason that you know that we have a constitution and the Supreme Court is
00:10:58
◼
►
even if the majority votes I think we should you know bring back slavery and the majority votes in
00:11:03
◼
►
favor which honestly in this country I sometimes I think it would pass. The Supreme Court has to
00:11:08
◼
►
be there to say hey actually we have we have existing laws and decisions on the book that say
00:11:12
◼
►
even if everybody wants this it's not a thing that you can do it's like something easy the
00:11:16
◼
►
first amendment you know oh I think I should be able to you know set a law that no one's ever to
00:11:21
◼
►
to say anything mean about me.
00:11:23
◼
►
Sorry, we have a foundational document
00:11:25
◼
►
and that will hopefully be correctly interpreted
00:11:26
◼
►
by the Supreme Court to say no,
00:11:27
◼
►
even if the majority of the country wants that law,
00:11:31
◼
►
it doesn't fit with our system.
00:11:32
◼
►
Abortion is no different.
00:11:34
◼
►
It's like in the Roe v. Wade decision,
00:11:36
◼
►
which was decided and then subsequently upheld,
00:11:40
◼
►
it's part of the right to privacy.
00:11:41
◼
►
The state can't come and tell you
00:11:42
◼
►
what can or can't happen to your body, right?
00:11:45
◼
►
And that's what's been overturned
00:11:46
◼
►
and it's a terrible decision and hopefully,
00:11:48
◼
►
like, you know, it's a big step backwards.
00:11:51
◼
►
It's very easy to tell.
00:11:52
◼
►
It's like, oh, maybe from the lens of history,
00:11:53
◼
►
we can tell what was bad or no, you can always tell.
00:11:55
◼
►
If some group is fighting for rights
00:11:57
◼
►
and some group is fighting against them,
00:11:59
◼
►
the people who are fighting against them are always wrong.
00:12:02
◼
►
It never goes the other way.
00:12:04
◼
►
It's like, women want these rights, you know,
00:12:06
◼
►
and gay people want these rights or whatever.
00:12:09
◼
►
You can tell when you're there.
00:12:10
◼
►
You don't have to wait 50 years in the future.
00:12:13
◼
►
So this is obviously a bad decision.
00:12:15
◼
►
It's taking us backwards,
00:12:16
◼
►
or you can look at the rest of the world,
00:12:18
◼
►
or you can look at outcome.
00:12:19
◼
►
Anyway, it's a bad situation.
00:12:20
◼
►
We all hate it.
00:12:22
◼
►
Hopefully things will get better,
00:12:24
◼
►
and we'll all do what we can to make that happen,
00:12:27
◼
►
you know, if we still have a democracy
00:12:30
◼
►
in the next several years.
00:12:32
◼
►
- I will say too, on that point, which again,
00:12:34
◼
►
that is a, you know, you might think this is hyperbolic.
00:12:38
◼
►
I assure you it's not.
00:12:39
◼
►
This is literally a risk that we have to face.
00:12:42
◼
►
- Yeah, 'cause it's not like an accidental thing
00:12:43
◼
►
that's happening to us.
00:12:44
◼
►
It's a thing that people are doing.
00:12:46
◼
►
There are groups actively lobbying
00:12:48
◼
►
that have been lobbying for decades to make this happen.
00:12:50
◼
►
It's not something that happens accidentally,
00:12:53
◼
►
or like, whoops, looks like Roe v. Wade went to write.
00:12:55
◼
►
This has been some people's life's work.
00:12:57
◼
►
There are active agents trying to drag us backwards.
00:13:01
◼
►
- Yeah, and there are also active agents
00:13:04
◼
►
trying to basically give state legislatures
00:13:08
◼
►
the ability to overturn election results
00:13:11
◼
►
that they deem quote, suspicious,
00:13:13
◼
►
which read this as code for we lost.
00:13:17
◼
►
So if you think there were some shenanigans
00:13:19
◼
►
with the Trump team suggesting that our whole election
00:13:23
◼
►
should be thrown out because they lost,
00:13:25
◼
►
you haven't seen anything yet.
00:13:26
◼
►
Because there's a whole bunch of stuff going on
00:13:27
◼
►
at the state levels that's very, very scary.
00:13:30
◼
►
And so I urge you all, vote in local and state elections,
00:13:34
◼
►
even if it is not a presidential election year.
00:13:37
◼
►
Because a lot of this stuff kind of flies under the radar
00:13:40
◼
►
at times, during elections and at times when
00:13:43
◼
►
there's not a lot of voter turnout
00:13:45
◼
►
because it is not a presidential election.
00:13:47
◼
►
Vote in every single election that you can.
00:13:49
◼
►
every single one. Vote, make your voice heard. And if you don't follow the particular politicians
00:13:56
◼
►
at that level, that's fine, most people don't. Vote however you feel is for the party or
00:14:02
◼
►
people or whatever it is that you think will be least evil because not a lot of people
00:14:08
◼
►
show up to vote. And so if you do, like on those non-peak elections, it matters. It counts.
00:14:15
◼
►
And we really have to defend our democracy at all levels, local, state, and federal,
00:14:22
◼
►
because I'm telling you, those are under significant attack.
00:14:27
◼
►
And as the upcoming elections are, you know, soon, you know, we have midterms, what, this
00:14:32
◼
►
year, right?
00:14:33
◼
►
We have the presidential election in another couple of years, and I'm telling you, it's
00:14:36
◼
►
going to be rough.
00:14:39
◼
►
You know, you thought this past election was a little bit rough with the state of our democracy.
00:14:43
◼
►
I'm telling you, it's going to get worse.
00:14:46
◼
►
And we have to be ready for that.
00:14:47
◼
►
And we have to start defending against that
00:14:49
◼
►
and rolling back some of these terrible things
00:14:52
◼
►
so that we can literally have a democracy.
00:14:54
◼
►
Like that's what we're fighting for, among other things.
00:14:56
◼
►
We have lots of other major issues.
00:14:58
◼
►
We have this terrible abortion thing.
00:14:59
◼
►
We have all the gun problems.
00:15:00
◼
►
We have so many issues, but the foundation of our democracy
00:15:03
◼
►
is also literally under attack right now,
00:15:06
◼
►
to the extent that most people don't realize.
00:15:08
◼
►
So please get out there and vote
00:15:09
◼
►
in every single election that you can.
00:15:11
◼
►
- And if you need a voting guideline, here's your guideline.
00:15:14
◼
►
If someone who's gonna be in charge of the election
00:15:16
◼
►
says no matter what the people vote for,
00:15:18
◼
►
they're going to make sure the outcome is one way,
00:15:20
◼
►
don't vote for that person.
00:15:21
◼
►
Like, their one job is like, okay,
00:15:24
◼
►
our state is gonna vote, say, in a presidential election.
00:15:27
◼
►
And the rule is whoever wins more votes in the state,
00:15:29
◼
►
you know, gets the electors, and they say,
00:15:32
◼
►
I'll do that, but only if my favorite person wins.
00:15:34
◼
►
If my favorite person doesn't win,
00:15:36
◼
►
I'm going to ignore what you voted for
00:15:38
◼
►
and decide that my favorite person wins.
00:15:39
◼
►
There are literally people running on that platform
00:15:41
◼
►
and winning, they are winning their elections.
00:15:44
◼
►
They say, "I wanna be in charge of elections in the state,
00:15:46
◼
►
"and by the way, no matter what happens with the vote,
00:15:48
◼
►
"I'm going to make sure that my person
00:15:50
◼
►
"is the person who gets the electors,
00:15:52
◼
►
"because if my person doesn't,
00:15:53
◼
►
"it's obviously the election was a scam
00:15:54
◼
►
"and a fraud and whatever."
00:15:56
◼
►
Those people are winning elections.
00:15:57
◼
►
That's why we're all scared here,
00:15:59
◼
►
because they say they're gonna do that.
00:16:00
◼
►
It's not a secret.
00:16:01
◼
►
That's their platform,
00:16:03
◼
►
and then they get the most votes in the state,
00:16:05
◼
►
and they're gonna be in charge of the election.
00:16:07
◼
►
So that's why we're all a little bit scared over here.
00:16:09
◼
►
- Yeah, it's right out there in the open,
00:16:11
◼
►
And I will again say, and maybe go a little further,
00:16:14
◼
►
if you vote for a politician or a political party
00:16:20
◼
►
that cares more about winning
00:16:22
◼
►
than about votes being counted properly
00:16:24
◼
►
and actual democracy happening, you are not an American.
00:16:28
◼
►
You are anti-American, you are anti-patriotic,
00:16:30
◼
►
you are anti-democracy.
00:16:32
◼
►
If you wanna be an American patriot,
00:16:33
◼
►
here we just celebrated on our birthday,
00:16:34
◼
►
all the flags and everything,
00:16:36
◼
►
you know what that flag means?
00:16:37
◼
►
That means democracy, that means votes counting.
00:16:40
◼
►
And so if you support any politician or party
00:16:43
◼
►
that tries to interfere with votes counting,
00:16:46
◼
►
you are anti-American and might as well
00:16:49
◼
►
be committing treason as far as I'm concerned.
00:16:51
◼
►
On that note, let's start our tech show.
00:16:54
◼
►
- All right, so I talked, we spoke last week
00:16:59
◼
►
about how I'm now using an M1 Mac Mini as my Plex server.
00:17:03
◼
►
And a handful of people wrote to say, is that working?
00:17:07
◼
►
because nobody apparently, not many people apparently
00:17:10
◼
►
are trying to do this right now.
00:17:12
◼
►
And so people wanted some feedback.
00:17:15
◼
►
It is a bit early to tell, I think,
00:17:17
◼
►
but I will say that I was watching,
00:17:21
◼
►
or I was attempting to watch something
00:17:23
◼
►
that was a 4K video in Plex,
00:17:27
◼
►
but it was encoded in WebM, which is, I think,
00:17:31
◼
►
what is that, Google? - Google, yeah.
00:17:33
◼
►
- Kodak or whatever.
00:17:35
◼
►
The video was encoded in WebM, and it did not want to play on my Apple TV, and Plex
00:17:42
◼
►
got very upset about the fact that the Mac Mini wasn't transcoding quick enough for it.
00:17:47
◼
►
That being said, what I did was, because I'm me, I used Don Melton's incredible other video
00:17:53
◼
►
transcoding scripts--I'll put a link in the show notes--in order to--which is basically
00:17:57
◼
►
like a front end for ffmpeg and i converted from webm to havc or h265 depending on i think they're
00:18:05
◼
►
one and the same or at least in this context they're one and the same uh and anyways uh once
00:18:10
◼
►
i did that i tried again and everything was good to go so if you have i i don't want to make any
00:18:16
◼
►
like broad statements you know i don't know if all webm is bad i don't know if just 4k webm is bad i
00:18:22
◼
►
I haven't really done enough testing on all this,
00:18:24
◼
►
but certainly 4K WebM did not go well for me
00:18:28
◼
►
against the most recent Apple TV that exists,
00:18:31
◼
►
which is what, 17 years old now.
00:18:33
◼
►
So if you're like me and you tend to store things
00:18:38
◼
►
in H.264 and H.265, I think you'd probably be fine.
00:18:41
◼
►
But if you are a little bit more omnivorous
00:18:44
◼
►
and don't really care what things are encoded as
00:18:48
◼
►
and just try to throw it at Plex,
00:18:49
◼
►
which is one of Plex's advantages,
00:18:51
◼
►
then you might be in for a little bit of pain.
00:18:54
◼
►
So just something to think about.
00:18:56
◼
►
I'll report in again if I have any other discoveries
00:18:59
◼
►
of any sort, but it's worth thinking about.
00:19:03
◼
►
And speaking of M1 things, and in this case, actually M2,
00:19:07
◼
►
we have gotten a date just earlier today, actually,
00:19:09
◼
►
we got a date for the M2 MacBook Air
00:19:12
◼
►
and when Jon will be feverishly mashing the keys
00:19:15
◼
►
on his old and busted Intel Mac Pro.
00:19:19
◼
►
John, what are you gonna be doing Friday at 8 a.m.
00:19:22
◼
►
in the one true time zone?
00:19:24
◼
►
- Yeah, I'll be ordering my M2 MacBook Air then,
00:19:26
◼
►
although, you know, with availability things,
00:19:29
◼
►
especially like, oh, you have to be ready
00:19:30
◼
►
at 8 a.m. Eastern time, I'm there, I'm ready to order,
00:19:32
◼
►
I'm ready to click the button.
00:19:33
◼
►
Does that mean it will be available
00:19:35
◼
►
on the educational discount store at 8 a.m.?
00:19:37
◼
►
Or is that gonna be later?
00:19:38
◼
►
But anyway, I'm still just determined
00:19:40
◼
►
to order this through the education store.
00:19:41
◼
►
I did the math to see what the actual discount is,
00:19:44
◼
►
and it's not great, like I said.
00:19:45
◼
►
It's not like it used to be
00:19:46
◼
►
where you get like $1,000 off or something.
00:19:48
◼
►
It's gonna be like $160 saving on the config I'm getting,
00:19:51
◼
►
which for people who are curious,
00:19:53
◼
►
M2 MacBook Air, Space Gray, 24 gigs of RAM,
00:19:57
◼
►
one terabyte hard drive,
00:19:58
◼
►
and probably the two hard drive SSD, whatever.
00:20:02
◼
►
And the power adapter with the two USB C plugs,
00:20:06
◼
►
the 35 watt two port adapter, that's probably what I get.
00:20:09
◼
►
And I'm also gonna get AppleCare probably.
00:20:11
◼
►
Yeah, so that's my plan.
00:20:14
◼
►
I'll be there at 8 a.m. trying to order this thing.
00:20:17
◼
►
I'll let you know how it goes.
00:20:19
◼
►
- Good luck, godspeed.
00:20:20
◼
►
I really think these things are gonna fly off the shelves,
00:20:22
◼
►
if you will, 'cause I know a fair number of people
00:20:24
◼
►
that are queuing everything up, ready to rock,
00:20:27
◼
►
in order to grab one of these.
00:20:29
◼
►
And they certainly, from everything I've read and seen,
00:20:31
◼
►
they certainly seem like they're damn fine computers.
00:20:33
◼
►
And Marco, I mean, you're the one
00:20:34
◼
►
who actually handled one briefly,
00:20:36
◼
►
so you know better than either of us.
00:20:38
◼
►
But they seem like they're gonna be great machines.
00:20:40
◼
►
- Oh, I'm still trying to figure out, like,
00:20:42
◼
►
do I have a use for this thing somewhere in my house?
00:20:44
◼
►
'Cause I just want one.
00:20:45
◼
►
- I'm sure I do.
00:20:46
◼
►
'Cause they're so, I'm telling you,
00:20:48
◼
►
it feels so good when you pick it up.
00:20:50
◼
►
It's like, it's so nice, I just don't want one.
00:20:54
◼
►
- Yeah, I don't blame you, I kinda want one too.
00:20:56
◼
►
- I actually might, I kinda do have some uses for it,
00:20:59
◼
►
so I will see. (laughs)
00:21:01
◼
►
- Here we go.
00:21:02
◼
►
- I do wish I liked more of the colors better.
00:21:05
◼
►
Like, if I get one, it would probably be the silver one,
00:21:10
◼
►
but I'm tempted to go with the midnight,
00:21:13
◼
►
just 'cause it's different, but I know in practice,
00:21:15
◼
►
it'll just be like too dark for me.
00:21:17
◼
►
'Cause I know, I saw it, it was very dark
00:21:19
◼
►
and it was covered in fingerprints.
00:21:20
◼
►
So I think in practice I wouldn't like it as much,
00:21:22
◼
►
but it's at least like new and interesting and different.
00:21:25
◼
►
It has that going for it.
00:21:27
◼
►
So honestly, I think if you're buying the MacBook Air,
00:21:29
◼
►
you can't go wrong with any of the colors it comes with.
00:21:32
◼
►
Except Space Gray.
00:21:33
◼
►
- Yeah, I think really folks, the problem is
00:21:36
◼
►
is that I am the one who has most recently bought a computer
00:21:39
◼
►
and this is not computing in Marco's world.
00:21:41
◼
►
And so he needs some reason to be the one
00:21:43
◼
►
with the newest machine of the three of us.
00:21:45
◼
►
That's what it boils down to.
00:21:46
◼
►
- No, I actually, I do actually have some uses
00:21:49
◼
►
for it potentially, but I gotta figure out
00:21:53
◼
►
if this is actually the right move for me or not.
00:21:55
◼
►
- Fair enough.
00:21:56
◼
►
A quick piehole tip from Todd Weitzel.
00:21:59
◼
►
- It's never not funny.
00:22:01
◼
►
- This is probably relevant to four of us,
00:22:03
◼
►
but there might even be dozens of us.
00:22:06
◼
►
I noticed a while ago that when I was using Safari,
00:22:10
◼
►
and Safari specifically, often, well maybe not often,
00:22:13
◼
►
But occasionally, it would start to load a page
00:22:17
◼
►
and then just kind of sit and sit and sit.
00:22:21
◼
►
And I'm on a gigabit internet connection,
00:22:23
◼
►
and it would sit and sit.
00:22:25
◼
►
- Have you tried going to the microwave tower thing
00:22:30
◼
►
for Verizon, ultrafast 5G wireless network,
00:22:32
◼
►
and have you tried going at two gigabits?
00:22:35
◼
►
Was it faster?
00:22:36
◼
►
- No, I have not tried mmmwave for this,
00:22:38
◼
►
because I think Todd solved my problem.
00:22:40
◼
►
And so Todd writes, a couple of iOS releases ago,
00:22:42
◼
►
and for what it's worth, I've seen this on Mac OS.
00:22:44
◼
►
I noticed Safari would just stop loading pages
00:22:46
◼
►
after a few tricks or ticks on the blue progress bar.
00:22:50
◼
►
This wasn't affecting other browsers.
00:22:52
◼
►
I recently discovered that turning off hide my IP address
00:22:55
◼
►
in the Safari settings fix this.
00:22:58
◼
►
My guess, writes Todd,
00:23:00
◼
►
is that Safari was looking up trackers in DNS,
00:23:02
◼
►
getting an address from my pie hole,
00:23:03
◼
►
and then Apple's relay servers were trying to connect
00:23:05
◼
►
to that private address and timing out.
00:23:07
◼
►
I have no idea if that theory is right,
00:23:08
◼
►
But if you go into Safari preferences on the Mac anyway,
00:23:12
◼
►
it is in the privacy tab,
00:23:14
◼
►
there is hide IP address from trackers.
00:23:16
◼
►
And by turning that off,
00:23:18
◼
►
which I wouldn't generally recommend,
00:23:20
◼
►
but it did seem to fix the problem for me.
00:23:23
◼
►
So if you are one of the dozens of people
00:23:25
◼
►
afflicted by this issue, give that a whirl,
00:23:27
◼
►
see if it helps.
00:23:27
◼
►
- We are sponsored this week by WorkCheck,
00:23:31
◼
►
a new original podcast from Atlassian,
00:23:34
◼
►
makers of teamwork software like Jira, Confluence,
00:23:38
◼
►
You know, our workplaces today are changing quickly,
00:23:40
◼
►
but which of these changes
00:23:42
◼
►
are actually going to serve us best?
00:23:44
◼
►
WorkCheck takes workplace practices,
00:23:46
◼
►
things like agile at scale, off-sites, dogfooding,
00:23:49
◼
►
and they separate the hype from the helpful.
00:23:52
◼
►
In each episode, two Atlassians debate
00:23:54
◼
►
how the practice should be applied, if at all.
00:23:57
◼
►
And WorkCheck takes your most pressing questions
00:23:59
◼
►
about the ways that we work together
00:24:01
◼
►
and hashes out the best arguments on either side,
00:24:03
◼
►
hosted by Christine De La Rosa,
00:24:05
◼
►
the ways of working brand lead at Atlassian.
00:24:08
◼
►
And it's never been more important
00:24:10
◼
►
to think about this stuff.
00:24:11
◼
►
A lot of us are staying remote,
00:24:12
◼
►
a lot of us are heading back to the office.
00:24:13
◼
►
So this season they're debating some wonderful questions.
00:24:16
◼
►
One episode they've done is about
00:24:18
◼
►
wearing pajamas on a Zoom call.
00:24:20
◼
►
What about what do you wear on the bottom half?
00:24:21
◼
►
It's out of the frame.
00:24:23
◼
►
Let's debate that a little bit,
00:24:24
◼
►
see how it might be affecting your performance at work
00:24:27
◼
►
and what the history of dress codes can tell us
00:24:28
◼
►
about where Work Wear is going next.
00:24:31
◼
►
In another episode, they tackle the four-day work week.
00:24:34
◼
►
So if you fantasize on Friday afternoons
00:24:36
◼
►
about the luxury of a three day weekend,
00:24:38
◼
►
they'd actually debate this and dig into the potentials
00:24:40
◼
►
and pitfalls of this four day work we scheduled
00:24:43
◼
►
to be generating buzz around the world.
00:24:44
◼
►
And they ask, is the grass really greener?
00:24:47
◼
►
So it's a wonderful podcast.
00:24:49
◼
►
Check this out.
00:24:50
◼
►
Go to whatever your podcast app is and look for WorkCheck.
00:24:53
◼
►
That's what it's called, WorkCheck.
00:24:54
◼
►
It's an Apple podcast, Overcast,
00:24:56
◼
►
all the different apps that you might get your podcasts in,
00:24:59
◼
►
We will also include a link in the show notes.
00:25:01
◼
►
You can find it yourself there.
00:25:02
◼
►
But once again, it's called WorkCheck by Atlassian.
00:25:05
◼
►
It's a great new podcast examining
00:25:07
◼
►
these really cool questions about the future
00:25:09
◼
►
and present of work.
00:25:10
◼
►
Thank you so much to WorkCheck for sponsoring our show.
00:25:13
◼
►
- Buy now, pay later.
00:25:18
◼
►
Rob Sayer writes, "Without getting into the details
00:25:20
◼
►
of BNPL and credit cards, the basic game Apple
00:25:22
◼
►
seems to be playing is that they have much less fraud risk.
00:25:26
◼
►
That's why the rewards are higher
00:25:27
◼
►
for phone authenticated purchases.
00:25:29
◼
►
It's a side effect of having good authentication functions
00:25:31
◼
►
aside from all the reasons the podcast already mentioned.
00:25:33
◼
►
There's also a more basic insurance
00:25:35
◼
►
or financial technology game here
00:25:37
◼
►
where you poach the lowest risk customers
00:25:39
◼
►
in exchange for marginally better service.
00:25:41
◼
►
An iPhone is a good proxy for that.
00:25:43
◼
►
- Yep, that's the advantage Apple has.
00:25:45
◼
►
The same thing with CarPlay of like, you know,
00:25:47
◼
►
whatever it was, 79% of customers saying
00:25:49
◼
►
they wouldn't buy a car without CarPlay is like,
00:25:51
◼
►
how is that possible?
00:25:51
◼
►
79% of the public doesn't have iPhones?
00:25:53
◼
►
Why would they care about CarPlay?
00:25:55
◼
►
Ah, but 79% of new car buyers apparently do.
00:25:57
◼
►
So yeah, Apple's got customers with money
00:26:01
◼
►
And it's got a fairly good way to authenticate them with all of its biometrics and Apple
00:26:07
◼
►
ID and security and everything so they can afford to skim a little bit more off the top
00:26:11
◼
►
for their financial transactions.
00:26:12
◼
►
And then a little bit more on Bitcode deprecation.
00:26:15
◼
►
Augie Fackler writes, "I've been working on some LLVM stuff that requires adding functionality
00:26:22
◼
►
And one of the things that came up in the process was forward compatibility of IR/Bitcode.
00:26:26
◼
►
As far as any of my mentors know, Apple's the only LLVM user that cares about forward
00:26:30
◼
►
compatibility of IR, and during my work I noticed that nobody has done the work upstream
00:26:34
◼
►
in LLVM to keep forward compatibility tests complete since LLVM 8 or 9, which is several
00:26:40
◼
►
releases ago.
00:26:41
◼
►
I believe 14 is the current release, with three releases a year.
00:26:45
◼
►
I wouldn't be surprised if the seeming lack of community interest on the LLVM side forced
00:26:49
◼
►
some hands at Apple to drop the use of bitcode to ease LLVM upgrades going forward.
00:26:54
◼
►
Yeah, that's one of those things I forgot to talk about, that LLVM is actually an open
00:26:58
◼
►
source project and it's not just Apple that gets to decide how things go with the bitcode
00:27:02
◼
►
thing because it's a whole compiler infrastructure that's under it.
00:27:05
◼
►
Now you can't tell whether this is, you know, which is the leading indicator and the trailing
00:27:10
◼
►
It could be that there is less activity on the LLVM side because Apple lost interest
00:27:14
◼
►
in it and they were the major ones doing the contributions to this open source project
00:27:17
◼
►
and once Apple sort of put that project in the back burner they just let it rot.
00:27:21
◼
►
On the other hand it could be that Apple had been relying on the community to keep this
00:27:24
◼
►
up and the community doesn't care about it and Apple did and you got this disconnect
00:27:27
◼
►
and Apple wasn't willing to invest what was required to keep up to date with all these
00:27:31
◼
►
tests and either way it's gone by the wayside.
00:27:34
◼
►
But it's just to show that if you, one of the things that comes with using open source
00:27:39
◼
►
is, if you're not doing 100% of the development of the features you care about and the community
00:27:45
◼
►
decides that some feature you care about is not as important to them, you have a decision
00:27:49
◼
►
You either let go of that feature and take it out of your product or you decide that
00:27:52
◼
►
you're going to fully fund the development of it.
00:27:54
◼
►
In this case, Apple has chosen to let it go by the wayside.
00:27:58
◼
►
One of you put, probably John in the show notes, a link from friend of the show Glenn
00:28:02
◼
►
Fleischman, "Why pass keys will be simpler and more secure than passwords."
00:28:06
◼
►
And I read that earlier today and it's a really good overview of exactly that.
00:28:09
◼
►
So I don't know if you had more things to add, John, but this article is a pretty good
00:28:12
◼
►
summary if you were looking for one.
00:28:13
◼
►
Yep, Glenn has a good way of explaining complicated topics.
00:28:17
◼
►
It's a long article or whatever, but if you want to know more about it and you still don't
00:28:20
◼
►
quite understand it, you give Glenn's article a try.
00:28:23
◼
►
And speaking of past keys,
00:28:24
◼
►
there are some questions from Janice Pukert.
00:28:26
◼
►
Apple appears to be very slow
00:28:27
◼
►
in adopting their own sign-in with Apple solutions.
00:28:29
◼
►
Past keys appear to be the same.
00:28:31
◼
►
The dev portal looks like it's stuck in the year 2000,
00:28:34
◼
►
authentication wise, especially in the dev portal,
00:28:36
◼
►
you might think Apple would be willing
00:28:37
◼
►
to roll out these features
00:28:38
◼
►
to its more technologically adept users.
00:28:40
◼
►
Why do you think Apple is so weird
00:28:42
◼
►
about using their own stuff?
00:28:44
◼
►
- The reason Apple is crappy about this
00:28:45
◼
►
is the same reason any big company is.
00:28:46
◼
►
There's always dark corners of the company
00:28:48
◼
►
that don't get updated with the flagship features.
00:28:52
◼
►
And I think we've all experienced this,
00:28:53
◼
►
especially wandering around what used to be called
00:28:55
◼
►
iTunes Connect, or is now App Store Connect,
00:28:58
◼
►
and the developer side, and the documentation system.
00:29:00
◼
►
You'll stumble upon these corners of Apple's web presence
00:29:03
◼
►
that are so clearly haven't been updated
00:29:05
◼
►
in years and years.
00:29:06
◼
►
And they do get updated eventually,
00:29:08
◼
►
just not as quickly as the more high profile part.
00:29:11
◼
►
So maybe iCloud.com is likely to look fancy
00:29:14
◼
►
and get new features or whatever,
00:29:15
◼
►
but App Store Connect, less so, let's say.
00:29:18
◼
►
So why is Apple slow about this?
00:29:21
◼
►
because any big company is slow about this.
00:29:23
◼
►
It's very difficult to have entire companies
00:29:25
◼
►
have sort of the same priority of like,
00:29:28
◼
►
we're gonna roll out this new feature
00:29:29
◼
►
and it's gonna roll out everywhere
00:29:30
◼
►
across every single thing that we have on the web
00:29:32
◼
►
at the same time.
00:29:33
◼
►
That's just not feasible in a company the size of Apple.
00:29:37
◼
►
Obviously we wish they did a little bit better,
00:29:38
◼
►
but I think it pretty much scales with like,
00:29:42
◼
►
how many people use this webpage?
00:29:43
◼
►
I bet a lot of people use apple.com and icloud.com
00:29:46
◼
►
and very few people compared to that use App Store Connect.
00:29:49
◼
►
and yeah, anyway, I guess developers are more important
00:29:52
◼
►
than the average person, but whatever.
00:29:54
◼
►
It doesn't surprise me this is the case.
00:29:58
◼
►
That said, I haven't,
00:30:00
◼
►
I mean, the OS that fully supports PAS keys,
00:30:02
◼
►
the various OSes are still in beta, right?
00:30:05
◼
►
So I wouldn't expect Apple to be converting
00:30:07
◼
►
any of its products or services to use PAS keys
00:30:10
◼
►
until Ventura is out, iOS 16 is out, iPad OS,
00:30:15
◼
►
until those things all release.
00:30:17
◼
►
And even then, maybe I'm just pessimistic,
00:30:20
◼
►
but I wasn't expecting that on the day of release,
00:30:23
◼
►
suddenly I'll be able to log into the developer portal
00:30:25
◼
►
or any Apple property using PassKeys.
00:30:28
◼
►
I don't know who's gonna go first,
00:30:29
◼
►
maybe Apple will be first,
00:30:30
◼
►
but I don't think it's gonna be on the day of release.
00:30:31
◼
►
So I'm still watching for, you know,
00:30:34
◼
►
if and when PassKeys start to come into my life.
00:30:36
◼
►
We look at how long it took USB-C
00:30:38
◼
►
to finally become a thing
00:30:39
◼
►
that we could have some confidence in,
00:30:40
◼
►
maybe a little while for PassKeys.
00:30:42
◼
►
- Too soon, John.
00:30:43
◼
►
Janice continues, "The documents I read
00:30:45
◼
►
"mentioned that most services will provide a password
00:30:47
◼
►
and passkey authentication feature.
00:30:49
◼
►
Password is there as a fallback.
00:30:50
◼
►
Doesn't that kind of negate all of the benefits of passkeys?
00:30:53
◼
►
We still have to generate, manage all the passwords.
00:30:56
◼
►
-Some discussion of this on Twitter.
00:30:58
◼
►
The upshot is, like, individual services and sites
00:31:01
◼
►
can decide what they want to do.
00:31:02
◼
►
Nothing about passkeys dictates
00:31:04
◼
►
that they must be the only way to sign in
00:31:06
◼
►
or that you have to choose one or the other
00:31:08
◼
►
or you could have multiple, right?
00:31:09
◼
►
So it's not --
00:31:10
◼
►
There's no technological answer to this.
00:31:13
◼
►
It is a policy decision.
00:31:14
◼
►
I don't know what the most common policy is going to be,
00:31:17
◼
►
and I don't even know what the best policy is gonna be.
00:31:19
◼
►
In some ways, especially during the transition,
00:31:21
◼
►
it may be better to have pass keys
00:31:22
◼
►
as a sort of convenient type thing
00:31:24
◼
►
and then sort of have passwords as a backup,
00:31:26
◼
►
but sort of lock those passwords down real hard,
00:31:28
◼
►
like so that you never really need to use them or send them
00:31:31
◼
►
and they can just be, you know,
00:31:32
◼
►
'cause if you have some passwords in a password manager,
00:31:35
◼
►
even in iCloud Keychain or whatever,
00:31:36
◼
►
and they're never actually extracted
00:31:38
◼
►
and sent across the internet, that's still more secure,
00:31:40
◼
►
but it is kind of good to be there as a backup
00:31:42
◼
►
if there are bugs involving pass keys
00:31:44
◼
►
or if people don't know how to use them yet
00:31:45
◼
►
There are some issues we haven't discovered.
00:31:48
◼
►
Or if some site wants to be forward-looking, they can decide when you "convert to PassKey,"
00:31:53
◼
►
we get rid of your password login and you just use a PassKey.
00:31:55
◼
►
But there's nothing inherent in any of these technologies, or two-factor, or YubiKeys,
00:32:00
◼
►
or anything that dictates that you have to use one or the other.
00:32:03
◼
►
Just like you have websites now where you can log in with lots of different methods,
00:32:06
◼
►
I think that will continue to be the case, and each website will just have to decide
00:32:09
◼
►
what the policy they want to use is.
00:32:12
◼
►
I recently noticed the option to generate app-specific passwords on appleid.apple.com.
00:32:17
◼
►
The Apple document about this, we'll put a link in the show notes, mentions as an example
00:32:21
◼
►
use case, "so that the app can access information like mail contacts and calendars that you
00:32:25
◼
►
store in iCloud."
00:32:26
◼
►
Why would one want to do such a thing?
00:32:28
◼
►
The Apple ID is basically the key to anything.
00:32:30
◼
►
That seems super risky for the benefit it provides.
00:32:33
◼
►
That being said, it appears one cannot log into appleid.apple.com with an app-specific
00:32:37
◼
►
password, so maybe it's not blanket access.
00:32:40
◼
►
This is yet one more authentication method when you're listing all the different ways you can authenticate and login and do stuff
00:32:45
◼
►
and this one's kind of
00:32:48
◼
►
here for legacy support if you have some kind of service that needs to be able to
00:32:52
◼
►
Let's say let's say using Gmail and you want it to be able to check your iCloud email
00:32:57
◼
►
Back in the day what you could do is you could test tell Gmail your iCloud email address and password
00:33:03
◼
►
And it would connect to the authenticated
00:33:06
◼
►
you know mail server and authenticate using the password you told it and pull your mail down
00:33:11
◼
►
That's obviously not great because now Google and Gmail have your password somewhere stored hopefully securely
00:33:17
◼
►
But when Apple, you know rolled out two-factor stuff remember that two-step and two-factor that was
00:33:22
◼
►
Anyway, but an apple rolled out two-factor
00:33:25
◼
►
Google didn't change its system and Google's thing had no idea about two-factor
00:33:30
◼
►
So all of a sudden Google couldn't check your mail anymore because it just had your username and your password
00:33:33
◼
►
would try to log in with them and then it would get bounced off the two-factor
00:33:36
◼
►
prompt and you would never see that because it's all happening behind the
00:33:38
◼
►
scenes right and it didn't know how to handle that. There are all standards
00:33:42
◼
►
built around avoiding this issue like OAuth or whatever but another way that
00:33:46
◼
►
you can deal with this if you have some kind of service that doesn't have a
00:33:49
◼
►
fancier more modern authentication method it only accepts username and
00:33:53
◼
►
password is you can make what's what Apple calls an app specific password
00:33:56
◼
►
which is a special password that they show you one time and they say here it
00:34:00
◼
►
is, take it and write it down somewhere or copy it or whatever.
00:34:03
◼
►
We're never going to show it to you again.
00:34:05
◼
►
And then it disappears forever.
00:34:07
◼
►
And you just give that password to Gmail.
00:34:09
◼
►
And it is not your password to your account.
00:34:11
◼
►
It is just a password, you would hope,
00:34:13
◼
►
that just lets Gmail get your email
00:34:15
◼
►
and doesn't let it do anything else.
00:34:17
◼
►
GitHub has similar things.
00:34:18
◼
►
You can choose the various roles and permissions
00:34:22
◼
►
you want it to have.
00:34:23
◼
►
So it's a special purpose password
00:34:25
◼
►
that you give a name like, this is so Gmail can check my iCloud
00:34:29
◼
►
And the only thing in the entire internet that has that password
00:34:32
◼
►
And the only things, hopefully, it lets you do
00:34:34
◼
►
are very limited things that you want Gmail to be able to do.
00:34:36
◼
►
And if it is ever compromised or Gmail ever goes rogue,
00:34:39
◼
►
you can revoke that one password and stop
00:34:41
◼
►
Gmail from using it anymore.
00:34:43
◼
►
This is different than if Gmail had your real password
00:34:45
◼
►
or if you had done some sort of authentication
00:34:47
◼
►
where it goes through the two-factor thing.
00:34:49
◼
►
Because then it would have access to your entire account,
00:34:51
◼
►
and there'd be no way to revoke it
00:34:52
◼
►
without changing your whole password, which could mess up
00:34:55
◼
►
a bunch of the stuff.
00:34:56
◼
►
So that's why app-specific passwords exist.
00:34:58
◼
►
They are useful.
00:34:58
◼
►
have a function in this weird password world we live in,
00:35:01
◼
►
especially in the age where most good systems require more than
00:35:05
◼
►
just a username to password and a password to log in. But there
00:35:07
◼
►
are lots of old things around that only understand how to use
00:35:10
◼
►
a username and a password. So to let them continue to work, and
00:35:13
◼
►
to try to limit them to not have as many permissions as you want,
00:35:16
◼
►
and to be able to individually revoke them. That's why
00:35:19
◼
►
specific passwords work. We'll put a link in the show notes to
00:35:21
◼
►
the knowledge base article that from Apple that tries to explain
00:35:24
◼
►
moving on stateful hardware controls versus software
00:35:28
◼
►
controls. So where did this come up? This started with the conversation about the Rivian and
00:35:32
◼
►
I think there was the wipers. We talked about a bunch of other things that have this kind
00:35:37
◼
►
of disconnection between what does the software think the state of the world is and what is
00:35:40
◼
►
the hardware showing the state of the world is. So we had several different pieces of
00:35:43
◼
►
feedback about this. Jordan McEwen writes, "I thoroughly enjoyed your discussion about
00:35:47
◼
►
how knobs no longer inform state in cars. This has been an idea that has been explored
00:35:51
◼
►
thoroughly in the live music soundboard arena for many years. The high-end solution is motorized
00:35:55
◼
►
faders. As you can see in the video that we'll link in the show notes, you can do very sophisticated
00:36:00
◼
►
programming of the faders just or just mess around. And so there's a link where you see these faders
00:36:06
◼
►
doing like dances and the wave and things like that. So it's like a bunch of vertical dials on a
00:36:11
◼
►
soundboard that are doing all sorts of silly things. It's kind of fun. So we'll put that link in the
00:36:15
◼
►
show notes. Have you ever seen a video like an old style soundboard in a recording studio? It's got
00:36:19
◼
►
all these sliders like a giant dashboard with just dozens and dozens of sliders, all physical controls.
00:36:24
◼
►
You know you slide them up and down right and the way they dealt with it is sort of the way that we were talking
00:36:29
◼
►
About that or whatever that was Buick or whatever dealt with it is now that their software control
00:36:32
◼
►
They just motorized the fader so if you change a value in software the fader literally moves like the physical control literally moves
00:36:38
◼
►
So very often you'll see these videos of the faders all going up together or down together or going in a sine wave when you turn
00:36:44
◼
►
The system on or doing these stuff like that so that is one solution
00:36:47
◼
►
And if you have a lot of money you want to have physical controls and software control at the same time
00:36:50
◼
►
Just keep them in sync no problem
00:36:53
◼
►
No worries. You just need a whole bunch of motors
00:36:55
◼
►
Right and then Samuel Cohen writes
00:36:58
◼
►
I thought you might find it interesting to see how the same challenges are manifesting in the slowly modernizing world of guitar amplifiers
00:37:05
◼
►
I have two digital modeling amps with radically different approaches to their UI and
00:37:10
◼
►
They were kind enough to include a video where they walk through this exact thing and we'll put a link in the show notes and
00:37:16
◼
►
Add about what is it was that a little over two minutes in?
00:37:20
◼
►
There's an example two and a quarter minutes in there's an example of a screen on one of the amps
00:37:25
◼
►
clearly just
00:37:27
◼
►
violently disagreeing with one of the knobs on the same amp and that's kind of funny to say the
00:37:31
◼
►
Great thing is what they put on the screen are tiny pictures of knobs
00:37:34
◼
►
With indicators where the knobs are but then right next to the screen with the picture of knobs are the actual knobs
00:37:40
◼
►
But the actual knob now this is a case with like it with a guitar amp like where you don't have the money that they have
00:37:45
◼
►
For like a professional recording studio to motorize everything because they could have motorized the knobs, right?
00:37:49
◼
►
But you're trying to sell a guitar amp and you can't make it like a $10,000 guitar
00:37:52
◼
►
You want to have cheap guitar amps for people too, but you also want software control
00:37:55
◼
►
So they put pictures of knobs on the screen
00:37:58
◼
►
Next to the physical knobs because they still want to have physical knobs because you want this one to go to 11 or whatever
00:38:02
◼
►
And with indicators on them, they're not just knobs that spin together. They're knobs with indicators
00:38:06
◼
►
They have a beginning and an end right and the way they dealt with this with the one of the amps had like lights on
00:38:11
◼
►
Them to sort of use a different method sort of like software controlled knobs
00:38:14
◼
►
But the second one the way they dealt with it is just plain old physical controlled knobs and a screen that can conflict
00:38:18
◼
►
but if they conflict, if you touch one of the knobs
00:38:21
◼
►
and move it anywhere in either direction,
00:38:23
◼
►
the software immediately switches to match the knob, right?
00:38:25
◼
►
So you can change it in software and the knobs don't move
00:38:27
◼
►
and then the software is sort of in control,
00:38:30
◼
►
but the second you touch one of the physical knobs,
00:38:32
◼
►
that immediately tells the software,
00:38:34
◼
►
forget what you had before, now take the knob thing.
00:38:37
◼
►
And that's a reasonable compromise
00:38:38
◼
►
if you're trying to save money,
00:38:39
◼
►
because the worst thing you want to happen
00:38:40
◼
►
is you're playing music
00:38:41
◼
►
and you need to make an adjustment real quick,
00:38:43
◼
►
it's much easier to just grab a knob and twist it, right?
00:38:46
◼
►
And you want that knob to say, look, if I turn this knob,
00:38:48
◼
►
I don't care what the software says, I'm turning the knob.
00:38:50
◼
►
The knob should win.
00:38:51
◼
►
But if you did some careful setup in software,
00:38:53
◼
►
you want that to win as well until you touch the knob.
00:38:56
◼
►
So not an ideal solution, but it's a way to,
00:38:59
◼
►
it's a way to have both systems without breaking the bank
00:39:02
◼
►
on motorized knobs that, let's face it,
00:39:04
◼
►
some would probably break anyway.
00:39:06
◼
►
- Dave Rohenhorst writes, "One contributing factor
00:39:09
◼
►
to the crash of Air France Flight 447
00:39:12
◼
►
was the lack of physical indication of the control stick
00:39:15
◼
►
on the Airbus A330 cockpit,
00:39:17
◼
►
which acts like the Rivian stalk switch,
00:39:19
◼
►
which, you know, snapping back to the center
00:39:21
◼
►
after an input is given.
00:39:23
◼
►
Thus, the other pilots were not aware
00:39:24
◼
►
that the copilot was continuing to put in the wrong input.
00:39:27
◼
►
He was pitching the nose up
00:39:28
◼
►
while the position of the stick indicated a neutral input.
00:39:31
◼
►
Had the stick stayed in the pitched up position or location,
00:39:34
◼
►
it would have been clear what the input was being given.
00:39:36
◼
►
Furthermore, if both the copilots and the pilot stick
00:39:39
◼
►
represented the current state of input,
00:39:41
◼
►
it would have been more obvious to everyone involved.
00:39:43
◼
►
And this was a really, really terrible accident
00:39:44
◼
►
that happened just a couple of years back,
00:39:46
◼
►
probably a few years at this point. And I remember this being a thing and I remember
00:39:49
◼
►
everyone had a fit about the way Airbus cockpits work on account of this. And I don't know
00:39:53
◼
►
if any real changes were made. I would assume some sort of change was made, but I still
00:39:58
◼
►
think the Airbus cockpits are largely the same. I don't know if either of you know.
00:40:01
◼
►
Sorry, I don't know. That's fine. And then somebody else brought
00:40:04
◼
►
up something I should have brought up myself. Anton Yelchin's death back in 2016. So this
00:40:09
◼
►
is the young guy who played Chekhov in the Star Trek reboot and reading from an NBC News
00:40:15
◼
►
article, "The actor was pinned against a gate by what sources told NBC News was one of the
00:40:21
◼
►
Jeeps involved in the safety recall. The vehicle was a 2015 Jeep Grand Cherokee, an SUV recently
00:40:26
◼
►
recalled because of problems with its electronic shifter. Fiat Chrysler Automobiles recalled
00:40:30
◼
►
three different models and a total of 1.1 million vehicles in April following an investigation
00:40:34
◼
►
by the National Highway Traffic Safety Administration. The agency found the shifter could confuse
00:40:38
◼
►
motorists by not giving clear feedback as to what gear the automatic transmission was
00:40:42
◼
►
If I recall correctly, and I might have this wrong,
00:40:44
◼
►
this was one of the first like dial transmissions, and so--
00:40:47
◼
►
- No, it was like a knob, kind of like the yoke
00:40:49
◼
►
on the Airbus thing, where like it would just return
00:40:52
◼
►
to middle, no matter, there are ones like this,
00:40:54
◼
►
they're more like little switchy things,
00:40:55
◼
►
but it looked a lot like a PRNDL, you know, move the thing,
00:40:58
◼
►
but the thing is this one, you would press it,
00:40:59
◼
►
and when you let go, it would just spring back to middle,
00:41:01
◼
►
just like the Rivian stalk, and just like the controls
00:41:03
◼
►
on the Airbus, and in that case, if you look at it,
00:41:07
◼
►
there's no clear indication whether the car is in drive,
00:41:09
◼
►
reverse, or whatever, because it just always,
00:41:11
◼
►
It's always just vertical, right?
00:41:14
◼
►
So yeah, it is an anti-pattern with--
00:41:17
◼
►
I don't want to say that having wiper controls that
00:41:21
◼
►
spring back to middle is going to kill somebody, right?
00:41:23
◼
►
But this whole thing about having hardware
00:41:26
◼
►
that is not stateful anymore when previously it used to be
00:41:29
◼
►
can actually have life and death consequences in big ways
00:41:33
◼
►
So it is something worth considering
00:41:35
◼
►
when designing car interiors, because cars
00:41:37
◼
►
are very big, heavy things that can actually kill people.
00:41:40
◼
►
I didn't realize it was one of the stock ones.
00:41:41
◼
►
And as soon as you described it, what you're basically
00:41:43
◼
►
describing is every BMW automatic that I've seen for
00:41:46
◼
►
the last several years.
00:41:47
◼
►
And almost all of them use the ZF8 speed, which is a
00:41:51
◼
►
transmission that I actually really like, despite being a
00:41:53
◼
►
pure-blood automatic.
00:41:54
◼
►
And sure enough, the Jeep Grand Cherokee from the 2014
00:41:58
◼
►
through 2022 model years uses a ZF8 speed.
00:42:01
◼
►
So I don't have a picture in the Wikipedia entry that I put
00:42:05
◼
►
in the show, and I don't have a picture of the gear shift
00:42:07
◼
►
that I typically see.
00:42:08
◼
►
but the gear shift that I saw in BMWs
00:42:11
◼
►
was almost identical to the one
00:42:12
◼
►
that the Alfa Romeo's I tested had.
00:42:14
◼
►
I mean, it was maybe, maybe it was lightly different,
00:42:17
◼
►
but it looked almost identical, so.
00:42:19
◼
►
- And it's not the transmission to be clear.
00:42:20
◼
►
It's not the transmission that's faulted
00:42:21
◼
►
because it's electronically controlled transmission.
00:42:23
◼
►
It's fine, it's the controls that you hook up to the wires
00:42:26
◼
►
that tell the transmission what gear to be in
00:42:27
◼
►
because you can do those controls
00:42:28
◼
►
in lots of different ways.
00:42:29
◼
►
And I think in this particular case with the car thing,
00:42:32
◼
►
the worst combination is a control
00:42:34
◼
►
that looks like a mechanical thing, but isn't.
00:42:38
◼
►
I think more of the modern ones don't look anything
00:42:40
◼
►
like old transmissions.
00:42:41
◼
►
Like there's no expectation that you can look at them
00:42:43
◼
►
and see like a lever shoved in one position or another
00:42:46
◼
►
to give you some reassurance about what gear it's in.
00:42:48
◼
►
If you make it look like the old kind
00:42:50
◼
►
where you could see where the lever is
00:42:52
◼
►
and know what gear it's in,
00:42:53
◼
►
people are going to assume that's how it worked.
00:42:55
◼
►
But if you make it look totally different,
00:42:57
◼
►
no one will look into the console or dashboard of your car
00:43:01
◼
►
and expect to be able to tell what it's in.
00:43:03
◼
►
Very often you can't tell what it's in
00:43:05
◼
►
because they just have a bunch of buttons
00:43:07
◼
►
And unless the car is on and something lights up
00:43:10
◼
►
and says a D or an R, there's no expectation
00:43:12
◼
►
that you know what gear it's in.
00:43:14
◼
►
So you're not lulled into a false sense of confidence.
00:43:16
◼
►
I think that is the problem in particular
00:43:17
◼
►
with these first set of electronically controlled
00:43:19
◼
►
transmissions where the thing that you touch with your hand
00:43:22
◼
►
looked just like the old style,
00:43:23
◼
►
but they worked nothing like it.
00:43:25
◼
►
- We are sponsored this week by Instabug.
00:43:29
◼
►
Building and maintaining mobile apps is not simple.
00:43:32
◼
►
Bugs, crashes, and performance issues
00:43:33
◼
►
can be a nightmare for developers like me.
00:43:36
◼
►
What if you could not only detect and dissect these issues,
00:43:39
◼
►
but also get a holistic understanding
00:43:41
◼
►
of your app's performance?
00:43:42
◼
►
With Instabug, you can.
00:43:44
◼
►
Through comprehensive bug and crash reports,
00:43:47
◼
►
performance monitoring, and real-time user feedback,
00:43:49
◼
►
Instabug gives you the visibility you need
00:43:52
◼
►
to build top quality apps.
00:43:53
◼
►
You can observe and fix issues like UI hangs,
00:43:56
◼
►
slow app launches and screen loads, network failures,
00:44:00
◼
►
and anything else that may be affecting
00:44:01
◼
►
your user experience.
00:44:03
◼
►
You can get a quick read on their impact on your users
00:44:06
◼
►
and access all of the granular data relevant to the issue
00:44:09
◼
►
So you can prioritize, assign, and debug
00:44:12
◼
►
before your next update.
00:44:14
◼
►
It only takes a minute to integrate Instabug's SDK
00:44:16
◼
►
into your app, and it fits right into your workflow
00:44:19
◼
►
with integration support for tools like Jira, Slack, Trello,
00:44:22
◼
►
GitHub, Zendesk, and many more.
00:44:24
◼
►
So stop flying blind on your mobile app issues.
00:44:28
◼
►
Try Instabug today.
00:44:30
◼
►
Go to instabug.com and get the visibility you need
00:44:33
◼
►
to start delivering superior app performance
00:44:35
◼
►
and better user experience.
00:44:37
◼
►
That's instabug.com.
00:44:39
◼
►
Thank you so much to Instabug for sponsoring our show.
00:44:42
◼
►
(upbeat music)
00:44:46
◼
►
- Breaking news, do do do do do do do.
00:44:48
◼
►
Lockdown mode is a thing that is coming in iOS 16.
00:44:52
◼
►
Apple put up a newsroom release today.
00:44:55
◼
►
We had not heard about this previously, right?
00:44:57
◼
►
We had heard about the like,
00:44:59
◼
►
I don't want this person to know anything about me.
00:45:01
◼
►
What was that from WBC? - Right, safety check,
00:45:03
◼
►
I believe, is that right? - Dad, yes, thank you,
00:45:05
◼
►
But lockdown mode, I believe, is brand new.
00:45:07
◼
►
So reading from their press release,
00:45:09
◼
►
Apple's previewing a groundbreaking security
00:45:11
◼
►
capability that offers specialized
00:45:12
◼
►
additional protection to users who
00:45:13
◼
►
may be at risk of highly targeted cyber attacks
00:45:16
◼
►
from private companies developing state-sponsored
00:45:18
◼
►
mercenary spyware.
00:45:20
◼
►
Apple's also providing details of its $10 million grant
00:45:22
◼
►
to bolster research exposing such threats.
00:45:24
◼
►
At launch, lockdown mode includes
00:45:26
◼
►
the following protections.
00:45:27
◼
►
For messages, most message attachment types
00:45:29
◼
►
other than images are blocked.
00:45:30
◼
►
Some features, like link previews, are disabled.
00:45:32
◼
►
For web browsing, certain complex web technologies,
00:45:35
◼
►
like just-in-time JavaScript compilation are disabled
00:45:37
◼
►
unless the user excludes a trusted site from lockdown
00:45:41
◼
►
Apple services, incoming invitations and service
00:45:43
◼
►
requests, including FaceTime calls,
00:45:45
◼
►
are blocked if the user has not previously sent the initiator
00:45:47
◼
►
a call or request.
00:45:49
◼
►
Wired connections with a computer or accessory
00:45:51
◼
►
are blocked when the iPhone is locked.
00:45:52
◼
►
I actually thought that was true already, to be honest with you,
00:45:55
◼
►
but I guess not.
00:45:56
◼
►
Configuration profiles cannot be installed,
00:45:58
◼
►
and the device cannot enroll in mobile device management
00:46:00
◼
►
while lockdown mode is turned on.
00:46:02
◼
►
And it says Apple will continue to strengthen lockdown mode
00:46:04
◼
►
and add new protections to it over time.
00:46:06
◼
►
We don't have it in the show notes,
00:46:07
◼
►
so I'm gonna have to stall as I dig up the quote,
00:46:10
◼
►
but I also noticed that they said that,
00:46:13
◼
►
"Apple's also making a $10 million grant
00:46:15
◼
►
"in addition to any damages awarded
00:46:16
◼
►
"from the lawsuit filed against NSO Group
00:46:18
◼
►
"to support organizations that investigate,
00:46:20
◼
►
"expose, and prevent highly targeted cyber attacks,
00:46:22
◼
►
"including those created by private companies
00:46:24
◼
►
"developing state-sponsored mercenary spyware."
00:46:26
◼
►
So they're saying if they win their lawsuit
00:46:28
◼
►
against NSO Group, all the money that NSO Group
00:46:30
◼
►
is gonna pay them is going into this fund
00:46:34
◼
►
as pretty much a big you back to NSO group.
00:46:36
◼
►
So I thought that was quite funny and not a bad idea.
00:46:40
◼
►
- Yeah, that's delightful.
00:46:41
◼
►
- It's kind of juvenile, but I'm here for it.
00:46:46
◼
►
But anyways, this lockdown thing, they say in the post,
00:46:49
◼
►
like this is not for normal people.
00:46:52
◼
►
It is an extreme, this is reading from it,
00:46:54
◼
►
an extreme optional protection
00:46:55
◼
►
for the very small number of users
00:46:57
◼
►
who face grave targeted threats to their digital security.
00:47:00
◼
►
So what they're basically saying is
00:47:02
◼
►
if you're like a journalist in certain countries,
00:47:04
◼
►
maybe America, not too long,
00:47:06
◼
►
if you're perhaps a particular celebrity
00:47:10
◼
►
or a person in government, then this might be for you.
00:47:13
◼
►
But for the three of us, not worth it.
00:47:15
◼
►
- Well, is it not?
00:47:17
◼
►
So when you look at the actual list of protections,
00:47:22
◼
►
I kinda like this.
00:47:23
◼
►
And I think the only thing that I think
00:47:26
◼
►
would really get in my way was that it said
00:47:29
◼
►
that you basically can't participate in shared albums and photos. Other than that, the rest
00:47:35
◼
►
of this stuff kind of sounds like I would actually turn this on.
00:47:38
◼
►
I think you would be annoyed about websites going slower because the JIT is disabled in
00:47:42
◼
►
JavaScript, and I think the messages thing would be really annoying.
00:47:45
◼
►
How much slower could it be?
00:47:46
◼
►
I want to bring this up again because we talked about it last time, and it's just good to
00:47:51
◼
►
keep in people's minds if you're not used to thinking about it this way because a lot
00:47:53
◼
►
of people have kind of, you know, very sort of binary thinking on security.
00:47:59
◼
►
Security is always a trade-off between security and convenience, right? And this
00:48:04
◼
►
is giving you a different place on that continuum. You are sacrificing some
00:48:08
◼
►
convenience in exchange for some additional security. The difficulty with
00:48:13
◼
►
any of these things where you're where you're asking people to give up
00:48:17
◼
►
convenience is it's very easy for people to get frustrated by just one aspect of
00:48:20
◼
►
this and say, well, I tried it, but this one part of it annoyed me, right?
00:48:24
◼
►
Because I, you know, I tried to do a thing and I realized the reason I couldn't do
00:48:27
◼
►
it because I was in lockdown mode or I'm tired of tapping a second time to get
00:48:31
◼
►
through to a link to find out what it is.
00:48:33
◼
►
I liked it better when I could see them in line.
00:48:34
◼
►
People will go back on a higher security setting
00:48:39
◼
►
very quickly for the smallest inconvenience.
00:48:42
◼
►
But all security policies are a tradeoff between security and convenience.
00:48:46
◼
►
And so having a mode that is farther up the line
00:48:49
◼
►
for people who really, really need it is good.
00:48:52
◼
►
But to Marco's point, you look at this
00:48:54
◼
►
and you kind of wish you could pick and choose.
00:48:56
◼
►
Well, I would like that one, but this one would annoy me.
00:48:58
◼
►
But I like that one, but I, you know,
00:49:00
◼
►
there was some debate on Twitter when this came out
00:49:02
◼
►
between some people saying,
00:49:03
◼
►
shouldn't this just be for everybody?
00:49:05
◼
►
Like, why wouldn't everybody want this?
00:49:06
◼
►
And people were saying, well,
00:49:07
◼
►
but I would find it inconvenient.
00:49:08
◼
►
But what about this?
00:49:09
◼
►
And it's like, you can look at some of these things
00:49:10
◼
►
and say, you know, like,
00:49:12
◼
►
should there be two tiers of security?
00:49:14
◼
►
Like, why isn't this, why shouldn't everybody need this?
00:49:16
◼
►
Because, you know, there's a debate of whether, you know,
00:49:19
◼
►
who is an extra threat, right?
00:49:21
◼
►
It's only important when a politician gets hacked,
00:49:24
◼
►
but everybody is an equal threat
00:49:25
◼
►
if some rootkit hack is out there
00:49:28
◼
►
and script kiddies are running it all over the place
00:49:29
◼
►
or whatever, but I think it is true
00:49:32
◼
►
that people have different assessments
00:49:34
◼
►
of what are the consequences of my phone getting hosed.
00:49:37
◼
►
If you are an important person in government
00:49:39
◼
►
or a journalist in a hostile environment,
00:49:42
◼
►
the consequences could be life and death,
00:49:43
◼
►
whereas if you're just a regular citizen
00:49:45
◼
►
and someone hacks your phone,
00:49:46
◼
►
the consequences is you have to cancel
00:49:48
◼
►
a bunch of credit cards and maybe you'll lose
00:49:49
◼
►
a little bit of money or whatever, right?
00:49:51
◼
►
And then the probability, who's targeting you?
00:49:54
◼
►
You can use the big sky theory where there's
00:49:56
◼
►
a zero day hack out there, but there's also millions
00:49:58
◼
►
of possible victims and you're just one of those millions
00:50:01
◼
►
versus you being a head of state and you know
00:50:03
◼
►
that there are entire countries focusing on you
00:50:05
◼
►
like a laser beam all the time trying to get in.
00:50:08
◼
►
So I think it is appropriate to have,
00:50:10
◼
►
to give people different levels of security
00:50:14
◼
►
based on how much convenience they're willing to give up.
00:50:16
◼
►
And lockdown mode is a step in that direction.
00:50:19
◼
►
But I think we will be able to look at the list of things
00:50:22
◼
►
that lockdown mode does and says some of these
00:50:23
◼
►
should probably graduate to be the defaults,
00:50:26
◼
►
but it's not clear which ones quite yet, right?
00:50:29
◼
►
Obviously, doing this doesn't mean Apple
00:50:32
◼
►
is ignoring security for regular users.
00:50:33
◼
►
Apple is constantly doing tons of things for security.
00:50:36
◼
►
Almost everything you see here listed,
00:50:37
◼
►
messages, web browsing, all the Apple services,
00:50:41
◼
►
they're constantly doing things to improve the security
00:50:43
◼
►
of all of that stuff.
00:50:45
◼
►
what used to be possible with wired connections to your phones versus what is
00:50:48
◼
►
now to Casey's point,
00:50:49
◼
►
he thought this was already the case because they have locked down the wired
00:50:51
◼
►
connections. This is just one step up from what is the default for everybody.
00:50:55
◼
►
So I think it's a move in the right direction,
00:50:56
◼
►
but I think I would like to see some of these things graduate to be the
00:51:01
◼
►
As long as we can get the convenience security trade-off correctly balanced for
00:51:05
◼
►
normal people.
00:51:05
◼
►
Out of curiosity as just a little experiment,
00:51:09
◼
►
and this might not be very interesting, but if you guys have your phones handy,
00:51:13
◼
►
would you go into Settings, General,
00:51:16
◼
►
VPN and Device Management, and let me know if,
00:51:19
◼
►
you don't have to be specific about what they are,
00:51:21
◼
►
but do you have configuration profiles there?
00:51:23
◼
►
- Yes, I do not.
00:51:24
◼
►
- Okay, so for me, I have CharlesProxy,
00:51:27
◼
►
which is, you know, so I can sniff network traffic,
00:51:30
◼
►
which I do very rarely, but I do from time to time.
00:51:32
◼
►
And FastMail offers you,
00:51:34
◼
►
and I think you can configure it manually,
00:51:35
◼
►
but it offers a way to just have everything
00:51:38
◼
►
pretty much automatically configured
00:51:39
◼
►
by way of downloading a profile.
00:51:40
◼
►
So that's the two that I have.
00:51:42
◼
►
Marco, if you're willing to share,
00:51:43
◼
►
I'd love to hear what you have there.
00:51:44
◼
►
If you would rather, for ops-tech reasons,
00:51:46
◼
►
not share, that's totally fine.
00:51:48
◼
►
- No, it's super boring.
00:51:48
◼
►
I have the fast mail one for the same reason.
00:51:50
◼
►
I have on past phones, configured them with the IMAP
00:51:53
◼
►
and SMTP passwords and everything.
00:51:54
◼
►
You can still do that, but the configuration profile
00:51:56
◼
►
is just a faster way to do that.
00:51:58
◼
►
And I also have the iOS 16 beta profile from Apple.
00:52:03
◼
►
So super boring.
00:52:04
◼
►
- Yeah, 'cause the reason I bring that up
00:52:05
◼
►
is 'cause I thought there was a time that fonts
00:52:08
◼
►
came in as configuration profiles or something like that.
00:52:10
◼
►
- That can be done.
00:52:11
◼
►
I don't think that has to be done that way anymore,
00:52:13
◼
►
but that is a way they could be done.
00:52:15
◼
►
- All right, well I was just curious,
00:52:16
◼
►
'cause I feel like in the past,
00:52:19
◼
►
I have had more things here
00:52:21
◼
►
than simply the two that I have now.
00:52:24
◼
►
I might be thinking of MDM,
00:52:26
◼
►
like when I had work email on my phone,
00:52:28
◼
►
and maybe MDM shows up there.
00:52:30
◼
►
I'm talking a bit outside my comfort zone now,
00:52:32
◼
►
but I was just curious.
00:52:33
◼
►
- I was gonna say, I kinda hope not.
00:52:34
◼
►
You shouldn't have a lot of these things.
00:52:36
◼
►
I mean, the thing is, a lot of people do,
00:52:37
◼
►
Like, oh god, so somebody else who lives in my house
00:52:42
◼
►
has a highly customized home screen.
00:52:47
◼
►
- And the way this was achieved was in part
00:52:50
◼
►
with a configuration profile.
00:52:53
◼
►
- And when I saw that I was like, oh no,
00:52:55
◼
►
what is going on here?
00:52:56
◼
►
And I listened to it and it's fairly innocuous,
00:52:59
◼
►
but it's something that shouldn't be.
00:53:01
◼
►
- That's why, seeing how this is on the list
00:53:04
◼
►
of like, oh lockdown mode doesn't allow MDM profiles.
00:53:07
◼
►
and you're like, is that a big problem or whatever?
00:53:10
◼
►
As we discussed on past shows,
00:53:11
◼
►
these MDM profiles give abilities to do things
00:53:14
◼
►
that you can't really do any other way.
00:53:17
◼
►
And tons of things are constantly throwing come ons
00:53:20
◼
►
at regular people to say,
00:53:21
◼
►
you want this cool thing on your phone?
00:53:23
◼
►
Just install this profile, right?
00:53:25
◼
►
And it's the thing you should really talk
00:53:26
◼
►
to your kids about.
00:53:27
◼
►
If anything ever asks you, just install this profile
00:53:28
◼
►
or do this thing.
00:53:29
◼
►
Like, say no.
00:53:30
◼
►
Now it doesn't mean they're all scams
00:53:32
◼
►
'cause they legitimately give you abilities
00:53:34
◼
►
to do things that you couldn't do otherwise
00:53:35
◼
►
or there would be more cumbersome to do.
00:53:37
◼
►
That's why things are always prompting you to do them.
00:53:39
◼
►
And I think it should be a signal to Apple
00:53:41
◼
►
for the legitimate uses that people are using
00:53:43
◼
►
MDM profiles for, like build clean hooks into the OS
00:53:46
◼
►
to do that so people can stop doing that.
00:53:48
◼
►
But that's why they're just blanking this out
00:53:50
◼
►
because if you're gonna social engineer your way
00:53:52
◼
►
into someone's phone, getting them to install
00:53:55
◼
►
one of these MDM profiles, either willingly install it
00:54:00
◼
►
by convincing them, hey, you need this
00:54:01
◼
►
to play this cool game, or getting them
00:54:03
◼
►
to accidentally install it by tapping a thing of messages
00:54:05
◼
►
and exploiting a thing or whatever,
00:54:06
◼
►
it's a very common vector.
00:54:08
◼
►
And so this, I mean, obviously the solution
00:54:10
◼
►
is not just banning them entirely
00:54:12
◼
►
because you actually need them for enterprise stuff
00:54:13
◼
►
or whatever, but this is a weak spot in iOS.
00:54:16
◼
►
And the lockdown solution is no,
00:54:18
◼
►
you just can't have any of those,
00:54:19
◼
►
that you can't install them period, right?
00:54:21
◼
►
It doesn't say you can't have them,
00:54:23
◼
►
it just says you can't install a new one.
00:54:24
◼
►
And honestly, that's probably the correct default setting
00:54:27
◼
►
for everybody.
00:54:28
◼
►
This is one of those things that I think should be
00:54:29
◼
►
the default for everybody.
00:54:30
◼
►
By default, no one has any profiles installed,
00:54:32
◼
►
But it's really easy to encounter something on the internet
00:54:36
◼
►
that asks you to install it, and that you want to do it.
00:54:39
◼
►
You want to install it,
00:54:40
◼
►
'cause you just wanna do the thing, right?
00:54:42
◼
►
And there needs to be better protections here.
00:54:44
◼
►
This is kind of an area of ongoing work,
00:54:47
◼
►
let's say, in iOS security.
00:54:49
◼
►
- Whenever I see stuff like this,
00:54:51
◼
►
I'm always, like, all these very popular apps
00:54:54
◼
►
that require a configuration profile for some feature,
00:54:57
◼
►
and it's like, I'm always surprised it's allowed by Apple.
00:55:01
◼
►
It always seems like the potential for problems there
00:55:05
◼
►
is quite high.
00:55:06
◼
►
Now I think Apple's argument there would be like,
00:55:08
◼
►
well App Store can review it and see what it does
00:55:10
◼
►
and everything and the problem is that I'm sure that applies
00:55:14
◼
►
in the same way that every other App Store rule applies.
00:55:16
◼
►
Yeah, maybe they review some of them some of the time
00:55:18
◼
►
but a lot of stuff still can get through
00:55:20
◼
►
or things can be changed after the fact
00:55:22
◼
►
or a lot of stuff can just slip by a reviewer here and there
00:55:25
◼
►
or the rules aren't applied evenly.
00:55:27
◼
►
So App Review is not the main security there
00:55:30
◼
►
And so installing a configuration profile,
00:55:33
◼
►
in many cases they're allowed to bypass
00:55:36
◼
►
other security measures on the phone
00:55:38
◼
►
that you expect to be there.
00:55:39
◼
►
Apple does a pretty good job of keeping
00:55:40
◼
►
this reasonable under control,
00:55:42
◼
►
but that's another level of security.
00:55:43
◼
►
It's like an app asking you for your root password
00:55:46
◼
►
on your Mac.
00:55:47
◼
►
Like whenever it pops up that dialog and it's like,
00:55:48
◼
►
"Hey, we need your root password to install something."
00:55:50
◼
►
You're like, "You should think like, why?
00:55:53
◼
►
"Why do you need my root password to install something
00:55:56
◼
►
"for this like calculator app?"
00:55:59
◼
►
Like this probably is not a legitimate request, right?
00:56:01
◼
►
You know, same thing should apply
00:56:02
◼
►
to configuration profiles on your phone.
00:56:04
◼
►
Like treat it like it's your system root password.
00:56:06
◼
►
Like, you know, do I really need
00:56:08
◼
►
to give this app root access?
00:56:10
◼
►
And you know, it isn't quite the same thing technically,
00:56:12
◼
►
but it should be considered in the same ballpark
00:56:15
◼
►
of suspicion and conservatism.
00:56:18
◼
►
We are sponsored this week by Squarespace,
00:56:22
◼
►
the all-in-one platform for building your brand
00:56:25
◼
►
and growing your business online.
00:56:27
◼
►
With Squarespace you can stand out
00:56:29
◼
►
with a beautiful website, you can engage with your audience,
00:56:31
◼
►
and you can even sell anything, your products,
00:56:34
◼
►
your content, even your time, all with a Squarespace site.
00:56:37
◼
►
Squarespace sites are super easy to make.
00:56:39
◼
►
It is a gloriously simple platform.
00:56:41
◼
►
Everything is visual, everything is live previewing,
00:56:44
◼
►
there's no coding anywhere.
00:56:46
◼
►
You don't have to know how to run servers
00:56:48
◼
►
or update security things or anything like that.
00:56:50
◼
►
Squarespace takes care of all of that for you.
00:56:53
◼
►
And you can make all sorts of sites with Squarespace,
00:56:54
◼
►
especially now, you can make storefront sites.
00:56:57
◼
►
And this ranges from everything from
00:56:59
◼
►
physical product sales, which actually my wife does
00:57:01
◼
►
and she loves it,
00:57:02
◼
►
digital product sales,
00:57:03
◼
►
you can even have membership.
00:57:05
◼
►
You can have member content,
00:57:06
◼
►
monetize your content and expertise,
00:57:08
◼
►
however might fit your brand.
00:57:10
◼
►
You can unlock new revenue streams for your businesses,
00:57:12
◼
►
free of time in your schedule.
00:57:13
◼
►
You can sell access to gated content like videos,
00:57:15
◼
►
online courses or newsletters.
00:57:17
◼
►
Or you can of course sell products in an online store,
00:57:20
◼
►
whether you sell physical or digital products.
00:57:22
◼
►
Squarespace has all the tools you need
00:57:23
◼
►
to start selling online.
00:57:25
◼
►
You can have email campaigns on Squarespace.
00:57:27
◼
►
All of this is backed up by an amazing platform.
00:57:30
◼
►
You don't have to worry about servers and markup
00:57:32
◼
►
and upkeep and CSS and any of that stuff.
00:57:35
◼
►
They have everything covered for you.
00:57:37
◼
►
They have great support if you need it.
00:57:39
◼
►
And I'm just telling you, it's so easy
00:57:41
◼
►
to make a Squarespace site.
00:57:42
◼
►
Anybody can do it.
00:57:43
◼
►
I've used it myself.
00:57:44
◼
►
I recommend it to as many people as I can.
00:57:45
◼
►
So, go to squarespace.com/ATP.
00:57:48
◼
►
You can start a free trial and actually build the site
00:57:51
◼
►
and see exactly for yourself how you like it
00:57:53
◼
►
in a free trial, no credit card required.
00:57:55
◼
►
When you decide to sign up
00:57:56
◼
►
and you're ready to launch your site,
00:57:58
◼
►
use offer code ATP to save 10% off your first purchase
00:58:01
◼
►
of a website or domain.
00:58:02
◼
►
So once again, squarespace.com/ATP
00:58:05
◼
►
to start that free trial and use offer code ATP
00:58:08
◼
►
when you sign up for 10% off your first purchase
00:58:10
◼
►
of website or domain.
00:58:11
◼
►
Thank you so much to Squarespace for sponsoring our show.
00:58:14
◼
►
- All right, there was,
00:58:19
◼
►
there've been a lot of ruffles about and issues
00:58:22
◼
►
with regard to this M2 MacBook Pro,
00:58:25
◼
►
my favorite computer ever.
00:58:27
◼
►
But MaxTech, a YouTube channel
00:58:31
◼
►
that we've brought up several times in the past,
00:58:33
◼
►
they did an extreme stress test
00:58:36
◼
►
and they exported 8K RAW to 4K HEVC,
00:58:40
◼
►
trying to max out both the CPU and the GPU.
00:58:42
◼
►
And they found that the M1 MacBook Pro was GPU limited,
00:58:46
◼
►
that's the M1, mind you, and did not throttle.
00:58:48
◼
►
And the fans did not hit maximum RPM.
00:58:51
◼
►
the M2 hit 108 degrees Celsius with the fans at maximum RPM,
00:58:56
◼
►
and then had to thermally throttle
00:58:59
◼
►
to get things back under control.
00:59:00
◼
►
So in other words, the fans weren't enough
00:59:03
◼
►
to cool the processor down,
00:59:05
◼
►
and the processor couldn't be that hot.
00:59:07
◼
►
So the only choice it had was to choose to operate
00:59:10
◼
►
more slowly until it was able to cool itself down.
00:59:14
◼
►
And then it would say, "Oh, I'm cool now.
00:59:15
◼
►
Let me ramp back up and operate fast again."
00:59:17
◼
►
And then the fans scream, and then it gets too hot,
00:59:20
◼
►
then it cools back down and you know, it slows down,
00:59:22
◼
►
it cools back down, this whole thing just starts again.
00:59:24
◼
►
And so MaxTech found that the M2 was still 10% faster
00:59:27
◼
►
than the M1 MacBook Pro.
00:59:30
◼
►
And without thermal throttling,
00:59:31
◼
►
the M2 GPU can be up to 35% faster
00:59:34
◼
►
and the M2 CPU can be up to 18% faster.
00:59:37
◼
►
But apparently the thermals on the inside of this thing
00:59:40
◼
►
are not good.
00:59:41
◼
►
- Before we get to some more opinions on that,
00:59:43
◼
►
just to lay out what was put in this video,
00:59:46
◼
►
if you watch it to see the thing,
00:59:47
◼
►
they're picking an extreme test.
00:59:49
◼
►
Like they're trying to find something that will, you know,
00:59:51
◼
►
light up every part of the system on a chip
00:59:53
◼
►
at the same time, which is hard to do
00:59:54
◼
►
in regular workloads, right?
00:59:56
◼
►
But apparently they did find one and you know,
00:59:59
◼
►
you could watch it, you can watch the results.
01:00:00
◼
►
They have these tools that they're measuring the clock speed
01:00:02
◼
►
and you can watch the clock speeds just drop in half
01:00:04
◼
►
or a quarter, like really hard thermal throttling with,
01:00:08
◼
►
again, with the fans going at max, right?
01:00:10
◼
►
But despite all of that, it's still being 10% faster.
01:00:13
◼
►
It's like, well, it's not great,
01:00:15
◼
►
but you know, your M2 was still faster
01:00:18
◼
►
and you were trying to find an extreme workload
01:00:21
◼
►
that most normal people aren't going to have.
01:00:22
◼
►
So anyway, take that for what it's worth.
01:00:25
◼
►
But then there's some debate about this result
01:00:27
◼
►
because some people have not been able to reproduce
01:00:29
◼
►
in particular Gary from the Everyday Dad YouTube channel
01:00:32
◼
►
tried to do the same test with an M2 MacBook Pro
01:00:35
◼
►
rendering 8K Canon raw footage for 15 minutes straight.
01:00:37
◼
►
So he said, no fans, no high temps, no anything.
01:00:40
◼
►
So I think the jury is still out on this.
01:00:43
◼
►
What I think about it is if it's thermal throttling
01:00:48
◼
►
and getting super hot, but it's still faster,
01:00:50
◼
►
that's not ideal and a better cooling system
01:00:53
◼
►
would be better, but one of the things we know
01:00:54
◼
►
about the M2 MacBook Pro is it's just the old computer,
01:00:57
◼
►
like to the point where they put stickers
01:00:59
◼
►
over the boxes of the old computer,
01:01:01
◼
►
right, we didn't make new boxes.
01:01:03
◼
►
It's the old computer, it's the old case,
01:01:05
◼
►
it's the old single fan cooling,
01:01:07
◼
►
I mean it's not exactly the same cooling solution,
01:01:09
◼
►
but it's like, they didn't completely redesign this.
01:01:11
◼
►
The form factor is the same,
01:01:14
◼
►
and the innards are very similar.
01:01:16
◼
►
And on this particular M2 MacBook Pro
01:01:19
◼
►
that MaxTec was testing,
01:01:20
◼
►
apparently that cooling solution was not adequate
01:01:22
◼
►
when everything is maxed out.
01:01:24
◼
►
And we'll see in the coming days and weeks
01:01:27
◼
►
if people can reproduce this result,
01:01:28
◼
►
if it's widespread,
01:01:29
◼
►
if it's specific to the one test that they were doing
01:01:33
◼
►
or if other people can reproduce it.
01:01:34
◼
►
But I was kind of amazed
01:01:35
◼
►
that even with massive thermal throttling
01:01:37
◼
►
and incredibly high temperatures, it was still faster.
01:01:40
◼
►
So it's pretty weird.
01:01:42
◼
►
But we'll keep an eye on this.
01:01:44
◼
►
If you're looking for yet another reason
01:01:46
◼
►
not to buy this computer, here's one.
01:01:48
◼
►
And to Marco's point from several shows back,
01:01:52
◼
►
what about the Air?
01:01:52
◼
►
The Air doesn't even have a fan
01:01:54
◼
►
and it's got the same chip in it.
01:01:56
◼
►
You know, is that gonna thermal throttle and how badly?
01:01:58
◼
►
Now, obviously with the Air it's less important
01:02:00
◼
►
because no one is buying the Air
01:02:02
◼
►
for maximum CPU performance.
01:02:03
◼
►
You want it to be thin and lightweight and silent
01:02:05
◼
►
and hopefully cool.
01:02:06
◼
►
And maybe that's not the best machine
01:02:08
◼
►
for you to run your 8K raw renders on all the time, right?
01:02:13
◼
►
maybe get an actual MacBook Pro for those purposes.
01:02:16
◼
►
But if this modified five nanometer,
01:02:21
◼
►
a slightly bigger, slightly hotter M2
01:02:24
◼
►
does have thermal limits even with a fan on it,
01:02:26
◼
►
what is it gonna be like with no fan?
01:02:28
◼
►
I guess we'll all find out when we get our MacBook Airs.
01:02:30
◼
►
And I'm still ordering mine day one
01:02:32
◼
►
because my son is gonna be using it
01:02:34
◼
►
as a glorified terminal emulator
01:02:37
◼
►
or running Google Docs in Chrome or whatever,
01:02:40
◼
►
like not rendering 8K raw footage, right?
01:02:43
◼
►
So I think for normal uses, it will continue to be difficult to make these things hot and
01:02:48
◼
►
make them make any noise just because it's a very cool system on a chip.
01:02:52
◼
►
We kind of know the power draw that it pulls and it's around 20, 25, 30 watts, which is
01:02:58
◼
►
within a reasonable envelope for fanless cooling.
01:03:01
◼
►
And it's going to be much lower than that in day-to-day usage.
01:03:05
◼
►
Actually I should find this link for the notes.
01:03:07
◼
►
There was a hardware unboxed review that also did a comprehensive review comparing the M2
01:03:12
◼
►
MacBook Pro to Intel laptops.
01:03:15
◼
►
This is a very Windows-centric channel,
01:03:17
◼
►
so keep that in mind.
01:03:19
◼
►
They're showing this to the audience.
01:03:20
◼
►
In fact, they had a segment that said,
01:03:22
◼
►
"But what about macOS?"
01:03:23
◼
►
Well, a survey of our listener shows that 80%
01:03:25
◼
►
would want to use Windows.
01:03:26
◼
►
Like, all right, well, you're a Windows,
01:03:28
◼
►
that makes perfect sense, right?
01:03:29
◼
►
If you want a Windows laptop,
01:03:31
◼
►
the person was actually kind of disappointed
01:03:32
◼
►
that there wasn't a better way to run Windows on it,
01:03:34
◼
►
so I feel that, right?
01:03:35
◼
►
But the important spec for where this is concerned is
01:03:39
◼
►
It was showing how little power the M2 uses when you're doing single core tasks.
01:03:45
◼
►
It's so incredibly energy efficient when you just are using one core, like for non-paralyzable
01:03:53
◼
►
And most of the time when you're just putting around your computer, scrolling a web page
01:03:56
◼
►
or typing in Microsoft Word, you're not going to be lighting up all the cores or all the
01:04:00
◼
►
GPUs doing anything.
01:04:02
◼
►
And a single core blipping on for a second to handle what you're doing is mostly what
01:04:06
◼
►
compare that to the power usage of the competitive spec-wise Intel things and they're using like
01:04:13
◼
►
20, 30 watts when a single core is going and the M2 is using 8 watts, right? So,
01:04:18
◼
►
you know, the M2 still has a huge lead when it comes to efficiency, performance for watt
01:04:27
◼
►
and in particular performance when it is not plugged into the wall because a lot of these
01:04:31
◼
►
Intel laptops, to get the maximum performance to even be competitive with the M2, they need to
01:04:36
◼
►
to be plugged in as soon as you unplug them,
01:04:37
◼
►
they all ramp down in speed, right?
01:04:39
◼
►
So I still think the M2 SoC is pretty good
01:04:41
◼
►
and even in the M2 MacBook Pro,
01:04:44
◼
►
it's still head and shoulders above the competition.
01:04:46
◼
►
It's just that case is old, there's no mag safe,
01:04:49
◼
►
it's got a touch bar and the cooling solution
01:04:53
◼
►
may or may not be inadequate.
01:04:55
◼
►
- Yeah, what I'm mostly curious to see here,
01:04:58
◼
►
first of all, was this just a fluke?
01:05:00
◼
►
You mentioned people had trouble reproducing it.
01:05:02
◼
►
That's, in my opinion, a good sign.
01:05:04
◼
►
That means maybe this is just a fluke.
01:05:06
◼
►
But what we need to see when we get the new reviews
01:05:09
◼
►
of the MacBook Air, and honestly,
01:05:11
◼
►
if pre-orders are opening up in two days,
01:05:14
◼
►
we should get the reviews tomorrow.
01:05:16
◼
►
So, and as this episode is released today,
01:05:19
◼
►
Thursday morning, as I'm editing this episode,
01:05:23
◼
►
chances are the press reviews will probably drop
01:05:25
◼
►
if there were press reviews on the regular schedule
01:05:27
◼
►
for this product.
01:05:29
◼
►
So we'll see, maybe, I don't know if any of the press
01:05:31
◼
►
will do this kind of testing, who got review units,
01:05:34
◼
►
who knows, but what we need to see
01:05:36
◼
►
when we actually get these things in people's hands
01:05:38
◼
►
with the Air is, is it actually pulling 30 watts
01:05:42
◼
►
total package power and trying to cool that passively?
01:05:44
◼
►
'Cause that's quite a large thermal load, I think,
01:05:47
◼
►
to try to cool passively when you compare
01:05:49
◼
►
the total package power to previous fanless laptops.
01:05:54
◼
►
I think that's significantly more than them,
01:05:58
◼
►
so we'll see, maybe I'm wrong,
01:05:59
◼
►
but I think that seems like a lot.
01:06:02
◼
►
There's also the potential that maybe the M2
01:06:05
◼
►
in the MacBook Air will be clocked lower
01:06:08
◼
►
or will have different thermal maximums
01:06:11
◼
►
before it throttles its speed down
01:06:14
◼
►
compared to the models with fans.
01:06:15
◼
►
We don't know.
01:06:16
◼
►
Until now, all the M1 products, as far as I know,
01:06:21
◼
►
seem to be all clocked the same
01:06:22
◼
►
or at least very, very close to the same.
01:06:24
◼
►
They all seem-- - And apparently,
01:06:25
◼
►
apparently they also have the same fan curves
01:06:27
◼
►
from the testing on the studio.
01:06:28
◼
►
Like you would've think they'd be tuned differently
01:06:30
◼
►
for the bigger cooling solution,
01:06:32
◼
►
but like no matter what you did do it,
01:06:33
◼
►
the fans would stay at the same RPM in the Mac studio.
01:06:36
◼
►
It seemed like, at least on the initial reviews,
01:06:38
◼
►
that the fan curves of all these things,
01:06:40
◼
►
that the clocks were the same
01:06:41
◼
►
and the fan curves were the same.
01:06:42
◼
►
- Right, and so you could assume that M1 meant M1
01:06:46
◼
►
and it meant the same thing everywhere.
01:06:48
◼
►
It had the same performance everywhere,
01:06:49
◼
►
it had the same rough thermal characteristics everywhere.
01:06:53
◼
►
We don't know if that's always gonna be the case
01:06:54
◼
►
with Apple's M series chips.
01:06:55
◼
►
They could theoretically clock the air lower
01:06:58
◼
►
if they had to for cooling.
01:06:59
◼
►
Something else to consider is that the M2
01:07:03
◼
►
is based on the TSMC five-animator process still.
01:07:06
◼
►
So they made the whole chip bigger.
01:07:08
◼
►
It's a larger die, and made on the same process,
01:07:12
◼
►
so it's probably going to run hotter than the M1.
01:07:17
◼
►
- Well, it's not the exact same process.
01:07:18
◼
►
It's the modified process that does give
01:07:21
◼
►
a slight performance per watt savings over,
01:07:24
◼
►
that's what I'm saying, like percentage-wise.
01:07:25
◼
►
It got like X percent bigger,
01:07:26
◼
►
and the new process is Y percent more energy efficient,
01:07:29
◼
►
And I think the percentages are close to each other.
01:07:31
◼
►
It got like maybe 10 or 15% bigger
01:07:33
◼
►
and maybe it's like nine or 10% lower power.
01:07:37
◼
►
- That's true.
01:07:38
◼
►
- It's not outside the bounds,
01:07:39
◼
►
but the expectation is that this would use more power
01:07:42
◼
►
and be hotter because it is bigger
01:07:43
◼
►
and I think it is bigger more than the slightly modified
01:07:48
◼
►
five nanometer process makes up for.
01:07:50
◼
►
But the thing to remember with this
01:07:52
◼
►
and the reason that people have trouble reproducing this is
01:07:54
◼
►
it's not just a CPU, it's a system on a chip.
01:07:56
◼
►
And to make every part of that SOC do work
01:08:00
◼
►
at the same time is actually pretty challenging.
01:08:03
◼
►
You can't, if you're like,
01:08:03
◼
►
"I'm gonna do a handbrake render."
01:08:05
◼
►
You're not lighting up the whole chip.
01:08:06
◼
►
Well, I'm gonna play a game.
01:08:07
◼
►
You're probably not lighting up the whole chip.
01:08:08
◼
►
It's actually difficult to do that
01:08:10
◼
►
because you gotta get all the GPU cars
01:08:12
◼
►
and all the CPU cars,
01:08:14
◼
►
and there are a bunch of ancillary units
01:08:15
◼
►
like that you could probably try to do stuff
01:08:17
◼
►
with the neural engine where it's difficult
01:08:18
◼
►
to actually make all that happen at once.
01:08:20
◼
►
So although the maximum possible sort of
01:08:23
◼
►
heat generating potential is always there.
01:08:26
◼
►
It's not an artificial workload, but it is,
01:08:30
◼
►
you're not gonna stumble into doing it.
01:08:31
◼
►
You're not gonna stumble into doing it
01:08:33
◼
►
by browsing the web, okay?
01:08:34
◼
►
- Well, unless you're using Chrome.
01:08:35
◼
►
- Yeah, I learned like, there was one time
01:08:38
◼
►
where as part of an experiment, I trained a large ML model
01:08:42
◼
►
on my Secunix MacBook Pro, and that,
01:08:46
◼
►
and running this huge like, you know,
01:08:48
◼
►
core ML training thing on this huge dataset
01:08:52
◼
►
was the only time I have ever heard the fan
01:08:55
◼
►
on the 16 inch spin up.
01:08:57
◼
►
I do all my heavy developer stuff,
01:09:00
◼
►
I do all my hobbyist photo and video stuff here and there.
01:09:03
◼
►
I have never heard the fan any other time except
01:09:07
◼
►
after at least a half hour of maxing out
01:09:10
◼
►
who knows what different kinds of units on this chip
01:09:13
◼
►
doing ML training, which was all the CPU cores,
01:09:16
◼
►
probably all the GPU cores, possibly the neural engine,
01:09:18
◼
►
God knows what it was doing.
01:09:20
◼
►
It was a lot, and I barely heard the fans then.
01:09:24
◼
►
So yeah, I think that's a good point to take, John,
01:09:27
◼
►
that chances are in regular workloads you won't see this.
01:09:29
◼
►
But what remains to be seen once we get the M2
01:09:33
◼
►
MacBook Air in people's hands is are the thermals weirder
01:09:37
◼
►
or worse or more limited in some way
01:09:40
◼
►
than the outgoing model?
01:09:41
◼
►
This is gonna be the first one that was designed
01:09:44
◼
►
from the start to be fanless, with the exception
01:09:46
◼
►
of the old 12 inch, sorry, Casey.
01:09:49
◼
►
But the M1 MacBook Air previously
01:09:53
◼
►
is one of these kind of half-assed changes to the case
01:09:58
◼
►
in the sense that there was no physical change.
01:10:00
◼
►
Like they just kind of swapped the Intel guts
01:10:02
◼
►
for the M1 guts.
01:10:04
◼
►
So there was probably not much of a thermal consideration
01:10:09
◼
►
there to run this thing fanless.
01:10:10
◼
►
Whereas now the new M2 MacBook Air
01:10:13
◼
►
is the first MacBook Air physical case design
01:10:16
◼
►
that was designed from the start, presumably,
01:10:18
◼
►
to be fanless.
01:10:19
◼
►
So we'll see what it can do and how it behaves.
01:10:23
◼
►
We learned, at the last one, somebody wrote in,
01:10:26
◼
►
I forget how we learned this,
01:10:28
◼
►
but you can't just use the entire metal bottom
01:10:31
◼
►
of the laptop as the heat sink
01:10:33
◼
►
because there are certain standards
01:10:35
◼
►
for how hot a laptop can get in certain countries
01:10:39
◼
►
and everything for safety and health and stuff.
01:10:41
◼
►
And so the bottom of the laptop can't be super, super hot
01:10:45
◼
►
and so you can't just bond the chip to the case
01:10:48
◼
►
and call it a day.
01:10:50
◼
►
We'll see what they actually did.
01:10:51
◼
►
I'm very curious to see the tear down to this thing
01:10:53
◼
►
and see how it works and then see the benchmarking
01:10:55
◼
►
and see the limitations of it.
01:10:57
◼
►
And honestly, part of the reason I wanna play with one
01:10:59
◼
►
is just to figure this out myself
01:11:01
◼
►
to see what is it like to use it.
01:11:02
◼
►
'Cause I use the M1 Air so much and I loved it so much.
01:11:06
◼
►
And I wanna know, how hot does it get in use?
01:11:08
◼
►
How, do I ever see it throttle?
01:11:11
◼
►
Can I make it throttle by doing something that's,
01:11:14
◼
►
for example, only stressing the CPU cores
01:11:18
◼
►
but not the GPU cores, stuff like that.
01:11:20
◼
►
That's the kind of stuff I want to find out.
01:11:22
◼
►
What I suspect, based on that 29 watt thermal peak
01:11:26
◼
►
that this test video had, what I suspect is that
01:11:30
◼
►
you actually can make the M2 throttle
01:11:33
◼
►
because it seems like Apple is allowing it
01:11:36
◼
►
to run hotter at peak performance.
01:11:40
◼
►
Whereas the M1, it seemed like nothing you could do
01:11:43
◼
►
would make it throttle with the fan models,
01:11:46
◼
►
the non-fan models, you could get a throttle
01:11:49
◼
►
a little bit more easily, but it was hard still.
01:11:50
◼
►
But if the M2, if they're allowing it
01:11:53
◼
►
to have a higher thermal limit,
01:11:55
◼
►
in terms of wattage used, before they start capping it,
01:12:00
◼
►
then you will have these things in extreme cases,
01:12:02
◼
►
but I think, I hope still, that the common case
01:12:07
◼
►
is still gonna be very, very cool and reasonable,
01:12:09
◼
►
and time will tell.
01:12:11
◼
►
- Yeah, and letting it sort of get real hot
01:12:14
◼
►
and go real fast is actually usually a good move in laptops
01:12:17
◼
►
because you don't always have sustained loads.
01:12:20
◼
►
You want it to be able to go real fast for a second or two
01:12:23
◼
►
or even a minute or two so it can get the thing done
01:12:25
◼
►
and go back to being idle.
01:12:28
◼
►
But if you need to be able to do a sustained workload,
01:12:30
◼
►
then throttling and clocking down is not great.
01:12:32
◼
►
But even in the test, even in the MaxTechs test,
01:12:35
◼
►
it was still faster.
01:12:36
◼
►
It was constantly bouncing up against the limiter going,
01:12:38
◼
►
oh, I'm too hot, clock down, oh, I'm cool now, I'm too hot.
01:12:41
◼
►
It goes up and down and up and down.
01:12:43
◼
►
You don't want it to operate that way.
01:12:44
◼
►
you want it to be steady, but bottom line is
01:12:46
◼
►
if the job gets done faster, then that's still better.
01:12:50
◼
►
As MaxTec pointed out, if it didn't throttle,
01:12:54
◼
►
it would be even faster.
01:12:55
◼
►
The GPU would be 35% faster and the CPU would be 18% faster.
01:12:58
◼
►
Instead of just the 10% faster,
01:12:59
◼
►
it got bouncing off the heat limiter.
01:13:02
◼
►
I would imagine that you'll be able to throttle,
01:13:05
◼
►
heat throttle the MacBook Air as well,
01:13:07
◼
►
but the slim fanless computer, yeah, that's the one
01:13:10
◼
►
I feel like throttling is the most excusable.
01:13:12
◼
►
The M2 MacBook Pro that's supposed to offer sustained performance, it feels like it should
01:13:16
◼
►
have a better cooling system, especially since it's not like a 96 watt system in there.
01:13:23
◼
►
It's only going to a max of 30 watts.
01:13:24
◼
►
You should be able to cool 30 watts in a laptop.
01:13:26
◼
►
Just look at some of the past Intel laptops.
01:13:29
◼
►
You just need a better cooling solution so that it can run sustained on this workload
01:13:33
◼
►
of this 8K raw export for 30 minutes at a time without throttling.
01:13:37
◼
►
I think that is a reasonable thing for something in the MacBook Pro line.
01:13:42
◼
►
And I think that's something they achieved with most of the M1 MacBook Pro models with
01:13:46
◼
►
the M1 Pro and M1 Max and obviously with the M1 Ultra in the Mac Studio with its noisy
01:13:51
◼
►
but apparently good at cooling fans.
01:13:55
◼
►
So we'll see.
01:13:56
◼
►
I'm not sure what kind of stress tests I'll do on my son's M2 MacBook Air because I don't
01:14:02
◼
►
think he's ever going to do anything like that but I guess maybe I'll run Xcode and
01:14:04
◼
►
see if I can at least get the CPU cores to crank up a little bit.
01:14:08
◼
►
but honestly I don't even know what I would use
01:14:10
◼
►
other than like trying to run Geekbench
01:14:12
◼
►
or using Cinema 4D or whatever the,
01:14:15
◼
►
I have a bunch of those benchmark apps or whatever,
01:14:17
◼
►
but most of those do not actually stress
01:14:19
◼
►
all the things at once.
01:14:20
◼
►
They usually focus either mostly on GPU or mostly on CPU.
01:14:22
◼
►
It's actually hard to do useful work
01:14:25
◼
►
stressing all the parts at once.
01:14:27
◼
►
- All right, Jon, take me on a tour of system settings
01:14:30
◼
►
in Ventura Beta 3, please, and thank you.
01:14:33
◼
►
- Beta 3 just came out today.
01:14:34
◼
►
I was quickly able to install it and look at some stuff.
01:14:37
◼
►
Of course, I dove into system settings
01:14:38
◼
►
to see how that's going.
01:14:40
◼
►
It seems slightly less buggy than before.
01:14:42
◼
►
I didn't get any items duplicated in the sidebar.
01:14:44
◼
►
I did still get a little red badge
01:14:45
◼
►
that I couldn't make disappear.
01:14:47
◼
►
This time I had no idea where it was.
01:14:48
◼
►
Like if you look at the screenshot in our notes here,
01:14:50
◼
►
you'll see where it has a red badge
01:14:51
◼
►
with a number one in it next to general.
01:14:52
◼
►
If you click on general,
01:14:53
◼
►
there's nothing in there with the badge.
01:14:55
◼
►
You can never make it go away.
01:14:56
◼
►
Anyway, nice, bug suit and whatever, Beta 3.
01:14:59
◼
►
But I also went over to the trackpad thing,
01:15:01
◼
►
which is something that Craig Fraderi talked about
01:15:02
◼
►
on the talk show live saying,
01:15:03
◼
►
oh, the old one had those cool videos
01:15:05
◼
►
and the new one is boring.
01:15:06
◼
►
So we have something else in mind here.
01:15:08
◼
►
Well, this is what's in beta three.
01:15:10
◼
►
I don't know if this is what he was talking about
01:15:11
◼
►
or a step along the way,
01:15:12
◼
►
but what they have now are when you click
01:15:15
◼
►
on each one of the things that you can do,
01:15:17
◼
►
like zooming in or out or scrolling or smart zoom or rotate,
01:15:22
◼
►
it has two boxes above that.
01:15:25
◼
►
One of them shows a little diagram of a track pad
01:15:29
◼
►
with two dots on it.
01:15:30
◼
►
If you've ever used the simulator,
01:15:31
◼
►
the iOS simulator, kind of the same way you see
01:15:33
◼
►
those two dots, they're supposed to represent
01:15:34
◼
►
basically the contact patches of your finger,
01:15:37
◼
►
that's an animation.
01:15:38
◼
►
It shows the two dots and it shows them like
01:15:39
◼
►
for pinch to zoom,
01:15:40
◼
►
it shows the two dots close to each other
01:15:42
◼
►
and it shows the two dots spreading apart on the track pad.
01:15:45
◼
►
And then to the right of that is a sort of stylized
01:15:49
◼
►
abstract representation of a screen.
01:15:51
◼
►
Like it's got a little dock at the bottom,
01:15:53
◼
►
but instead of app icons, it's just got colored dots
01:15:55
◼
►
and it's got a stylized window with some blank tiles.
01:15:58
◼
►
Looks kind of like preview with like little squares
01:16:01
◼
►
in the sidebar or whatever.
01:16:02
◼
►
And the image it's showing is two circles.
01:16:04
◼
►
And as those two dots that represent your fingers
01:16:07
◼
►
on a trackpad spread apart,
01:16:08
◼
►
the two circles in the window zoom in, right?
01:16:11
◼
►
So it's basically doing the same thing as the old thing
01:16:13
◼
►
where before I used to show you a video
01:16:15
◼
►
of some human's actual hands swiping around on the touchpad.
01:16:19
◼
►
This is showing you the touchpad over here
01:16:21
◼
►
and a sort of a road sign abstraction
01:16:24
◼
►
of the screen over there saying,
01:16:25
◼
►
when you do this in the trackpad, this happens in the app.
01:16:29
◼
►
I think it's a pretty clever solution,
01:16:31
◼
►
avoiding the having to put videos in there and everything.
01:16:34
◼
►
but I do wonder if people are gonna look at that
01:16:37
◼
►
and have any idea what it is that they're looking at.
01:16:39
◼
►
Like I know what it is,
01:16:41
◼
►
'cause I know what it's supposed to be.
01:16:42
◼
►
I already know how it works, I already know the answer.
01:16:44
◼
►
So oh, that's a trackpad,
01:16:45
◼
►
and that's where your fingers are touching.
01:16:46
◼
►
That's not obvious.
01:16:48
◼
►
If someone else sees us, they're like,
01:16:50
◼
►
there's these two balls floating in a box,
01:16:52
◼
►
and then there's something else happening.
01:16:54
◼
►
I'm not sure it is better at communicating the ideas
01:16:58
◼
►
that it's trying to communicate
01:16:59
◼
►
than seeing a human's hand on the trackpad,
01:17:02
◼
►
because people recognize human hands pretty well,
01:17:04
◼
►
And they recognize, oh, those human hands
01:17:05
◼
►
are touching something that looks like the trackpad
01:17:07
◼
►
that's on a laptop that I'm sitting in front of right now.
01:17:09
◼
►
I recognize that.
01:17:10
◼
►
And then seeing what's going on on the screen,
01:17:12
◼
►
having to use like an abstraction.
01:17:14
◼
►
And then finally, both these things are pretty small.
01:17:17
◼
►
Like the little area showing the trackpad is pretty small
01:17:19
◼
►
because it's like they're side by side
01:17:21
◼
►
in this very narrow window
01:17:22
◼
►
that you still can't make any wider.
01:17:24
◼
►
Some people are asking like,
01:17:25
◼
►
why would you ever want the system settings window
01:17:26
◼
►
to be wider?
01:17:27
◼
►
There's lots of cases, here's one.
01:17:29
◼
►
You can make those animations a little bit bigger
01:17:31
◼
►
than they are, right?
01:17:32
◼
►
Sometimes the labels are really long
01:17:34
◼
►
you anyway so we're making progress I didn't go through every single one of
01:17:38
◼
►
the things but they look slightly better than they did before it's still dark
01:17:41
◼
►
dingy dark gray and gray the switches are still too small it's still not
01:17:44
◼
►
particularly readable or nice-looking but it definitely looks better than it
01:17:47
◼
►
did in the last beta I mean it's a low bar it is a very very low bar sure it is
01:17:51
◼
►
but you know I bet betas march along and this is this is one thing that they said
01:17:55
◼
►
they were gonna change and so here you go a trackpad is not as dire as it was
01:17:58
◼
►
but I am NOT convinced that this is a you know an upgrade over what came before
01:18:03
◼
►
- The whole panel looks like, have you ever come across,
01:18:08
◼
►
having children during the digital age,
01:18:10
◼
►
have you ever come across these YouTube videos
01:18:14
◼
►
that are made for kids that seem procedurally generated
01:18:18
◼
►
with like really simple animated shapes and stuff?
01:18:23
◼
►
You've seen these?
01:18:24
◼
►
This, like the system settings look in Ventura.
01:18:28
◼
►
It looks like it was designed by those people/algorithms.
01:18:33
◼
►
- It makes web apps and Electron apps
01:18:35
◼
►
look like great design by comparison.
01:18:37
◼
►
- I do see a little bit of a human touch
01:18:38
◼
►
in the left hand bar.
01:18:39
◼
►
Like the way they organize things in system preference
01:18:41
◼
►
has always been scattershot,
01:18:43
◼
►
and now they're adopting the iOS model,
01:18:45
◼
►
which is it's clear that a human arranged these,
01:18:48
◼
►
but what the human was thinking, not entirely clear.
01:18:51
◼
►
Like, you know, when you scroll through,
01:18:52
◼
►
like people are more familiar with some of their phones.
01:18:54
◼
►
You go to settings on your iPhone, right?
01:18:57
◼
►
And they kind of put important stuff up top,
01:18:59
◼
►
but I can never remember like,
01:19:01
◼
►
Is the app that I'm trying to find settings for,
01:19:03
◼
►
is it one of those apps that Apple thinks is so important
01:19:05
◼
►
that it doesn't belong mingling with the other apps?
01:19:07
◼
►
You know what I mean?
01:19:08
◼
►
Like phone or camera or Safari versus mail versus stocks.
01:19:13
◼
►
There's a hierarchy in apps of what Apple thinks
01:19:19
◼
►
is important enough to be a regular app versus like,
01:19:22
◼
►
oh, this is kind of part of your phone.
01:19:25
◼
►
And it's confusing, like there's these weird little sections
01:19:27
◼
►
sometimes you see like App Store and Wallet together.
01:19:29
◼
►
You're like, ah, that's like money stuff.
01:19:31
◼
►
But then, you know, there's this whole section above,
01:19:33
◼
►
which is like hardware things,
01:19:34
◼
►
and then you get to like passwords, mail, contacts, what?
01:19:38
◼
►
And then there's a new section, music, TV, photos,
01:19:40
◼
►
I guess this is the media section,
01:19:42
◼
►
but then there's a separate section for the TV provider,
01:19:43
◼
►
and then you get to all the third-party apps,
01:19:45
◼
►
which are across at the bottom, right?
01:19:46
◼
►
So it's clear that a human did arrange them,
01:19:49
◼
►
but every time I look at it, it's not like I know, right?
01:19:51
◼
►
What section to go to immediately?
01:19:52
◼
►
I know where Safari is, it's right in this section.
01:19:54
◼
►
No, I don't know, I scroll until I see the Safari symbol.
01:19:56
◼
►
So it's not a successful organization,
01:19:58
◼
►
but a human did it, right?
01:19:59
◼
►
sidebar and system settings in Ventura Beta 3,
01:20:02
◼
►
there are sections, it's clear that they're broken up
01:20:06
◼
►
in a similar way to iOS, and I also like the fact
01:20:09
◼
►
that they gave a lot of things names
01:20:10
◼
►
that they didn't have before that will hopefully
01:20:13
◼
►
make it easier for people to find things.
01:20:14
◼
►
Like there's a section that says lock screen,
01:20:17
◼
►
login password, and users and groups.
01:20:19
◼
►
Lock screen was not a top level item,
01:20:21
◼
►
has never been a top level item,
01:20:23
◼
►
but it is definitely a top level item
01:20:24
◼
►
in people's heads of like, the phrase lock screen
01:20:28
◼
►
and the concept of a lock screen,
01:20:29
◼
►
if you've ever had to use a computer at work
01:20:31
◼
►
and had a lock screen policy mandated,
01:20:32
◼
►
that's of course always been a feature in Mac OS
01:20:35
◼
►
for as long as lock screens have existed,
01:20:36
◼
►
but there was nothing called lock screen,
01:20:38
◼
►
so I think that's an improvement,
01:20:40
◼
►
that some humans said,
01:20:41
◼
►
"Hey, I want the top level items in the sidebar
01:20:44
◼
►
"to be named after things that are in people's heads."
01:20:46
◼
►
And there's a search bar that actually works pretty well
01:20:48
◼
►
to find stuff as well, right?
01:20:49
◼
►
And then sometimes you go to a section
01:20:51
◼
►
where it's like keyboard, mouse, and trackpad,
01:20:52
◼
►
okay, it makes sense that they're grouped together,
01:20:54
◼
►
but then you get like passwords, internet accounts,
01:20:56
◼
►
Game Center, that's a group of three items,
01:20:59
◼
►
but it's separate from lock screen,
01:21:01
◼
►
login password, and users and groups,
01:21:02
◼
►
but where is the privacy and security?
01:21:04
◼
►
One whole, you know, skip a section,
01:21:06
◼
►
it's up much higher next to spotlight and control center.
01:21:08
◼
►
Anyway, I think most people will just use the search,
01:21:12
◼
►
but to Marco's point about this being
01:21:14
◼
►
algorithmically generated, it almost looks like,
01:21:16
◼
►
you know, it looks more like to me like it's data driven,
01:21:19
◼
►
like you can just spec out this thing
01:21:20
◼
►
and it just spits out this app, right?
01:21:23
◼
►
Without much of a human touch,
01:21:24
◼
►
but then you go into trackpad and it's clear
01:21:25
◼
►
that this is a very custom situation where when you,
01:21:28
◼
►
you know, you can't tell from the screenshot,
01:21:29
◼
►
but when you click on or mouse over one of these rows,
01:21:33
◼
►
it changes the animation and then it plays it.
01:21:35
◼
►
This is all customized with a little bit of a human touch.
01:21:37
◼
►
And the sidebar has a little bit of a human touch,
01:21:39
◼
►
but a lot of it does kind of look like, you know,
01:21:42
◼
►
a very straightforward hierarchy that was just sort of
01:21:44
◼
►
data driven by a P-list somewhere,
01:21:46
◼
►
and then you just run it through and it produces this app.
01:21:49
◼
►
- What's with the capitalization
01:21:52
◼
►
of the titles of the options?
01:21:54
◼
►
Natural scrolling, the S in scrolling is capitalized.
01:21:56
◼
►
Smart zoom, the Z in zoom is not.
01:21:59
◼
►
- I mean, is that any different than it is today?
01:22:01
◼
►
Go look at it on your laptops if you're in front of one.
01:22:03
◼
►
I don't know if it's any different.
01:22:04
◼
►
Inconsistent capitalization is not a new thing.
01:22:06
◼
►
Maybe natural scrolling is a little TM symbol next to it.
01:22:12
◼
►
- No, it's still wrong.
01:22:15
◼
►
It's still wrong.
01:22:17
◼
►
I hope, you know, we'll see what happens
01:22:20
◼
►
when what actually ships here.
01:22:22
◼
►
Again, I have low confidence in Apple's software design team
01:22:25
◼
►
these days and their ability to ship stuff
01:22:27
◼
►
that they think is cleaner even though it's worse.
01:22:31
◼
►
Because you look at this and it still looks like
01:22:35
◼
►
the CSS failed to load.
01:22:36
◼
►
I don't know, to me it looks cheap and sloppy.
01:22:41
◼
►
That's what it really is.
01:22:42
◼
►
It looks cheap and sloppy and it doesn't look like something
01:22:45
◼
►
that you would expect a company like Apple to make
01:22:47
◼
►
with their reputation.
01:22:48
◼
►
- It doesn't look polished and doesn't look high gloss.
01:22:52
◼
►
Mac OS used to look not just like literally high glosses and having specular highlights
01:22:55
◼
►
drawn onto things, but high gloss in terms of someone, if you think of what looks like
01:23:00
◼
►
high gloss, very often the homepage of Apple.com looks high gloss.
01:23:03
◼
►
Apple's product pages often look high gloss.
01:23:05
◼
►
They're supposed to look fancy and like, you know, sophisticated and like someone sweated
01:23:11
◼
►
over all the details and then it is made to look attractive.
01:23:14
◼
►
Now that's not the most important thing about a UI.
01:23:15
◼
►
It would be better for it to be readable, usable, accessible, so on and so forth.
01:23:19
◼
►
But once you've fulfilled those basics,
01:23:20
◼
►
it's also nice if it looks attractive and expressing
01:23:25
◼
►
your brand in some way.
01:23:26
◼
►
And Apple's brand is very often sophisticated, minimalist,
01:23:29
◼
►
polished, beautiful looking.
01:23:32
◼
►
And system settings is not yet beautiful.
01:23:35
◼
►
No, I mean, we make fun so much when an app switches to Electron
01:23:39
◼
►
and we say, oh my god, they're going to ruin the experience.
01:23:42
◼
►
They're throwing away all this native code, native design.
01:23:43
◼
►
They don't care about the platform, et cetera.
01:23:45
◼
►
I used to open up 1Password.
01:23:47
◼
►
And I open up its settings screen.
01:23:48
◼
►
And this is an Analectron app, you know,
01:23:50
◼
►
but you look at the settings screen,
01:23:52
◼
►
and it's a nice, regular Mac-looking preference of screen.
01:23:55
◼
►
It's a couple of custom things in there,
01:23:56
◼
►
but for the most part, it looks like a Mac settings screen.
01:23:58
◼
►
It looks nice.
01:23:59
◼
►
It looks put together and polished and thought through.
01:24:02
◼
►
And you look at the Ventura System Settings app,
01:24:05
◼
►
and it is none of those things.
01:24:06
◼
►
This is the kind of thing that if an app,
01:24:09
◼
►
like if some popular app that we used
01:24:11
◼
►
switched their settings to look like this,
01:24:13
◼
►
we would make fun of them relentlessly
01:24:15
◼
►
and say they've abandoned their customers,
01:24:17
◼
►
they've abandoned the Mac,
01:24:18
◼
►
And so, I don't know, it just seems like,
01:24:21
◼
►
I don't know anybody who's gonna upgrade their Mac,
01:24:23
◼
►
or get a new Mac down the road,
01:24:25
◼
►
open this up for the first time,
01:24:26
◼
►
who has ever seen the previous versions,
01:24:29
◼
►
and look at this and say, oh, what a nice upgrade.
01:24:32
◼
►
It looks like a downgrade,
01:24:33
◼
►
and it's gonna feel like a downgrade
01:24:35
◼
►
to anybody who was used to the previous one,
01:24:36
◼
►
'cause it's different to begin with,
01:24:38
◼
►
but if you're gonna go through the user disruption
01:24:40
◼
►
of moving things around a lot and making them different,
01:24:43
◼
►
it might as well at least be nicer
01:24:45
◼
►
once you get used to it.
01:24:46
◼
►
And I don't know if we've achieved that here.
01:24:48
◼
►
It doesn't look nicer at first glance, that's for sure.
01:24:51
◼
►
And I think a lot of people are not going to feel
01:24:54
◼
►
that this is much of an upgrade the first time they see it.
01:24:56
◼
►
- Yeah, one of the things that's really gonna annoy people
01:24:57
◼
►
if we're talking about this
01:24:58
◼
►
just after we recorded last week's episode
01:25:00
◼
►
in one of the slacks that we're in
01:25:01
◼
►
that I think I forgot to mention in the show.
01:25:03
◼
►
So some of the items on the sidebar,
01:25:04
◼
►
when you click on them, there's a second level.
01:25:06
◼
►
I think General is like that.
01:25:07
◼
►
So you click on General on the sidebar
01:25:09
◼
►
and then the right-hand detail plane shows more choices.
01:25:12
◼
►
I forget what they are 'cause I'm not in for general right now
01:25:14
◼
►
but you click on General and then you click on like,
01:25:16
◼
►
I don't know, about this Mac or something or storage.
01:25:18
◼
►
I don't know what the options are, right?
01:25:20
◼
►
But you click on a second one,
01:25:21
◼
►
and then when you click on the second one,
01:25:22
◼
►
the detail pane slides over
01:25:23
◼
►
and you get into whatever item you're in.
01:25:26
◼
►
And system settings remembers what you were in, right?
01:25:29
◼
►
It remembers that you went general and then about, right?
01:25:32
◼
►
And so what you see on the screen in this state is
01:25:36
◼
►
the general is highlighted in the sidebar, right?
01:25:38
◼
►
'Cause that's the one you're on.
01:25:40
◼
►
And in the detail pane to the right of it,
01:25:42
◼
►
you see like about this Mac or whatever you picked before.
01:25:44
◼
►
And if you look in the upper left,
01:25:45
◼
►
there's a left-facing chevron saying,
01:25:47
◼
►
oh, you can go back, like the iOS-style
01:25:48
◼
►
back button or whatever, right?
01:25:50
◼
►
But let's say you just closed system settings.
01:25:52
◼
►
Next time you launch system settings
01:25:54
◼
►
and you click on General, it's just gonna show you
01:25:56
◼
►
the About thing, it's not going to show you
01:25:58
◼
►
all the other choices, like there's a two-level hierarchy
01:26:00
◼
►
and it's really easy to forget.
01:26:03
◼
►
Like, you're gonna be guiding someone over the phone,
01:26:05
◼
►
just waiting, it's like, go to System Settings,
01:26:07
◼
►
go to General, okay, now click, you know, whatever,
01:26:09
◼
►
you know, Storage in general, like, I don't see Storage.
01:26:12
◼
►
No, did you click on General?
01:26:13
◼
►
Yeah, I don't see Storage, well, tell me what you see.
01:26:15
◼
►
I see, it tells me how much RAM I have.
01:26:18
◼
►
Okay, you must be on about, go back.
01:26:19
◼
►
So what do you mean back?
01:26:20
◼
►
Look up at the top of the detail pane,
01:26:22
◼
►
do you see a left facing, like less than sign,
01:26:25
◼
►
like a sideways V pointing to the left?
01:26:26
◼
►
Yeah, click that.
01:26:28
◼
►
And then this is the point where they say,
01:26:29
◼
►
how was I supposed to figure that out?
01:26:31
◼
►
And you say, I don't know.
01:26:32
◼
►
It's not like, being stateful is good,
01:26:35
◼
►
but when you have a UI that is that not obvious,
01:26:37
◼
►
on the phone it's more obvious,
01:26:38
◼
►
on the phone we're kind of used to,
01:26:40
◼
►
there's gonna be like a back left facing,
01:26:42
◼
►
you know, Chevron in the upper left corner to go back.
01:26:44
◼
►
Like I think we're used to doing that on the phone,
01:26:46
◼
►
but on the Mac, when you have all the screen space,
01:26:48
◼
►
especially when it remembers between launches,
01:26:51
◼
►
that when you click on general on a sidebar,
01:26:53
◼
►
you don't see the list of all the things under general.
01:26:55
◼
►
You see whatever detail plane you were previously in.
01:26:58
◼
►
Good from like a power user perspective
01:27:00
◼
►
that I don't constantly have to dig back into that
01:27:01
◼
►
if I was in that, but from a regular user perspective, bad.
01:27:04
◼
►
So I think they haven't really sorted out the,
01:27:06
◼
►
like they tried to use this UI to be more scalable
01:27:08
◼
►
and I agree you have all these settings
01:27:10
◼
►
and you wanna be able to scroll.
01:27:11
◼
►
That's great.
01:27:12
◼
►
I think they should make the window more resizable.
01:27:14
◼
►
I think we can handle that.
01:27:15
◼
►
We don't have to have fixed size windows in the Mac.
01:27:17
◼
►
We can handle windows that resize
01:27:18
◼
►
and the UI tries to be appropriate for the size of the window
01:27:22
◼
►
and I think this two level thing under general,
01:27:24
◼
►
I don't think it's working yet.
01:27:26
◼
►
So I don't, you know,
01:27:27
◼
►
especially since the sidebar scrolls, right?
01:27:29
◼
►
So how many items are under general, like nine?
01:27:31
◼
►
Put those into the groups on the left-hand side,
01:27:33
◼
►
make it a flat hierarchy.
01:27:34
◼
►
At least then people won't get,
01:27:35
◼
►
won't have to guess how many of these items on the left
01:27:39
◼
►
have multiple things underneath them and how many don't
01:27:41
◼
►
'cause you can't tell by looking at them.
01:27:42
◼
►
You just have to know.
01:27:43
◼
►
- It's a bit of a mess, isn't it?
01:27:47
◼
►
- All right, so let me ask you,
01:27:49
◼
►
hopefully this is not a mess.
01:27:50
◼
►
Tell me about shared photo libraries,
01:27:53
◼
►
which I'm super excited,
01:27:53
◼
►
I really honestly am super excited about this.
01:27:55
◼
►
So tell me, is it even close to ready?
01:27:58
◼
►
- I'm excited about it too.
01:27:59
◼
►
These are the first set of betas,
01:28:01
◼
►
the ones that just came out today-ish,
01:28:03
◼
►
that have support for iCloud shared photo library.
01:28:05
◼
►
I just tried it on Mac OS,
01:28:07
◼
►
but I think it's in the iOS betas,
01:28:08
◼
►
and the iPad OS betas, and all that other stuff, right?
01:28:10
◼
►
Obviously this is a feature that's being added
01:28:13
◼
►
to the existing Photos app, which is not great
01:28:15
◼
►
and continues to be not great and really weird,
01:28:17
◼
►
but the feature they added, this specific feature,
01:28:20
◼
►
went pretty smoothly for me.
01:28:22
◼
►
I'm doing a test Apple ID.
01:28:25
◼
►
The only hiccup I had, and this always happens to me,
01:28:28
◼
►
is I have a test Apple ID,
01:28:30
◼
►
and I wanted to make another test Apple ID
01:28:32
◼
►
to be in a family group with this test Apple ID,
01:28:35
◼
►
an Apple today on July 6th just would not let me
01:28:40
◼
►
make an Apple ID, just no matter what I did.
01:28:43
◼
►
Go to the web, try to do it through the various Mac apps,
01:28:46
◼
►
system settings, there's so many different ways
01:28:48
◼
►
you can create an Apple ID.
01:28:50
◼
►
Create a child Apple ID, create an adult Apple ID,
01:28:52
◼
►
create an iCloud.com Apple ID,
01:28:54
◼
►
create an Apple ID for a Gmail address.
01:28:57
◼
►
Apple just said no.
01:28:59
◼
►
I tried for about an hour today to create an Apple ID
01:29:02
◼
►
and the farthest I got was a,
01:29:04
◼
►
You know, I was on the final screen of making it happen.
01:29:07
◼
►
I think I was doing the web and the error message I got was,
01:29:10
◼
►
"You cannot create an Apple ID at this time.
01:29:12
◼
►
"Try again later."
01:29:13
◼
►
And if you Google for that, you'll see lots of people saying,
01:29:15
◼
►
"Oh, sometimes Apple servers are weird or whatever."
01:29:16
◼
►
Like really, are there whole days
01:29:18
◼
►
where you can't create an Apple ID?
01:29:20
◼
►
Anyway, I couldn't create an Apple ID,
01:29:22
◼
►
so I could not actually share my shared photo library
01:29:26
◼
►
with anybody, but it still lets you go through the feature
01:29:28
◼
►
and see how it works just by your Lonesome.
01:29:31
◼
►
So when you launch Photos and you go to its settings,
01:29:34
◼
►
it's so weird for me, I go in there looking
01:29:36
◼
►
for the preferences item and my eyes like,
01:29:38
◼
►
skim right over settings, like,
01:29:39
◼
►
where the hell is preferences?
01:29:40
◼
►
Oh, it's called settings.
01:29:42
◼
►
Anyway, if you go to the Photos menu, you go to settings,
01:29:44
◼
►
it used to just have General and iCloud, I think,
01:29:46
◼
►
now there's a third top level item called Shared Library,
01:29:49
◼
►
and it has a little thing that says,
01:29:50
◼
►
iCloud Share Photo Library explains what it is,
01:29:52
◼
►
and you hit Start Setup,
01:29:53
◼
►
and you go through this little setup process
01:29:55
◼
►
that's pretty simple, and it constantly prompts you
01:29:57
◼
►
to add people to your family or do all this stuff
01:29:59
◼
►
or whatever and I had to sort of cancel out of that
01:30:02
◼
►
and say no I don't have, I have a family
01:30:04
◼
►
but I'm the only person in it, no I can't create,
01:30:06
◼
►
it prompts you at that point to create an Apple ID.
01:30:08
◼
►
Would you like to create a child Apple ID?
01:30:09
◼
►
That doesn't work either, like you know,
01:30:11
◼
►
again, on July 6th, there was no way to create that.
01:30:14
◼
►
Very often it would, I'd go through the whole process there,
01:30:16
◼
►
it would say prove you're an adult
01:30:17
◼
►
and it would make you verify your credit card
01:30:19
◼
►
branching the CVV value or whatever, right?
01:30:21
◼
►
And then it would ask the person's name
01:30:23
◼
►
and give them an email address,
01:30:25
◼
►
can ask for their birthday and do all this stuff
01:30:27
◼
►
and it'd make you go through many,
01:30:28
◼
►
This is, again, this is a Mac native UI inside the Photos app.
01:30:31
◼
►
It's prompting you to do all this stuff to create a child
01:30:34
◼
►
account for your family.
01:30:35
◼
►
And you'll get to the very last screen,
01:30:36
◼
►
and it will show an indeterminate little spinner
01:30:38
◼
►
after you click the Do It button.
01:30:40
◼
►
And it will just spin forever, and it will never
01:30:42
◼
►
actually create an Apple ID.
01:30:43
◼
►
So I hope that gets fixed eventually.
01:30:45
◼
►
Maybe it's a venture beta thing.
01:30:46
◼
►
Again, I tried doing it through Safari in venture as well,
01:30:49
◼
►
and it still also wasn't working.
01:30:51
◼
►
But anyway, me and my Lonesome Test Apple ID
01:30:53
◼
►
as the only person in my family was
01:30:56
◼
►
able to make a iCloud shared photo library.
01:30:59
◼
►
Once you do that, the Settings pane
01:31:02
◼
►
shows the following items.
01:31:03
◼
►
It says, here are the participants,
01:31:05
◼
►
and you can add participants.
01:31:06
◼
►
And I think you can add participants
01:31:08
◼
►
that are not in your family.
01:31:10
◼
►
I didn't know, because I'm actually obviously not going
01:31:12
◼
►
to add anybody, any real Apple IDs to this,
01:31:15
◼
►
because I don't yet trust that it is all
01:31:17
◼
►
working and everything.
01:31:18
◼
►
And I wouldn't want to make a shared photo library with,
01:31:23
◼
►
like, a member of my actual family,
01:31:25
◼
►
and somehow later I can't add them
01:31:26
◼
►
to my real shared photo library.
01:31:27
◼
►
So I didn't do that, but you can add participants.
01:31:30
◼
►
There's a checkbox for shared library suggestions
01:31:33
◼
►
that says when enabled, you have periodically received
01:31:35
◼
►
suggestions for photos and videos
01:31:36
◼
►
that you may want to add to the shared library.
01:31:38
◼
►
That's another thing I forgot to mention during setup.
01:31:40
◼
►
It says, hey, we made you a shared photo library.
01:31:42
◼
►
What do you wanna add to it?
01:31:43
◼
►
And you can pick add all my photos to it or not add to it.
01:31:46
◼
►
What do you want to move to it?
01:31:47
◼
►
Move all my photos to it, move photos based on a date,
01:31:50
◼
►
or I'll manually move stuff myself.
01:31:52
◼
►
And it's not like this is a one-time choice.
01:31:54
◼
►
Like at any point in the future, you can do any of these things.
01:31:57
◼
►
But this checkbox is photos or something in the OS
01:31:59
◼
►
will suggest to you when it thinks
01:32:02
◼
►
you should move some photos to the shared library based
01:32:04
◼
►
on, I don't know, like the stuff they talked about in the keynote,
01:32:06
◼
►
like when you're in proximity to people
01:32:08
◼
►
or at an event with a bunch of people
01:32:10
◼
►
and taking pictures of them or recognize their faces,
01:32:12
◼
►
and all sorts of suggestions or whatever.
01:32:13
◼
►
So you can do that or not.
01:32:15
◼
►
And then the final item is delete notifications.
01:32:18
◼
►
We talked about this earlier of like, oh,
01:32:20
◼
►
anyone you add to the shared photo library
01:32:21
◼
►
can do edits and deletes.
01:32:23
◼
►
Isn't that bad?
01:32:23
◼
►
Well, if you're afraid of your sullen teenager deleting
01:32:26
◼
►
pictures of themselves they don't like, at the very least,
01:32:29
◼
►
you can get a notification when they delete a picture
01:32:31
◼
►
and then you can go into recent items and rescue it.
01:32:33
◼
►
And I think you can protect recently deleted items
01:32:36
◼
►
with a password so they can't permanently delete them.
01:32:38
◼
►
So that's better than nothing in terms of making sure
01:32:41
◼
►
someone doesn't go rogue on your shared library
01:32:44
◼
►
and hose everything.
01:32:45
◼
►
'Cause if you can get a notification
01:32:47
◼
►
and you can password lock the recent deletes,
01:32:49
◼
►
that'll help a lot.
01:32:51
◼
►
But once you've done that, Photos launches
01:32:53
◼
►
and it just looks like photos.
01:32:55
◼
►
But now at the top, there's a new item,
01:32:57
◼
►
a new pop-up menu where it has three options.
01:33:00
◼
►
You can see your personal library,
01:33:01
◼
►
which is just the only thing you would ever see
01:33:03
◼
►
in the previous version of photos,
01:33:04
◼
►
is just your photo library, right?
01:33:06
◼
►
You can see your shared library,
01:33:08
◼
►
or you can see both libraries where it shows you the union
01:33:11
◼
►
of all the photos of your personal and shared.
01:33:14
◼
►
And that is great.
01:33:14
◼
►
I was afraid it wouldn't have this feature
01:33:16
◼
►
and you constantly have to switch back and forth.
01:33:17
◼
►
But no, it will show you the union of them
01:33:19
◼
►
And you can, it'll put a tiny little badge on the photos,
01:33:23
◼
►
indicating which ones are in the shared library
01:33:25
◼
►
and which ones are not.
01:33:27
◼
►
This is where you start to get into the limitations
01:33:29
◼
►
of the Mac Photos app.
01:33:30
◼
►
Like the Mac Photos app is so stingy
01:33:32
◼
►
about what information it will put
01:33:34
◼
►
on the main sort of photo thumbnail screen.
01:33:37
◼
►
It's got this giant canvas with all these little thumbnails.
01:33:40
◼
►
And the most it will do is put these tiny little
01:33:42
◼
►
monochrome icons in the upper right-hand corner
01:33:45
◼
►
of the photos.
01:33:46
◼
►
It's like, can you just show me the keywords
01:33:48
◼
►
underneath the photos like you used to?
01:33:50
◼
►
If you say show keywords,
01:33:51
◼
►
I think it'll show a little icon that indicates
01:33:54
◼
►
this photo has keywords.
01:33:55
◼
►
We're not gonna tell you which one.
01:33:56
◼
►
We don't have room on this screen to put text,
01:33:58
◼
►
but yeah, it's got keywords.
01:34:00
◼
►
It's got location data.
01:34:01
◼
►
It will put the file name.
01:34:02
◼
►
Of all things that it wants to put,
01:34:03
◼
►
it will put the file name.
01:34:04
◼
►
Like I wanna see the file name of like,
01:34:05
◼
►
IMG0057.heek or whatever.
01:34:10
◼
►
Like I don't need to see the file name.
01:34:11
◼
►
Show me the keyword.
01:34:12
◼
►
Anyway, all that is to say that it will show you
01:34:15
◼
►
which ones are in the shared library
01:34:16
◼
►
if you squint and you turn that thing on.
01:34:17
◼
►
and it will show the union of both of them.
01:34:20
◼
►
And you don't have any limitations.
01:34:21
◼
►
You can just use that union view all you want.
01:34:23
◼
►
You can move things.
01:34:24
◼
►
If you right click on a photo, you can move that photo
01:34:26
◼
►
into the shared library,
01:34:27
◼
►
you can move it out of the shared library.
01:34:29
◼
►
The right click menus continue to be weirdly limited.
01:34:31
◼
►
Some features are in the right click menu.
01:34:33
◼
►
Some features are only in the menu.
01:34:34
◼
►
Some features are, I mean, the menu bar.
01:34:36
◼
►
Some features are in both places.
01:34:38
◼
►
And when you do move things to shared library,
01:34:40
◼
►
you can do more than 101.
01:34:41
◼
►
So you just do any kind of selection
01:34:42
◼
►
and right click and do move to the shared library.
01:34:45
◼
►
That'll show you a little message that says,
01:34:46
◼
►
is moving these photos to the shared library
01:34:47
◼
►
will allow shared library participants
01:34:49
◼
►
to view, edit, or delete this content at any time,
01:34:52
◼
►
just warning you that, hey,
01:34:53
◼
►
when you put it into a shared place,
01:34:54
◼
►
it's no longer just yours.
01:34:56
◼
►
And it all worked.
01:34:57
◼
►
Like, I mean, obviously I'm doing a shared library with,
01:34:59
◼
►
I'm just sharing it with myself,
01:35:00
◼
►
but I can take my photos and move them
01:35:02
◼
►
to and from the shared library.
01:35:03
◼
►
It's even integrated into the import process,
01:35:05
◼
►
so when you import photos into photos,
01:35:06
◼
►
you can choose if you wanna import them into your library,
01:35:09
◼
►
or if you wanna import them into the shared library.
01:35:12
◼
►
Very little surface area for this feature.
01:35:15
◼
►
a few pop-up menus, one extra item in settings,
01:35:18
◼
►
a few items in menus, but it does what it's supposed to do.
01:35:21
◼
►
Like the limitations of the Photos app
01:35:24
◼
►
that make it annoying continue to be there,
01:35:27
◼
►
but the addition of this feature
01:35:28
◼
►
does not make them any worse.
01:35:30
◼
►
And the addition of this feature, I think,
01:35:31
◼
►
was done in a way that is pretty obvious.
01:35:35
◼
►
I mean, it was obvious to me as I'm looking for it,
01:35:37
◼
►
but like there's not a lot to stumble over
01:35:40
◼
►
or be confused about.
01:35:41
◼
►
There's a couple of new pop-up menus,
01:35:42
◼
►
a couple of new little settings,
01:35:44
◼
►
and they all are clearly explained
01:35:46
◼
►
and work the way you'd want them to.
01:35:48
◼
►
And I am actually very excited about upgrading to Ventura now
01:35:51
◼
►
for this feature alone,
01:35:53
◼
►
because it seems like it's gonna work.
01:35:55
◼
►
And it seems like it does pretty much everything
01:35:58
◼
►
that I want it to do.
01:35:59
◼
►
The, in particular delete notifications
01:36:02
◼
►
is all the peace of mind I need to know
01:36:03
◼
►
that I'm not accidentally messing,
01:36:05
◼
►
someone doesn't accidentally do something foolish
01:36:07
◼
►
and deletes things.
01:36:08
◼
►
That if I get a notification,
01:36:09
◼
►
I can just undo that, I'll be fine.
01:36:11
◼
►
And the fact that I can sort of manually move photos on
01:36:14
◼
►
as I gain confidence, like I'll just chuck a bunch of photos
01:36:17
◼
►
in, I'll just use, I'll put the new photos
01:36:18
◼
►
into the shared library or whatever,
01:36:19
◼
►
just sort of like, I can move to it at my own pace
01:36:23
◼
►
instead of just saying, hey, we're gonna convert
01:36:24
◼
►
your whole library to shared, or you have to pick up front
01:36:26
◼
►
which ones do you want to convert
01:36:27
◼
►
that I can do it manually one at a time.
01:36:30
◼
►
It still boggles my mind, the sort of non-uniformity
01:36:33
◼
►
of UI in photos, where the right-click menus
01:36:37
◼
►
seem to be made by an entirely different team
01:36:39
◼
►
in the menu bar and they don't talk to each other.
01:36:43
◼
►
Like the copy edits and paste edits thing,
01:36:44
◼
►
it's just so inconsistent.
01:36:46
◼
►
The keywords, the location stuff,
01:36:48
◼
►
like it just does not work like a normal Mac app,
01:36:51
◼
►
but the functionality is there if you know where to find it
01:36:53
◼
►
and are willing to fight the UI to get it.
01:36:55
◼
►
But overall, I'm pretty happy
01:36:57
◼
►
with the Mac incarnation of this feature.
01:36:59
◼
►
I'm using it in a test photo library with a dozen photos
01:37:02
◼
►
instead of a real photo library, which has 145,000.
01:37:05
◼
►
So we'll see how it goes,
01:37:06
◼
►
but I give this a cautious thumbs up.
01:37:08
◼
►
And like I said, using this has made me anxious now
01:37:11
◼
►
to upgrade to Ventura, knowing full well
01:37:13
◼
►
that I can't actually upgrade to Ventura
01:37:15
◼
►
until it's out for real,
01:37:16
◼
►
because there's no way I'm going to subject
01:37:18
◼
►
my real photo library to a beta.
01:37:20
◼
►
But I'm actually kind of looking forward to it.
01:37:23
◼
►
- That's really good news.
01:37:24
◼
►
I'm super stoked about that.
01:37:26
◼
►
That should be really great.
01:37:27
◼
►
- Yeah, this is one of those things that,
01:37:29
◼
►
assuming that they get it to work well,
01:37:33
◼
►
it sounds like they're on their path,
01:37:35
◼
►
this is one of those things that we didn't have for years,
01:37:37
◼
►
and we're constantly yelling about it,
01:37:40
◼
►
we're gonna get it and we're going to instantly
01:37:43
◼
►
forget about it and it's just gonna be one of those things
01:37:46
◼
►
that like oh, we just have this now.
01:37:47
◼
►
Like this problem that we've had for so long
01:37:49
◼
►
is hopefully just gonna be solved and that'll be it.
01:37:52
◼
►
And it'll just, you know, Apple will have put in
01:37:55
◼
►
all these years of effort trying to get this to work
01:37:57
◼
►
for about a minute of thanks for the public.
01:38:01
◼
►
And then we're all gonna then just take it all for granted
01:38:03
◼
►
and just assume instantly, of course this problem is solved.
01:38:06
◼
►
What are you talking about?
01:38:07
◼
►
Hopefully we're just not gonna think about it anymore.
01:38:09
◼
►
'Cause that's, largely that's how iCloud Photo Library
01:38:13
◼
►
is for individuals with the syncing
01:38:16
◼
►
and everything like that.
01:38:17
◼
►
It largely works very, very well.
01:38:19
◼
►
And for the most part, you just don't have to think about it.
01:38:22
◼
►
Most people, you just take a picture on your phone,
01:38:26
◼
►
and a few minutes later it's on your Mac, and that's it.
01:38:28
◼
►
And you don't have to, you can make edits in one place
01:38:31
◼
►
and it goes to the other one eventually, or quickly,
01:38:33
◼
►
it depends on conditions.
01:38:35
◼
►
It's a pretty good, solid system.
01:38:37
◼
►
You don't hear a lot of stories of people
01:38:39
◼
►
having problems with iCloud Photo Library.
01:38:40
◼
►
It's a pretty great, solid system.
01:38:43
◼
►
And so if they went into this with similar care
01:38:47
◼
►
and a similar platform and similar skill,
01:38:49
◼
►
which it sounds like they did, I expect
01:38:52
◼
►
this is just going to pretty much work.
01:38:54
◼
►
And we're going to all instantly forget about it,
01:38:57
◼
►
which is great.
01:38:57
◼
►
One of the things we talked about when we would discuss
01:39:00
◼
►
this feature in the past and you'd get a lot of pushback,
01:39:02
◼
►
you'd say, oh, that's so complicated.
01:39:03
◼
►
How are you going to figure out, like,
01:39:05
◼
►
which photo goes where or what you're looking at.
01:39:07
◼
►
And there's so many different ways you could do this
01:39:09
◼
►
and you want to give individual people control
01:39:11
◼
►
and who has permissions.
01:39:12
◼
►
And like, it is a large, complicated problem space.
01:39:17
◼
►
And the way Apple has tackled this
01:39:18
◼
►
when they're successful in features like this
01:39:20
◼
►
is they choose a subset of features
01:39:22
◼
►
that they think is that they can implement
01:39:24
◼
►
and that is understandable to people.
01:39:27
◼
►
And they make sure that subset is big enough
01:39:29
◼
►
to cover most use cases,
01:39:31
◼
►
but small enough that they can present a UI to it
01:39:34
◼
►
in a way that doesn't overwhelm, right?
01:39:37
◼
►
To give an example of where they may have misfired on this,
01:39:39
◼
►
like focus modes, focus modes overwhelms a little bit.
01:39:41
◼
►
Like if you try to set that up on a phone
01:39:43
◼
►
and it's asking you all these questions,
01:39:44
◼
►
you have to make all these decisions
01:39:45
◼
►
and it's a little bit overwhelming
01:39:46
◼
►
and it's really kind of a power user feature, right?
01:39:48
◼
►
And it is very complicated
01:39:50
◼
►
and it's not very clear what's going on.
01:39:52
◼
►
And shared photo libraries, people are always saying,
01:39:55
◼
►
there's no way Apple can do this,
01:39:56
◼
►
it's too complicated, people won't understand it.
01:39:58
◼
►
The way they've chosen to do it is so simple
01:40:01
◼
►
with so few decisions to make and so little new UI to learn,
01:40:06
◼
►
and the UI that is there,
01:40:08
◼
►
it's just incredibly straightforward,
01:40:10
◼
►
doesn't really require much of an explanation.
01:40:12
◼
►
It's like, you get it, and that's it,
01:40:14
◼
►
and it just becomes, it fades back into the background,
01:40:16
◼
►
it's not a thing that you think about anymore.
01:40:18
◼
►
It doesn't have all the features that you can imagine
01:40:19
◼
►
for a shared photo library.
01:40:21
◼
►
I would like more granular permissions
01:40:22
◼
►
for what people can do, I would like view only.
01:40:24
◼
►
There's all sorts of stuff you can think of
01:40:25
◼
►
that you could add to this.
01:40:27
◼
►
But this is a baseline version one to get the thing working.
01:40:30
◼
►
I don't know if they'll ever expand on it,
01:40:32
◼
►
but just the downside of Mac development
01:40:34
◼
►
in Apple these days.
01:40:35
◼
►
But I think the subset of features they've chosen
01:40:38
◼
►
is good enough to cover most people's needs,
01:40:41
◼
►
probably also included in my own,
01:40:43
◼
►
and is so simple, so not like,
01:40:47
◼
►
there's no wizard you're gonna go through
01:40:49
◼
►
that's gonna ask you 8,000 questions.
01:40:50
◼
►
There's no really complicated UI.
01:40:52
◼
►
I think the UI they previously and probably still
01:40:55
◼
►
have for shared photo libraries
01:40:58
◼
►
is more complicated and confusing and worse than this UI,
01:41:02
◼
►
and that's a simpler feature.
01:41:03
◼
►
So kudos to figuring out the right subset of things
01:41:06
◼
►
to make, and again, this is just Mac photos,
01:41:08
◼
►
I don't know what it looks like on a Mac app,
01:41:10
◼
►
the right subset of features to make this simple for users
01:41:13
◼
►
while still accomplishing the goal,
01:41:15
◼
►
which is I don't wanna have to log into my iOS account
01:41:18
◼
►
to deal with the family photos.
01:41:19
◼
►
- Yeah, this will be really great
01:41:21
◼
►
because we have the opposite arrangement in our family
01:41:23
◼
►
where I am the keeper of the family photo album,
01:41:26
◼
►
and Erin basically doesn't have squat.
01:41:29
◼
►
She has the last month of her own pictures on her phone
01:41:32
◼
►
and then that's it.
01:41:33
◼
►
And so for her to have access to all of our family pictures
01:41:37
◼
►
going back 15, well 17 years
01:41:39
◼
►
at the beginning of our relationship,
01:41:40
◼
►
I think that'll be really great for her
01:41:41
◼
►
and I'm really, really looking forward to this.
01:41:43
◼
►
- Thanks to our sponsors this week,
01:41:45
◼
►
Squarespace, Instabug, and WorkCheck.
01:41:48
◼
►
And thanks to our members who support us directly.
01:41:50
◼
►
You can join at atp.fm/join.
01:41:53
◼
►
We will talk to you next week.
01:41:55
◼
►
Now the show is over, they didn't even mean to begin
01:42:02
◼
►
'Cause it was accidental, oh it was accidental
01:42:08
◼
►
John didn't do any research, Marco and Casey wouldn't let him
01:42:13
◼
►
'Cause it was accidental, oh it was accidental
01:42:18
◼
►
And you can find the show notes at ATP.fm
01:42:23
◼
►
And if you're into Twitter, you can follow them at C-A-S-E-Y-L-I-S-S
01:42:33
◼
►
So that's Kasey Liss M-A-R-C-O-A-R-M
01:42:37
◼
►
N-T-M-A-R-C-O-R-M-N S-I-R-A-C-U-S-A-C-R-A-C-U-S-A
01:42:45
◼
►
It's accidental (it's accidental)
01:42:48
◼
►
They didn't mean to, accidental (accidental)
01:42:53
◼
►
♪ Tech podcast so long ♪
01:42:56
◼
►
- Oh, I've been doing Swift UI.
01:43:01
◼
►
Oh yes, how's that going my friend?
01:43:03
◼
►
- I saw you complaining about that on Twitter.
01:43:05
◼
►
- Oh, I had a good talk with Underscore today
01:43:10
◼
►
on Under the Radar, so you should go listen to that.
01:43:12
◼
►
But I've basically resigned myself to the fact that I,
01:43:15
◼
►
if I'm going to continue to be a professional iOS programmer,
01:43:21
◼
►
Like if this is going to continue to be my career,
01:43:24
◼
►
I have to jump into SwiftUI.
01:43:26
◼
►
I feel like the equivalent now of having
01:43:29
◼
►
a really big carbon app in like 2008.
01:43:32
◼
►
So it's like, you know, I can see the writing on the wall
01:43:36
◼
►
for most of the code I have, and for most,
01:43:39
◼
►
and more importantly, for most of the knowledge I have.
01:43:42
◼
►
I know Objective-C and UIKit really, really well.
01:43:47
◼
►
And that's not helping me right now.
01:43:50
◼
►
Like that's, if you were to start writing
01:43:53
◼
►
a brand new app today, if you wrote the whole thing
01:43:57
◼
►
in Objective-C, people would think you're weird
01:43:59
◼
►
and you're gonna miss out on a lot of the advantages
01:44:03
◼
►
from tooling and a lot of the newest APIs
01:44:05
◼
►
and things like that, like you're making it harder
01:44:07
◼
►
on yourself needlessly.
01:44:10
◼
►
And so no question Swift is the language
01:44:13
◼
►
you should be using for any new iOS or Mac app.
01:44:17
◼
►
But the UI framework thing is a different question.
01:44:21
◼
►
SwiftUI is still very early.
01:44:23
◼
►
However, every time I write UI kit code,
01:44:26
◼
►
I get that same feeling as if I'm writing new
01:44:28
◼
►
objective C code, like I shouldn't be doing this.
01:44:31
◼
►
It's been made a little more complicated
01:44:33
◼
►
by the recent developments in UI kit.
01:44:37
◼
►
Feel like, if I could borrow a term from Joel Spolsky,
01:44:42
◼
►
it forever ago, it feels like the UI kit team
01:44:45
◼
►
has been taken over by architecture astronauts.
01:44:48
◼
►
And the amount of abstraction and layers
01:44:53
◼
►
and nitpick configuration and stuff
01:44:56
◼
►
that's going into the latest changes
01:44:58
◼
►
over the last few years in UIKit,
01:45:00
◼
►
like where they're going, I don't want to follow them.
01:45:05
◼
►
- Can you think of an example offhand
01:45:07
◼
►
where this is getting ugly to you in UIKit?
01:45:09
◼
►
- Yeah, so all the new button configuration stuff,
01:45:13
◼
►
table cell configuration stuff, collection view,
01:45:17
◼
►
like a lot of this stuff, the old way of doing things
01:45:20
◼
►
was more primitive, but another way to say that is simpler.
01:45:25
◼
►
And they've created these new levels and levels
01:45:27
◼
►
of abstractions and management classes
01:45:29
◼
►
and configuration classes and different things above it
01:45:32
◼
►
that you're now expected to use,
01:45:33
◼
►
and many of the old methods are being deprecated.
01:45:36
◼
►
Where they're going, like I tried playing
01:45:38
◼
►
with a lot of the new UI kit stuff
01:45:39
◼
►
when I was doing my redesign last fall and winter,
01:45:42
◼
►
And it was just a lot more code
01:45:45
◼
►
to do the same things for me.
01:45:47
◼
►
And it seemed like they're optimizing for needs
01:45:51
◼
►
and preferences that are different from mine.
01:45:54
◼
►
I have many similar complaints with Swift itself.
01:45:57
◼
►
I mean, Swift, the language is,
01:45:58
◼
►
I mean, they're in space at this point.
01:46:01
◼
►
Like they're, I don't know what they're doing
01:46:03
◼
►
in certain areas of the language,
01:46:04
◼
►
but at least most of those,
01:46:06
◼
►
most of them don't get in my way.
01:46:08
◼
►
But there are, I mean, there are certain things like,
01:46:10
◼
►
To fix an iOS 15 deprecation warning,
01:46:13
◼
►
I had to start using async for one of my CloudKit calls.
01:46:18
◼
►
On the Overcast login screen, it queries CloudKit
01:46:21
◼
►
for the list of accounts that are associated with your Apple
01:46:24
◼
►
That way, I don't have to get usernames and passwords.
01:46:27
◼
►
I can just pull from CloudKit, here's
01:46:29
◼
►
a list of account tokens that I know exist from your Apple ID.
01:46:32
◼
►
And so it's a very, very basic CloudKit thing.
01:46:34
◼
►
And I had to switch over to an async call.
01:46:37
◼
►
they've already deprecated the previous query method
01:46:40
◼
►
for some reason.
01:46:42
◼
►
So I had to edit this totally fine working code
01:46:45
◼
►
that I'd never touch.
01:46:46
◼
►
And adding this, I had to add so many more things everywhere.
01:46:51
◼
►
It's like, in an effort to make this simpler,
01:46:54
◼
►
they've made it even more complex.
01:46:56
◼
►
And in certain cases, they went so far over the top.
01:46:59
◼
►
Like, there was one of the--
01:47:01
◼
►
it's just like a simple CloudKit fetch query,
01:47:03
◼
►
like fetch records matching this query.
01:47:05
◼
►
It returns this complicated result object
01:47:08
◼
►
with two different layers of generics,
01:47:10
◼
►
and it's less than, greater than symbols,
01:47:14
◼
►
and it's complete.
01:47:15
◼
►
So you auto-complete the closure completion
01:47:18
◼
►
for dealing with these records,
01:47:20
◼
►
and the type it gives you is full of generic gobbledygook.
01:47:24
◼
►
You have no way to know what you're supposed to type
01:47:26
◼
►
into this box to actually, like, what type is this variable?
01:47:29
◼
►
If you just let it auto-completed errors out
01:47:31
◼
►
and give you an even more complicated error message
01:47:33
◼
►
that you can't understand.
01:47:34
◼
►
- Just look at the code examples and documentation, right?
01:47:36
◼
►
- Yeah, right.
01:47:39
◼
►
- So eventually I had to start looking up
01:47:41
◼
►
like Google blog posts about how the heck do you use
01:47:43
◼
►
this stuff and the answer is, as far as I can tell,
01:47:47
◼
►
is actually it's some kind of complicated result result
01:47:50
◼
►
and you have to say result.zero.result or something
01:47:55
◼
►
and that's actually in your shipping code
01:47:59
◼
►
that you have to have that, result.zero.
01:48:02
◼
►
Who is designing these things?
01:48:04
◼
►
I'm sure they have their reasons.
01:48:06
◼
►
They have very smart people there.
01:48:07
◼
►
But whatever they're doing in certain areas
01:48:09
◼
►
is drifting apart from any way I think of coding
01:48:14
◼
►
and any way I want to be coding.
01:48:15
◼
►
And UIKit itself is, in many ways, going in that direction.
01:48:19
◼
►
And so, heading back a few levels in the stack here,
01:48:22
◼
►
SwiftUI, I think, is what I need.
01:48:25
◼
►
Like, if I'm going to keep making iOS apps for my career,
01:48:28
◼
►
and that's my intention,
01:48:30
◼
►
then SwiftUI is what I have to learn.
01:48:33
◼
►
I've resigned myself to that.
01:48:35
◼
►
I don't necessarily have to have everything in the app
01:48:39
◼
►
be SwiftUI, that I think is, it's probably still too early
01:48:43
◼
►
for that in terms of the framework development.
01:48:45
◼
►
But I have to start using a lot of SwiftUI
01:48:48
◼
►
and really getting good with it and using it by default
01:48:50
◼
►
and only bailing out of it when I really have to
01:48:53
◼
►
as opposed to bailing out of it for comfort reasons
01:48:56
◼
►
or for familiarity.
01:48:58
◼
►
So that's where I am now and I was,
01:49:02
◼
►
I've been working on it all day trying to replicate
01:49:04
◼
►
some of the basic structure of Overcast in SwiftUI
01:49:07
◼
►
just to see is this even possible.
01:49:09
◼
►
I'm slowly getting there.
01:49:10
◼
►
It is a slog but I'm finally in the very,
01:49:15
◼
►
very slight upswing part of it where I'm starting
01:49:21
◼
►
to finally get some traction and some progress
01:49:25
◼
►
And so I'm like just starting to be motivated
01:49:28
◼
►
to keep going on it.
01:49:29
◼
►
So that's my mood for the day, my mood update.
01:49:32
◼
►
I know this is my feelings podcast
01:49:34
◼
►
'cause I don't have one unlike you guys.
01:49:36
◼
►
So this is where I am today.
01:49:39
◼
►
I am slowly getting better at SwiftUI
01:49:43
◼
►
and slowly starting to think I should probably switch to it
01:49:47
◼
►
because the alternative would be like if I said,
01:49:51
◼
►
yeah, I'm just gonna use carbon forever in 2008.
01:49:53
◼
►
I was like, well, that's gonna limit your career then,
01:49:56
◼
►
and the usefulness of your code base.
01:49:59
◼
►
You're gonna definitely put a cap on the age of that.
01:50:03
◼
►
Well, this is how I feel about,
01:50:06
◼
►
first of all, Swift obviously is a requirement at this point.
01:50:09
◼
►
All of my Objective-C code, I regret it all,
01:50:12
◼
►
and I wish it was all Swift,
01:50:14
◼
►
'cause it would make certain things a lot easier,
01:50:15
◼
►
but Swift UI I think is that now.
01:50:18
◼
►
I think the idea, like right now,
01:50:21
◼
►
the way you would feel about writing Objective-C code
01:50:23
◼
►
in a brand new app today,
01:50:26
◼
►
I think we're gonna feel that way
01:50:27
◼
►
about writing UI kit code instead of SwiftUI
01:50:30
◼
►
in maybe three to five years.
01:50:32
◼
►
It may be sooner, probably not,
01:50:34
◼
►
but I'm guessing five years from now,
01:50:36
◼
►
the idea of writing a brand new screen
01:50:38
◼
►
or a brand new app using UI kit instead of SwiftUI
01:50:41
◼
►
is gonna seem very backwards.
01:50:44
◼
►
So I wanna, for once, be slightly ahead of things
01:50:48
◼
►
and go where the puck is being thrown.
01:50:54
◼
►
Because I'm tired of my knowledge and my code base
01:50:59
◼
►
being out of date, and so I want to actually move forward
01:51:01
◼
►
at a reasonable time instead of five years too late.
01:51:04
◼
►
- Well you waited until they had a WWDC where they said,
01:51:06
◼
►
"Hey dummy, UI kit, mm-mm, app kit, no."
01:51:09
◼
►
That's what you want, yes.
01:51:11
◼
►
But yeah, as we said when we talked about the WWDC thing,
01:51:14
◼
►
that is an aspirational goal, they're not there,
01:51:16
◼
►
but they have clearly indicated directions,
01:51:17
◼
►
So yes, you're moving now.
01:51:19
◼
►
To assess your level of--
01:51:21
◼
►
not level of frustration, but level of--
01:51:24
◼
►
I don't know, how far have you gotten into SwiftUI?
01:51:27
◼
►
One good indicator, I think, is have you yet implemented
01:51:31
◼
►
an if modifier as an extension on view in SwiftUI?
01:51:36
◼
►
Because I feel like everyone who encounters this--
01:51:40
◼
►
I mean, Google for it and you'll find it.
01:51:42
◼
►
Because when you're writing SwiftUI
01:51:43
◼
►
and you're not used to declarative,
01:51:44
◼
►
you're like, can I just write a conditional?
01:51:45
◼
►
and you can write conditionals in SwiftUI.
01:51:47
◼
►
Like you can do it, but it's not like,
01:51:50
◼
►
it looks like a regular Swift conditional,
01:51:52
◼
►
but it's not, right?
01:51:53
◼
►
And there are things you can't do from it
01:51:55
◼
►
because it's not a real conditional.
01:51:57
◼
►
So it is possible to make, you know,
01:51:59
◼
►
how you can just do, you know, like a dot padding,
01:52:01
◼
►
you know, dot accessibility label, dot whatever,
01:52:04
◼
►
you know, dot modified as your dot chaining
01:52:06
◼
►
off of the various things in the SwiftUI view,
01:52:08
◼
►
you can make a dot if.
01:52:10
◼
►
And it was like, like a week into this when I said,
01:52:13
◼
►
you know what, F it, I need something that's like dot if,
01:52:15
◼
►
and you just Google for it and it's like,
01:52:17
◼
►
it's like 10 lines of code, it's real easy to do,
01:52:20
◼
►
and once you have it, you're just like,
01:52:21
◼
►
ah, I feel better.
01:52:23
◼
►
Again, you're kind of like fighting against
01:52:24
◼
►
the declarative nature, but sometimes it makes things
01:52:26
◼
►
so much easier, kind of like a view that fits
01:52:29
◼
►
that they added.
01:52:30
◼
►
I love their naming, it's just this frustration of like,
01:52:33
◼
►
well, sometimes I wanna have this view,
01:52:34
◼
►
but sometimes when the thing is this size,
01:52:35
◼
►
I wanna have this view, and I can do all this
01:52:38
◼
►
geometry reader stuff to figure out which one's gonna fit
01:52:40
◼
►
and use the right one.
01:52:41
◼
►
And this is a case where I'd be doing an if,
01:52:43
◼
►
like dot if this then do this kind of view
01:52:45
◼
►
but they made a whole built in, not built in,
01:52:48
◼
►
but like part of situation is view that fits
01:52:50
◼
►
and you just say hey, here's the two possibilities,
01:52:52
◼
►
just pick the one that fits.
01:52:54
◼
►
Don't make me do the math, don't make me figure it out.
01:52:57
◼
►
View that fits, I feel like dot if
01:52:58
◼
►
is a similar type of thing.
01:52:59
◼
►
We were like, I could do this another way
01:53:01
◼
►
but just dot if, right?
01:53:02
◼
►
I still have a place in my code where I wanna do an HStack
01:53:04
◼
►
or a VStack based on some value
01:53:06
◼
►
and I can't figure out how to do that
01:53:08
◼
►
because you can't do like dot if, you know,
01:53:10
◼
►
'cause I wanna say, I guess I could take everything
01:53:12
◼
►
that's in the HStack and the VStack
01:53:13
◼
►
and break it out into a function.
01:53:14
◼
►
And it's like, but I don't wanna do that.
01:53:16
◼
►
It's not that much stuff.
01:53:17
◼
►
So now I have like, if this HStack else VStack,
01:53:20
◼
►
and I wish I could do HStack or VStack
01:53:22
◼
►
based on this parameter.
01:53:23
◼
►
- That is something you could write, but I take your point.
01:53:26
◼
►
- No, you totally can write.
01:53:28
◼
►
Like that's the same thing with .if.
01:53:29
◼
►
Like all it is is it's not Stinktastic sugar directly
01:53:32
◼
►
because it is actually doing some more stuff
01:53:34
◼
►
of like wrapping things in interview or whatever.
01:53:35
◼
►
But like, but it's just like,
01:53:38
◼
►
I don't wanna see as much stuff here.
01:53:39
◼
►
So I wish I could make this more compact.
01:53:41
◼
►
we'll break it out into another subfunction.
01:53:42
◼
►
There's no efficiency problem.
01:53:43
◼
►
SwiftUI would have squished it all back for your bug,
01:53:45
◼
►
but I don't wanna break it out into another function.
01:53:47
◼
►
I just wanna do it here.
01:53:49
◼
►
Then you end up doing extension view
01:53:51
◼
►
and you just start typing stuff.
01:53:52
◼
►
And so many people have done this.
01:53:54
◼
►
If you just, I bet if you search GitHub
01:53:56
◼
►
for extension view open curly brace,
01:53:59
◼
►
you would find so much stuff.
01:54:00
◼
►
'Cause to SwiftUI's credit,
01:54:02
◼
►
you can make all sorts of view extensions
01:54:05
◼
►
that do really cool things and are super convenient,
01:54:07
◼
►
but it's kind of like, well, once you have that hammer,
01:54:09
◼
►
everything looks like a new view modifier,
01:54:11
◼
►
you're just like, I'm gonna make my own view modifiers,
01:54:13
◼
►
I'm gonna call them whatever I want,
01:54:14
◼
►
and they're gonna, you know,
01:54:15
◼
►
you can paint yourself into a corner,
01:54:16
◼
►
but I feel like .if is a flagpole of like,
01:54:18
◼
►
when you reach the level of frustration
01:54:20
◼
►
of not understanding how it wants you to do things,
01:54:21
◼
►
you're like, can I just have if and you make .if.
01:54:24
◼
►
- That's impressive.
01:54:25
◼
►
I haven't reached that level of hacks yet,
01:54:28
◼
►
but one level I've used a lot is like,
01:54:30
◼
►
making a custom view modifier just to get around
01:54:34
◼
►
the lack of an if available construct,
01:54:37
◼
►
for like, if I want a modifier on something
01:54:39
◼
►
that's only available, say, in iOS 15,
01:54:41
◼
►
and I'm writing for iOS 14 and 15,
01:54:43
◼
►
then you have to basically make a custom view modifier
01:54:46
◼
►
that's like, iOS 14 compatible version of this,
01:54:49
◼
►
and inside of it, you're like, well, if available this,
01:54:52
◼
►
then modify the view like this,
01:54:53
◼
►
otherwise, don't modify the view.
01:54:55
◼
►
And it's one of those frustrating things,
01:54:57
◼
►
because you can't use a real if statement in a dot chain,
01:55:01
◼
►
then you can't use if available in a regular, clean way.
01:55:05
◼
►
- But you can use it with dot if.
01:55:06
◼
►
I just put a pasteban for you, it's 10 lines of code,
01:55:09
◼
►
Don't paste this into your code.
01:55:11
◼
►
It'll be so easy and tempting to use.
01:55:13
◼
►
- This is amazing.
01:55:15
◼
►
- That's it.
01:55:16
◼
►
It's not complicated code.
01:55:17
◼
►
- Oh God, what a ridiculous thing this is.
01:55:21
◼
►
- This is both awesome and sad all at the same time.
01:55:25
◼
►
Oh man, I don't know.
01:55:26
◼
►
I have such mixed feelings about SwiftUI.
01:55:30
◼
►
I think because I'm a really crummy UI designer
01:55:36
◼
►
and developer. There's a lot that I like about SwiftUI because I think it helps me as someone
01:55:41
◼
►
who is an amateur at best when it comes to this stuff. It helps me create things that I think are
01:55:47
◼
►
aesthetically pleasing without me feeling like I'm getting bogged down in pixel perfect BS,
01:55:54
◼
►
where I'm trying to get UIKit to do something that it doesn't really want to do. And I think that
01:56:00
◼
►
SwiftUI makes a lot of stuff, it makes making things pretty a lot easier for me anyway.
01:56:06
◼
►
But the downside is, as many people have said many, many times, when you hit a wall in SwiftUI,
01:56:14
◼
►
it's one of two things. It's either like a screen on my screen in porch where you can push your way
01:56:20
◼
►
through it if you really try, like you can do dot if, if you will, or it is the Great Wall of China
01:56:26
◼
►
and there is no getting through it, over it, around it, etc. Like, you shall not pass,
01:56:30
◼
►
There is nothing you can do. And those situations are so incredibly frustrating. And so often,
01:56:37
◼
►
things that you think should be easy, and I wish I could think of an example of this, but things that
01:56:43
◼
►
you would think should be easy are very, very, very difficult. Now the flip side of that is
01:56:47
◼
►
things that oftentimes you would expect to be difficult can be very easy. But when the easy
01:56:51
◼
►
stuff is super hard, it's just infuriating. And so I waffle, in typical Casey style, I waffle back
01:56:58
◼
►
and forth between this is the greatest thing I've ever seen in my life and this is a pile of garbage
01:57:02
◼
►
that I wish I never saw before. I was thinking of something that one of those type of things that
01:57:06
◼
►
if there's no way to do it you have kind of problem I'm thinking of the type of hacks that
01:57:10
◼
►
I don't know they seem natural to do and in a part of language one of the examples is I have
01:57:14
◼
►
a place in my code where I'm setting I have a bunch of like enum values or something for
01:57:19
◼
►
that are going to appear in a pop-up menu right and I put them in the order in the enum like in
01:57:24
◼
►
the order I want to see them in the pop-up menu just for convenience again I'm not writing a big
01:57:27
◼
►
It's simple, I'm like, why not make my life easier?
01:57:29
◼
►
Why not put them there?
01:57:30
◼
►
But actually, what I want on the real pop-up menu
01:57:32
◼
►
is I want there to be a separator between like,
01:57:34
◼
►
you know, the first two items, then a separator,
01:57:37
◼
►
then the rest of the items, right?
01:57:38
◼
►
And there's a million ways to do that in AppKit.
01:57:40
◼
►
It's really easy to add a separator or whatever.
01:57:41
◼
►
But being a lazy programmer, you're like,
01:57:43
◼
►
I kinda like this being data-driven.
01:57:44
◼
►
I kinda like just being able to define the enum
01:57:46
◼
►
and put a comment above that says,
01:57:47
◼
►
by the way, the order of these things is important.
01:57:49
◼
►
It's the order they're gonna appear in the pop-up menu.
01:57:52
◼
►
And being able to add something
01:57:54
◼
►
that will automatically make the separator appear.
01:57:57
◼
►
And AppKit doesn't have that functionality.
01:57:58
◼
►
AppKit doesn't know, hey, give me an enum,
01:58:00
◼
►
and there's no way to express a separator item in an enum,
01:58:03
◼
►
because it shouldn't be tied to the UI, right?
01:58:06
◼
►
But I have this whole data-driven structure
01:58:08
◼
►
that's saying, here's going to be the contents of my menus
01:58:10
◼
►
and everything, and the enum is part of it.
01:58:12
◼
►
And in that definition, I can put
01:58:14
◼
►
an item that's just a string that's a hyphen.
01:58:16
◼
►
And then in the code, when I'm building that pop-up menu,
01:58:19
◼
►
I can say, oh, and by the way, if the item you got
01:58:21
◼
►
is not a menu item but it's just a hyphen, put it
01:58:23
◼
►
in a separator.
01:58:24
◼
►
And I can do that because it's an imperative language.
01:58:26
◼
►
and I can hook into any phase of the process.
01:58:28
◼
►
I can hook into the thing that's like,
01:58:29
◼
►
here's where I'm building this pop-up menu,
01:58:31
◼
►
and here's the data I'm being driven off of to do it.
01:58:33
◼
►
And I just feed this data in,
01:58:34
◼
►
and it goes into the generic system,
01:58:35
◼
►
and it says if it's a menu item, put the menu item in there,
01:58:37
◼
►
and if it's an enum, use the label of the enum,
01:58:39
◼
►
and have the value be the value of the enum.
01:58:41
◼
►
Like, it's data-driven code.
01:58:44
◼
►
You don't wanna do everything by hand, right?
01:58:45
◼
►
But what if you need a separator?
01:58:47
◼
►
Just throw a hyphen in there, and I say,
01:58:48
◼
►
I'm writing the code.
01:58:49
◼
►
I'm at the point where I'm reading the thing.
01:58:51
◼
►
If I see a hyphen, just put in a separator.
01:58:53
◼
►
That type of plumbing,
01:58:55
◼
►
that type of override this method
01:58:57
◼
►
and write your imperative code here
01:58:59
◼
►
is not how SwiftUI works.
01:59:01
◼
►
It's declarative.
01:59:02
◼
►
It's not like you're going to subclass a thing
01:59:04
◼
►
and override the methods where you wanna override
01:59:06
◼
►
and do this on setup and this on teardown or whatever.
01:59:08
◼
►
That's not how it works, right?
01:59:10
◼
►
And so there's not really a convenient place to say,
01:59:12
◼
►
I'm laying out a context menu,
01:59:14
◼
►
and by the way, I want it to be data-driven or whatever.
01:59:16
◼
►
And you can do that by making a view modifier
01:59:19
◼
►
that says .data-driven context menu.
01:59:22
◼
►
And then in the .data-driven context menu,
01:59:25
◼
►
view extension, put all that imperative coding in,
01:59:28
◼
►
but you feel like you're mode switching.
01:59:29
◼
►
You feel like it's not, you know,
01:59:31
◼
►
I shouldn't be writing my own extensions to view
01:59:34
◼
►
every time I wanna do something.
01:59:36
◼
►
It's just a different way of thinking about it.
01:59:39
◼
►
But when you're faced with that situation in SwiftUI,
01:59:41
◼
►
you're like, but then what do I do?
01:59:42
◼
►
Like, you know, do I make the fallback that maybe,
01:59:46
◼
►
you know, you can always just do a thing where you say,
01:59:49
◼
►
I'm gonna fall back to AppKit,
01:59:50
◼
►
or I'm gonna fall back to UIKit,
01:59:51
◼
►
or I'm going to make this whole thing driven by UIKit,
01:59:54
◼
►
but then have the subset of it be SwiftUI
01:59:56
◼
►
or something like that.
01:59:57
◼
►
And I do wonder about, I think we mentioned this
01:59:59
◼
►
in the past shows, what would you do if there was no UI kit?
02:00:01
◼
►
What would you do if there was no app kit?
02:00:02
◼
►
Well, you know, SwiftUI wouldn't work
02:00:04
◼
►
because half the things it's doing under the cover
02:00:05
◼
►
use UI kit and app kit.
02:00:06
◼
►
But setting that aside,
02:00:08
◼
►
if there was no lower level to drop down to,
02:00:10
◼
►
how would you do the weird imperative thing
02:00:13
◼
►
where you look for a hyphen in a data structure
02:00:15
◼
►
and when you write some code that's when it sees that hyphen
02:00:17
◼
►
it adds a menu separator,
02:00:18
◼
►
which is not a feature of any framework.
02:00:19
◼
►
It's just some BS you made up yourself
02:00:21
◼
►
to make your thing more convenient
02:00:23
◼
►
so you wouldn't have to manually write a bunch of code.
02:00:25
◼
►
I don't know, I think about that when I'm doing hacks
02:00:27
◼
►
like that, of like, hey, if this wasn't here,
02:00:29
◼
►
what would be my alternative,
02:00:31
◼
►
and I don't really know the answer.
02:00:32
◼
►
- Well, I think it would be largely like
02:00:35
◼
►
the earlier days of the web, where a lot of times,
02:00:38
◼
►
like, you know, suppose you wanted to, say,
02:00:40
◼
►
have a very custom behavior or appearance
02:00:43
◼
►
of a certain form control, and browsers would render it
02:00:45
◼
►
using some kind of UI widget from the platform,
02:00:47
◼
►
and a lot of times, certain customization
02:00:50
◼
►
just wouldn't be possible.
02:00:51
◼
►
I think it would be a lot like that.
02:00:53
◼
►
You would just, at that time, we web developers
02:00:57
◼
►
would just kind of accept, like, well,
02:00:59
◼
►
ideally we would have the app look and work like this,
02:01:02
◼
►
but because of the limitations of the browser,
02:01:04
◼
►
we can't really do that, so we'll just suck it up.
02:01:07
◼
►
I think that's the answer.
02:01:08
◼
►
- Well, what we would do is you'd make an image.
02:01:10
◼
►
You'd say, okay, this is not gonna be a submit button.
02:01:13
◼
►
It's gonna be an image, and I'm gonna use JavaScript
02:01:15
◼
►
that when I'm gonna get the mouse down on the image,
02:01:17
◼
►
and then I'm gonna change the image to be the mouse down,
02:01:19
◼
►
like you'd basically custom implement your button.
02:01:20
◼
►
In fact, in Switch Glass, my little app
02:01:23
◼
►
that shows one tiny thing on the screen,
02:01:24
◼
►
I was using the SwiftUI button, capital B,
02:01:27
◼
►
type for my buttons for like, I don't know,
02:01:31
◼
►
more than half of the versions until I just gave up
02:01:33
◼
►
'cause I could not get it to do what I wanted it to do
02:01:35
◼
►
and I just had to stop using button
02:01:37
◼
►
and basically re-implement my own button
02:01:39
◼
►
the same way you would do it on the web
02:01:41
◼
►
back before CSS could style submit buttons.
02:01:43
◼
►
You'd make it an image.
02:01:44
◼
►
You'd try to grab mouse down yourself.
02:01:46
◼
►
You'd set your own mouse down state.
02:01:48
◼
►
You detect mouse up.
02:01:49
◼
►
you basically re-implement button,
02:01:51
◼
►
half-assed re-implementation of button
02:01:52
◼
►
just so you can get it to do what you want it to do.
02:01:54
◼
►
And of course it doesn't look like the native UI,
02:01:56
◼
►
and of course the real solution is,
02:01:57
◼
►
please let us use CSS to style form controls,
02:01:59
◼
►
which took many years for it to come.
02:02:02
◼
►
But yeah, that's the alternative is like,
02:02:04
◼
►
well, I can't use button.
02:02:07
◼
►
I tried for six months and button just has too many bugs.
02:02:11
◼
►
And my thing, by the way, the bug was like,
02:02:13
◼
►
if you drag something, if you like pick a file
02:02:14
◼
►
off your desktop and drag it over my window,
02:02:18
◼
►
It's already weird that you can drag something over my window
02:02:20
◼
►
because it's a floating palette, and the active app is finder,
02:02:22
◼
►
not the thing, but you want it to react to your drag,
02:02:24
◼
►
and you want it to detect your drag,
02:02:26
◼
►
and you want it to highlight.
02:02:27
◼
►
That thing where you're already holding down the mouse button
02:02:29
◼
►
and you drag a thing over it, you
02:02:31
◼
►
could wiggle it back and forth over my palette,
02:02:33
◼
►
and you could get the SwiftUI button into a state
02:02:36
◼
►
where it didn't realize you were no longer on it,
02:02:38
◼
►
and the mouseover state would stay stuck.
02:02:41
◼
►
You'd have to wiggle it a lot, but you could do it.
02:02:43
◼
►
You could outrun the mouse tracking,
02:02:45
◼
►
and I just could not get rid of that bug,
02:02:47
◼
►
because I don't control that.
02:02:47
◼
►
I don't control the mouse tracking.
02:02:48
◼
►
That's happening in the layer below.
02:02:50
◼
►
If I was using AppKit, I would control it,
02:02:51
◼
►
'cause AppKit, I have access to all that mouse tracking
02:02:53
◼
►
and mouse tracking regions and all that other stuff,
02:02:55
◼
►
but I'm not using AppKit.
02:02:56
◼
►
It's SwiftUI button that's saying, oh, SwiftUI button,
02:02:59
◼
►
don't worry, it knows when the mouse is over it.
02:03:01
◼
►
It doesn't, it gets confused.
02:03:03
◼
►
And then my app has a cosmetic bug,
02:03:05
◼
►
'cause now the highlighted state gets stuck
02:03:07
◼
►
and you put the file back down on the desktop
02:03:10
◼
►
and you look up at the thing and it's stuck.
02:03:11
◼
►
So I had to give up on button
02:03:13
◼
►
and had to implement it myself.
02:03:14
◼
►
And that definitely felt like web UI of like,
02:03:16
◼
►
oh, you can't style form controls with CSS,
02:03:19
◼
►
implement it yourself with an image map.
02:03:22
◼
►
Oh, those were the days.
02:03:23
◼
►
- I'm hoping that, so the discipline I'm going to try
02:03:26
◼
►
to have here is to be more flexible on my requirements
02:03:30
◼
►
and to actually give in a lot of those cases
02:03:34
◼
►
where if the stock behavior of some control
02:03:37
◼
►
or the easily achievable behavior of some control
02:03:41
◼
►
or appearance of some control is not exactly what I want,
02:03:44
◼
►
but I can make it work, then I'll just make it work.
02:03:48
◼
►
Because one goal I have here,
02:03:50
◼
►
I have eight years of code here,
02:03:52
◼
►
and so my UI kit code, even my UI kit code
02:03:56
◼
►
is not only in objective C,
02:03:58
◼
►
so it's typically more verbose than a Swift equivalent,
02:04:01
◼
►
but also it's like using all old UI kit methods
02:04:04
◼
►
of doing things, so there's a lot of boilerplate
02:04:07
◼
►
going on everywhere and manually setting borders
02:04:10
◼
►
and stuff like that all over the place.
02:04:12
◼
►
I'm hoping, and I think this is reasonable
02:04:14
◼
►
to expect that a Swift UI re-implementation
02:04:17
◼
►
of a lot of this stuff should be way less code.
02:04:21
◼
►
And that would, I would see a lot of value
02:04:26
◼
►
in having way less code, especially at the UI level.
02:04:29
◼
►
So I'm hoping that's achievable here.
02:04:31
◼
►
And if it is, I'm willing to give up
02:04:34
◼
►
some of the little details
02:04:35
◼
►
if it ends up being way less code.
02:04:37
◼
►
- I think that's a reasonable and pragmatic trade-off
02:04:39
◼
►
to make and I'm dubious that Mark Orment is capable
02:04:43
◼
►
making that trade-off just because I know how much you like things to be, you
02:04:47
◼
►
know, exactly just the way you want. But if you can stick with it, I think that's
02:04:52
◼
►
a perfectly, perfectly reasonable and again pragmatic trade-off to make.
02:04:56
◼
►
That's a big if. That is a big if.