84: ‘Doctoring the Ball’ With Guy English
00:00:00
◼
►
Boy, I really had a hard time getting my handle on WWDC.
00:00:05
◼
►
Two weeks later, it still feels like a lot to digest.
00:00:09
◼
►
There is a lot.
00:00:10
◼
►
There's a lot.
00:00:11
◼
►
So there's a lot of technical stuff.
00:00:13
◼
►
Huge amount of technical stuff.
00:00:15
◼
►
And then there's the entire sort of cultural change.
00:00:20
◼
►
Have you watched a lot of sessions in a week since or caught up or read the developer documentation?
00:00:27
◼
►
Yeah, I've been absorbing as much as I can. Yeah.
00:00:30
◼
►
Impressive. I literally don't know where to start.
00:00:34
◼
►
Well, here's what I would think. I think I mentioned this, you know, the whole thing is a goddamn blur, what I mentioned on stage, on the stage show, which was the previous episode.
00:00:42
◼
►
But I think I mentioned this, but I think it deserves even more attention because I think even more of it than I understood the day after the keynote.
00:00:50
◼
►
So much of what they announced technically comes down to XPC.
00:01:00
◼
►
And we've known, you know, and that's Apple's term for interapplication communication, right?
00:01:05
◼
►
The X, I guess, is...
00:01:07
◼
►
Yeah, it's a nice framework based on mock message passing.
00:01:13
◼
►
And they've been working on it for a long time.
00:01:17
◼
►
time. And I think you guys mentioned this on the debug round table, which was amazing
00:01:25
◼
►
to me because you guys had like six guys in there. And it really was like an orderly discussion
00:01:31
◼
►
where everybody got to speak plenty.
00:01:34
◼
►
Yeah, it was kind of surprising. We were all in the same room though. So that helps.
00:01:41
◼
►
You know, that makes all the difference in the world because you can do little things
00:01:43
◼
►
like you make eye contact and that's like I've got a point you can kind of like, you
00:01:47
◼
►
know, like, hey, I've got something and people can concede to you. Whereas if you're all
00:01:51
◼
►
over Skype, it's a lot more crosstalk. Yeah, I'm sure during this show, I'm gonna end up
00:01:57
◼
►
talking over you at some point. Well, that's why I have you here guy. Exactly. But yeah,
00:02:01
◼
►
no, it went really well. And I'm not just saying that because it's it's our show. But
00:02:06
◼
►
you know, I think listeners to your show would probably get a kick out of that one. Right.
00:02:09
◼
►
One of the points that was brought up, I think it was Ryan Nielsen brought up that outside
00:02:15
◼
►
developers have known for a while that Apple had this XPC architecture and was using it
00:02:22
◼
►
for their own stuff in the system because you can see it in like the stack traces you
00:02:27
◼
►
get when an app crashes.
00:02:28
◼
►
You can see that stuff's going on.
00:02:30
◼
►
Yeah, like if you're being on various share sheets, like the mail one, I think, or the
00:02:35
◼
►
Facebook sharing stuff.
00:02:36
◼
►
Yeah, like Facebook and Twitter.
00:02:39
◼
►
- Yeah, stuff like that will come up
00:02:40
◼
►
and what's happening is in your process
00:02:42
◼
►
there's a UI remote view controller it's called.
00:02:45
◼
►
And that's basically just basically a canvas
00:02:48
◼
►
in which some other processes interface gets projected
00:02:51
◼
►
into your app.
00:02:52
◼
►
And previously, if there was a bug or something
00:02:57
◼
►
that you would crash and you'd see a stack trace
00:03:00
◼
►
of all of the private goodies that went on behind the scenes
00:03:03
◼
►
in order to make that happen.
00:03:04
◼
►
- So we knew that stuff was going on
00:03:06
◼
►
And you could see, you know, you didn't have to be a genius.
00:03:09
◼
►
If you knew that was going on,
00:03:11
◼
►
and you could see that that's how Apple implemented
00:03:14
◼
►
the Twitter and Facebook sharing,
00:03:16
◼
►
then you could kind of think,
00:03:17
◼
►
well, then that could be an API
00:03:19
◼
►
so that anybody could get into that share sheet.
00:03:23
◼
►
And we all kind of hoped that
00:03:25
◼
►
that was gonna happen last year and didn't.
00:03:27
◼
►
- Well, the reason for that is like,
00:03:30
◼
►
it had been at least two operating systems
00:03:32
◼
►
that XPC had been in there.
00:03:35
◼
►
Right. I think it was Iowa six where some of that stuff, the sharing stuff started,
00:03:40
◼
►
Could be, but I think XPC was even in five.
00:03:42
◼
►
Well, then it's three, right? Five, six, seven before they opened it up to third parties.
00:03:47
◼
►
Yeah. Now, and to be, I don't, I don't actually believe XPC itself is yet open to third party,
00:03:52
◼
►
so I can check.
00:03:53
◼
►
No, but they've
00:03:54
◼
►
The stuff on top of it, right?
00:03:56
◼
►
Exactly. Right. Like that. They're, they're building all this stuff on top of it and that's
00:03:59
◼
►
how the keyboards, you know, all this crazy stuff, well not crazy, but all this seemingly
00:04:05
◼
►
divergent stuff like the sharing sheets and keyboards and I'm pretty sure the new web
00:04:16
◼
►
kit, there's an all new web kit API and we went all the long time where when Apple switched
00:04:22
◼
►
to the JIT, the Just-In-Time compiler, which requires memory being marked as executable,
00:04:29
◼
►
therefore didn't allow it for the third-party WebKit framework, that only Safari got to
00:04:34
◼
►
use the faster WebKit. And they didn't slow down third-party WebKit. They just didn't
00:04:41
◼
►
let third-party apps that embed WebKit use take advantage of the new thing, which is
00:04:46
◼
►
a subtle difference, but it's, you know.
00:04:47
◼
►
It is. It's kind of funny. Like, yeah, it's not that they slowed it down. They just sped
00:04:50
◼
►
their own thing up. But a lot of people took it as that they slowed us down. And that was
00:04:56
◼
►
not the case. Right. And the security thing. I'm pretty sure that that's x PC, too, right.
00:05:02
◼
►
So it's, it's not that they know the way that they've done this, and that they've given
00:05:07
◼
►
all apps that that use the new WebKit API, the fastest WebKit on the system is not by
00:05:13
◼
►
having WebKit running within your app anymore. It's a separate process. And much like Safari
00:05:20
◼
►
has been on the Mac for a while where you've got these separate rendering processes in
00:05:26
◼
►
a restricted sandbox that only do the rendering and then they project their view into the
00:05:32
◼
►
app through XPC.
00:05:33
◼
►
Right. So, and so for now for new WebKit on iOS, the reason that they allow the just-in-time
00:05:42
◼
►
to compiler is because you're completely shielded from your app. Like you see the results presented
00:05:47
◼
►
in your application. But malicious code can't.
00:05:51
◼
►
Right. The actual rendering process is a separate process. It's not just like a plugin or whatever.
00:05:58
◼
►
Yeah. Same thing with the keyboard. So it's, you're right. The big story is XPC. So one
00:06:08
◼
►
of the things I was saying maybe last week was, I think everybody's going to be talking
00:06:12
◼
►
Swift a lot but the the big story is basically the extensions and XPC and
00:06:17
◼
►
what that allows it right to you know to happen now and and in the future and
00:06:23
◼
►
it's you know a very Apple like way of doing it I mean we repeat ourselves
00:06:30
◼
►
frequently we're you know so many times there's you know here's what we want
00:06:35
◼
►
Apple please let us do this and then they listen to it and they think about
00:06:40
◼
►
about the actual problem and then they solve it
00:06:42
◼
►
in a way that we didn't expect.
00:06:44
◼
►
Right, where everybody I think really was saying,
00:06:46
◼
►
what we want is we want that super fast JavaScript engine.
00:06:51
◼
►
And Apple didn't give it to us because,
00:06:55
◼
►
or let third parties use it because of the security issues.
00:06:58
◼
►
But they figured out a way to give it to us
00:07:02
◼
►
without having it running in the process.
00:07:05
◼
►
Same thing with keyboards.
00:07:07
◼
►
It's that measure twice cut once kind of philosophy,
00:07:12
◼
►
where I think they look at the actual problem to be solved
00:07:15
◼
►
and try to come up with a solution for it
00:07:17
◼
►
rather than sort of cave to like, well, okay, fine.
00:07:20
◼
►
We'll let you run some JavaScript in your app.
00:07:23
◼
►
- There were rumors two years ago, a year ago,
00:07:25
◼
►
man, I think it might've been last year,
00:07:26
◼
►
but it was previous WWDC and there were rumors.
00:07:29
◼
►
Somebody had reported that there were going to be
00:07:30
◼
►
third-party keyboards announced
00:07:32
◼
►
and it came and went and they weren't announced.
00:07:36
◼
►
And I spoke to somebody from Apple, a friend in a position
00:07:42
◼
►
And they were like, no, it definitely
00:07:45
◼
►
wasn't going to happen that year.
00:07:47
◼
►
But they had looked at it extensively.
00:07:51
◼
►
They knew an awful lot about how it worked on Android.
00:07:54
◼
►
And this person was like, you wouldn't
00:07:58
◼
►
believe how it works on Android.
00:08:00
◼
►
It's more or less just a remote key logger.
00:08:02
◼
►
And some of them send every single key
00:08:06
◼
►
you press up to a server because they're doing server-side stuff, and that there's nothing
00:08:11
◼
►
you can do as a user to stop it. You install this thing from the Play Store, and everything
00:08:16
◼
►
you type could be being sent to a server.
00:08:19
◼
►
That's bananas.
00:08:20
◼
►
And in some cases is, not necessarily that it is, that they're doing anything malicious
00:08:25
◼
►
with it, but that they're doing it for QA or for some kind of server-side stuff.
00:08:31
◼
►
For whatever reason. Yeah, you don't even need to believe that they're bad actors. Just
00:08:34
◼
►
that the fact that the system can be exploited,
00:08:38
◼
►
it's just bad design.
00:08:41
◼
►
- Right, and they were like, I mean,
00:08:43
◼
►
we're looking at it, but I mean,
00:08:44
◼
►
there's no way we're gonna do it if it works like that.
00:08:48
◼
►
So the custom keyboards, guess what you can't do?
00:08:54
◼
►
You can't use them to type into a secure text field.
00:08:57
◼
►
- Ooh, interesting.
00:08:58
◼
►
- Yep, because when you think about it,
00:09:01
◼
►
that just makes sense.
00:09:02
◼
►
So whenever you tap into a secure text field,
00:09:04
◼
►
either like UI kit style or on the web you get switched to one of the system
00:09:11
◼
►
keyboards hmm I understand that but then I guess that defeats one of the ideas
00:09:16
◼
►
that a bunch of us like last week were banding about that it would be a cool
00:09:22
◼
►
idea for one password to have a custom keyboard I guess that rules that out for
00:09:27
◼
►
them I mean they still have a cool app for iOS yeah but I we were you know just
00:09:31
◼
►
bouncing ideas we had the idea well what if they made a keyboard yeah I'm sure
00:09:35
◼
►
they'll come up with some way of making it nice and because you can't have the
00:09:40
◼
►
keyboard so up until you put the password in you can have your custom
00:09:44
◼
►
keyboard so maybe you can see what site you're on and just copy the copy the
00:09:50
◼
►
password to the to the pasteboard so you can paste it in yeah something like them
00:09:53
◼
►
you know they can do something but when you do think about it it's like well
00:09:57
◼
►
yeah it kind of makes sense to only trust the system to handle those kind of
00:10:03
◼
►
events right yeah secure entry yeah I think so I think it kind of does what
00:10:11
◼
►
else what was the other kind there's the keyboards there's the sharing extensions
00:10:17
◼
►
there's this stuff in the today screen oh right yeah and that's the same thing
00:10:23
◼
►
where those are like their little, more or less, little standalone applications that
00:10:28
◼
►
run in a different context instead of running as regular apps in the system. They're like
00:10:35
◼
►
little mini apps that run in that notification center context.
00:10:40
◼
►
Yeah, and it's far more than less. So what they are is like little bundles that sit inside
00:10:46
◼
►
your app bundle.
00:10:48
◼
►
And I don't want to get too techie, but inside an app, you
00:10:54
◼
►
usually specify the principal class, like the class, the
00:10:58
◼
►
Objective-C class that's going to be loaded and run.
00:11:00
◼
►
And it's a UI application class on iOS, or
00:11:05
◼
►
a subclass of it.
00:11:08
◼
►
For these bundles, rather than it being an application that
00:11:15
◼
►
is sort of the root object.
00:11:17
◼
►
It's just a view controller.
00:11:20
◼
►
So these are little apps that just load up.
00:11:24
◼
►
Rather than booting up an entire application instance,
00:11:26
◼
►
they just load up a view controller instance.
00:11:30
◼
►
And from there on in, you're running in your own code space.
00:11:33
◼
►
You've got pretty much all of the facilities that you would
00:11:36
◼
►
have in a regular app, modulos and differences.
00:11:44
◼
►
And it's, you know, that the space that you're given is yours to play with.
00:11:49
◼
►
It's, you have an app and you can do whatever you want in it.
00:11:52
◼
►
It's not like you're just pushing some XML description language stuff to the screen and
00:11:57
◼
►
the system's doing it. It's like an honest to God, full on application.
00:12:02
◼
►
Yeah, that's kind of amazing. And it's, again, sort of a,
00:12:10
◼
►
like a recurring theme is it's that they've given us more than we expected.
00:12:14
◼
►
I would not in a million years have expected that. No. The APIs are interesting too because when you
00:12:22
◼
►
start up one of these extensions it tells you what size you're going to be and they make no
00:12:31
◼
►
promises about you know aspect ratio or anything they're just going to give you a size and so in
00:12:37
◼
►
theory down the road they could be putting these I don't know like on the
00:12:41
◼
►
iPad they could make them huge or they could do different stuff in there man
00:12:44
◼
►
are they the same are the notification I this is something I don't know it's
00:12:49
◼
►
still on my like list I haven't watched the notification center sessions yet but
00:12:52
◼
►
it are they the same for Mac and iOS or you have a very similar very similar but
00:13:03
◼
►
But it, you know, but you wouldn't, because you don't have fat apps that one dot app bundle
00:13:08
◼
►
that runs on both Mac and iOS, it doesn't really matter if they're exactly the same,
00:13:13
◼
►
but they're a lot more similar than say, a Mac app and an iOS app are.
00:13:23
◼
►
Well, I mean, ultimately, you still got to do that.
00:13:25
◼
►
You're doing UI code at some point, right?
00:13:27
◼
►
So that that's divergent.
00:13:28
◼
►
But the structure and the idea and the notion is basically identical.
00:13:34
◼
►
These things were not developed in the old fiefdom system of like, "Here's OS X and
00:13:41
◼
►
here's iOS and maybe once every few years we'll try to sync some stuff up."
00:13:44
◼
►
These were clearly done together as one.
00:13:48
◼
►
And in fact, the core technology is from the CoreOS group.
00:13:53
◼
►
So I think Colorize drove the XPC and that kind of side of stuff.
00:14:01
◼
►
And then the various framework groups built on top of that.
00:14:03
◼
►
But I think we're going to end up overusing this word, but clearly there's a lot of
00:14:08
◼
►
collaboration going on there.
00:14:09
◼
►
Yeah, that's sort of the key word, like the central part of the post-WWDC essay that
00:14:16
◼
►
I published today.
00:14:17
◼
►
Well, recording today and Friday.
00:14:19
◼
►
I don't know when the show's going to air.
00:14:21
◼
►
But that collaboration press release from October 2012 when they announced the sort
00:14:26
◼
►
of reorganization that Forstall was gone and Federighi was taking over all engineering
00:14:31
◼
►
and Johnny Eivald design, we're clearly seeing that that was not just an empty, you
00:14:38
◼
►
know, let's put a positive spin on an ugly infighting that's been put to an end. It
00:14:44
◼
►
was an actual statement of intent.
00:14:46
◼
►
Yeah, you know, it's funny you actually you you often make that argument that Apple just says what they're like when they do say something
00:14:53
◼
►
They just say it straight
00:14:56
◼
►
But but even that one like that that memo
00:14:59
◼
►
Or that that press release, you know people were kind of second-guessing wondering if they if exactly what they meant
00:15:06
◼
►
But no turns out that's what they meant. They wanted to increase collaboration. And here you go. Here's the results of that
00:15:15
◼
►
It's fascinating. And they've done a terrific job.
00:15:16
◼
►
Right. I think it's a trust but verify situation.
00:15:19
◼
►
I'm not putting it past them that someday they'll,
00:15:21
◼
►
they'll find themselves in some sort of hole where they have to lie or,
00:15:26
◼
►
you know, you know, white lie or whatever you want to say.
00:15:32
◼
►
Just put a spin on something and that what they put out is a misdirection.
00:15:35
◼
►
I think you could certainly say that they did that with a lot of the things
00:15:39
◼
►
that they had to say about Steve Jobs's health in the last few years, right?
00:15:44
◼
►
that that was not straightforward.
00:15:46
◼
►
And it's an exceptional situation.
00:15:47
◼
►
It was obviously up to Steve, and Apple PR
00:15:51
◼
►
had to more or less play along.
00:15:53
◼
►
So there's a good example of some press releases
00:15:57
◼
►
or official statements from Apple
00:15:58
◼
►
that were not straightforward.
00:16:00
◼
►
- I also think that's kind of fair enough.
00:16:01
◼
►
It's a little bit salacious to be digging into--
00:16:03
◼
►
- Right, it was very, very personal.
00:16:06
◼
►
And maybe one more, and maybe one that wasn't
00:16:08
◼
►
quite so personal, but that was an ugly situation
00:16:11
◼
►
comes to mind was the stock options backdating. Now that's going back, I think, a decade.
00:16:16
◼
►
I mean, you're talking about 2005. But that they skated very close, you know, maybe went
00:16:21
◼
►
over a line and, you know, were in a situation where they couldn't be straightforward.
00:16:26
◼
►
Yeah, that seemed to be like dirty pool for sure.
00:16:28
◼
►
But an awful lot of the time, yeah, hindsight proves that they're actually pretty straightforward.
00:16:35
◼
►
And I think that it's showing that that's clearly the case. And that collaboration,
00:16:39
◼
►
like you said, that it's a core OS effort.
00:16:44
◼
►
It's at the framework level.
00:16:47
◼
►
It's not about iOS.
00:16:49
◼
►
iOS and Mac OS X haven't really gotten any closer
00:16:52
◼
►
to each other.
00:16:53
◼
►
They're not, from a user perspective,
00:16:56
◼
►
from an interface perspective,
00:16:57
◼
►
there's still no touch on the Mac.
00:17:00
◼
►
Changing the system fonts to match each other
00:17:04
◼
►
is Helvetica NUIA is not, that's cosmetic.
00:17:07
◼
►
It's not technical.
00:17:08
◼
►
But the frameworks have, they've really done a massive job of getting as many of the frameworks
00:17:15
◼
►
that could be shared between them to be shared between them.
00:17:19
◼
►
You know, anything that doesn't touch the UI is pretty much equivalent on either of
00:17:26
◼
►
the platforms.
00:17:27
◼
►
You know, there's caveats here and there.
00:17:30
◼
►
But you know, like AV Foundation, all of it, the video playback stuff, certainly a lot
00:17:35
◼
►
of the core UI stuff, and foundation itself.
00:17:38
◼
►
Yeah, AV Foundation is probably the first one I can remember. Boy, it was a long, it
00:17:43
◼
►
was a couple years ago, definitely. Maybe two years ago, I forget, was when it first
00:17:47
◼
►
came out. Maybe it was three years ago. That's the first one that might have been a sign
00:17:51
◼
►
of things to come, even though, you know, it was before this, you know, the October
00:17:56
◼
►
2012 reorganization. But AV Foundation was one I can remember where they were in the
00:18:00
◼
►
session. You know, I was in the session and it was clearly a unification between Mac and
00:18:06
◼
►
Not only that, it stomped on QuickTime.
00:18:08
◼
►
Right, which was kind of unimaginable. You know, a number of years ago. Yeah, could be quick time being a crown jewel of the company. Right? I think they learned from it. It wasn't like that they, you know, threw it in the garbage, but that they more or less said, you know, you've got to start over. Yeah, quick times what 89 kind of thing like, it was like 91. But close, it was probably they probably started work on it in 89 or 90. And I remember running literally, like, posted
00:18:37
◼
►
stamp-sized movies on my Mac LC and being amazed.
00:18:42
◼
►
Yeah, this is the best thing ever.
00:18:44
◼
►
Yeah, I think like a very...
00:18:46
◼
►
They were like what we would now use as like animated GIFs that fit on a line of text.
00:18:51
◼
►
They were maybe like, I don't know, 80 pixels by like 120 or something.
00:18:55
◼
►
But it would peg your CPU too.
00:18:56
◼
►
Oh, absolutely. And drop frames.
00:18:59
◼
►
Yeah, you'd get like, you know, 12 frames per second or something.
00:19:05
◼
►
Yeah, but you'd have, you know, you'd have a video playing on your computer. It was amazing,
00:19:09
◼
►
which was pretty cool. Actually, wait, did Max do 256 colors with a color palette? Or did you
00:19:15
◼
►
just go 16 bit? No, mine had 256 colors, you had to have a better video card. And then they went to
00:19:22
◼
►
that they used to call it thousands of colors. That's it. Yeah, they had a mode, which was,
00:19:28
◼
►
I think, what would it have been? It would have been like 16,000 colors.
00:19:33
◼
►
65536. Yeah, exactly. But instead of giving you that number, they just called it, it was very
00:19:40
◼
►
Apple. They just called it thousands. Yeah. And that was what that was, you know, if you had a
00:19:45
◼
►
good, good video card. I'm trying to picture a Mac with a 256 bit color palette. How did that work
00:19:50
◼
►
with different applications? Man, I wish SirQsa were here. I remember it because I had it for
00:19:58
◼
►
years and years, there was a standard system palette of 256 colors, but an app could change
00:20:06
◼
►
that. And it was a certain ResEdit resource type where you would more or less just give
00:20:16
◼
►
the system a two. Here's the 256 colors I want in RGB. So for example, I remember I
00:20:25
◼
►
like a, it wasn't called PGA golf, I forget, but I had a golf video game that I was totally addicted
00:20:31
◼
►
to in college. And I remember looking, it was like a klut, I think it was a C L U T resource. I
00:20:38
◼
►
forget what that stood for. Yeah, color lookup table. Yeah, that's it. That's it. It was a
00:20:42
◼
►
klut resource. And I remember being curious one time and I looked at it and they, of course,
00:20:46
◼
►
they had like out of 256 colors that had like, I don't know, 180 shades of green.
00:20:52
◼
►
and a couple of pinks so you could wear like obnoxious golf shirts and stuff.
00:20:56
◼
►
But then you'd see like some weird flashing if you switched between two apps like that.
00:21:05
◼
►
Okay, yeah, that's what it is. That's what I was curious about. Because in the background,
00:21:09
◼
►
the other app, there's one palette for the entire screen. So if you've gotten one image
00:21:14
◼
►
with a nice palette, like the other one is just gonna look like garbage.
00:21:17
◼
►
Yeah. And so I seem to recall mostly it was for games, though. So you wouldn't notice,
00:21:21
◼
►
Right. Most apps wouldn't switch it. And I guess if you were looking at like an image
00:21:25
◼
►
editor or something with, you know, in a regular not full screen mode, you know, with with
00:21:30
◼
►
Windows overlapping, it would make Windows in the background from other apps look, you
00:21:34
◼
►
know, all sorts of goofy. Yeah. But goofy was sort of the name of the game back in those
00:21:40
◼
►
days. Yeah, it somehow didn't really strike strike me as all that, you know, it seemed
00:21:45
◼
►
it seemed understandable. It was gross, but it was like, well, of course, because there's
00:21:48
◼
►
- That's right.
00:21:49
◼
►
- And sometimes you need more than eight shades of green.
00:21:53
◼
►
- Exactly, for golf.
00:21:56
◼
►
Okay, memory lane.
00:21:59
◼
►
What were we talking about?
00:22:02
◼
►
The iOS extensions, right?
00:22:04
◼
►
- Yeah, well, let me take a break
00:22:05
◼
►
'cause I have a couple sponsors to thank.
00:22:07
◼
►
And let me thank our first sponsor,
00:22:10
◼
►
our good friends at Hover.
00:22:12
◼
►
Did you ever hear of Hover?
00:22:15
◼
►
- I have, yeah.
00:22:16
◼
►
Good people.
00:22:18
◼
►
Yeah, really good people.
00:22:19
◼
►
So you have a great idea.
00:22:20
◼
►
You have a great idea.
00:22:21
◼
►
You wanna secure a domain name for your great idea.
00:22:24
◼
►
So you want something catchy and memorable
00:22:25
◼
►
to represent your online identity.
00:22:27
◼
►
Hover gives you exactly what you need to get the job done.
00:22:31
◼
►
You can find the perfect domain for your idea
00:22:33
◼
►
and get started working on it
00:22:35
◼
►
rather than wasting time looking for a cool domain name.
00:22:38
◼
►
But it's more than just finding a good domain name.
00:22:40
◼
►
The big advantage to Hover is what happens afterwards
00:22:42
◼
►
because it's not like every other domain registrar
00:22:46
◼
►
I've ever seen where it's full of spam and junk and upsells and gross ads and stuff like
00:22:55
◼
►
Hover, all they want is your business.
00:22:58
◼
►
You pay them, they give you a domain name and great service and that's it.
00:23:02
◼
►
No upselling, no ads, no junk.
00:23:05
◼
►
Geeks, developers, designers, programmers have been using Hover for years and love it.
00:23:11
◼
►
You don't have to be an expert to get a domain.
00:23:13
◼
►
If you've never registered a domain name before, you'll love Hover2.
00:23:17
◼
►
Really easy.
00:23:18
◼
►
You don't have to be a DNS expert.
00:23:19
◼
►
They give you easy to use powerful tools to manage your domain once you have it so that
00:23:24
◼
►
anyone can do it.
00:23:26
◼
►
They have good technical support, great technical support really.
00:23:30
◼
►
Here's the best part.
00:23:32
◼
►
Let's say you're the opposite.
00:23:33
◼
►
I think the listenership of this show, let's face it, there's probably not a lot of you
00:23:36
◼
►
out there who've never registered a domain.
00:23:38
◼
►
You're probably more like me and you've got like 20, 30, 40 domains that you've never
00:23:42
◼
►
even used but you want to keep them because they're good domain names that
00:23:47
◼
►
you might use in the future here's the thing that that hover has that's great
00:23:50
◼
►
you've registered them with other hostings our registration services that
00:23:56
◼
►
stink and you kind of hate them hover will help you move those domains to
00:24:01
◼
►
hover and get out it stop stop doing business with with registrar's who you
00:24:05
◼
►
feel gross about hover will help you they've got this great service they do
00:24:09
◼
►
do all the work for you. Really, really impressive stuff. Really bottom line. It just sounds
00:24:15
◼
►
goofy because you'd think, well, why wouldn't they be honest? But that's the thing. Hover
00:24:19
◼
►
is honest and it's the truth is red domain registration is a dishonest, dirty business.
00:24:25
◼
►
Hover is the is the the good guy in the business. Where do you go to find out more easy? Go
00:24:31
◼
►
to hover.com. Now, they gave me a promo code. This is great Jeter J t r. I'll explain that
00:24:40
◼
►
to you in a minute guy. But use that code. They'll know you came from this show, the
00:24:46
◼
►
talk show, and you'll get 10% off your first purchase just by typing in that promo code.
00:24:52
◼
►
So go to hover.com. They've got all the new tlds, everything you could want. hover.com
00:24:57
◼
►
use the promo code Jeter and find out more. I can't recommend these guys highly enough.
00:25:05
◼
►
So Jeter is a baseball player. Yeah, Derek Jeter. Yeah. Yeah. So I hear he's a play for
00:25:12
◼
►
the vet socks, isn't it? Well, he's in Brazil right now playing in the World Cup. Nice.
00:25:22
◼
►
You know, I saw I saw a thing we we have so much tech stuff to talk about. But I know
00:25:26
◼
►
you're a fan of the football. Um,
00:25:28
◼
►
"Kotke" linked to a cool thing the New York Times had showing the history of the World Cup soccer balls.
00:25:33
◼
►
I was just looking at it. It's great. Oh my god. It's so great. I gotta link that up.
00:25:37
◼
►
The first the first one looks like a medicine ball. It looks like a misshapen American football.
00:25:43
◼
►
Yeah, you know that somebody took a US football and just pumped it up until it went round.
00:25:48
◼
►
Like it's it's crazy.
00:25:52
◼
►
I I guess I did because I've never I mean I'm you know a sports fan, but I'm not a soccer fan
00:26:00
◼
►
had always assumed that the soccer balls that from like the 70s that iconic black and white sort of
00:26:09
◼
►
checkered pattern octagonal
00:26:11
◼
►
checkered pattern
00:26:14
◼
►
That was the way they always looked but it wasn't it was really just like a brief period
00:26:18
◼
►
In our youth when they looked like that
00:26:21
◼
►
Yeah, but to me I
00:26:22
◼
►
You know basically same age. Yes that exact look that 70s checkered look that's soccer - yeah
00:26:29
◼
►
Did you like these new soccer balls? I don't I think that they're they're messing around with them too much. Yeah, I totally agree
00:26:35
◼
►
No, I think they're kind of crappy actually
00:26:38
◼
►
I don't know. Maybe I'm just a traditionalist or something, but I
00:26:42
◼
►
You know, they got to be black and white and they need to have some kind of checker pattern on them. That's yeah
00:26:48
◼
►
That's all I care about. Yeah, they could even if they want to use these these fewer panels
00:26:52
◼
►
they could somehow put the checker pattern on. But even then though I kind of don't like the way they
00:26:57
◼
►
keep messing with it. Like it's it seems contrary to tradition. Yeah, and soccer is a lot about
00:27:03
◼
►
tradition. Like if you did some the same thing with baseball, it would the baseball would look
00:27:08
◼
►
exactly the same. Like here it is 10 years, you know, 1920s looks like a baseball, 1930s looks like
00:27:13
◼
►
like a baseball. And there's always been rumors in Major League Baseball that in certain decades
00:27:20
◼
►
that there's a secretiveness to what's in the center of a baseball, which I've never
00:27:26
◼
►
really bought into because you don't have to be a baseball fan to know that home runs
00:27:30
◼
►
and foul balls go into the stands all the time. Like, it's not every game, some couple
00:27:36
◼
►
of dozen fans go home with a real Major League Baseball. So it's there to be cut open and
00:27:42
◼
►
looked at. But there's always been rumors like when home runs go up or down, there's
00:27:47
◼
►
always conspiracies that they've changed the rubber in the middle of the ball, you know,
00:27:51
◼
►
that the commissioner has decided we need more home runs, and they've doctored the balls
00:27:55
◼
►
to make them easier to hit further, etc, etc.
00:27:58
◼
►
I think doctoring the players is
00:27:59
◼
►
Yeah, it was a lot more fun. And there was but you have to go back 100 years for this.
00:28:05
◼
►
There was something called the dead ball error, where where the baseballs were harder to hit
00:28:11
◼
►
further. What like because they were constructed differently? Yeah they were
00:28:16
◼
►
just I don't know what the technical I don't know what the actual technical
00:28:19
◼
►
difference was but this wasn't like a secret conspiracy this was you know it's
00:28:23
◼
►
just a stated fact yeah and and then they you know there's like pre Babe Ruth
00:28:29
◼
►
I mean so you're really talking like almost a hundred years ago but it
00:28:33
◼
►
wouldn't be like that same thing for basketball like I think you could go
00:28:35
◼
►
back to like 1950 and about you know a basketball looks like a basketball
00:28:40
◼
►
Yeah, I'd imagine so. I don't get it with soccer. I can't. I can't. Well, European fashionistas, right?
00:28:50
◼
►
Yeah, I guess so. I guess so. I don't know. There's so much money in soccer, though. It's crazy.
00:28:57
◼
►
Yeah, I wonder if that's it. If they, you know, if they make a lot of money by selling, like,
00:29:03
◼
►
these updated soccer balls. Because, you know, but I would think so, you know, like any sport,
00:29:07
◼
►
that the balls wear out anyway and that there's always going to be you know
00:29:10
◼
►
anybody who plays on a regular basis has to buy balls on a regular basis and it
00:29:14
◼
►
doesn't matter if they change the design you're still buying the ball yeah but
00:29:18
◼
►
getting a new design for the for the World Cup yeah I guess it could spike up
00:29:22
◼
►
the thing yeah and I guess what it does is it makes everybody want to get the
00:29:27
◼
►
official adidas ball that it's more that's it's you know it's whereas I can
00:29:32
◼
►
basketball there's three four five major manufacturers of basketballs and they
00:29:36
◼
►
make the same fundamental ball but are they used interchangeably during the game uh no each league
00:29:43
◼
►
usually at least at a serious level once you get to like serious like college basketball or um
00:29:48
◼
►
you've got certainly in the professional level it's there's somebody has a licensing deal in it
00:29:53
◼
►
you know and for fairness sake there's one manufacturer but like you know spaulding has
00:29:58
◼
►
long made the nba's balls um but very few of the college teams use the spalding balls they use you
00:30:06
◼
►
Wilson and other brands.
00:30:07
◼
►
I don't know why that is.
00:30:08
◼
►
I guess it's, you know.
00:30:09
◼
►
- Whatever, licensing. - Marketing deals.
00:30:17
◼
►
Right on topic.
00:30:19
◼
►
- We could talk about goofy stuff forever.
00:30:21
◼
►
Got a job to do.
00:30:23
◼
►
Yeah, I don't know.
00:30:25
◼
►
What do we get to?
00:30:26
◼
►
Extensions, good.
00:30:28
◼
►
I think maybe you link to a piece by Sean Heber.
00:30:32
◼
►
- Yeah. - Yeah.
00:30:33
◼
►
Interesting.
00:30:35
◼
►
Yeah, because it's, you know, it's this, I guess a lot of people, Sean Heber had a
00:30:41
◼
►
piece where he sort of speculated, he works, he does all the work for Hockenberry, you
00:30:47
◼
►
know, Hockenberry gets all the credit and Sean Heber, I guess, does all the hard work.
00:30:52
◼
►
And when you're as big as Hockenberry, you don't want to.
00:30:54
◼
►
Yeah, you don't really need, you know, to do the typing. I don't want to read his
00:31:02
◼
►
But basically, he took a look at this new extension, emphasis on extensions, and the safety,
00:31:08
◼
►
you know, the way that it's separate apps, really, just little apps running in a different context,
00:31:13
◼
►
and speculated that that could be the future of a new, like a next generation Apple TV with,
00:31:20
◼
►
you know, with apps, with an open, like an open for Apple and App Store architecture.
00:31:27
◼
►
Yeah, it's an interesting piece. It's worth checking out.
00:31:31
◼
►
Yeah. I'll put it in the show notes.
00:31:35
◼
►
Yeah, okay. Perfect. Because the cool thing about the extensions thing is that they don't tell you
00:31:40
◼
►
really what context you're going to be in. It doesn't say, "Okay, now you're coming up for
00:31:45
◼
►
the today context," or whatever. It gives you a frame in which to project your UI in.
00:31:54
◼
►
Now that you can actually use the GPU in the background,
00:32:01
◼
►
I can see them doing something where an app can be running
00:32:04
◼
►
and projecting a UI into an off-screen surface
00:32:08
◼
►
and having that surface broadcast to a television using,
00:32:12
◼
►
basically, what do they call it, AirPlay.
00:32:16
◼
►
Well, for video, AirPlay is great.
00:32:17
◼
►
For games, it wouldn't be.
00:32:19
◼
►
And in just pie in the sky, what if, blah, blah, blah.
00:32:23
◼
►
The idea that the game is running on your iPad or your iPhone and just projecting to the screen,
00:32:28
◼
►
it's gonna be way too much latency. There's no way that you're gonna get, you know, even fun,
00:32:34
◼
►
casual game waste latency with that type of...
00:32:37
◼
►
No, it depends on the game. But yes, there's...
00:32:39
◼
►
Well, they would rule out a lot of games. There's some games where that could work.
00:32:42
◼
►
All right, I'll backtrack. There's some games where it could still work,
00:32:45
◼
►
but there's a lot of games where it wouldn't.
00:32:47
◼
►
I certainly don't think you'd get a big chunk of the console market through that method, because
00:32:53
◼
►
Yeah, you bet.
00:32:54
◼
►
The latency wouldn't be there.
00:32:56
◼
►
And the other thing that I keep coming back to is we know the basic – or at least Apple
00:33:02
◼
►
TV as we know it is the cheap parts of an iOS device, by which I mean – and it just
00:33:09
◼
►
seems funny because if you're old enough to think that the CPU is one of the cheap
00:33:14
◼
►
parts is crazy because it used to be that a PC was a very expensive CPU surrounded by other stuff.
00:33:23
◼
►
And now, like the, you know, the A series systems on a chip, not that they're cheap, but they're,
00:33:31
◼
►
you know, they're nowhere near as expensive as the touchscreen, the display. You know, the glass,
00:33:37
◼
►
the actual glass is the expensive part of an iPad and an iPhone. Batteries are probably expensive.
00:33:43
◼
►
Yeah, I think batteries are expensive. And I think that I think that it's the assembly
00:33:48
◼
►
too. I think that the you know, that's not you can't really call it a component. But
00:33:52
◼
►
getting all that stuff into these crazy thin small form factors, the affordances they have
00:33:58
◼
►
that it costs money in the tool. Right. So but then to take that little tiny system on
00:34:04
◼
►
a chip and put it into a relatively humongous hockey puck, like the Apple TV, I think is
00:34:10
◼
►
Assembly wise very cheap so they can sell them like right now today
00:34:14
◼
►
They sell an Apple TV for $99 and it has the I think it has the a5 doesn't it? They never updated it if I see it
00:34:20
◼
►
And you know, it's been
00:34:24
◼
►
Updated to the a5 for a while now that was you know
00:34:27
◼
►
I think it was sometime like 18 months two years ago when it came out
00:34:31
◼
►
But when it did the a5 was roughly a year old, you know, they can put a year old
00:34:38
◼
►
system on a chip into a $99 Apple TV. Yeah, so that means like
00:34:44
◼
►
Sometime soon if not, if not in the second half of this year, maybe early next year
00:34:49
◼
►
They could put the a7 system on a chip in a $99 Apple TV
00:34:54
◼
►
And I doesn't make any sense if you've got a nice a7 in there
00:35:00
◼
►
It doesn't make any sense to only use it for airplay. I mean you'd want to have code running on it
00:35:04
◼
►
and graphic stuff running on Metal on the A7.
00:35:10
◼
►
Yeah, especially because yeah, A7 starts with the,
00:35:13
◼
►
sorry, the Metal API, the new 3D rendering API
00:35:16
◼
►
that they have requires an A7 right now.
00:35:19
◼
►
Again, I think it's a business thing,
00:35:24
◼
►
depending on how they think they can get into this market.
00:35:27
◼
►
Ben Thompson had a good piece up yesterday
00:35:32
◼
►
about disrupting, like Apple disrupting the console market
00:35:34
◼
►
and how it's right for it.
00:35:36
◼
►
I agree with you, he at some point had two products.
00:35:41
◼
►
He had look at $99 one without games
00:35:43
◼
►
and $179 one with games, which is boneheaded.
00:35:48
◼
►
- Yeah, and it's funny because a year,
00:35:50
◼
►
and I even updated it with a year prior,
00:35:52
◼
►
he had the right idea that it would just be a $99 device
00:35:55
◼
►
that you could run games on.
00:35:56
◼
►
- Yeah, I had a good lunch chat with him yesterday on,
00:36:00
◼
►
I forget what the show, Electric Shadow.
00:36:02
◼
►
Anyway, that'll come out sometime soon.
00:36:03
◼
►
He's a smart guy.
00:36:04
◼
►
- "Moy Zissou Show."
00:36:05
◼
►
- Yeah, "Moy Zissou Show."
00:36:06
◼
►
- We were on it together.
00:36:11
◼
►
- That was fun.
00:36:12
◼
►
Any excuse to talk to Sandy.
00:36:13
◼
►
- The thing that I thought his key observation
00:36:16
◼
►
was that historically, zoom out to the Atari 2600 in 1979
00:36:21
◼
►
or whenever it came out, for a very long stretch,
00:36:26
◼
►
consoles cost like a hundred bucks
00:36:30
◼
►
And then they'd try to make their money selling the games and there was this hundred dollar hundred dollar
00:36:34
◼
►
You know give or take, you know, maybe sometimes closer to 200
00:36:37
◼
►
But that I guess probably starting with the PlayStation and certainly with like PlayStation 2 and then with Xbox
00:36:47
◼
►
They got more expensive, you know, and it used to be the PCs were thousands of dollars, you know average price like
00:36:57
◼
►
$1,000 back in like 1980 81 and
00:36:59
◼
►
Consoles that you just hooked up to your TV were like $100 and that you know, he made a nice graph
00:37:05
◼
►
It's pretty I thought that was pretty insightful that they've converts that consoles have gotten more expensive because they've gotten more powerful and effectively
00:37:12
◼
►
They're they're gaming PCs. Yeah, and PCs have gotten cheaper and cheaper
00:37:17
◼
►
But that that that trend has left this
00:37:21
◼
►
Pricing umbrella underneath. Yeah, the big one like consoles now about 400 bucks
00:37:26
◼
►
Xbox was 500, but they dropped it down.
00:37:30
◼
►
And I think his argument is that the console
00:37:36
◼
►
manufacturers have been chasing the high end gaming
00:37:39
◼
►
market, and that's made it necessary to have high end
00:37:48
◼
►
machines all the time, which costs a bunch of money.
00:37:51
◼
►
And they try to make the money back over the six year,
00:37:54
◼
►
seven year span of the console.
00:37:56
◼
►
But yeah, that has carved out a giant section below it.
00:38:00
◼
►
And I think for a long time that didn't really matter,
00:38:05
◼
►
because what was below the high-end consoles wasn't a compelling experience.
00:38:11
◼
►
But now I think with an A7-powered level chip,
00:38:17
◼
►
I think you can have a pretty compelling experience that a lot of players would be happy with
00:38:22
◼
►
at a very low price point and sort of undercut the high-end console market in a way that
00:38:28
◼
►
they don't expect and they can't really compete with.
00:38:31
◼
►
Yeah. And I don't think it's just about games. And I know that a lot of us – I'm not even
00:38:36
◼
►
a gamer. I mean, I don't play a ton of games. But I know you do have a background actually
00:38:41
◼
►
making games. But I think maybe that's part of the thing that we're overlooking is we're
00:38:48
◼
►
only focused on watching movies and TV shows, right, on an Apple TV or any of these, you
00:38:55
◼
►
know, devices that you hook up that you could do that on a TiVo, you can do it on, you know,
00:38:59
◼
►
you can get movies and TV shows on your PlayStation and your Xbox and games. But there's other
00:39:05
◼
►
you could do anything you'd want to project on a TV, right? And so think about the way
00:39:10
◼
►
that we can talk about other things that have been Sherlock'd, you know, by announcements,
00:39:16
◼
►
But it occurred to me that maybe like Panix status board could be Sherlock by a future
00:39:25
◼
►
Apple TV that runs notification center widgets.
00:39:31
◼
►
And that, you know, you might not do it in your living room for your family, but that
00:39:34
◼
►
if you're a business, you know, you might have a TV set up with, you know, uh, Apple
00:39:41
◼
►
TV hooked up to it and just run notification center and have you know, company information
00:39:47
◼
►
and you know, status.
00:39:48
◼
►
I do that in a second. I think it's a good idea.
00:39:51
◼
►
Right. And it's powerful because then it's not just what here's the widgets Apple thinks
00:39:54
◼
►
you might want. It's any widget from any app, including ones that you the company with this
00:40:00
◼
►
board up on the wall, wrote yourselves for your own internal system.
00:40:03
◼
►
Yeah, no, I totally agree. Things are great idea. You know, I need, you know, $99 box
00:40:08
◼
►
that you just plug into a TV is pretty that's like not a huge argument you have
00:40:13
◼
►
to have with the procurement office in order to get that right right yeah it's
00:40:17
◼
►
it's you know it's lunch for four or five people exactly yeah so no I think
00:40:22
◼
►
that's a good idea I guess um you know and also you could project your slides
00:40:25
◼
►
onto it for when you want to do the presentation yeah yeah anywhere where
00:40:29
◼
►
you'd have a screen or project something is a possible place where you would use
00:40:35
◼
►
Apple TV and that you know having these extension api's make it possible to do a
00:40:41
◼
►
lot more than just show video or play a game yeah I think it's a think there's
00:40:46
◼
►
an interesting product in there I don't know if they're gonna call it Apple TV
00:40:50
◼
►
but yeah who knows yeah who knows if they change the name of that and I'd
00:40:54
◼
►
also don't know if it's a this year thing or not I think that I get a sense
00:41:01
◼
►
a little bit further out. Yeah, I kind of did last week too. And I don't know, it doesn't seem
00:41:07
◼
►
impossible. I don't know, I don't know anything for sure. But I kind of get the feeling that the,
00:41:13
◼
►
that it's not on the list of things that are coming at the end of the year. No. And, you know,
00:41:18
◼
►
everybody seems excited about the list of stuff that is coming. So yeah, but I think there's a
00:41:22
◼
►
lot of people who assume that TV has to be one of them because it's the one that's been the
00:41:28
◼
►
rumored for the longest? Well, I mean, that's kind of the classic thing, right? Everybody assumes...
00:41:32
◼
►
It gets back to what we're talking about, about the extensions or the, you know, the accelerated
00:41:38
◼
►
WebKit. People say they want a specific thing, and then Apple just kind of delivers something
00:41:45
◼
►
different that does address the problem. Yeah. So I don't know if it's going to be a watch or a TV
00:41:51
◼
►
or whatever, but whatever it is, they seem pretty pleased with it. Yeah, sort of a different topic.
00:41:56
◼
►
Anyway, one of the things I wanted to write about, but I skipped because I felt like I'd
00:42:02
◼
►
gone long enough in my piece.
00:42:03
◼
►
But when you go to WWDC, and you were there, I was there, you see people who you don't
00:42:11
◼
►
see throughout the year, especially people who work at Apple, people who I'm friends
00:42:16
◼
►
with or semi-friends with or who I at least have met before, and there's a certain personal
00:42:23
◼
►
And like I said with Mark Gurman on this show a couple weeks ago that you develop, you know
00:42:28
◼
►
not not necessarily giving spilling secrets or
00:42:31
◼
►
You know tips that are you know, super juicy or something like that
00:42:34
◼
►
But you can learn things that you wouldn't learn any other way because face-to-face communication is somehow more
00:42:45
◼
►
Really got a sense talking to people at Apple last week at WWDC the
00:42:50
◼
►
They're happy happy in a way that they haven't been again. In fact one friend literally said the words
00:42:56
◼
►
It's fun again. Yeah, that's good, which I thought was pretty interesting. Yeah, I don't know
00:43:02
◼
►
Did you did you pick up on anything like that or or yeah, it's something tell me almost exactly the same thing
00:43:08
◼
►
Like yeah, I'm having a lot of fun
00:43:11
◼
►
So and that's it. Yeah it yeah to me
00:43:15
◼
►
it's really interesting.
00:43:16
◼
►
And I thought that that fun again was a big tell.
00:43:20
◼
►
And again, it's not because they're taking it easy and relaxing.
00:43:25
◼
►
I mean, these are people who love their work.
00:43:27
◼
►
No, no, these people--
00:43:29
◼
►
fun again probably means that they're working the weekends, unfortunately.
00:43:33
◼
►
I hope not, because that just burns people out.
00:43:35
◼
►
But fun again means that they're tackling interesting problems
00:43:38
◼
►
and they're having a good time.
00:43:39
◼
►
Well, and I think it gets to the part--
00:43:42
◼
►
I think it is also part of what I did write about,
00:43:44
◼
►
which is this sort of like go back to the collaboration and more parts of the company
00:43:49
◼
►
working together on the same things, you know, and that, that there were iOS people working on
00:43:58
◼
►
the umbrella, you know, it's an umbrella term continuity isn't one feature. It's,
00:44:04
◼
►
it's, you know, an umbrella name for several features, but that they're working hand in
00:44:08
◼
►
hand at the same time with people doing the same frameworks on the Mac side, because the
00:44:13
◼
►
whole point of them is to, you know, like handoff handoff doesn't exist if there aren't collaborating.
00:44:19
◼
►
Right. But it means that there's more people that nobody's like sitting there twiddling their thumbs,
00:44:24
◼
►
while the attention of the top executives is all on iOS eight. Right. Well, I mean,
00:44:30
◼
►
the program office used to be divided between OS groups. And now it's combined. Right. And it's,
00:44:37
◼
►
I think that it's meant that more, a lot more, not just a little more, but a lot more engineers
00:44:44
◼
►
are fully engaged on high priority projects than ever before. And that's what makes them happy.
00:44:51
◼
►
I think so. Yeah. Plus, I mean, so last year, it had been a slog to get iOS seven out.
00:44:59
◼
►
The four style departure probably soured some people. Not not that they were bitter,
00:45:06
◼
►
necessarily just that you know it's a big change up so that there's always
00:45:11
◼
►
some kind of gnashing of teeth when there's a changeup yeah I worry about
00:45:16
◼
►
that too and I hope that when what I wrote didn't come across as being
00:45:19
◼
►
anti-forstall because I feel like as time goes on it's easy to slag on the guy
00:45:24
◼
►
and as time goes on I actually think he doesn't deserve it no why you think it's
00:45:28
◼
►
an amazing job everybody I've talked to that's worked with him there's nothing
00:45:31
◼
►
but high praise for him right and I think that's what might have soured some
00:45:34
◼
►
people is that the people who worked under him, who were in his division, the IOS division,
00:45:40
◼
►
mostly really, really liked and admired him. And they always felt like that he had their
00:45:45
◼
►
back. And because he was an effective corporate in-fighter and was obviously famously close
00:45:53
◼
►
to Steve Jobs, that having their back meant that they, you know, that's a great boss,
00:45:59
◼
►
right? That's a great guy to be working for.
00:46:04
◼
►
I get to and the other thing I didn't know this till recently like it's the Don Melton story
00:46:09
◼
►
But the Don Melton story that that forced all was the guy who went to back for the carbon strategy
00:46:16
◼
►
We're now we're going way back now. We're talking like 1988 1999
00:46:21
◼
►
You know you you talked about this with Rich Segal on
00:46:26
◼
►
Debug recently a great great episode of the show rich my it was actually one of the few people who I could say is my former
00:46:32
◼
►
boss at bare bones. He's a blast to talk to you. Oh, he's super thoughtful guy. Yes, we
00:46:41
◼
►
talked about it. Yeah, exactly. We go long story short, you know, the, you know, Apple
00:46:46
◼
►
buys next. Next comes in Steve Jobs and the next leadership effectively take over Apple.
00:46:54
◼
►
Correctly, you know, that's, they were, you know, the people who were the whole reason
00:46:59
◼
►
Apple was in trouble was that their leadership was crap. They come in, they come up with
00:47:04
◼
►
a strategy and their first strategy is, "Okay, everybody's going to write Cocoa apps because
00:47:09
◼
►
Cocoa is awesome. Trust us. It's better." Now, they're correct that Cocoa is great and
00:47:13
◼
►
that it was better. They were not correct that that was an effective… that Apple was
00:47:19
◼
►
in a position to dictate something like that because they needed big developers like Adobe
00:47:27
◼
►
and Microsoft to have their apps on the system.
00:47:31
◼
►
And rewriting from scratch was not something
00:47:33
◼
►
they were gonna do for a system that might not even work.
00:47:37
◼
►
- Right. - Right?
00:47:38
◼
►
'Cause Apple had been promising
00:47:38
◼
►
next generation operating systems
00:47:40
◼
►
for the whole decade of the 90s.
00:47:42
◼
►
- And at the smaller level, developers like bare bones,
00:47:47
◼
►
the small ones, weren't on board with it either,
00:47:49
◼
►
because they could actually even less afford to gamble
00:47:52
◼
►
because they couldn't afford to spend a year
00:47:55
◼
►
rewriting for a new system.
00:47:56
◼
►
know, that it could put a small developer out of business.
00:47:59
◼
►
So along comes this idea of carbon. Right. And it's surprising to me in hindsight,
00:48:07
◼
►
but not really having met Forrestal, you know, once or twice and knowing a little bit about him.
00:48:13
◼
►
But knowing that he was a next guy, had been there with the next, there was a perception on the Mac
00:48:18
◼
►
side that the next people all wanted, that they were a little religious about cocoa and the next
00:48:23
◼
►
stuff. And it's interesting to me that one of the next guys was the one who really fought
00:48:30
◼
►
for the carbon strategy within Apple. And the whole reason, well, I think practical
00:48:35
◼
►
in terms of realizing that it was a good strategy for Apple to keep developers on board. But
00:48:40
◼
►
I think it was also the case that Forstall always, he was a supporter of third party
00:48:46
◼
►
Yeah, I think so too.
00:48:48
◼
►
So we haven't released it yet, but we did an interview with
00:48:52
◼
►
Nithin Ganatra, who was the director in
00:48:56
◼
►
charge of iOS apps.
00:48:58
◼
►
Like from the beginning of the project to a
00:49:00
◼
►
couple years ago.
00:49:02
◼
►
This is going to be on debug?
00:49:04
◼
►
Debug, yeah.
00:49:06
◼
►
It's not out yet, but man, it went long.
00:49:08
◼
►
It's like four hours long, so it's going to be in two hours,
00:49:11
◼
►
But the first half, he started in '93, and he was with the
00:49:15
◼
►
during this entire process that you just described and he was working on carbon
00:49:18
◼
►
and it's so if anything that John just said it interests you there's gonna be
00:49:24
◼
►
more more information than you can shake a stick at on on a coming up debug show
00:49:29
◼
►
but needons awesome nice such a smart smart guy yeah I don't want to say it's
00:49:34
◼
►
ancient history but it's certainly history at this point and it's a
00:49:37
◼
►
surprisingly little of that has come out I think it's just the nature of Apple's
00:49:41
◼
►
culture of not really talking about the internals of your work. I mean, it's not secret anymore,
00:49:47
◼
►
but it's not like I think Don Melton is burning any bridges by having said that. But Apple
00:49:52
◼
►
people just don't talk about stuff like that. So to hear these stories is usually there's
00:49:57
◼
►
something new to learn.
00:49:58
◼
►
Yeah, it's a treat. That's kind of where the interview went so long. I wanted to talk to
00:50:03
◼
►
him. We try to get the backstory of people and then focus on something. I was going to
00:50:07
◼
►
focus on you know iOS development and the apps but it was just so fascinating
00:50:12
◼
►
all this historical stuff felt I just couldn't help but go down the rabbit
00:50:16
◼
►
hole on it so anyway I you know it's a I think as time goes on the forest all
00:50:22
◼
►
story and and you know whatever friction there was with him and the other
00:50:26
◼
►
executives and cooks decision to to to oust him it's not a simple story of well
00:50:33
◼
►
Forrestal was a you know bad guy or an asshole and you know I think it was a
00:50:39
◼
►
complicated story and probably without question in my mind the most difficult
00:50:44
◼
►
decision that Tim Cook has made as CEO. I'd say so. Didn't you have a piece arguing
00:50:48
◼
►
that? I think so but I think as time goes on though and we hear you know just to
00:50:54
◼
►
hear stories like that like to hear that Forrestal was the guy who went to bat
00:50:57
◼
►
for carbon even though he was a next guy yeah who clearly was evangelizing for
00:51:01
◼
►
Coco you know it just shows that he was you know he was good for third-party
00:51:08
◼
►
developers you know yeah but that it still might have been the right you know
00:51:11
◼
►
and I think more and more it seems like it was the right move to to move on well
00:51:15
◼
►
it's it's hard to look at this WWDC and argued that they made a misstep right
00:51:20
◼
►
right it's clearly not in the gutter I mean it's greatest as for style was this
00:51:25
◼
►
is a I don't want to say new era because it's not but it's you know grown up
00:51:30
◼
►
That's where I've what I've that I've chosen to frame it is that the company has grown up. I like that. That's good
00:51:36
◼
►
Yeah, there's a maturity
00:51:40
◼
►
Opening up internally sure. I mean people have been saying it's a new Apple and yeah, maybe but not really
00:51:47
◼
►
ultimately Apple is still gonna do the thing that you can depend on them to do which is
00:51:52
◼
►
Act in their own interests first
00:51:56
◼
►
Because it's a company that's the way the world works. But now they seem to
00:52:00
◼
►
See their interests aligned with third parties in a much more open kind of way in it where maybe previously
00:52:09
◼
►
They thought they could just do everything in the today view. We're all
00:52:13
◼
►
Being a grown-up and as a human is largely to me about
00:52:18
◼
►
Being disciplined that you can be an idiot when you're you know a teenager and you know college student
00:52:26
◼
►
and maybe even in three or 20s, but that at a certain point,
00:52:29
◼
►
you've got to stop being an idiot,
00:52:30
◼
►
and you've got to be a little bit more disciplined
00:52:32
◼
►
and behave in a way that's not necessarily whatever you want
00:52:36
◼
►
to do at the moment, but it's part of a larger plan.
00:52:40
◼
►
And I think it's true for companies, too.
00:52:41
◼
►
And I think that immature--
00:52:44
◼
►
I say new Apple is the new Apple after they reunified with Next.
00:52:50
◼
►
I love that term, by the way.
00:52:51
◼
►
I don't know if I'd heard it that way before.
00:52:53
◼
►
The reunification.
00:52:55
◼
►
I've been using it for a little bit and and it just struck me last night when I
00:52:59
◼
►
read the price. Yeah.
00:53:00
◼
►
Well, I've thought about that because you know, a lot of the next guys,
00:53:06
◼
►
there's guys like bud trouble who like bounced, I think he was at apple,
00:53:10
◼
►
then at next and now he's back at apple, you know,
00:53:12
◼
►
it wasn't just steve jobs, right? And, and when jobs left,
00:53:17
◼
►
he took apple people with him or,
00:53:19
◼
►
or there were apple people who after jobs was forced out of the company in 85
00:53:24
◼
►
who then left Apple and then went to Next because they liked the Apple when Steve was there.
00:53:30
◼
►
You know, and that it, to me, that's the best way to see it. I know that some people phrase it as,
00:53:35
◼
►
"Hey, it was a reverse acquisition that Apple bought Next and Next took over Apple."
00:53:40
◼
►
At a leadership level, that's true. But I think reunification is, to me, the best way to look at
00:53:45
◼
►
I like it. It makes it sound happy, too.
00:53:47
◼
►
Right. That in their hearts, they were always in alignment, that they, two companies that
00:53:53
◼
►
valued the same things. Oh yeah, yeah for sure. Well, design and interface for sure.
00:53:58
◼
►
Yeah, all right. Well, let's come back. I want to come back to this corporate maturity. Remember
00:54:03
◼
►
that. But let me take a second break here and thank our great friends at Squarespace. Everybody
00:54:09
◼
►
knows Squarespace. They've sponsored this show many times. They sponsor a bunch of other shows.
00:54:14
◼
►
Here's the thing. They sponsor this show repeatedly because people keep signing up
00:54:19
◼
►
because they have a great service.
00:54:22
◼
►
People haven't checked it out.
00:54:23
◼
►
You've heard me talk about it.
00:54:25
◼
►
But then when people do, they finally,
00:54:28
◼
►
"Hey, I do need a new website
00:54:29
◼
►
"because I'm starting my own podcast."
00:54:32
◼
►
Or you're starting a blog,
00:54:33
◼
►
or you're selling T-shirts or something like that.
00:54:37
◼
►
And then people who listen to these shows,
00:54:40
◼
►
they think, "Well, everybody's always telling me
00:54:42
◼
►
"about Squarespace.
00:54:43
◼
►
"I'll go look at Squarespace."
00:54:44
◼
►
Well, guess what?
00:54:44
◼
►
When people look at Squarespace,
00:54:47
◼
►
there's a reason they tend to sign up.
00:54:49
◼
►
and it's just a great thing. It's an all in one service for hosting, building, designing
00:54:55
◼
►
a website, a website of almost any sort that you can imagine. Like I said, you could do a blog,
00:55:02
◼
►
you could do a podcast, you can do a store, all sorts of things. They have built in templates,
00:55:06
◼
►
professionally designed, really, really good looking to choose from. You want to customize
00:55:12
◼
►
the design because you know CSS you can do that you want to decide which components to
00:55:20
◼
►
include on your website you can do it in their graphical interface drag and drop move stuff
00:55:25
◼
►
around on the other hand you know code you can go in and you can inject your own JavaScript
00:55:30
◼
►
if you want so they've got high level features nice visual editing low level features where
00:55:37
◼
►
you can inject code if you're safe if you feel you know you know how to do that they
00:55:41
◼
►
They have award-winning technical support.
00:55:44
◼
►
They've just expanded.
00:55:45
◼
►
They used to all be in New York.
00:55:46
◼
►
Now they're in New York and Dublin 24 hours,
00:55:50
◼
►
seven days a week.
00:55:52
◼
►
If you have a website, idea for a website
00:55:54
◼
►
that you want to build, or you have a website
00:55:56
◼
►
and you're not happy with the system
00:55:57
◼
►
you have running it right now, go check out Squarespace.
00:56:00
◼
►
squarespace.com/grueber.
00:56:05
◼
►
squarespace.com/grueber.
00:56:08
◼
►
And they also have an offer code.
00:56:10
◼
►
The offer code is JG just my initials JG
00:56:14
◼
►
And you save 10% off?
00:56:16
◼
►
Big bucks over the lifetime of your account because once you go there you're gonna stick there for years
00:56:21
◼
►
So my thanks to Squarespace
00:56:24
◼
►
So corporate maturity, yeah, that's that's how I look at it
00:56:28
◼
►
I do and and I think it's discipline and it takes discipline to do multiple things at once and to
00:56:35
◼
►
Collaborate. Yeah, and I think when apples was new Apple was immature. I think that it it
00:56:43
◼
►
it manifested itself and do one thing at a time and
00:56:48
◼
►
It left a lot big parts of the company
00:56:53
◼
►
You know and that you know, I'd linked to it today and jalkeet had a great piece on it in
00:57:01
◼
►
In 2007 when the iPhone first came out, they had a press release
00:57:05
◼
►
They actually had to issue a press release before WVDC and because they it wasn't that they were expected to announce
00:57:12
◼
►
leopard they had they were expected to
00:57:15
◼
►
Release leopard it leopard was supposed to ship to consumers at WWDC not like a developer beta
00:57:21
◼
►
But the real thing and they had to say in advance of WWDC. This isn't gonna happen. We're gonna shoot for October
00:57:29
◼
►
We'll have a beta for developers at WWC
00:57:32
◼
►
But it's nowhere near shipping because we had a pull engineering and QA resources off Mac OS X to ship the iPhone
00:57:38
◼
►
You know and it's not the only example of it but that you know that that they were you know
00:57:46
◼
►
you know, I think a lot of it comes down to Steve Jobs that he was insular and
00:57:51
◼
►
You know what his attention was on was where he directed the company and it was well, it's a little focused
00:57:57
◼
►
I mean, well both, you know that he was folk that the it it's a different thing for the company to be focused than for one
00:58:04
◼
►
Person to be focused sure I think
00:58:06
◼
►
And I think mature Apple is doing more things at the same time
00:58:12
◼
►
But in unity that they're not all over the place, you know and an example
00:58:17
◼
►
And maybe it's unfair maybe you tell me if it's unfair but here so Apple announced a new programming language
00:58:25
◼
►
And it really is new and it's interesting we can talk I'd like to talk to you and see what you think about it because I've
00:58:29
◼
►
What I've learned in two weeks since it was announced is pretty interesting. Yeah
00:58:33
◼
►
But it's really is a new language this is no joke they haven't just you know made a small tweak to some existing language
00:58:42
◼
►
And that's a pretty big deal and they expect to have very big deal, you know
00:58:47
◼
►
millions of apps written using this language
00:58:52
◼
►
Starting this year and it runs on both iOS and Mac. Yeah, so it's not like this abstract
00:58:58
◼
►
Here's a new language and but it doesn't really you know, you can't use it to write apps or
00:59:04
◼
►
Or you can't use it to write Mac apps yet
00:59:07
◼
►
You can only use it to write iOS apps or the other way around
00:59:09
◼
►
It's no here's and here's a new language and you can start using it now or very soon because you know
00:59:17
◼
►
The syntax is like in beta. Yeah
00:59:19
◼
►
but you know, I think they expect to finalize at least finalize the 1.0 version of it very soon and
00:59:25
◼
►
You can start using it for real in production now compare and contrast that with with Google which put a crackerjack
00:59:33
◼
►
like Hall of Fame team together
00:59:36
◼
►
Of language guys, you know that and they came up with a new language go which has a you know
00:59:43
◼
►
I don't I wouldn't call it that close to Swift but it's the same basic idea of let's solve the problems of C without
00:59:49
◼
►
losing the performance of C. Let's do something like safety.
00:59:54
◼
►
That's the big theme that's shared by almost all newer systems languages.
01:00:00
◼
►
Java was, having it in a runtime is about safety and security.
01:00:06
◼
►
Same thing with C#, which is in layman's terms, Microsoft's version of Java.
01:00:11
◼
►
Or maybe Microsoft's vision for something like Java.
01:00:16
◼
►
Go is about getting rid of pointers and stuff like that. Swift is about getting rid of pointers
01:00:23
◼
►
and memory management and stuff like that for safety and for programmer efficiency,
01:00:28
◼
►
but while having that same performance.
01:00:31
◼
►
So Google has this new language, well-respected. It's been out for a while now. But it has
01:00:37
◼
►
absolutely nothing to do with Android. So they've got this platform with hundreds of
01:00:42
◼
►
of millions, maybe even close to a billion now, devices running it and a new programming
01:00:47
◼
►
language, but the two are just, there's no relationship between them whatsoever.
01:00:51
◼
►
>> Yeah, they're completely divorced from one another. Android uses a version of Java.
01:00:56
◼
►
>> Right? And maybe that's unfair that it, you know, that anything Google does has to
01:01:00
◼
►
be part of Android or something like that. But it just seems to me that Google is still
01:01:03
◼
►
an immature company in that regard in that they have these different initiatives and
01:01:07
◼
►
they're not really pulling together. It's a throw it all up against the wall and see
01:01:11
◼
►
what sticks yeah I think they do have a little bit of that sort of academia
01:01:16
◼
►
style thing which I'm really not knocking but they will try a bunch of
01:01:22
◼
►
different stuff and sometimes I come up with really really cool stuff yeah
01:01:25
◼
►
that's exactly what goes seems like it's and that just doesn't mean that go
01:01:29
◼
►
there's anything wrong with go no or that you know that they should have done
01:01:32
◼
►
differently but to me there's something more interesting and more about Apple's
01:01:38
◼
►
Swift because it's so practically useful.
01:01:43
◼
►
And in fact, you can tell from the design of it that it was built to interoperate with
01:01:47
◼
►
Objective-C.
01:01:49
◼
►
The way that they have like pseudo named functions, pseudo named parameters in the functions like
01:01:56
◼
►
Objective-C.
01:01:57
◼
►
I don't know how many you want to get here, but in Objective-C, you have like multiple
01:02:03
◼
►
parts to the method name, right?
01:02:06
◼
►
each after each part like I'm trying to think of one you URL for a resource by
01:02:13
◼
►
it of type that that's a method so there's two parameters so when it go
01:02:18
◼
►
function you can you can name them similarly so each parameter and a
01:02:22
◼
►
function can have a separate name but you can't swap them around it in many
01:02:26
◼
►
languages with named parameters you can name them as we're not with go oh sorry
01:02:32
◼
►
it was swift yeah we're done with Swift in many languages with named parameters
01:02:36
◼
►
you can put the parameters in arbitrary order.
01:02:40
◼
►
That's not the case with Swift,
01:02:41
◼
►
because it's built into operate with Objective-C.
01:02:44
◼
►
- In Objective-C, you couldn't move them around either.
01:02:46
◼
►
- No, you can't do it.
01:02:48
◼
►
- Because what happens in Objective-C
01:02:48
◼
►
is it basically takes all of those parts
01:02:50
◼
►
and it sticks them into one string,
01:02:53
◼
►
a method name effectively called a selector.
01:02:56
◼
►
And that's what gets looked up in the runtime.
01:03:00
◼
►
Yeah, like the traditional way of doing it
01:03:03
◼
►
would be if you have two parameters to a method call,
01:03:07
◼
►
or call it a function, whatever.
01:03:09
◼
►
Most languages, you have to know which order to put them.
01:03:13
◼
►
And you say, here's my function, my function,
01:03:16
◼
►
parentheses, first parameter, second parameter,
01:03:20
◼
►
and you have to know what those two are.
01:03:23
◼
►
- In that order.
01:03:23
◼
►
And then once you get to three,
01:03:25
◼
►
maybe if you get to four, you've got a problem
01:03:28
◼
►
with your design of the function.
01:03:30
◼
►
But three's not crazy,
01:03:32
◼
►
but then you've got three things to remember
01:03:34
◼
►
and you could easily screw that up.
01:03:35
◼
►
And if they're both, if two of them are integers,
01:03:38
◼
►
you're not going to get a compiler warning
01:03:41
◼
►
and you might have a bug that's very--
01:03:42
◼
►
- Yeah, you could swap them around
01:03:43
◼
►
and you don't have the context to understand what they are.
01:03:45
◼
►
So the name parameters helps a lot.
01:03:47
◼
►
- Right, because it reads more like language
01:03:50
◼
►
where the purpose of the second parameter
01:03:53
◼
►
is right there where you're putting it.
01:03:57
◼
►
I see exactly what you mean though.
01:03:58
◼
►
So in Swift, in theory, they could have done it,
01:04:01
◼
►
which sounds like a nice idea here,
01:04:03
◼
►
just put the name parameters in,
01:04:05
◼
►
in whatever order you want.
01:04:06
◼
►
But I see what you mean that it's meant to be
01:04:11
◼
►
a sibling to Objective-C.
01:04:12
◼
►
- Yeah, 'cause it runs on the same runtime.
01:04:15
◼
►
So, just explain Objective-C for a second.
01:04:19
◼
►
There's the language of Objective-C
01:04:21
◼
►
and then there's what's called the runtime,
01:04:23
◼
►
which is kind of what,
01:04:24
◼
►
you know, where the magic happens effectively.
01:04:26
◼
►
The runtime is where all the classes are.
01:04:28
◼
►
The runtime is where,
01:04:31
◼
►
When you send a message to a class, when you ask an object
01:04:35
◼
►
to do something, under the hood, what happens is you go
01:04:39
◼
►
into the runtime and you look up where the little piece of
01:04:41
◼
►
code that can respond to that message lives in memory.
01:04:46
◼
►
And then the computer jumps to it and starts
01:04:49
◼
►
executing that code.
01:04:51
◼
►
So that runtime is shared between Swift and Objective-C.
01:04:54
◼
►
It's the same runtime.
01:04:56
◼
►
What's different is the language layer on top.
01:04:59
◼
►
So Objective-C is kind of, I guess, now the traditional way
01:05:03
◼
►
of addressing that language, which is that runtime, which
01:05:06
◼
►
is obviously C-based.
01:05:09
◼
►
So it's got all the power and folly of ancient C. And it's
01:05:14
◼
►
got this objective layer on top of it, which is where you
01:05:17
◼
►
get all the classes and the message handling and all of
01:05:20
◼
►
the fancy stuff that you've come to expect from Cocoa.
01:05:23
◼
►
So Swift is just another way of addressing that.
01:05:28
◼
►
runtime and it does away with all of the sort of the followers of C. Arguably it picks up a few of
01:05:35
◼
►
its own here and there but it's like you said you get rid of pointers you get rid of all of the
01:05:39
◼
►
hopefully most of the ways that you can kind of cause trouble and and be insecure. What do you
01:05:47
◼
►
make of um some of this stuff I haven't followed too closely but in the keynote they
01:05:55
◼
►
they put forth that not only was it as fast as Objective-C, but they gave two examples,
01:06:02
◼
►
you know, where they showed that it was faster than C. One of them seemed a little realistic,
01:06:06
◼
►
which was like some kind of, you know, standard security compression or encryption algorithm,
01:06:16
◼
►
and that the same encryption algorithm, you know, mathematically intense in Swift was actually
01:06:23
◼
►
faster than an objective C. The other one though, and I think it was you at dinner last week,
01:06:28
◼
►
I think you even pointed it out, it was actually just total bullshit. It is a quote, complex object
01:06:34
◼
►
sort. Yeah, I was talking to think this Sir Cusan and I were chatting about it. Like, that's not a
01:06:40
◼
►
thing. I don't understand. It was a dinner with the both of you at the at the prime rib, where we
01:06:45
◼
►
were joking about what a nonsensical like, it means nothing. It could mean anything. That's the
01:06:52
◼
►
It could literally just mean anything.
01:06:54
◼
►
And so that one was much faster than Objective-C.
01:06:57
◼
►
So the reason I'm going to guess that that one was faster
01:07:00
◼
►
is that in Objective-C, every time you want to see if two objects are equal,
01:07:06
◼
►
you need to go and look up the method, like the isEqual method.
01:07:10
◼
►
So you have to go to the runtime, so you get one trip for the runtime per object
01:07:13
◼
►
to check if they're equal.
01:07:14
◼
►
And if you're going to sort something, obviously you're checking if stuff's equal a lot.
01:07:18
◼
►
Now, with Swift, because you can say that all of the objects that you're going to sort
01:07:25
◼
►
are going to be the exact same type, you only have to go look up that method once in the
01:07:30
◼
►
amount of time.
01:07:31
◼
►
Because once you've got it, you know that it's going to apply to all of the objects
01:07:33
◼
►
in your collection.
01:07:34
◼
►
Do you know what I mean?
01:07:36
◼
►
Yeah, that makes sense.
01:07:37
◼
►
So you, rather than asking each object, "Okay, how do you want me to compare you?
01:07:41
◼
►
Okay, here's a little bit more."
01:07:42
◼
►
Maybe it's not an expensive thing, but it's, if you're doing it to sort—
01:07:45
◼
►
It's going to add up.
01:07:47
◼
►
with a complex object sort, I'm pretty sure they just threw a whole bunch of
01:07:51
◼
►
crap at it, like a lot. And, you know, so yeah, Swift was faster.
01:07:54
◼
►
Right. In other words, I think it's, let me see if I can put it in layman's
01:07:59
◼
►
terms, is it would, Swift would allow you with objects to do something just once,
01:08:08
◼
►
even if it's a hundred thousand objects, that would have to happen a hundred
01:08:12
◼
►
thousand times in Objective-C. And even if it's relatively lightweight, you're
01:08:16
◼
►
there's something that you don't have to do each iteration each comparison, but it is it's an objective see it's it's
01:08:22
◼
►
Very small, but you know
01:08:24
◼
►
But scale everything adds up, right, right when you're doing something when you're got a hundred thousand items to compare anything
01:08:31
◼
►
You don't have you can do once instead of each time through the loop is is a win
01:08:35
◼
►
Yeah, so that's maybe a little bit of a contrived example
01:08:38
◼
►
Right because you could actually trick that in objective C to you if you if you have fancy pants
01:08:44
◼
►
Well, the thing I thought that I'm thinking about though is the fact that and and I
01:08:49
◼
►
Would think and so far from what I've seen I've seen
01:08:52
◼
►
It I've seen some performance examples that people have written simple little things where objective C still comes out ahead
01:09:00
◼
►
but that it's
01:09:02
◼
►
Easily that Swift looks fast enough. Oh, yeah, whether certainly fast enough. Yeah, right like
01:09:10
◼
►
If there are problems with Swift, it's not going to be about performance. No, no, no. No, I don't want to I
01:09:16
◼
►
Was ragging on that particular thing, right?
01:09:19
◼
►
Greg Titus that's more and I think that's more of a marketing issue than you know for the keynote then
01:09:25
◼
►
It might it's let's face it I don't know this but the Swift team was probably rolling their eyes at that - I
01:09:33
◼
►
Would not be surprised they are not done. He's a very very very smart people
01:09:39
◼
►
I think it was Greg Titus, Omni group guy.
01:09:44
◼
►
Classic comp side problem is called a TRIE, like a T-R-I-E.
01:09:48
◼
►
And he's got very fast Objective-C code to sort of do it.
01:09:51
◼
►
And he rewrote it in Swift.
01:09:53
◼
►
And his initial implementation was 80 times slower.
01:09:56
◼
►
But he managed within a day of sort of optimizing and figuring things out.
01:10:00
◼
►
He got it to be only 1.5 times slower than Objective-C.
01:10:05
◼
►
Now keep in mind his Objective-C one he's had since forever.
01:10:09
◼
►
He's been using it for performance testing stuff for a long time, like 20 years.
01:10:14
◼
►
And he got the Swift one within very close to it in only a day.
01:10:20
◼
►
And his conclusion, and this is from a series of tweets, so if I'm getting something wrong, I apologize.
01:10:28
◼
►
But his conclusion was that it's going to take a little bit of time to figure out how to make Swift fast.
01:10:35
◼
►
But it's certainly got it where it counts. Like you can definitely get there.
01:10:40
◼
►
And I'm eager. I'm looking forward to it.
01:10:43
◼
►
I think it's telling that effectively what we now know, and he didn't take credit for it, and it's typical Apple way,
01:10:50
◼
►
but it makes sense that they let Chris Latner do the demo in the keynote, which was super cool.
01:10:57
◼
►
I was surprised. Compiloguy comes out of his cave and just walks onto the stage. That's pretty cool.
01:11:03
◼
►
Yeah. In a keynote where there were only five people on stage.
01:11:06
◼
►
Yeah. Right. There was Cook, mostly Craig Federighi, a senior vice president,
01:11:11
◼
►
one product demo by Brian Kroll, who's on Schiller's team, a product marketing guy,
01:11:18
◼
►
one by Jaws, who's, I think, second to Schiller in product marketing. But those guys were both
01:11:25
◼
►
on stage very briefly, you know, maybe like five minutes each. And then a nice big demo from Chris
01:11:31
◼
►
Lattner in the keynote, which is crazy. But it, you know, effectively what we now know is that
01:11:38
◼
►
for about a year, it started, he started in 2010. And for the first year, Lattner was doing it on
01:11:44
◼
►
his own. So it's, you know, not that it's his language, and it should be swift by Chris Lattner,
01:11:49
◼
►
but that he's the, you know, assuming the father of video, the progenitor, maybe the manager,
01:11:55
◼
►
And he's the guy who did the compiler.
01:11:57
◼
►
He's just clang and LLVM.
01:12:00
◼
►
So I think it's interesting that the language came from the compiler
01:12:07
◼
►
and not the abstract--
01:12:14
◼
►
Ruby, it's like, Matz had the idea for the language.
01:12:20
◼
►
Or that's how I-- not that it's anywhere near as complex as a programming
01:12:23
◼
►
language, but that's how I did Markdown.
01:12:24
◼
►
Here's what I want.
01:12:26
◼
►
I want to put asterisks around a word
01:12:28
◼
►
and then have m tags come out around it in the output.
01:12:32
◼
►
And then I figured out, well, how do I make
01:12:34
◼
►
that happen in a Perl script?
01:12:37
◼
►
Whereas Latner was starting with, here's a compiler,
01:12:40
◼
►
and here's a runtime, and here's a bunch of frameworks
01:12:44
◼
►
for a huge, wide frameworks.
01:12:49
◼
►
How do I make a language that's optimal for this?
01:12:53
◼
►
And so I don't think it's any, you know, it would probably be surprising if the performance was bad because you know
01:12:59
◼
►
He started with starting with the compiler. Yeah. Yeah, exactly this and there is a little bit of a language wonk
01:13:03
◼
►
smell to Swift
01:13:07
◼
►
But I could just be an old man, I don't know yeah, I think so, too
01:13:13
◼
►
Guess and I don't know. I don't know if I should be surprised or not. I did think it was crazy
01:13:17
◼
►
I forget whose tweet it was where I was in a thing on
01:13:23
◼
►
On Swift it was with Syracuse and we're talking about like how big the language was might have been another omni guy
01:13:28
◼
►
But somebody said just go to a playground and go import Swift to import the Swift
01:13:34
◼
►
What is that I would you call it the I
01:13:39
◼
►
Don't even know what that is when you import Swift it's like the the framework did I mean yeah
01:13:45
◼
►
Yeah, like the not the runtime
01:13:49
◼
►
Well, whatever it is, but that's what I get self. Yeah. Yeah, I think they have a name for it
01:13:53
◼
►
And I think and then you command-click
01:13:55
◼
►
Swift after you've imported it to bring it up in the playground and inspect it and you can see that Swift itself is actually written
01:14:03
◼
►
In Swift that the language is actually that the true. What is the language itself is extremely thin. Yeah
01:14:10
◼
►
Yeah, I'm looking at it now. So there's no so all of the built-in operators
01:14:15
◼
►
Right so an operators like an equal or an addition or minus even just addition yet is not really part of the language
01:14:21
◼
►
It's in the Swift
01:14:24
◼
►
Or class you know that's implicitly imported into every Swift program. It's a Swift function
01:14:30
◼
►
Yeah, all right because I thought I was a little surprised they did operator overload. I did were you at first yeah
01:14:36
◼
►
I'm not a fan of operating overloading
01:14:38
◼
►
In some cases it makes turning real comps on ya
01:14:45
◼
►
Operator overloading C++ is the only language I ever did any work in that had operator
01:14:50
◼
►
Overloading and the gist of operator overloading is you could so you could say right out of the bag if you say four plus
01:14:56
◼
►
Four you're gonna get eight because it knows how to do integers
01:15:00
◼
►
But you can write your own class and your class could be I don't know a color and you could say color a plus
01:15:08
◼
►
color B and get a new color and you define what it means to add color one color to another and
01:15:15
◼
►
Which in some cases that's cool
01:15:18
◼
►
So you don't have to write a function that says add colors color a color B
01:15:23
◼
►
You could just say color a plus color B and you've that's overriding the plus sign in the language
01:15:30
◼
►
Sounds great, but in practice it would drive you nuts because people who you were working with if you're sharing a code would do stupid things
01:15:38
◼
►
Somebody would come up with somebody would have a cute idea.
01:15:40
◼
►
And you would look at something like an expression like a plus b.
01:15:44
◼
►
And it would not be a plus b.
01:15:46
◼
►
It's like a plus b, but b is like, well, we won't let any negative values in like
01:15:50
◼
►
some weird, weird stuff.
01:15:52
◼
►
Why that you would never guess by looking at the go, you can't, right?
01:15:55
◼
►
You have to Yeah.
01:15:57
◼
►
So I'm not a fan of operator overloading.
01:16:00
◼
►
It does ultimately come down to basically, you're gonna have to trust the team that
01:16:03
◼
►
you work with.
01:16:05
◼
►
It's true for a lot of programming.
01:16:09
◼
►
But I kind of feared that a lot of crazy shit
01:16:13
◼
►
is going to hit the fan.
01:16:16
◼
►
Yeah, I wonder.
01:16:17
◼
►
I don't know.
01:16:18
◼
►
But the reason, once you go to a playground
01:16:20
◼
►
and do import Swift and command-click Swift,
01:16:22
◼
►
you can see why it has operator overloading.
01:16:24
◼
►
Because all of the operators in the language
01:16:26
◼
►
are defined in Swift itself.
01:16:28
◼
►
Swift itself.
01:16:29
◼
►
Which is a sort of recursive mentality
01:16:32
◼
►
that I imagine is comes naturally to somebody like Chris. Yeah, like Chris
01:16:38
◼
►
Lattner is, you know, if I explain this to him how innery resting that is, he'd be
01:16:43
◼
►
like, well, you know, I probably like why would I do it any other way? You know, it
01:16:46
◼
►
seems but as to me, it's sort of like mind bending, like looking behind the
01:16:50
◼
►
matrix, like, whoa, all of these super simple things, like, what does the plus
01:16:55
◼
►
sign mean when you have an integer on one side and integer on the other is
01:16:58
◼
►
is defined in Swift itself.
01:17:01
◼
►
And it's kind of funny.
01:17:03
◼
►
It's like basically the, you know, the design that the base language to have like two things
01:17:07
◼
►
you can add and you can compare and then everything else just gets built on top.
01:17:13
◼
►
And then you end up with a language that's not verbose.
01:17:16
◼
►
It's you know, really, really easy to read and simple.
01:17:20
◼
►
Or it looks like it is.
01:17:21
◼
►
It's pretty much Yeah.
01:17:22
◼
►
I mean, I think people can abuse it, but you can abuse anything.
01:17:25
◼
►
So we'll see.
01:17:27
◼
►
I'm really looking forward to actually getting some real work done with it.
01:17:31
◼
►
I think it's going to be a long time.
01:17:33
◼
►
I'm not sure if you put it on Darren Fireball, but there was a piece recently by Aaron Hillegas,
01:17:40
◼
►
you did link to it, saying that you're still going to need to learn Objective C. Yes, I
01:17:46
◼
►
agree with him.
01:17:47
◼
►
Again, I don't think that Swift is harder to learn than Objective C. But I think what
01:17:55
◼
►
What he does when he teaches is basically he just ignores all of the C stuff.
01:18:00
◼
►
The objective C is relatively easy, but once you get into the C stuff, things get a little
01:18:07
◼
►
But I'd guess it's like at least two to five years out before objective C is something
01:18:14
◼
►
that you don't need in any way, shape or form.
01:18:18
◼
►
least like I know that they're not shipping any frameworks with Swift now
01:18:25
◼
►
yeah they probably I'll bet they'll start with apps right and they even said
01:18:30
◼
►
at the WWDC that they rewrote the WWDC app in Swift and you know assuming that
01:18:36
◼
►
they meant the whole thing I mean I I'm still using it to watch sessions and the
01:18:41
◼
►
app is great it's perfect never know anything better than any other previous
01:18:46
◼
►
year yeah and presumably as the language settles down they will start writing
01:18:52
◼
►
frameworks with it but I you know I can see why they're not you know they want
01:18:58
◼
►
to be super conservative with the frame yeah well and the frameworks of the
01:19:02
◼
►
heart and soul of the company oh yeah they are definitely the kind you and I
01:19:06
◼
►
think that that came across last week at WWDC - it's you know with that where
01:19:11
◼
►
Microsoft has one operating system windows that they want to run on all
01:19:14
◼
►
devices. Apple has two very different operating systems, but
01:19:18
◼
►
that they do share the framework.
01:19:21
◼
►
Yeah, definitely. I'm not that I heard you make the red you make
01:19:25
◼
►
that point. But yeah, the like foundation and all of the other
01:19:29
◼
►
frameworks are really what Apple shares. Like honestly, they
01:19:33
◼
►
could, they could probably just pull the kernel bit out and
01:19:36
◼
►
stick it a different kernel in there. And, you know, so long as
01:19:40
◼
►
all the frameworks are good, that they'd still be happy, you
01:19:43
◼
►
You know, that it's the identity of the company at this point.
01:19:46
◼
►
Right. I would almost assume that, you know, not that I think that they,
01:19:50
◼
►
I don't know if they are ever going to replace the kernel,
01:19:52
◼
►
but I would almost assume that they've written them with that in mind.
01:19:55
◼
►
Oh yeah. Definitely. Yeah.
01:19:56
◼
►
Like in the way that they wrote them in the mind that they should be, um,
01:19:59
◼
►
CPU architecture in the past. Yeah, definitely. You know,
01:20:03
◼
►
and that's so they could switch from power PC to Intel and that they could
01:20:07
◼
►
switch from Intel to arm without, you know,
01:20:11
◼
►
any kind of pain or the sort of pain that people have had before.
01:20:15
◼
►
Yeah, I mean that's a lot of the good stuff they got from Next and on like Avi, Tivinion,
01:20:19
◼
►
and Bertrand, those guys. Very agnostic about the particular hardware that they were running
01:20:27
◼
►
Yeah. Let me take a third break here. Thank our final sponsor of the show. Another repeat
01:20:32
◼
►
sponsor. Great guys, our good friends at Transporter, aka File Transporter from Connected Data.
01:20:41
◼
►
They've been on the show before, but if you don't, not familiar with them.
01:20:45
◼
►
Here's the idea.
01:20:46
◼
►
Would you like your own private cloud that lets you securely store and share files in
01:20:51
◼
►
a way that is completely private and resistant to governmental snooping?
01:20:55
◼
►
Want a way to automatically back up all your photos and videos that you take on your iPhone
01:21:03
◼
►
Here's the idea.
01:21:04
◼
►
How could that work, though, if you're not running your own server?
01:21:07
◼
►
Well, you go there, you buy a transporter from them.
01:21:12
◼
►
It's a little gadget.
01:21:13
◼
►
It's adorable, very small, very quiet.
01:21:16
◼
►
Put it in your house.
01:21:17
◼
►
Connect an Ethernet cable to it.
01:21:19
◼
►
And then you install a little bit of software on your Mac or you install their app on your
01:21:26
◼
►
And now you've got your own little Dropbox, except instead of the data being served somewhere
01:21:32
◼
►
in Amazon's cloud or Google's cloud or Apple's cloud.
01:21:36
◼
►
It's right there on your device.
01:21:39
◼
►
But you could buy two.
01:21:40
◼
►
You could have one at home, one at work,
01:21:43
◼
►
and they'll sync with each other.
01:21:46
◼
►
And all they do to go to the cloud
01:21:48
◼
►
is just to coordinate what their addresses are
01:21:51
◼
►
behind your network.
01:21:54
◼
►
There's no place in the cloud where your data is copied.
01:21:58
◼
►
It's right from the one transporter to the other.
01:22:01
◼
►
and you can set up things just like with Dropbox where if I have an account and Guy English
01:22:06
◼
►
has an account, I can share a file from him and instead of going to some sort of shared
01:22:11
◼
►
server, it's only on our device. So personally, for peace of mind, this is the appeal is obvious.
01:22:19
◼
►
These guys, I've said this before when they sponsored it, they could not have gone into
01:22:22
◼
►
business with this idea at a better time given what's happened in the last year with the
01:22:27
◼
►
NSA and other, you know, Western governments snooping on the internet. But even from a
01:22:33
◼
►
legal perspective, for some people, you know, in healthcare and stuff like that, they have
01:22:36
◼
►
things that they want to share with each other, but that they are legally not even allowed
01:22:40
◼
►
to put on a device that's not within their control. Transporter can help solve that.
01:22:48
◼
►
Really great idea. Well done. Nice hardware. They've got two basic ways to do it. You can
01:22:56
◼
►
get the puck. Yeah, the puck is called transporter sync, little
01:23:03
◼
►
Apple TV sized puck. It's adorable, very small. Then you
01:23:07
◼
►
buy the puck, you plug your own hard drive in the back, just
01:23:09
◼
►
bring your own external hard drive, plug it in. And it works.
01:23:13
◼
►
The regular transporter is a little bit bigger. And you can
01:23:18
◼
►
get it right from them in various sizes with a hard drive
01:23:21
◼
►
right in there. Or you could buy that transporter and just put
01:23:24
◼
►
the raw naked hard drive in there. It's up to you a lot of options. Here's the idea.
01:23:32
◼
►
That are the sizes they have 500 gigabyte, one terabyte, two terabyte capacities. So
01:23:39
◼
►
go there, go to file transporter store.com file transporter store.com. Use this code
01:23:48
◼
►
TTS the talk show TTS 10 TTS 10 and you'll save 10% off your purchase up to 35 bucks
01:23:57
◼
►
They're not that expensive. But hey 35 bucks is 35 bucks
01:24:01
◼
►
So use that code TTS 10 at file transporter store calm
01:24:07
◼
►
And check them out. If you have any reason that you'd want to share stuff privately great thing. I've got one here and
01:24:14
◼
►
Works a charm. I got one too
01:24:17
◼
►
Full disclosure that they also sponsored my show. I'm trying to find my
01:24:21
◼
►
my discount code so I can gin up my stats
01:24:25
◼
►
But no, they're great. I love it. Use it all the time. I'm literally gonna use it to send this audio off to Dave
01:24:32
◼
►
What are we talking about? We gotta wrap this up soon, but
01:24:39
◼
►
No, we never wrap these things up. We just we just keep rolling. We should start talking about movies. Yeah
01:24:45
◼
►
Yeah, it's nothing good easily
01:24:47
◼
►
You know what so here's a guy on Twitter, I think he's being sarcastic
01:24:54
◼
►
Brian s Hall I
01:24:59
◼
►
Like people who criticize me on Twitter
01:25:01
◼
►
Just finished a long Gruber post and it's now clear that Tim Cook is Apple Steve Ballmer, which is exactly what Apple needs
01:25:10
◼
►
Understand so well, I think what he's trying to say is I think he's trying to make an argument that
01:25:15
◼
►
I'm going to say that whatever is going on at Apple is good. And if Tim Cook is a
01:25:23
◼
►
Operations type minded guy not a design guy then that's and now he's CEO that now that's exactly what Apple needs a CEO
01:25:35
◼
►
Where as I but see I would I would say it's too too early to tell
01:25:40
◼
►
Whether it's eventually going to be a problem not having a product guy atop the company
01:25:45
◼
►
But I think the early signs are that he gets that and that he doesn't try to be a product guy
01:25:53
◼
►
Yeah, I think the I
01:25:55
◼
►
Think of anything the biggest mistake
01:25:57
◼
►
You know bomber or or Tim Cook or anybody who wasn't necessarily product focus could make is
01:26:03
◼
►
To try to step into the shoes of like the ultimate product guy that it's not gonna happen and by which I mean both both Bill Gates
01:26:10
◼
►
I think he was good product guy at the end of the day
01:26:13
◼
►
In a very different way
01:26:19
◼
►
You know, he was also focused on
01:26:21
◼
►
What was actually shipping I think I?
01:26:24
◼
►
Say I and I pointed it out in my piece today that I think that the the John Browett
01:26:33
◼
►
hiring and quick firing is a good sign because it wasn't
01:26:38
◼
►
And I had to tone down my initial language as I edited it because I think I called it a disastrous
01:26:43
◼
►
Stint in my early draft, maybe the one that you read last night, but I changed it to ill-fated because it wasn't disastrous
01:26:50
◼
►
I mean, he wasn't there long enough to do anything really bad. Yeah, and it wasn't like yeah
01:26:54
◼
►
He just looks shaky on the wheel and they think right it wasn't like and it wasn't like people were
01:26:58
◼
►
You know after he took over you were walking into the Apple store and the computers were set up on
01:27:02
◼
►
folding tables, you know, the lights were flickering and
01:27:06
◼
►
You know, it smelled like
01:27:10
◼
►
Urine in a subway station
01:27:13
◼
►
I mean it was I think most people who weren't really
01:27:16
◼
►
Finely tuned to what people who worked in the stores were saying didn't even notice. It wasn't there long enough
01:27:20
◼
►
Thing was just a cultural misfit. Yeah
01:27:27
◼
►
You know, I think you know, I think Tim Cook knew that dismissing him was going to make him that is Tim Cook look bad
01:27:35
◼
►
Right. Yeah in a way because it's you know, there's the guy who was only on the job six months and they were like
01:27:42
◼
►
Oh, by the way, John Broward has left the company
01:27:44
◼
►
You know, it's it's a tacit admission that hate
01:27:47
◼
►
My first executive hire was a dud. Yeah, right
01:27:52
◼
►
and I think it would have been a lot easier to
01:27:57
◼
►
Or at least easier ego wise to just stick with the guy
01:28:01
◼
►
You know and instead, you know, I think he clearly took a look and thought you know what I think I needed entirely
01:28:10
◼
►
180 degree different sort of person to take over this job
01:28:14
◼
►
Which is you know exactly what Angela aren't you know clearly is?
01:28:18
◼
►
You know this the barrow it came from you know, a nickel-and-dime
01:28:25
◼
►
electronics reseller
01:28:27
◼
►
that has a reputation, you know for being pretty low low margin low rent and you know, Angela arts comes from a
01:28:34
◼
►
genuine luxury retail
01:28:37
◼
►
Nothing that I mean the worst thing to do when you make a mistake is to double down on it, right?
01:28:42
◼
►
So it's exactly but it's easy human nature makes it so easy to do that because it
01:28:47
◼
►
Feels like the worst thing to do is to say I'm wrong
01:28:50
◼
►
Oh hell yeah do that all the time every time we order one too many drinks at night. I'm like no
01:28:55
◼
►
This is the right thing to do.
01:28:59
◼
►
Sorry, I made that silly.
01:29:08
◼
►
When I left WWG, did I tell you this?
01:29:12
◼
►
When I left town, I left early.
01:29:17
◼
►
I left on Thursday morning
01:29:19
◼
►
and you were still there for a couple of days.
01:29:21
◼
►
And I woke up and I thought,
01:29:23
◼
►
"Oh, I hope I gave Guy the rest of that bottle of bourbon
01:29:28
◼
►
because I can't get it on an airplane.
01:29:30
◼
►
I only had a carry-on and I would hate to throw it away.
01:29:34
◼
►
And I got a quick hurry up and pack it.
01:29:35
◼
►
There was no, wow, you were probably still asleep.
01:29:38
◼
►
I wasn't gonna wake you up and run it to your room
01:29:40
◼
►
and give it to you."
01:29:41
◼
►
And I looked at the bottle and it was empty.
01:29:42
◼
►
And I was like, "Oh, well."
01:29:43
◼
►
- Problem solved.
01:29:45
◼
►
- Problem solved.
01:29:46
◼
►
No wonder I didn't give it to him.
01:29:48
◼
►
I was right to worry that I didn't give it to you
01:29:50
◼
►
to take with you.
01:29:51
◼
►
And I was wrong to be worried.
01:29:55
◼
►
I appreciate it.
01:29:56
◼
►
And then my second thought was to realize
01:29:57
◼
►
that that was a mistake.
01:29:58
◼
►
A different sort of mistake.
01:30:05
◼
►
Here's what I have.
01:30:06
◼
►
I think that complacency is the problem that
01:30:12
◼
►
besets giant companies.
01:30:15
◼
►
And I certainly think that that's what--
01:30:19
◼
►
I think that's what A.L. Ballmer's term at Microsoft,
01:30:24
◼
►
that he was too complacent, too willing to keep making money.
01:30:29
◼
►
And again, in defense of Ballmer, way higher profits
01:30:34
◼
►
and revenues than they ever made under Bill Gates.
01:30:36
◼
►
Those financial things grew, grew, grew under Steve Ballmer.
01:30:43
◼
►
But I think he got complacent in terms of moving onward
01:30:46
◼
►
and being willing to cannibalize his own stuff and make something new and take a chance that
01:30:52
◼
►
might take away from the existing stuff. And I don't get the sense that Tim Cook is like
01:30:56
◼
►
that at all.
01:30:57
◼
►
No, I agree. In fact, I was saying similar to Ben last night. I think Nintendo did the
01:31:04
◼
►
same thing. Nintendo for a long time was the only console manufacturer that was making
01:31:11
◼
►
money on their devices. And I think they kind of, they got
01:31:15
◼
►
addicted to, to that kind of revenue stream. And now they're
01:31:19
◼
►
kind of in a bad spot where, you know, if Apple does do something,
01:31:22
◼
►
they're just going to take the legs out from underneath
01:31:24
◼
►
Nintendo. Yeah, and Nintendo can't be up on the high end,
01:31:27
◼
►
because that's not what they were doing.
01:31:29
◼
►
Yeah. And complacency is a weird thing. Because everybody would
01:31:32
◼
►
say, No, I'm not complacent. Any leader is going to say that
01:31:35
◼
►
they're not. And I think bomber would be the first to say, No
01:31:37
◼
►
way. I'm not complacent. I want to destroy everybody. But
01:31:40
◼
►
Denial is is hard to recognize. Yeah, you know you can go into denial about
01:31:45
◼
►
Things like what the iPhone was gonna do to Windows Mobile, right?
01:31:50
◼
►
Which wasn't really that big really Windows Mobile never really was big
01:31:53
◼
►
Anyway that they were just thought they were gonna be big and their whole attack plan was attacking
01:31:58
◼
►
Blackberry and Symbian I was weird. They thought it felt to me like they they felt entitled to be big
01:32:06
◼
►
Do you know what I mean? It was more like...
01:32:08
◼
►
Yes, exactly. Right.
01:32:10
◼
►
That was Microsoft...
01:32:12
◼
►
When Microsoft enters a market with a new platform,
01:32:15
◼
►
it's going to be a majority share
01:32:18
◼
►
because... not because of rational reasons, but because that's what happens when Microsoft enters a market.
01:32:24
◼
►
Because they didn't really do anything.
01:32:27
◼
►
I mean, they had... So Windows CE was around for ages.
01:32:30
◼
►
And they didn't really do anything. And they had plenty of time to...
01:32:33
◼
►
I don't know if they could have done... So the iPhone's a leap.
01:32:36
◼
►
Let's just say that, you know, whatever, that that's neither here nor there.
01:32:40
◼
►
But they kept shipping something that looked like Windows 95 for years.
01:32:46
◼
►
They didn't... They never really bothered rethinking the problem.
01:32:49
◼
►
They just...
01:32:50
◼
►
I think they just thought eventually it's going to...
01:32:55
◼
►
Eventually this is going to be a big thing.
01:32:57
◼
►
And since we're already there, we'll be the ones who reap the benefits.
01:33:00
◼
►
Yeah. Well, to your point, it's almost immature.
01:33:02
◼
►
It's almost like they're just pouty, like why aren't you buying our phones?
01:33:07
◼
►
We're not going to give you a compelling reason to do it, but you should be.
01:33:13
◼
►
So I'm not worried about that.
01:33:18
◼
►
I could not be more bullish on Tim Cook's leadership at Apple.
01:33:23
◼
►
I think he's doing a great job.
01:33:25
◼
►
I think he knows his wheelhouse and sticks to it and leaves the other stuff that's out
01:33:33
◼
►
of his wheelhouse to people who are experts.
01:33:35
◼
►
People we trust.
01:33:36
◼
►
Well, everything we've seen is great.
01:33:40
◼
►
Definitely closer collaboration between the two operating system groups.
01:33:47
◼
►
Way more opportunities for third-party developers than we've ever had on the platform before.
01:33:54
◼
►
with friends in the company, everybody's happy and excited. Everybody seemed happy and excited
01:33:58
◼
►
on stage. They even tried to do some nice stuff in the App Store, which is…
01:34:06
◼
►
…that's kind of… I don't think that's going to change much, but they tried, right?
01:34:12
◼
►
There's almost nothing negative coming out of this WWDC.
01:34:15
◼
►
Yeah. It's a good way to put it. Very, very hard to find anything other than niggling
01:34:22
◼
►
Oh yeah, yeah, like I've got little complaints about Swift and...
01:34:25
◼
►
But pretty much everything they announced was all good all around for everyone.
01:34:30
◼
►
Yeah. Well, except that they sure locked a couple of people.
01:34:34
◼
►
Well, yeah, like yeah.
01:34:36
◼
►
Well, I got a minor shit locking, but the Reveal app guy's got that stank.
01:34:41
◼
►
Yeah, so Reveal, it's worth, you know, pouring one out for Reveal because it was really clever.
01:34:48
◼
►
long story short, you probably know more about it than me, but I would explain it as sort
01:34:53
◼
►
of like a WebKit inspector for cocoa apps. Good enough. Yeah. And in terms of like the
01:34:58
◼
►
UI could show your app, you know, the layering, like which controls are on top or in there,
01:35:05
◼
►
it would give you a three dimensional look at the at the way that the, the controls are
01:35:09
◼
►
stacked on top of each other. So if you scroll, I can see what's going to go behind one or
01:35:13
◼
►
the other. It was handy. Yeah. And if you have like a drawing bug, where you're seeing
01:35:17
◼
►
something that you shouldn't be able to see or not seeing something you should be able to see
01:35:21
◼
►
that 3D view can help you. Oh, look, duh. No wonder you can't see that button. It's on the wrong way.
01:35:26
◼
►
And really cool, really advanced, very fancy stuff. And it's like the same thing is now
01:35:34
◼
►
built into Xcode. Yeah. And, and more, you can do more with it, obviously, because it's built in,
01:35:39
◼
►
but it's, it's pretty much a direct rip off. So good idea. You know, it kind of deserves to be
01:35:45
◼
►
to be part of Xcode, I don't know what to say.
01:35:48
◼
►
Sherlocking is a double-edged sword, right?
01:35:52
◼
►
- Yeah, especially if you're doing developer tools.
01:35:55
◼
►
- It's, you know, did you ever,
01:35:56
◼
►
did you listen to the episode of Brent and Chris's,
01:36:00
◼
►
The Record with John Chaffee?
01:36:02
◼
►
- Yes, I did.
01:36:03
◼
►
- So Brent Simmons and your colleague at Aged and Decealed,
01:36:06
◼
►
Chris Parris, have a podcast, The Record,
01:36:09
◼
►
where they're talking to, you know,
01:36:13
◼
►
Long-standing members of the indie Mac development community John Chaffee of busy Mac now
01:36:17
◼
►
You know the great busy calc and they're doing what's the new one that's coming out soon busy contacts. Is that what it's called?
01:36:25
◼
►
And he talked about when he was at extensive which used to make suitcase plugins
01:36:32
◼
►
Yeah, and they made plugins for like Quark Express and Photoshop
01:36:36
◼
►
And I remember when I was doing like practically or even not even practically like literally full-time work
01:36:42
◼
►
Doing graphic design layout and quark express there were some extensive plugins that were
01:36:48
◼
►
Essential, you know that I don't use that word lightly once you had them you just could not go back
01:36:54
◼
►
But his you know, he said like we knew that the bet our best extensions that there's Adobe and quark
01:37:01
◼
►
We're gonna see that and they're gonna see well, you know
01:37:03
◼
►
If everybody's using it would that should be part of Photoshop or that should be part of quark express
01:37:07
◼
►
and so it was he said it was like, you know, you had to stay ahead of them because
01:37:12
◼
►
We needed hits, but once we had a hit, we knew that that hit was very likely going to be rolled into the next version, and that we weren't going to get a heads up about it.
01:37:21
◼
►
Right. Yeah, that was a great show. Great interview. That's an especially insightful point. Because it's kind of funny, because once you see the numbers spike on a certain plugin, you're like, "Well, that one's dead."
01:37:32
◼
►
Yeah, yeah, which is you know, but and and I hate to say it but the same is true for developer tools
01:37:37
◼
►
You know and and it's you know, it's been evident
01:37:40
◼
►
Ever since again go back to the next reunification that Apple is very very serious about
01:37:47
◼
►
Providing the definitive developer tool, you know for for their platform. Oh, yeah, definitely. Yeah, like when they showed off
01:37:55
◼
►
Xcode for the first time
01:37:58
◼
►
Very clear indication that code warrior was gonna be persona non credit pretty soon. Yeah that they were gonna do it, you know
01:38:05
◼
►
They saw it as a strategic of strategic importance to get all the cameras using the first party. Yeah, and it really is
01:38:12
◼
►
I mean next it's like so the objective well Coco the frameworks and the developer tools
01:38:18
◼
►
Particularly interface builder
01:38:21
◼
►
we're pretty much the crown jewels of next and
01:38:24
◼
►
they've taken that and if they've
01:38:27
◼
►
Sort of kept that as much as I complained professionally about Xcode or whatever going wrong
01:38:31
◼
►
They they do take it very seriously
01:38:34
◼
►
I I say this as a guy who still uses on a daily basis BB edit and loves BB edit and wants bare-bones to continue
01:38:41
◼
►
to thrive but there used to be
01:38:43
◼
►
like in the code warrior days really solid support for external editors and that you could use BB edit as your
01:38:50
◼
►
editor for code warrior development and
01:38:53
◼
►
You'd miss a few things, but you'd gain things, you know, the things that are in BB editor weren't in their editor and Xcode
01:39:00
◼
►
Does it still support ex-current internal editors?
01:39:02
◼
►
You know what I'm looking right now at one point it did but it did for a long time but not in a robust way
01:39:09
◼
►
And whenever you'd file if you could get if you could get the ear of somebody on the team or file a radar and get a
01:39:15
◼
►
Response and you'd ask for better
01:39:17
◼
►
External editor support because I want to use BB edit and the answer would be well
01:39:23
◼
►
what would you what features and BB editor do you want us to add to Xcode
01:39:26
◼
►
which is sort of not what you want to hear if you're working at bare-bones or even if you're a user who wants
01:39:32
◼
►
Bare-bones to thrive so that you still have you know, yeah, you know that BB edit does well
01:39:36
◼
►
But you know, I understand why right? Yeah
01:39:40
◼
►
I do understand why that if there's a good features like that that they want them in these free developer tools that all developers can
01:39:47
◼
►
Have and take advantage of and not have to to do that
01:39:50
◼
►
Yeah, but it does hurt and you know, yeah hats off to the reveal people. Yeah, exactly
01:39:55
◼
►
I just gave up and I start using defaults and pretty much everything on the time
01:39:59
◼
►
Like I don't like it used to be that I changed all my my text colors for my man. Yeah, I'm just
01:40:05
◼
►
I've given up I'm resigned. I'm like just give me give me the defaults
01:40:09
◼
►
I'll work with that because at least when I go to somebody else's Mac the odds are that they've also given up and
01:40:14
◼
►
We've all been yeah out into doing everything the exact, you know what when you do give up like that and it's you know
01:40:20
◼
►
Then you get a new computer. There's a huge advantage to this thing.
01:40:24
◼
►
Hey, I used to spend three days when I got a new computer getting everything set up the way I want it.
01:40:28
◼
►
And now I just log in with three things and install Dropbox and I'm up and down.
01:40:34
◼
►
The one thing I do is I speed up the mouse a little bit and I make the keyboard so that it's not glacial speed.
01:40:39
◼
►
I don't know why they default the keyboard to be that slow.
01:40:42
◼
►
Oh, like when you repeat key?
01:40:44
◼
►
Yeah, the repeat key stuff, which doesn't matter that much anymore because they've kind of nerfed that with the...
01:40:48
◼
►
Yeah, because half the time you know, if you hit like the E key, it gives you the iOS style
01:40:54
◼
►
pop up for your the little Frenchy things they put over there.
01:40:57
◼
►
Frenchy things. Yeah, but for me, it's normally like I just type something I hate and I just
01:41:01
◼
►
hold down delete. And when it takes like half a second,
01:41:04
◼
►
oh, yeah, delete. Yeah, delete would be the one or if you want to add a bunch of returns,
01:41:08
◼
►
but I can see how delete Yeah, yeah, I definitely changed some of those.
01:41:11
◼
►
What else happened? Oh yeah, so I was joking last week. So Markup kind of
01:41:18
◼
►
Sherlock's us a little bit, Sherlock's napkin. And I was joking last week saying
01:41:26
◼
►
that I would rather have it just be everywhere in the system because that's
01:41:29
◼
►
a cool feature and it is a cool feature and guess what? It's everywhere in the
01:41:34
◼
►
system. Turns out that Markup, the one that they demoed in Mail, is an extension.
01:41:39
◼
►
Yeah, I figured that out and I didn't want to tell you.
01:41:43
◼
►
I don't… Really? You didn't want to hurt my feelings?
01:41:47
◼
►
I figured it would be better if you figured it out on your own.
01:41:51
◼
►
So I didn't know, but that's cool. That's really cool. So in any app
01:41:55
◼
►
now you can just get, well, certainly text edit and mail
01:41:59
◼
►
so any text view on the system, you can edit an
01:42:03
◼
►
image in Markup. Was I calling it Markdown? Whatever, Markup.
01:42:07
◼
►
I know it's Marco or any other image editing capable extension
01:42:16
◼
►
on the system. I love that idea. I've always loved the idea of
01:42:19
◼
►
services that came from nest. They get super underused. But
01:42:23
◼
►
hopefully with this new extensions mechanism, that's
01:42:28
◼
►
going to sort of breathe new life into that idea.
01:42:29
◼
►
Yeah, it's a good you know, and napkin getting Sherlock to say
01:42:34
◼
►
whatever. You guys are fine. You're big boys. But you're
01:42:38
◼
►
right. And it is more elegant. It's more elegant to know that
01:42:41
◼
►
it's a feature that implemented on the new extension mechanism
01:42:44
◼
►
and not hard coded into mail. Right? It's not that the mail
01:42:48
◼
►
dot app team went in and made this feature. It's a system
01:42:52
◼
►
level thing. And you're exactly right that it's the second
01:42:55
◼
►
coming of services because services the things you see in
01:42:58
◼
►
the you know, you go up to the application name and go down to
01:43:00
◼
►
services and you see this or you they put it in the control the
01:43:04
◼
►
the right click menu a couple years ago. Powerful. I use them all the time, but largely unchanged
01:43:11
◼
►
from the next days. Very much so. Yeah. In fact, I don't think, you know, maybe it takes
01:43:16
◼
►
one API change since then. Like, yeah, you take an op, you know, what type of data I'll
01:43:20
◼
►
take text, I'll take files, I only want here, I'm a service, I only want images. If it's
01:43:26
◼
►
an image, I'm available, otherwise not. And then you return the same, you return something
01:43:32
◼
►
option. So it works super basically. You have an app, you offer to provide a service in
01:43:39
◼
►
your app bundle, your P-list. And what happens is when you get fired up, so when the user
01:43:47
◼
►
selects something and then chooses your service, it copies it onto a special pasteboard. And
01:43:53
◼
►
then in your app, when you launch, you just look at that pasteboard and do something with
01:43:58
◼
►
it and then put it back on the pasteboard and say that you're done and the app that
01:44:01
◼
►
sent it to you gets the changes. It's the most simple system you could think of, right? Like,
01:44:07
◼
►
"I'm just going to put it on the pasteboard." You don't blow away the one that the user won,
01:44:11
◼
►
the copy paste one, you just use another one. It's simple and elegant, but its simplicity and
01:44:15
◼
►
elegance almost shows that it dates from like 1989 or 1990. Computers needed, it had to be so
01:44:22
◼
►
lightweight because there wasn't all that much disk space or memory or CPU time. They're very,
01:44:28
◼
►
very thin. You know, they're elegant and powerful, but they're thin. Whereas this new extension system
01:44:35
◼
►
is in 1990 or 91, it would have been way too heavy. It would have been too much. It's too CPU
01:44:44
◼
►
intensive and takes too much memory. It does bring back the heady days of 90s, sort of open doc stuff.
01:44:53
◼
►
Yeah, exactly. I thought the same thing that, you know, hey, why do I have to keep going
01:44:58
◼
►
between different apps if I just want to take advantage of this app's thing right here?
01:45:04
◼
►
Like I just want to tweet this. Here's a URL. I just want to tweet it out. Why do I have
01:45:09
◼
►
to copy and paste it and then switch to another Twitter app and then hit command and open
01:45:14
◼
►
a tweet and do this thing and then switch back to go to where I was? It's exactly that.
01:45:19
◼
►
sort of like that the idea of OpenDoc where you just here just go to share hit Twitter
01:45:26
◼
►
and a little view will open right here where you are um but you know with this new safety thing
01:45:34
◼
►
where it's not actually injecting any code into your process right which was kind of the problem
01:45:38
◼
►
with open well there's a lot of problems with OpenDoc but well and OpenDoc had problems i think
01:45:42
◼
►
conceptually where they they lost i think they lost the wheel by basing it on documents rather
01:45:47
◼
►
the fundamental thing was a document instead of an app. Well, I think that they got caught
01:45:53
◼
►
up with what people were doing with computers in the 90s, where everybody was making documents,
01:45:57
◼
►
you know, it's new Excel files and new Word documents, and Claris works documents, and
01:46:02
◼
►
everybody was doing documents and emailing documents. And so they thought, well, why
01:46:05
◼
►
don't we make documents the first class? So it only made sense in the 90s. I think I think
01:46:10
◼
►
long term, the app is the fundamental metaphor metaphor in the system is great. And I don't
01:46:17
◼
►
I don't necessarily think that's true though.
01:46:19
◼
►
So wait, let me back up.
01:46:21
◼
►
That is inarguably true in our timeline, to simplify it.
01:46:30
◼
►
I think if computers had started with documents being the first class item,
01:46:34
◼
►
like from day one, you were always working in a document.
01:46:37
◼
►
So rather than a command prompt on your Apple II where you'd run a program,
01:46:41
◼
►
you had some kind of worksheet that as you type stuff would happen to the
01:46:46
◼
►
worksheet do you know what I mean I think I think you can grow an
01:46:51
◼
►
interesting computer platform based entirely on documents however nobody is
01:46:55
◼
►
nobody's doing now and it was by the night is it way too late to put the
01:46:58
◼
►
genie back in the bottle and reboot yeah and nobody pulled it off no no no
01:47:01
◼
►
definitely not but it is that you know and the man I remember I had a job this
01:47:07
◼
►
back when I was thought I was going to be a programmer college internship. I
01:47:14
◼
►
think it was my third one. It was at a Windows software developer here that did
01:47:17
◼
►
project management. So I had to, I had to read the open doc spec. Oh, God, I'm
01:47:22
◼
►
sorry. Because I wanted to know if they should do it. And they were already
01:47:26
◼
►
going to do object linking and embedding. And I had to read the open doc spec and
01:47:30
◼
►
actually like try to understand it. It made me want to jump out of window.
01:47:35
◼
►
Yeah, it's crazy.
01:47:36
◼
►
It was so hard to get your head wrapped around.
01:47:39
◼
►
Whereas, even as an outsider, not sitting there in Xcode writing code,
01:47:44
◼
►
it's like I can watch the extensions,
01:47:47
◼
►
you know, WWDC sessions and read the high-level docs, and I get it.
01:47:52
◼
►
I see exactly, you know, all right, you just put it in a little bundle
01:47:55
◼
►
and a little rectangle will open up and you're drawing in that rectangle.
01:47:59
◼
►
Yeah, it's just terrific.
01:48:00
◼
►
That in-situ editing is brilliant.
01:48:02
◼
►
And I hope a lot of people adopt it.
01:48:04
◼
►
I really do.
01:48:05
◼
►
Well, and the other thing too, I think, see, I think it's great because I think it's a
01:48:08
◼
►
very good conceptual model for developers and developers forget it. I think it's really,
01:48:13
◼
►
really easy. It's almost like, well, why not do it? It's the sort of thing you can, you
01:48:17
◼
►
know, you're working on a big complicated app. You can take, you need a break. You can
01:48:21
◼
►
work on a little sharing extension. It's a nice little side project. Um, like the way
01:48:26
◼
►
Martin Scorsese always likes to, after he directs a major motion picture, he often afterwards
01:48:31
◼
►
directs like a commercial, often for like companies in Europe and stuff like that. Because
01:48:36
◼
►
it's like a nice brand. Just go from a three hour, you know, Wolf of Wall Street. Now,
01:48:41
◼
►
now we just want to do a 30 seconds. The sorbet between courses. Yeah. But I also think it's
01:48:46
◼
►
gonna be huge for users because they're so much more exposed. I don't know what I really
01:48:53
◼
►
hope so. I don't know what the percentage of Mac users who've ever used a services menu
01:48:58
◼
►
item is, but I'll bet it's in the single digits. Even once, let alone use them on a regular
01:49:03
◼
►
basis. Whereas that sharing button, which they know from their iPhones, boy, I think
01:49:08
◼
►
that's, I think they're already using it. And I think that now that they can do more,
01:49:12
◼
►
I think that, uh, I think that it's really nicely exposed. Yeah. Hopefully it takes off.
01:49:20
◼
►
I think it's going to be a big deal. I'd be less thrilled if they tank napkins. Other
01:49:25
◼
►
Other than that, I think it's a terrific idea. There's equal exposure on iOS, right? You
01:49:32
◼
►
can have photo editing extensions on iOS, which I think is going to be huge.
01:49:36
◼
►
Yeah, I think so, too.
01:49:39
◼
►
Like the first person who writes a Gotham filter is going to get bought immediately
01:49:42
◼
►
by Pinterest.
01:49:44
◼
►
Yeah. It's the easiest acquisition strategy.
01:49:49
◼
►
Yeah, like an immediate billion-dollar payout for Pinterest.
01:49:53
◼
►
Put it put it right into Michael Lops
01:49:55
◼
►
Camera, all right. I gotta get going. I gotta go to there
01:49:59
◼
►
Cool. Okay. It's been fun, man. Yeah guy English you guys can find guy on the Twitter's at
01:50:08
◼
►
GTE I don't even know GTE. Yeah
01:50:11
◼
►
Three later you gets you look at all the space you'll have left for text because you only have to use
01:50:19
◼
►
Well used to be used to be at kicking bear and I pulled a whammy and I got it down to three letters
01:50:23
◼
►
Yeah, well remember I registered at guy English for you. You did. Yeah, and I know I didn't why I did not post a single
01:50:31
◼
►
No, I get everything to it kind of should it I don't know. I think I've got the the password somewhere
01:50:36
◼
►
I think I took it over at some point. But yeah, anyway, yeah, I did that at
01:50:40
◼
►
The chief that's a chieftain. Yeah, it's very very candy and and handed it over to you like the friend that I
01:50:48
◼
►
the kicking bear calm you write once in a while, but then the big thing is
01:50:52
◼
►
debug with you and Renee Ritchie
01:50:56
◼
►
Yeah, I think you think it's you know nerd listeners out there may enjoy
01:51:03
◼
►
If only because man, we've got some great guests. We're
01:51:06
◼
►
All of us are enjoying an incredible
01:51:10
◼
►
Blossoming of cool nerd podcasts, you know, yeah, but
01:51:15
◼
►
Note not just because you're my guest on the show debug is it's really been one of my favorites and especially recently you guys are
01:51:22
◼
►
Killing it. Thanks, man. I
01:51:24
◼
►
Normally, I'd be mirror from that kind of stuff. But our guests are I don't know. We've got some great guests
01:51:29
◼
►
Yeah, that's cool thing about doing a podcast is you can you can you you can just put it all on the guests and
01:51:34
◼
►
Be proud of it. Yeah. Anyway, what's the best way to find it? It's over at I'm more I'm more calm
01:51:40
◼
►
debug or just let's yeah go to iTunes oh you got a you could just got a nice
01:51:45
◼
►
little tweet from Sean Louis guess a oh that guy actually I gotta get him on
01:51:49
◼
►
yeah yeah you got us yeah you know you got to step it up your guests think if
01:51:55
◼
►
it's not malls it's garbage