The Changelog: Software Development, Open Source - Big updates in Safari 14 (Interview)

Episode Date: June 29, 2020

We're joined by Ronak Shah and Beth Dakin from the Safari team at Apple about their announcements at WWDC20 and the release of Safari 14. We talk about Safari WebExtensions, Face ID and Touch ID comin...g to the web, Safari's plans to advance the web platform, and it all comes down to their focus on privacy, power, and performance.

Transcript
Discussion (0)
Starting point is 00:00:00 I try to look up what Chrome's mission was in terms of what they're optimizing for. So you often think about what are you optimizing for? And what you're optimizing for isn't market share, at least on the Safari front. Maybe in other areas you might be as a company. But when I go, and these stats may not be accurate, but this is just a quick Google search. Roughly 18.2% global market share for Safari, while Chrome sits at roughly 63.9%. So they may be optimizing for market share. You're optimizing for these sort of three pillars you sit upon, which is privacy, power,
Starting point is 00:00:31 and performance, meaning that the moves you make for Safari aren't just focused on getting it to be the best, most used browser. It may be the best browser, but it may not be the most used browser. You know, I think it gets even simpler than that. At Apple, we build the products that we want to use. Ultimately, numbers aside, that's what it comes down to. We want a browser that protects our privacy. Just personally, that's the browser I want to use.
Starting point is 00:01:00 I want a browser that preserves my battery. I want a browser that I can use without slowing down my system. And we're always going to prioritize the user when we make these types of product decisions. And as we kind of think about what we're going to do in the future, it's really as simple as that. Being With Your Change Log is provided by Fastly. Learn more at Fastly.com. We move fast and fix things here at Change Log because of Rollbar. Check them more at Fastly.com. We move fast and fix things here at Changelog because of Rollbar. Check them out at Rollbar.com and we're hosted on Linode cloud servers.
Starting point is 00:01:31 Head to Linode.com slash Changelog. All right, welcome back everyone. This is the Changelog podcast featuring the hackers, the leaders, and the innovators in the world of software. I'm Adam Stachowiak, Editor-in-Chief here at Changelog. On today's show, we're talking with Ronik Shah and Beth Dakin from the Safari team at Apple about their big announcements at WWDC 2020 and the release of Safari 14. We talk about Safari web extensions, Face ID and Touch ID coming to the web, Safari's plans to advance the web platform, and it all comes down to their focus on privacy, power, and performance.
Starting point is 00:02:12 And one more thing, huge thanks to our friends at Linode for helping us to make this episode of The Change Log interruption-free. So we're joined by Ronik and Beth from the Safari team. Thanks so much for coming on the ChangeLog. Great to be here. Thanks for having us.
Starting point is 00:02:37 Fresh off of the big announcements at WWDC 2020. Lots going on in Safari world. I feel like this was a particularly big Safari announcement, both for consumers and developers. Do you guys share that sentiment? Totally. I mean, this is probably the biggest update we've done since we first introduced Safari. We're forwarding everything from performance, continuing to deliver industry-leading battery life, doing lots to continue protecting user privacy on the web, which is so, so important to us.
Starting point is 00:03:02 And in addition to all of that, we have all of these amazing features, customizable start page, built-in translation, and a redesigned tab experience that I think users are going to love. Just right there, it's a huge release. Then on top of that, for developers, doing things like supporting the web extension API so that developers who have built extensions for other browsers, they're going to be able to bring that over now to Safari really easily.
Starting point is 00:03:29 There's a lot there. This is a huge release for us. This is a huge release indeed. I was just curious from each of you, maybe we'll just start off with what your pet topics or features are. What do you think is the biggest release for developers? What are you the most excited about, both Beth and Ronak? Take your turns. I think it's got to be the web extensions. When I think about developers this year, it's a huge new world
Starting point is 00:03:54 to open up to web extensions. We've built some really nice tools to make it easy to bring those extensions over to Safari. That's something that I'm really excited about. To follow on to that, I think developers are going to be excited that they can take advantage of the Web Extension API and the tools that we built to make that process simple. Once they've done that, we spent the time to create this whole new category in the App Store just for Safari extensions.
Starting point is 00:04:21 All of that hard work that developers put in to bring extensions over, we're going to be able to showcase that so that users can easily find extensions that they're interested in and start using them right away. I'm really excited that we thought about this end-to-end from the developer perspective all the way to putting it onto the store
Starting point is 00:04:38 and getting it out to users. When it comes to web extensions in particular, what was the, I guess, hurdles in prior architecture? Why is the new way you're doing it now so much better than previous ways? One of the things with web extensions that we really wanted to think about a lot is the privacy angle. There are so many APIs available there where if a user just installs this extension, they might not realize the full extent of what it's capable of accessing. So we really wanted to think about a thoughtful way to give that power to developers while also empowering the users
Starting point is 00:05:18 to only use that when they really want it and to understand what that little program is able to do. So I'm really happy with what we came up with, where we have some extra privacy controls on the extension button. And we encourage users to consider to enabling the extension only for a day or only for certain websites, if that makes sense for them. And, you know, we thought we came at this from an angle of privacy being our biggest concern, but the two other biggest things we're always thinking about are performance and power. And really having those controls is huge for those also because extensions can make web browsing slower and they can use up a lot of battery. And so just having a little bit extra ability for users to control the extension and when it's running and encouraging them to consider that makes me feel a lot more comfortable with how powerful web extensions are.
Starting point is 00:06:15 So this API that you're now supporting, this was developed by Mozilla? Is this an open specification and Mozilla and Google have been supporting it and now Safari is supporting it? Give us a little bit of the history on that because I'm not aware. So it's technically not an open standard right now. It'll be interesting to see that because we want to contribute to it in an open and collaborative way. But I believe it started as Firefox. I could be wrong about that. I'm going to want to go double check that.
Starting point is 00:06:48 But I believe that they started a web extension API and Google kind of took it and ran with it and built a lot on top of that. And then it's been this thing where they're kind of all supporting the web extensions and catching up with each other, but it's not actually in an open standard. I would love to see it in an open standard, personally. So without being in an open standard,
Starting point is 00:07:12 it's kind of being treated like one, where developers are creating extensions, using it, and expecting them to mostly work interoperably between the browsers that support that API. So we're coming to the party now, and that'll be fun. Awesome. You got a welcome from Mozilla in the front. Caitlin Neiman mentioned in a blog post on the Mozilla blog,
Starting point is 00:07:39 she mentioned at the WWDC20 event that you announced this thing. And she even in her own words says, similar to Firefox's Web Extensions API. But they're welcoming you to the Web Extensions community. Aw, thanks. That's awesome. And it's going to be great for developers to have this common set of APIs.
Starting point is 00:08:00 And there may be differences here or there, but to have that common set of APIs that they can develop against is going to be a big deal. Yeah, so as a web developer, a lot of the extensions that I end up wanting to install are developer-focused extensions. And so these are a lot of people scratching their own inch. I even have created a couple over the years as well,
Starting point is 00:08:21 and I felt the pain of writing this common little JavaScript interaction and then saying, okay, now I have to create a Firefox extension and a Chrome extension. And I am a Safari daily driver, so I'd create a Safari extension. But because of that extra step, a lot of developers,
Starting point is 00:08:38 because they aren't using Safari as their development browser, they just don't take the time. And so as a Safari user myself, I would go find a cool extension and it would be Chrome only, or it'd't take the time. And so as a Safari user myself, I would go find a cool extension and it would be Chrome only. Or it would be Chrome and Firefox. It seems like Safari wasn't, you know,
Starting point is 00:08:51 it wasn't in the party as best as. So how easy is it now when, is this Safari 14 or is this 13.1? Well, when the new stuff gets into Safari, this web extension support, how easy is it to get those Chrome extensions, those Firefox extensions, either ported over or is there no code changes? How does that work?
Starting point is 00:09:10 So step one is you'll need Xcode. But from there, if you have an existing extension, it's super easy. We built a command line tool, Safari web extension converter that can take a Firefox extension or a Chrome extension or an Edge extension and convert it to a Safari extension. It will create like an empty app shell that you don't need to do any modifications to if you don't want to. But that's part of how our extensions are bundled in the App Store. Or you can choose to modify it. Up to you, of course. And the script will let you know if there are keys in your manifest that aren't currently supported in safari so it sort of gives you that heads up about any needed changes but what we've found because we've been testing extensions and
Starting point is 00:09:59 converting them ourselves to see if they work is that many just convert and work right away. So what happens to the current Safari extension store? It's been its own thing. I remember there was a web interface. Does it go away and everything's in the app store, or is it already sort of integrated into the app store? Right now when I open it up, it opens up a thing that says Safari extensions. It looks kind of like the app store app, but is this exposing it to more people,
Starting point is 00:10:23 or maybe that already happened and I just didn't notice? So we're going to continue to support our existing extension model and both existing extensions, of which there are a lot of popular ones like Honey and Grammarly that are already available on Safari. You're going to be able to get those from the same new category in the Mac App Store as these new extensions that are based on the Web Extension API. So we're going to have one convenient place in the App Store. And what's cool is we're going to actually have editorial, top charts, all of the tools that people love to use in the App Store to make it really easy
Starting point is 00:10:57 for people to find these. And so from a user perspective, they're going to be able to pick from this great selection regardless of how a developer's built the extension. I actually just installed Pocket and following your instruction, Jared, I went to the App Store preview, which launched the actual App Store Mac app that now shows me a preview of a few Safari extensions. And I was just telling you before the call that I think I just did this because when I installed Pocket to Safari, it launched the Mac App Store. I installed an app from the Mac App Store, and then Safari could talk to something behind the scenes. As a user, it was pretty interesting, but having been down this road
Starting point is 00:11:35 before with Safari installing extensions, it was foreign. But I was like, I think I just did this. And so I see here on this Safari's extension preview page here in the Mac App Store now that's showing me pockets. I'm assuming that was true based on it being there. Is this Mac OS only? Or are you guys bringing extensions to Safari for mobile? So this is for Mac OS.
Starting point is 00:12:01 So we support extensions on Safari and Mac OS. We've certainly heard feedback about extensions on our other platforms. So we're aware of it, but we're talking about Mac today. Yeah, fair enough. So what is the most important thing, I suppose, to developers when it comes to extensions?
Starting point is 00:12:20 It might seem obvious, but what are the things that developers should be most excited about with web extensions? Good question. I mean, one of the things that's just obvious is mostly what we've been talking about, that if you already have an extension, there's a whole audience out there for you. If you're starting from scratch and you want to build an extension, it's also a great choice because for that same reason, the interoperability reason. And then in terms of the APIs, there's
Starting point is 00:12:52 just a lot there. There's so much you can do. There are so many APIs. It's epic to go through the number of APIs. If you sum them all up throughout the different browsers, because not everyone implements everything, but the total possibility there is extreme. And I think that that part is exciting as well. There's just a lot that you can do with them. You know, and I think just putting myself in the shoes of an extension developer, being able to reach this audience, this huge audience that we have of Safari users who are really passionate, who are often super enthusiastic
Starting point is 00:13:32 about the apps that they run, the technologies that they use, and being able to reach them now with your extension so that they can dial in their browsing experience is a really big deal too, I think. Are those numbers you can disclose to some degree? I know you have installs of Safari, of course, but actually active users of Safari? I don't have hard numbers to share, but we have tens of millions of Mac users out there
Starting point is 00:13:57 and a whole heck of a lot of them use Safari as their primary browser. So it's a lot of people. It's a lot of people who use the latest. They upgrade to the latest versions of Mac OS, and they're super knowledgeable, and being able to reach them with your extension is going to be great.
Starting point is 00:14:14 I know Jared's not in his head because he's been a diehard Safari user forever. I bounce around from Chrome to Brave to Firefox, now I'm back to Safari again. One thing I love most about the last, I would say, two years, maybe a year-ish, two years, has been the utter focus across the board for Apple when it comes to privacy. And so I take that as a diehard Apple user.
Starting point is 00:14:39 You see a classic Mac behind me. You see the trash can behind me. The pseudonym for the prior Mac Pro. I'm using an iMac Pro right now. I've got an iPhone in my pocket, I've got an Apple Watch on my wrist. I'm an Apple user, long story short. And so to not
Starting point is 00:14:55 use Safari primarily was kind of troublesome. And some of that was because of the lack of dev tools or the differences between different browsers, which I'm sure we'll probably talk about. But Jared nods his head every time I say Safari, so he's a diehard Safari user. Whereas me, I'm wayward when it comes to browsers.
Starting point is 00:15:14 I'm wayward. Experimental. You've heard us say it before, but truly we believe that privacy is a fundamental human right. And it's something that we think about deeply as we think about how we're building our products. And you see that in Safari. You've seen it over the years since we were actually the first browser to include private
Starting point is 00:15:39 browsing. People forget this. But way back when, we introduced the world to private browsing. We were the first browser to block cookies by default. We introduced intelligence tracking prevention a few years ago. People may not know this, but back in March, we actually became the first browser to block all third-party cookies by default. I believe we're still the only browser to do that. So we have a long history here of being pioneers
Starting point is 00:16:06 and protecting user privacy. You see it even in this release from the protections that we built into extensions, into this release of Safari, to what we're doing with Privacy Report. Users are aware of how they're being protected as they browse. There are things that we do to protect our user privacy. We're also doing them because we think that we can help push the industry forward on this
Starting point is 00:16:31 in the hopes that users become more aware and they demand more from the technologies and products that they choose. Yeah, I think if we don't have people like you and Beth leading the charge and the rest of Apple to focus on privacy, I mean, it's a license to not care if you don't have companies like Apple stepping up to do that. At its core, not just in the Safari world, but at its core. Absolutely. And that's a responsibility that we take really seriously in the product.
Starting point is 00:17:07 It's not who we are to not care. We care deeply about our products and our responsibility to our users. So this is something that you're going to continue to see us pushing forward on, for sure. So security, privacy, and usability, these things are eternally at odds. You trade them off and we see people trading
Starting point is 00:17:29 privacy and security oftentimes for convenience to our own detriment and then it takes us a while to realize that that was a bad idea and we start to learn. And so one of the things that's been a long time problem for web developers and web applications is how do we do authentication? How do we do security? How do we manage these things in a way that's A, secure,
Starting point is 00:17:51 B, not annoying, and C, usable? And one of the things that seems cool is that you're bringing some of Apple's technology around Face ID, Touch ID, and these passwordless authentication schemes to the web. As a Face ID user, I just love when I can Face ID into an app.
Starting point is 00:18:14 If I can launch my bank app and not have to do a password, or if I can launch my whatever app that I would have to sign into and just Face ID boom, or Touch ID boom. Doing that on the web seems like it could be a nice balance between not giving up that security, removing the need for passwords maybe,
Starting point is 00:18:32 but then also having the usability of, I can just look at it or I can just double click on my watch. Tell us about Face ID and Touch ID for the web. Yeah, we're super excited about these. This is using the Web Authentication API, which is an open standard JavaScript API. And we added support for web authentication for use with public keys last year. I think it was last year, unless it was the fall. I think, let's say last year. and what's new now is that you can also use Face ID and Touch ID, and I think that that's going to be, like you, from the user perspective, that's huge, especially when I'm on my phone typing in a really long password. Usually I'll get the autofill, so that takes care of you too.
Starting point is 00:19:23 Right. But I just love that this will be an option. And I also love because it has this opportunity to give you that extra layer of security because it can be a second factor authentication also. And another thing that's really exciting about the Face ID and Touch ID for the web is the Apple Anonymous attestation part of it. So I don't know if you've heard about that.
Starting point is 00:19:51 That's a thing. So whenever you're doing one of these authentication processes, the website can ask for the security key or the phone, in the case of Face ID or Touch ID or Mac, to perform a process called attestation to prove that it really is what it says it is. And that can potentially be something, if it's always the same, if the security key is always returning the same attestation, then it's potentially a fingerprinting vector across different websites. But the way we'll do this for Face ID and Touch ID for the web is that each of the domains that you have a password with, that you have an account with, will get a different attestation. And that keeps it totally privacy-preserving,
Starting point is 00:20:48 removes the possibility that there's a fingerprinting vector there. So that's one part of that technology that I'm really excited about. That's very cool. So let's take a standard website that uses an email and password today, and they find out about Face ID and Touch ID for the web. What does it look like to integrate and get it set up? Maybe it's go read the web authentication API and leave us alone. But what does that look like? What are the steps?
Starting point is 00:21:12 It's not a lot. I don't have them in front of me, but basically there are really just a few JavaScript calls that you need to be able to make and use. And probably you need to add some user interface as well, where you're actually encouraging users to set up Face ID and Touch ID, because it won't be a replacement for your password since it's tied to your device. In case you lost your device, that would be a problem. So you still need a regular password, so it's like a second step. So creating that user interface is probably the hardest part, to be honest. The actual JavaScript calls that you
Starting point is 00:21:50 invoke, they're minimal and pretty straightforward. We have a session at WWDC this year all about this. Meet Face ID and Touch ID for the web. And there's some sample code in there that's very straightforward. Jared, you mentioned passwordless earlier. I didn't catch that as part of this talk. So is there something in there for passwordless that I missed? That they released? Not that I know of. I was just saying that perhaps it's a way to go passwordless
Starting point is 00:22:15 if you have a completely Apple-using. Face ID, text ID. Yeah, okay, gotcha. So I guess then that question might be then is what about passwordless sites? Because I know changelog.com is passwordless. We would probably add this as an alternative or as a secondary way of authenticating.
Starting point is 00:22:34 Or like Beth said, two-factor auth is actually a great use case for this because you can always fall back to the SMS. But as we know, the SMS-based two-factor auth is really fraught with all kinds of problems. Not to mention the one where it's not usually a second factor because if you're on your Mac, it autofills it there without having to have another machine. But regardless of that, I think as a second factor
Starting point is 00:22:58 would make a lot of sense. Unless you had a website that was like maybe macrumors.com. They could just go passwordless, face ID auth only. But they're probably the only ones, or all the other Mac sites. I think it's worth mentioning also that, of course, so many developers have adopted sign-in with Apple to replace the traditional account
Starting point is 00:23:20 so that users have this really seamless way to sign in across apps and the web. And so that's something that we've seen huge success with. I think we've had 200 million accounts created using sign-in with Apple already. It's a lot of millions. And a lot of developers are seeing actually an increase in accounts created, we think, thanks in part to sign in with Apple. So we're super excited about that as well.
Starting point is 00:23:57 Let's talk about the motivation there then for users to use sign in with Apple. Because you see sign in with fill in the blank all over the place. Why do people choose sign in with Apple and why you see sign up with fill in the blank all over the place. Why do people choose sign up with Apple? And why is that successful, I suppose? What makes people use that versus sign up with Twitter, LinkedIn, GitHub, you name it? Well, I think the big thing here, there are two big things. One is that it's so simple to sign up. We've made that process
Starting point is 00:24:21 seamless. You don't have to share your personal information. You're in control of it when you create an account. And you're not being tracked. As you use apps and across the web, we talked about how important privacy is. And this is just yet another example of that, of giving you a way to easily sign in, to be in control of your information, and to do it in a way where people aren't tracking your behavior. And you can kind of tell from the numbers that that's something that people care about, and it's a really big deal. Well, as I read off the list, too,
Starting point is 00:25:01 I sub-thought was those are all social networks of some sort, and Apple is not a social network so having my authentication tied to say twitter github which isn't really a social network but it kind of is or linkedin which totally is or facebook which well it's facebook totally you know it totally is so there's no scrutiny there. I guess I have less concern with if for some reason that got hacked, somehow I'd be tied to my social network being taken over by someone. We're in the fortunate position where our business is built on doing what's best for the user. So we don't need to compromise when it comes to things like
Starting point is 00:25:44 helping you log into a site. We get to put the user's best interest first. And you can see that in the product itself, the way that it gives users control. So there's web authentication API. I can back Beth up on her statement about the extensions API not being a simple thing. It's not like you guys just added one API
Starting point is 00:26:03 and you're like, hey, it works now. I actually clicked through on the link. We'll put it in the show notes. I just scrolled and scrolled and scrolled all of the... I mean, there's tons of stuff inside that. It's mind-boggling. And so you're adding lots of support for new things. Now one, I guess, reputation that Safari has got amongst
Starting point is 00:26:19 developers and web developers is that y'all have been slow to add new features, really web platform features over the years. And this has got developers to grumble about Safari. There's some that have even called Safari the new IE. I disagree with that. I think it's clickbait. But you've probably seen those kind of articles out there, not in terms of like, it's dominance, but just in terms of it slowly adding things, it's like, it works everywhere except for IE, was the old saying.
Starting point is 00:26:48 And there's lots of features that worked in lots of places except for in Safari. Web Bluetooth, WebVR, WebGPU, there's lots of them. I'm just curious what you all feel about that criticism. Do you think it's unfounded? Are you well aware of it? Does it hurt your feelings? Are you trying to change that perspective?
Starting point is 00:27:07 What are your thoughts on that? So definitely aware of it. And it does hurt my feelings, but we don't have to get into that. But when we add APIs to Safari, we want to be really thoughtful about it because the most important things to us, our core principles as a browser and as a browser engine, are privacy, power, and performance. And if a new web API enables those things, then we're super excited. We're all over it. A lot of the web APIs we've pioneered over the years have been APIs along those lines. And for APIs where we take pause and we have some concerns about power performance or privacy,
Starting point is 00:28:05 that it can easily be viewed as like, oh, just not implementing the latest thing to give the capability and I want to put all of my code together. But we just have some deeper considerations that we want to think through really carefully. That makes sense. Ronak, what do you think? Yeah, it's funny because I look back at the web standards process
Starting point is 00:28:28 and we've helped pioneer so many of the ways that we use the web today. So you go back in time, a good example is HTML5 video. We pushed hard for the industry to move to HTML5 video away from things like Flash, as an example.
Starting point is 00:28:47 Safari, especially on iPhone, played a huge role in that. We've continued to do that, actually, over the years. But like Beth said, we want to push the web forward while also putting user privacy first, while putting battery life first. Our users care deeply. They want our devices to have great battery life, to deliver great performance. And so we have to be really thoughtful about how we adopt these APIs because that's so important to us and it's so important to the user experience. And it's funny because those decisions directly translate to the performance that we're able to deliver.
Starting point is 00:29:29 They directly translate to our ability to deliver industry-leading battery life. I don't know if you've seen those numbers, but as an example, you can stream video on Safari up to three hours longer than Firefox and Chrome. And that's because, not just because we pay attention to optimizing Safari, but because we're really careful about what we support in our engine. I try to look up what Chrome's mission was in terms of what they're optimizing for. So you often think about what are you optimizing for? And what you're optimizing for isn't market share, at least on the Safari front. Maybe in other areas you might be as a company. But when I go, and these stats may not be accurate, but this is just a quick Google search.
Starting point is 00:30:11 Roughly 18.2% global market share for Safari, while Chrome sits at roughly 63.9%. So they may be optimizing for market share. You're optimizing for these sort of three pillars you sit upon, which is privacy, power, and performance. Meaning that the moves you make for Safari aren't just focused on getting it to be the best, most used browser. It may be the best browser, but it may not be the most used browser. You know, I think it gets even simpler than that. At Apple, we build the products that we want to use. And ultimately, you know, numbers aside, that's what it comes down to. And so we want a browser that protects our privacy. Just personally, that's the browser I want to use. I want a browser that preserves my battery. I want a browser that I can use without
Starting point is 00:30:58 slowing down my system. And we're always going to prioritize the user when we make these types of product decisions. And as we kind of think about what we're going to to prioritize the user when we make these types of product decisions and as we kind of think about what we're going to do in the future it's really as simple as that it might be marketing but it's on the marketing page so it might be marketing but you say we built Safari to be the best browser for your Mac, iPhone and iPad now that makes sense because you often build software
Starting point is 00:31:21 to compat very well with your hardware totally makes sense but you've got you know other safe browsers not to like brave and chrome has been you know has issues we've since moved to brave or other browsers to do that too but I've always seen safari as this privacy focused
Starting point is 00:31:38 safe focus but it hadn't been as clear as you just put it that as a mission of the company not just simply the product of safari but you two as folks behind it, making it work, being so privacy focused. Yeah, I mean, absolutely. Go ahead, Beth. Oh, I was just going to say, I don't even remember what I was going to say after definitely.
Starting point is 00:31:58 I was maybe just like agreeing. You echo that. Well, I mean, you know, I'd used Chrome for a while, as Jared mentioned before, Safari not being the primary developer target as a browser. And so when I would develop for the web and do different things, the browser I tended to focus on when it came to does it work first pass was Chrome. Dev tools, other things we could talk about are in the mix there that may be different, not so much lacking, but just definitely different in Safari.
Starting point is 00:32:27 And at one point, you all shared some similarities when it came to WebKit prior to the move to what was it called, Jared? Blink. Blink, yeah. So there's been some similarities in the past, but for some reason, web developers keep choosing Chrome, I think because its concern is bleeding edge, bleeding edge tech, pushing the web forward in those ways. Whereas Safari's focus has been really around
Starting point is 00:32:50 the browser you want to use rather than just simply the edge pusher. I think there is something to that. And I think that we do care deeply about developers too. And we care deeply about developers, too. And we care deeply about standards. And so we participate very actively in the standards processes. And we definitely think it's the better APIs come out because of it. And we care deeply about developers.
Starting point is 00:33:18 We do want to know what APIs you want to implement. And we don't want people to feel like we aren't listening, even though that can be the mood on Twitter sometimes, like you were saying. But we really welcome new feature requests, especially when you have a specific use case that you're trying to do, something you really want to achieve.
Starting point is 00:33:38 That's super interesting to us, and you should definitely file requests for APIs that you want to see. And while we're talking about developer tools, I do want to plug you to give a try to the Safari Web Inspector if you haven't tried it recently. We do have a session this week at WWDC about what's new in the Web Inspector in Safari.
Starting point is 00:34:00 And there's a bunch of great stuff this year, a ton to get into. One of the bigger things that we're pretty excited about is local overrides, which we think is going to be really useful when you're developing kind of something, a bit of a more complicated system, lets you intercept and replace response content that's loaded over the network in a nice way, and it will all stay stored nice in the Web Inspector. So we have a session all about that. The web inspector also has a nice new look that uses the space a little better. So if you haven't checked it out in a while
Starting point is 00:34:32 you should. And we really develop the web inspector in Safari Technology Preview, which is our every two weeks release of Safari. And our developer tools team really views that as their vehicle to ship things. They don't so much think of the annual release or the software updates. They're thinking about Safari technology preview.
Starting point is 00:34:56 So that's really where you want to go if you want to check out how the inspector is doing these days. Is there any sort of content out there from that team that people can follow? Like, how do you keep, if you want to pay close attention, how do you pay close attention? That's great. So yes, at webkit.org, we have a lot of blog posts there. And we do tend to post a good number about the inspector. And we also have the web inspector reference guide
Starting point is 00:35:25 on webkit.org, which is pretty thorough documentation. And we've also been at the WebKit Twitter account, we've been trying to post tips and tricks for the web inspector specifically. And I know that the inspector team and our evangelists have been working together to pull those together. So I concur the web inspector reference is quite comprehensive. You got search there, you got filters there, you got lots of different stuff from the console down to,
Starting point is 00:35:55 as you mentioned, local overrides for networking sources, etc. So it's, there's a lot there to dig into. We'll, we'll drop that link in the show notes for the listeners. Cool. Is the team that works on web inspector? Inspector, is that like Safari proper team? I'm always curious how these things work inside of an organization. I also want to know how you do Safari for iOS and Safari for macOS and if there's any shared infrastructure or code or if they're just completely bifurcated. So this is a huge question. But is the Web Inspector team just like they sit next to everybody else working on consumer products? Or is it just like separate? How does it work?
Starting point is 00:36:28 We're all one big happy team. Really? How many folks? Geez, I don't even know. But we all really sit together when we get to work from the office from Apple Park. In fact, there's an inspector engineer like two doors down from me. So we really, that is one of the things that I think is unique about our team, I think, compared to other browsers. Like the JavaScript core team is part of our team too. And I know other browsers there, whatever their JavaScript engine is, is sort of a separate situation. But we all work very closely together.
Starting point is 00:37:09 We work on all platforms. We collaborate on everything. So there's one Safari team across all operating systems. That's right. I've written code for iOS, WatchOS, MacOS, Mac Catalyst. One of the things I have to add is, we have this big releases here, and it's been pretty amazing to watch the team pull the release together amidst everything that's going on.
Starting point is 00:37:35 To see them continue to work together and deliver such a huge release has been pretty amazing. How do you know how you orchestrate something like that, especially across, specifically I think of iOS to macOS, because those safaris seem to be pretty different, except for the rendering engine. I'm sure there's a bunch of shared code. But is there some technical infrastructure,
Starting point is 00:37:58 some magic that y'all are doing to make those things merge at the right times? Or is there feature flags? How does it shake out? Mostly we try to do really thoughtful abstractions in terms of sharing as much code as possible. And yeah, of course, at the WebKit layer, that's most things.
Starting point is 00:38:20 But there are still some interesting diversions too. And you can see all of that in open source. We use the WebKit open source project. That's where we actively develop for all of our platforms. So in terms of WebKit, it's all just kind of out in the open. And yeah, Safari, they are different apps for sure. But when it's similar concepts, we try to just have really thoughtful abstractions to share as much code as possible one of the things uh mentioned in the keynote and beth you
Starting point is 00:38:50 got a nice feature in that keynote congratulations thank you i was hoping that you could make this call as part of that because i was like oh that's beth cool um run like you mentioned making a browser you want to use i would imagine a browser you want to use renders pages super fast, so page loading is faster, JavaScript is faster. What was some of the behind-the-scenes to sort of test and make sure JavaScript was faster
Starting point is 00:39:14 or page loading was faster? Obviously, I think it's unanimous across Apple when they release anything. This version is always the next big thing or the next best version, so it's common, it's cool, and it would make sense to be faster. Y'all should come out one time and say,
Starting point is 00:39:29 this is actually worse than last version but we've got to release it because we ran out of time. That would win some authenticity points. That's right. But what are the behind the scenes of actually making some of these things faster? Sure, so we have a bunch of the details around our testing on the website.
Starting point is 00:39:46 If you scroll down, you can take a look at that. But the idea behind the performance improvements this year was that we really wanted to improve performance of the things that you do every day. Of course, JavaScript is prevalent across the web. But loading sites that you load all the time, we want to make that super fast. And so we picked a set of representative sites, some with tons of JavaScript, the variety of sites that we thought represented what the types of sites users to commonly visit. And we spent a ton of time, the team spent a ton of time optimizing page load
Starting point is 00:40:26 to make that a really great experience. And even in this first seed, it feels really great. So we're not done yet, but we're super excited about how performance is looking this year. It's going to be great. We're pretty relentless about performance too. We have a number of benchmarks that we run internally, including all of the public ones. And we measure, we optimize, and we fix regressions. And it's just a never-ending cycle. We always have at least a zero regression policy, which is why you won't see us coming out and saying that it's slower than last year because we're constantly measuring. Going back to something that you said, Adam, about building Safari for users on Mac and iPhone and iPad. The other thing that we have a real
Starting point is 00:41:18 luxury, we're not building a browser that has to target every platform. We get to optimize Safari for Apple devices and Apple hardware. You see that. You see it as you use it. We do a lot in the product along those lines. For example, we use core animation to animate what you see on the web. We use native APIs that help us achieve that performance. We take a lot of pride in the craftsmanship that we put into Safari and taking advantage of the hardware APIs that have been heavily optimized to deliver that great
Starting point is 00:41:56 performance. I was thinking about market share when Adam was talking about what you're optimizing for. And I was thinking if they wanted the biggest audience, they would be Safari for Android and Safari for Windows. Then I thought, well there was a Safari for Windows at one point, wasn't there? There sure was. Is that thing still floating around? No, I think we stopped shipping it several years ago.
Starting point is 00:42:14 We did experiment with it and I actually think that we learned a lot from doing that. I think one of the things that we did learn was that we just had more fun when we were able to focus on our platforms and take advantage of what our platforms had to offer. And we focused on that since. And speaking of how we are one team, I also wrote code for Windows.
Starting point is 00:42:38 I was going to say, also core competencies. Stick to what you're good at. She can speak to this directly. Context menus. I did it. That's awesome. What do you say to home screen web apps? We talk about this ecosystem of platform.
Starting point is 00:42:54 We've got this scenario where you have apps installed, and obviously you're a fan of apps because there's an app for that. But then you've got this home screen web apps. What's the state of that for Safari and for iOS? Pretty much from the beginning on iOS you've been able to save a website to your home screen. In fact, that was the original app model on iPhone before we had third-party native apps.
Starting point is 00:43:21 The idea was that you could save a website to your home screen and get to it with just a tap. So it's something that we've supported. And of course, on the Mac, you can always just drag a site into the dock to get to it. So having access to your favorite web content is possible right from the dock or the home screen today. So we've been focused on that and also delivering great browsing experience inside the browser itself. We think that's something that users appreciate and use.
Starting point is 00:43:56 I would imagine Face ID and Touch ID brings those experiences a little closer. It doesn't give you quite login to the American Express or Bank of America app with your face, same experience, but you're sort of giving some of the credence that you've put in apps into the web. And that's kind of where I'm going at. We've talked about that to some degree,
Starting point is 00:44:14 but is there more behind the scenes of the adventure we'll have when it comes to home screen apps or web developers getting to appreciate the full web app experience? Well, I mean, I think you've seen us bring technologies to the web that do help deliver a great experience and take advantage of native technologies. Things like Apple Pay, being able to Apple Pay on a website.
Starting point is 00:44:37 Yeah, I love that personally. You mentioned authentication using sign-in with Apple on the web. And so I do think that we brought a lot of those capabilities to the web for web developers to take advantage of. They're experiences that I love to use personally, so I'm super excited about what we've done and potentially what we could do in the future. We'll see.
Starting point is 00:45:01 Do you all believe that web apps can compete with native apps on a level playing field on iOS on the long term? Or are they always be behind, always be hamstrung by the technology access? We love both native apps and web apps. That's why we have such a talented Safari team, really good-sized team that comes in every day trying to build the best web experience possible
Starting point is 00:45:26 for our users. It's why we do things like add amazing extension support, try to support the key standards out there on the web, build a browser that delivers great performance so users want to use the web more. I think that developers can build great web apps. And certainly our users are using them because we hear from them that they spend a lot of time
Starting point is 00:45:53 in Safari browsing the web, using web apps. So it seems like there are great apps being written and used out there on our platforms and in our browser. The reason I ask that is because it seems like when I look at the web technologies that y'all are usually slower to add or haven't added yet, it makes total sense that you're going for the power, the performance, and the privacy.
Starting point is 00:46:15 I think that's a nice killer three-piece. Adam and I both already memorized it, so you have a nice trio there. Even us louts can memorize that one. You add things that make sense. You've recently added lazy loading images. That's one that we've all been waiting for because that's performance.
Starting point is 00:46:31 That's great for websites. WebP was one that maybe you thought had some performance problems. I'm just assuming things happen. You're adding WebP, HTTP3. These are things that are being added or have been added in Safari 14. But it's the platform features like Web Bluetooth, Web VR, Web GPU,
Starting point is 00:46:49 where it's really like, hey, let's make the web a platform for apps that Safari doesn't support. And I think a cynical black box view of that, and I've seen it expressed out there as well, because you guys are not incentivized to do that because you have this native app platform and that would compete with your native app platform. And from the outside I can see where that's the conclusion made, but y'all are on the inside, so that's why I asked the questions. First of all, thanks so much for talking to us. This is awesome. What do you think of
Starting point is 00:47:19 that particular angle at why these particular features don't make it in the Safari? particular angle at why these particular features don't make it in the Safari. I don't think that's it. I think it's more that it goes back to something that we said earlier in the conversation, that we're incredibly thoughtful as we think about these standards that we add to Safari. One of the things that we've talked about a lot so far is privacy. As we think about these standards and the idea that somebody could get a link and go to a website that's asking to do a Bluetooth scan, that's something that we think about a lot. That's our job, to
Starting point is 00:47:59 protect our users and to think about privacy and to think about all the potential uses of these standards. And so we're going to continue to be really thoughtful about what we add to Safari. And we're going to always continue to put the user first as we think about these things. Yeah, I think one way to think about it, too, is that like a difference between the web and apps is that the web, you can stumble anywhere by accident. And we want that to be a safe place for you to end up. You can mistype a URL, somebody can send you a link and you don't know where it's pointing. With apps, if you've gone out of your way to download it, then there's maybe a little bit more intention behind it.
Starting point is 00:48:42 So the fact that it definitely is scanning for Bluetooth, maybe more thought got put into that. If you're just stumbling across the internet and there are all of these potential traps that you don't want to fall into, we want to really think that through. The web should be safe. You shouldn't be afraid to click a link.
Starting point is 00:49:00 There shouldn't be consequences if you go to the wrong site. So we're getting close to our time here. Is there anything on your list where you're like, I can't believe Adam and Jared didn't ask us about X. We've been waiting for them to ask and they haven't asked. What have we missed so far? There's lots to talk about, so it's hard to catch it all. I think we covered a lot of the highlights. This was a really good conversation. Good questions. Awesome. Well, we certainly appreciate you all sitting down with us and sharing such deep insight to a browser we all love and sharing similar desires for privacy.
Starting point is 00:49:34 Same desires, not similar, same, exactly. Because that's what I love most about Apple's direction at its core. And in particular with this conversation, Safari. So Beth, Ronick, thank you so much for your time today. It's been awesome. Thank you so much.
Starting point is 00:49:50 This is great. Thanks so much. This was fun. I don't know about you, but Jared and I were super excited to have Beth and Ronick on the show to share what Apple has to say about their big updates coming in Safari 14. Head to the show notes and click discuss on ChangeLog News. We'd love to hear from you.
Starting point is 00:50:06 And one of the best ways you can help us is by sharing this episode with a friend. You can tweet it. You can Instagram it. You can share a blog post with your favorite podcast and include us in it. Or you can even give us a rating or review in Apple Podcasts. And huge thanks to Linda for making this episode interruption-free. Also, thanks to Breakmaster Cylinder for making all those awesome beats for us. And last but not least, you can subscribe to all of our podcasts in one single feed.
Starting point is 00:50:32 Head to changelog.com slash master or search for Changelog Master in your favorite podcast app and subscribe. You'll find us. Thanks again for tuning in. We'll see you next week you Bye.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.