Under the Radar

244: WWDC 2022 Special


00:00:00   Welcome to Under the Radar, a show about independent iOS app development.

00:00:03   I'm Marco Arment.

00:00:04   And I'm David Smith.

00:00:05   Under the Radar is usually never longer than 30 minutes, but today we have a special episode

00:00:11   in so many different ways.

00:00:12   We are recording inside of the new Apple Developer Center here at Apple Park during WDC.

00:00:18   So it's a special week, so we're not going to be as particular about the timing of this

00:00:23   episode because we have more than just Marco and I as well.

00:00:27   We're joined by Serenity Caldwell and Andreas Velker, who are joining us to talk about all

00:00:32   the new exciting things that have just been announced at WDC.

00:00:36   We're recording on the Tuesday, so the day after the main keynote, and I'm still slightly

00:00:42   reeling from the experience of just being at Apple Park, being at the Developer Center,

00:00:48   hearing all the announcements.

00:00:49   And I think the best place that I wanted to start with, I think, is to talk about this

00:00:51   amazing space that we're in right now.

00:00:54   So we're in the Apple Developer Center, which is newly opened as of yesterday, as far as

00:00:58   I can tell.

00:00:59   And I'd love to hear, Serenity especially, what is the motivation behind this building?

00:01:03   Because it is clearly not a place that was just thrown together.

00:01:07   It is clearly thoughtfully put together and has tremendous capability for what Developer

00:01:12   Relations is going to be able to do going forward.

00:01:14   Absolutely.

00:01:15   Yeah, we didn't just put this up last week, for sure.

00:01:18   This has been something that's been years in the making and something that, you know,

00:01:22   I joined this team relatively recently in the last couple years.

00:01:25   But our team, you know, has been serving developers and working with developers for over 30 years.

00:01:31   And we've been running all of these, you know, workshops and one on one meetings and design

00:01:35   reviews with folks in a number of different spaces around the world, and including here

00:01:41   in Cupertino and in some of our existing buildings.

00:01:44   And we've really wanted for a long time to have a space for developers to be here with

00:01:51   us in a space that felt like theirs, that they could interact with us, that they could

00:01:55   show what they were working on in a way that felt secure so that we weren't revealing anything

00:02:02   that they were working on or in progress, but also a space where we could collaborate

00:02:06   with them.

00:02:07   And the Developer Center is, you know, I don't want to use the word world class, but I think

00:02:13   I will.

00:02:14   It's a world class space for development.

00:02:16   I mean, I think what's really special is we've got all of these different areas inside the

00:02:21   center.

00:02:22   We've got these smaller rooms, we've got the, you know, we've got Big Sur, our broadcasting

00:02:25   space, we've got the space that we're in now to podcast.

00:02:30   And they're really configurable for whatever we're bringing a developer in for, whether

00:02:34   that's a one on one meeting, whether that's a whole team coming in to collaborate and

00:02:40   integrate a new feature or help an already great app become even better.

00:02:45   There's just a lot of different opportunities for us.

00:02:47   And we're super, super psyched.

00:02:48   And also just excited to have you two here, excited to have all the developers that came

00:02:53   from from Apple Park or came to Apple Park yesterday and came to see the Developer Center.

00:02:59   You know, we've been in the building for a little bit, but this is really kind of its

00:03:03   maiden voyage to developers.

00:03:05   And I'll say as someone who's been to a variety of Apple events over the years that were it

00:03:11   was not in a Developer Center where it was sort of been an environment where for security

00:03:16   force for the appropriate sort of things that needed to be happened there.

00:03:20   I would say that it felt less like I was a guest and a little bit of being an intruder

00:03:24   going to an Apple campus.

00:03:25   Whereas this, I got to say, is the complete opposite.

00:03:27   It feels like this is a place that was made for me, that was made to cater to the needs

00:03:33   and to the things that I would benefit from as a developer who is trying to do whatever

00:03:39   do the best work that I can.

00:03:41   And it's really cool to come to a place that clearly took a lot of effort to make and to

00:03:45   be able to see that.

00:03:46   And so it's really fun to be like, I'm a guest and not a, you know, it's like, I'm not imposing

00:03:50   on Apple.

00:03:51   Apple is inviting me in a different way here.

00:03:52   Yeah, I'm so glad to hear you say that because that's absolutely our motivation as well is,

00:03:57   you know, we've got people coming in, you know, not it's sometimes it's short meeting,

00:04:01   sometimes it's we're working with them for a little bit.

00:04:03   And we really want to make sure that we're not just okay, we're shuffling you into a

00:04:07   conference space and we're going to work in very and we're going to have to escort you

00:04:10   to the bathroom or escort you around, you know, we really want to make sure if you're

00:04:13   coming into work with us that you feel like an equal partner here and that it's a it's

00:04:19   a place for you as much as it is a place for us to work with you.

00:04:22   So one of the things that's really cool about this building to that we were able to kind

00:04:26   of integrate is all of the conference rooms that we've built.

00:04:30   You know, we have these really beautiful glass glass windows that are shaded so that there's

00:04:35   lots of natural lighting like we don't have to keep you in the middle of a building that's

00:04:39   surrounded by another builder.

00:04:40   They're surrounded by more conference rooms and surrounded more more conference rooms.

00:04:43   We actually you get to be very close to the outdoors, you get full access to be able to

00:04:48   wander out if you want to like take a brainstorming walk or you need to take another call.

00:04:53   But you are still we're able to build it in such a way that it's still very private and

00:04:57   very secure.

00:04:58   So you can come and go as you please.

00:05:00   And we also, when we invite developers into this space, we actually give them badges just

00:05:05   like employees.

00:05:06   So you have access to the specific rooms and the specific places that you'll be working

00:05:10   with as well as access to restrooms, access to a dedicated break room so that you can

00:05:16   really feel like it's your space for the time that you're here with us.

00:05:19   And can you go into just a small amount of clarification about like, what's the process

00:05:23   for developers who want to come here or who think they have a good reason to come here?

00:05:28   Is this kind of like, you know, don't call us we'll call you situation?

00:05:31   Or you know, like, do you like what's the what's the process there?

00:05:35   Like, like, how should developers be viewing their relationship with the dev center and

00:05:40   how to how to possibly get in here and maybe for what reasons?

00:05:43   Yeah, definitely the TLDR is like, how do I get here?

00:05:45   Right?

00:05:46   So that's a that's a great question.

00:05:48   We actually have a lot of different ways that we can bring in developers, you know, in our

00:05:53   centers that we already have accessible, like our center, our developer center in Shanghai

00:05:57   and India, we do regular workshops with developers where we send out emails where they can apply

00:06:02   to attend.

00:06:04   In addition to that, you know, you talk about one on one meetings.

00:06:07   So those are some of the things that, you know, we're constantly looking for people

00:06:11   who are building incredible apps, right?

00:06:13   Who are doing really interesting things with experiences, whether that's something cool

00:06:17   with an app clip or something that's adopting the latest features in Swift UI.

00:06:22   And we're, you know, we've got a lot of people inside developer relations and inside evangelism

00:06:27   and our partnership management team that are constantly just on the lookout for awesome

00:06:31   folks.

00:06:32   We talk regularly with our partners around Apple, like our App Store editorial team,

00:06:38   of course, they have a really great pipeline for folks who have new updates to their apps,

00:06:42   and they have a specific forum where it's like if you're interested in being featured,

00:06:47   and we may not know about you submit that so that we can get more information.

00:06:51   App Store will frequently say, Hey, have you heard about these folks?

00:06:54   Like we just got this information?

00:06:56   And would you would you be interested in speaking with them?

00:06:59   But a lot of times, honestly, it's also just us, you know, we're, we are constantly listening

00:07:05   and in the community, right?

00:07:07   You know, I'm on Twitter, some of our other folks are on social, and we always want to

00:07:12   see, you know, what developers are working on.

00:07:14   And if they have a new app update, or if they're doing something really cool with a specific

00:07:19   framework, like I mentioned, we really want to we want to make sure that we're aware of

00:07:25   what the community is doing so that we can identify those folks and say, Hey, you already

00:07:30   have this great experience.

00:07:31   Did you know that there's XYZ?

00:07:33   There's these frameworks to make it better?

00:07:34   Or hey, have you thought about implementing this in a certain way?

00:07:38   Or hey, you know, this design is really fantastic.

00:07:42   Have you thought about this?

00:07:44   Have you my tagline is gonna be have you thought about?

00:07:46   Yeah, it's here.

00:07:47   It really is a fun conversation.

00:07:49   So yeah, there are there are lots of opportunities for folks to come on in.

00:07:53   That's great.

00:07:54   And I think now I think the thing I really want to talk about with Andreas is the announcements

00:07:58   yesterday and I think the direction that clearly I think the most like I think my favorite

00:08:04   part of WDC Monday is the State of the Union is that like the the the morning is great

00:08:11   in terms of getting the sense of the overall structure, but as a developer, and as talking

00:08:15   to a developer audience, like I think the afternoon the State of the Union is that's

00:08:18   the real crux of the week.

00:08:19   I think you can get a sense from that that's setting the tone for what we should be interested

00:08:24   in what we should be excited about where the focus is.

00:08:27   I think it was very clear and I think very helpful as a developer that at the beginning

00:08:31   when Josh was talking about his essentially like his vision for the platform is that it's

00:08:36   like Swift, Swift UI, Xcode previews.

00:08:39   This is where the effort is going.

00:08:40   This is the the future of all of Apple platforms that it in for almost all of the features

00:08:45   that were announced this week.

00:08:47   It's very much there on it.

00:08:49   It's like it is so much you sort of unification around those those technologies that it's

00:08:54   like if you're using Swift with Swift UI, you're going to work great on an Apple watch.

00:08:58   You're going to work great on an iPhone and an iPad on Mac on tvOS wherever wherever you

00:09:01   all wanted to be you could be there and I think I really sort of love to get some more

00:09:05   color in the sense of that as a direction that is sort of where Apple sees sort of sees

00:09:10   the platforms moving forward.

00:09:11   Yeah, you know the State of the Union really is the the session where we kind of put it

00:09:15   all together for developers.

00:09:16   We really translate the announcements that we made in the morning for developers and

00:09:20   really try to help them understand where we are going and I think you picked up on the

00:09:24   important theme from this year that you know our future for developer platform is Swift,

00:09:29   Swift UI and Xcode previews and we really see you know this this vision of the platform

00:09:35   that we we have is that we have this really tight integration between these three components,

00:09:40   the programming language, the APIs, our frameworks and the tools and we really find that by doing

00:09:46   designing them together and advancing them together the results are so much greater than

00:09:50   the sum of all the individual parts and you know often you know we make improvements for

00:09:56   example to Swift you know maybe the kind of like make it more expressive and more compact

00:10:01   because we are kind of motivated by you know a code snippet we are looking at while we're

00:10:06   designing Swift UI and we're obsessing about this code similar can't we find a better way

00:10:10   to express that in more compact way a smaller way you know so that developers can be faster

00:10:14   creators and and you know some great examples for that are things like results builders

00:10:18   or radio types that in Swift that enable the the declarative syntax in Swift UI and you

00:10:24   know this year I think we created this really great all around package almost of you know

00:10:29   improvements in the Swift language to make it more readable and you know more flexible

00:10:34   APIs in Swift UI to give developers more of what they want and really implement the apps

00:10:38   that they are they're looking for and and even better tools you know to make them more

00:10:44   productive while they're working on their code and and I think you know the result is

00:10:47   really higher developer productivity that you get from this combination of Swift Swift

00:10:51   UI and an Xcode previews and we're really looking forward to hearing what developers

00:10:55   think about it this year.

00:10:56   For me everybody sees it's it's it's an I find something reassuring about the clarity

00:11:01   of that vision that I think I've gone through enough of these transitions that there's a

00:11:05   sense of I like that Apple is clearly committing to this this is like the early years of Swift

00:11:11   UI when it you know maybe whatever was is it three years old this year four years old

00:11:16   and it's like the early years there was a little bit more it was more experimental it

00:11:19   was more interesting as a new paradigm that was very productive and I've done a tremendous

00:11:25   amount of work with it and I think it's it allows a certain kind of productivity that

00:11:29   you just can't get previously that you know I've you know I started doing development

00:11:34   with Objective C and UIKit and it was great but I wouldn't say it was necessarily productive

00:11:38   that there is something in Swift UI that is so rapidly you can rapidly iterate you can

00:11:44   try and experiment lots of things and especially with Xcode previews that you just can't do

00:11:47   and it's interesting now to be able to sort of have this clarity that if you're not Swift

00:11:52   Swift UI going forward that you're you're going in you're either you're carrying around

00:11:57   a lot of baggage that you don't need to be or you're not taking advantage of sort of

00:12:00   the accelerators that Apple is putting out to allow developers to do well do things that

00:12:04   they were previously able to do.

00:12:06   That's right.

00:12:07   I feel seen.

00:12:08   Yeah, sure.

00:12:09   Yeah, we really see it as a huge accelerator for developer productivity right and we have

00:12:14   heavily invested in our earlier frameworks in languages Objective C and AppKit and UIKit

00:12:20   and Interface Builder and they will continue to serve us for many more years you know and

00:12:26   that investment isn't going away but we just see the productivity gains that developers

00:12:30   have and they when they kind of move into this new world and they transition into kind

00:12:35   of our future direction and we are hoping to just you know enable them to create better

00:12:39   and better apps.

00:12:40   Yeah, I think it's interesting.

00:12:41   I mean you know I have this massive baggage of my you know almost 10 year old app code

00:12:47   base a lot of it's still Objective C it's almost entirely still UIKit and I feel a lot

00:12:53   of that burden of like I'm not able to take full advantage.

00:12:56   I mean I guess can you speak a little bit to like you know how I guess the migration

00:13:01   path you know we know about things like hosting controllers and enclosing different views

00:13:04   in different ways like what have there been advancements in the migration path of like

00:13:08   you know bringing your old code base kind of piecemeal into the new world.

00:13:12   Yeah, the interoperability between the you know the earlier frameworks and SwiftUI is

00:13:18   just huge you know it's hugely important.

00:13:22   You know most developers don't start over with a new app every year right they have

00:13:26   code bases that are years old like you said in your case and you know nobody wants to

00:13:32   just rewrite an app for the purpose of rewriting an app right you want to get some benefit

00:13:36   out of it.

00:13:37   So the best way to adopt SwiftUI is kind of incrementally right you when you create a

00:13:41   new part of your app then you write it in SwiftUI and over time more and more parts

00:13:45   of your app transition into the new world and you kind of gain those productivity wins

00:13:51   right and so I think from our perspective it's just really important to have this interoperability.

00:13:57   We're going to continue pushing on that making sure that things work well together and SwiftUI

00:14:04   is a many year journey right we just announced it or shipped it a few years ago and we will

00:14:09   continue improving it for many more years and that means that not all functionality

00:14:15   is present in SwiftUI today and so it is just going to be the reality that in many cases

00:14:21   developers will fall back to using UIKit or AppKit directly and so making that path really

00:14:26   smooth and yeah making sure that it just works great is just an important design point of

00:14:33   our approach to SwiftUI.

00:14:35   Yeah I will say on that score what I definitely see this year it feels slightly like just

00:14:39   as I've been doing SwiftUI since the beginning I was doing a lot of watchOS development and

00:14:43   for there it was this massive win coming from watchkit to SwiftUI and so the potential limitations

00:14:49   of it being a young framework were much easier to navigate because it was so much more capable

00:14:54   and so much more powerful than what we had before there but I'm seeing in this year when

00:14:57   I go through what's been added to SwiftUI I see a lot of things that seem to be the

00:15:02   manifestation of it maturing beyond just sort of the easy case and the trivial case that

00:15:08   I especially when I think about the new layout system and the new declarative navigation

00:15:15   system that it seems like it is sort of both learning from the needs of it of you know

00:15:20   there are those both like those two things are solving problems that I've had to code

00:15:23   around previously the things that I've had to potentially fall back to UIKit or things

00:15:28   that I've had to sort of navigate previously and it's very cool to see it kind of incorporating

00:15:34   the needs as it's growing and I think that's clearly seems to be something that is the

00:15:38   intention here that it's continuing to sort of expand it's the scope of problems that

00:15:43   it's able to handle.

00:15:44   Yeah in fact since we shipped the first version of SwiftUI really the mode we've been in is

00:15:49   listening to our developers and really trying to understand and learning from them how they're

00:15:53   using it and we also you know talk a lot to our other teams inside Apple when they write

00:15:59   their own apps to learn from them and really what you've seen us doing over the last years

00:16:04   is listen closely to you know what the problems are that developers have with SwiftUI and

00:16:10   then coming up with specific solutions and new APIs to help them and what we heard loud

00:16:16   and clear actually recently is that developers were just struggling with kind of going beyond

00:16:21   the default functionality especially when it comes to managing the different states

00:16:24   of their apps and you know the layout you know options that they are pursuing and so

00:16:29   we created new APIs specifically for that.

00:16:32   We created the grid API, we created the custom layout API, the navigation API and these are

00:16:37   really direct answers to the feedback we are getting from developers and we're going to

00:16:42   continue doing that.

00:16:43   We're going to listen you know to how the experiences are and every year we will try

00:16:49   to come up with the best possible solutions to make it even better and we're in it for

00:16:54   the long run.

00:16:55   Yeah and I think that seems clear that it's that kind of responsiveness is very nice that

00:17:01   it's one of the best feelings I think you can have as a developer is when you get to

00:17:06   delete some code because it's no longer needed that something that is you know some hack

00:17:10   or some workaround or something that I've had to build being able to get rid of it.

00:17:14   It's my entire app.

00:17:15   Sure, but don't you feel great when it goes away?

00:17:18   Yeah, when I did the watch kit to SwiftUI conversion on the watch it was a full rewrite

00:17:24   that felt amazing.

00:17:25   Yeah, it's a great feeling and I think that there is something really cool about seeing

00:17:28   your commitment to it in that way that it is clearly not well here's this thing that

00:17:33   we've made that is conserve the basic case but if you really want to get serious well

00:17:38   then you're going to have to of course go to UIKit that clearly that is not the intention.

00:17:42   The intention is that over time it will completely subsume all of the possible things that would

00:17:47   need to be a best of class Apple app for whatever that platform that looks like.

00:17:51   That's right and one of the other design points of SwiftUI is that it works great on all our

00:17:56   platforms and so one of the big advantages of doing that and transitioning to SwiftUI

00:18:01   is that it's actually really easy to create apps that run on all our platforms.

00:18:05   It's not UIKit specifically for iOS and AppKit specifically for Mac OS.

00:18:09   SwiftUI is really you learn it once and then you apply it to all our platforms and that's

00:18:13   one of the big advantages of moving into that.

00:18:16   Yeah, and I think it's good to know too like you mentioned you're in this for the long

00:18:19   haul and I think it's hard as developers to adopt things the very first year they're announced

00:18:24   because so much stuff in our world comes and goes because it turns out it doesn't land

00:18:28   right or we find better ways to do things.

00:18:31   But I think at this point it's pretty safe to jump into SwiftUI and I'm saying that as

00:18:36   one of the most conservative people in our community about jumping into new stuff but

00:18:40   I definitely look at what we have now and I'm feeling that I'm being held back by not

00:18:45   jumping in and the areas where I have jumped in I've had mixed success with but I'm glad

00:18:51   to hear that you're making progress and listening.

00:18:54   I think one thing that developers need to be reminded of a lot because of the communication

00:19:00   style of the company is that you do hear us and you always tell us this at dub dub but

00:19:09   it's one thing to be told like in a presentation it's a very different thing to actually see

00:19:12   the result of that and I think it's comforting to hear that you really do pay attention and

00:19:16   you hear what we're doing because when it's been a while since we've talked to you guys

00:19:21   and it's like February and it can be easy to forget that.

00:19:25   Yeah, we completely agree that the state of SwiftUI is now that we can wholeheartedly

00:19:32   recommend for developers to use it and that's why we try to send this very clear message

00:19:36   in the state of the union and we hear it from developers when they speak to us and we see

00:19:42   it with our own teams inside Apple.

00:19:45   It's just ready.

00:19:46   Yeah.

00:19:47   Just what Marco was saying there I think is interesting too is the sense of I get the

00:19:51   feeling that there is more communication coming out of Apple than just from the WWDC and I

00:19:58   think that is an interesting thing that I've seen over the last year or two especially

00:20:03   just sort of while things are a bit more virtual is the increase in terms of the tech talks

00:20:08   videos and not just at WWDC and having that sense of that there's a much more surface

00:20:13   area for communication.

00:20:14   Yeah.

00:20:15   I wouldn't necessarily say that the pandemic was a great thing for many people myself included.

00:20:22   However I do think that it provided a huge opportunity for us to really rethink the way

00:20:28   that we were communicating massively to our developer audience.

00:20:33   The evangelism team and worldwide developer relations as a whole we've been doing lots

00:20:38   and lots of one on one meetings with developers over the years.

00:20:41   After WWDC our folks go out all over the world they meet with people they understand how

00:20:46   their apps are working try and help them make them make them even better.

00:20:50   But there are only so many evangelists right there.

00:20:54   There are only so many people at Apple and only so many one on one meetings we can have.

00:20:59   I mean we even see this in the labs during WWDC right.

00:21:02   We would love to have every single developer meet one on one.

00:21:05   But as you know I think Tim said 34 million developers this year.

00:21:10   We've got a huge community which is awesome.

00:21:15   And to scale to serve every single member of that community one on one I'd love to be

00:21:20   able to do it but I don't think there are enough cloning facilities in the world.

00:21:24   However there is a huge opportunity to find ways and develop programs that can reach developers

00:21:31   at scale that have that same the same principle and the same essence of a one on one meeting

00:21:37   but are able to help more people.

00:21:39   So yeah doing videos outside of WWDC finding whenever there's new technologies or updates

00:21:45   to technologies that we want to share finding ways of sharing those best practices finding

00:21:49   things like the tech talks that we ran in October and November and December last year

00:21:55   where we were able to do online sessions followed by live Q&A our digital lounges you know that

00:22:01   we piloted last year at WWDC and are doing again with many more topics and sessions this

00:22:07   year and giving group opportunities for folks to kind of interact in a text based situation.

00:22:13   We really are we thought about a number of different ways and are continuing to kind

00:22:17   of evolve that in ways that we can connect with a larger group of developers more diverse

00:22:22   group of developers our entrepreneur camps are another example of something that we've

00:22:26   done in the last last couple of years to try and reach some of our underdeveloped communities

00:22:32   or underrepresented communities rather.

00:22:35   Yeah there's I think we've still got a long way to go right.

00:22:38   This isn't a I don't want to be like yes we we figured it out because it's it's always

00:22:43   a conversation.

00:22:44   It's always an ongoing opportunity for us to analyze like what are we doing well.

00:22:49   What can we do better for the community.

00:22:52   And what is that also what is the community need right.

00:22:54   Like we don't want to throw programs out into the void.

00:22:57   We really want to make sure that this is a collaborative effort and that we're we're actually

00:23:02   helping.

00:23:03   Yeah.

00:23:04   And I feel that in a positive way in the sense of it feels like the platforms are heading

00:23:08   in a new direction.

00:23:09   It's like SwiftUI is a new direction a new and it's this sort of cohesive vision that

00:23:13   is being put out that this is the direction the increase in that communication I think

00:23:17   is very helpful because it's the best in order for us to best make use of the things that

00:23:23   Apple is making requires us to know how to use them.

00:23:26   And that's increasing the space in which you can communicate that is so helpful rather

00:23:32   than it being back in the day where it's like the Friday of WDC ends and not that like that

00:23:36   was the end but the the volume and the ability to interact and learn diminished dramatically

00:23:43   on that Friday afternoon.

00:23:45   Absolutely and I think Andreas can probably speak to this more too but it's also a two

00:23:48   way street for us right.

00:23:49   Like our engineers and our designers we get just as much from meeting with you as hopefully

00:23:54   you get from meeting with us.

00:23:56   And when we hear how you're using frameworks and how you're using API is I think that actually

00:24:00   really helps long term in the development of that.

00:24:03   Yeah and it's really the role that WDC plays for us every year.

00:24:06   You know like hearing it directly from developers and you know they bring their projects along

00:24:11   and we kind of talk to them we see what they are doing it is so invigorating actually.

00:24:16   Yeah and I think in some ways that's the fascinating thing about this hybrid sort of model for

00:24:20   WDC is that I can say that there is something just magical about being in person and having

00:24:26   personal interaction with engineers with fellow developers whatever that is that is something

00:24:32   that is valuable and different in a way that as much as I really I think like the virtual

00:24:40   labs have been a huge success I think I really enjoyed them I was slightly skeptical as someone

00:24:44   who loved the labs in years gone by I think I was going into it slightly skeptical and

00:24:47   I was won over that it's like it was actually super productive and helpful but there is

00:24:51   something different about having that interaction and being able to interact in a way that just

00:24:57   there's just something different about we could be doing this podcast virtually and

00:25:01   it would feel different than than sitting in the same room with you.

00:25:03   Yeah absolutely and I think that's that's where we can continue to shape and evolve

00:25:08   these programs too is that there is something really magical about being in the same space

00:25:13   there is I mean I almost want to be like hey what did you think of yesterday because we

00:25:18   haven't really talked you folks have been asking all these questions but.

00:25:21   Spoiler we loved it.

00:25:22   Yeah loved it.

00:25:23   Love to hear it.

00:25:24   Yeah.

00:25:25   But yeah like the those in-person connections are really special and remain really special

00:25:29   to us and we certainly want to make sure that as we continue to develop outreach programs

00:25:35   that we have really great moments and opportunities for in-person connection as well as great

00:25:40   opportunities for folks to connect online and not lose any of the any of the knowledge

00:25:45   that we've gained and any of the access and the accessibility for worldwide developers

00:25:49   as well.

00:25:50   Yeah that's great.

00:25:51   I mean if you don't even know what I thought about yesterday I think the most of course

00:25:53   for me the most excited thing was the just the direction of widgets and the fact that

00:25:59   they continue to seem to have expanded and evolved and someone who's been making any

00:26:04   complications and again said was watch OS 2 I think was when complications first were

00:26:10   a third party opportunity back then and it's like seeing the evolution of this technology

00:26:15   from that to now it's even come full circle and widgets from iOS are now it's the same

00:26:23   technology exactly that is now being moved into watch OS which feels like in some ways

00:26:27   a manifestation of this kind of that by moving everything behind Swift UI you can have this

00:26:34   cross-platform opportunity that the work I've been doing for complications on watch on watch

00:26:39   OS now is directly beneficial to the work I want to do doing walk screen widgets on

00:26:45   iOS and that seems like a really interesting sort of example of a manifestation of what

00:26:50   you're of this sense that by putting the energy into creating a new platform that works in

00:26:55   a lot of different places these new opportunities start to appear.

00:26:59   That's right and you know we all have many apps on our devices right and they often contain

00:27:04   little bits of information that you want to get quick access to but you don't necessarily

00:27:08   want to launch the entire app for it right and so surfacing that kind of the essence

00:27:14   of the information that an app provides right on the surfacing on the lock screen and your

00:27:18   watch and in the future even the car dashboard that's really great way to make sure that

00:27:23   users can always just get the most important data you know quickly and you know at the

00:27:29   same time we do have to be very aware of you know performance and power considerations

00:27:35   you don't want all these apps running all the time just to show you know a little nugget

00:27:40   of information and so Swift UI really gives us this great way to have apps you know produce

00:27:46   you know the snippets of information ahead of time have the system render them at the

00:27:50   you know the right moment and do this all in a power and performance efficient way and

00:27:56   give us a lot of flexibility across the platforms to apply widgets and different user experiences

00:28:02   right that really makes them come alive.

00:28:04   That's one area too where like you know the most recent updates to everything the way

00:28:09   it's unifying like with you know in the case of widgets unifying between the watch complication

00:28:12   and the phone lock screen complication or lock screen widgets you know in the not too

00:28:18   distant past we you know as all these platforms kind of came up and they were you know young

00:28:22   and immature or early we have a lot of instances where you would have to write the same feature

00:28:28   like three subtly different ways right and it was and you'd have these APIs between the

00:28:33   different platforms that were almost the same but not quite the same and that was very cumbersome

00:28:38   as developers to have to deal with that and you know seeing not only the you know the

00:28:43   widget system now being more unified I'm looking forward to diving into the new app intent

00:28:47   API as well because that's another instance where like you have this you know large amount

00:28:51   of you know similar kind of boilerplate between the different platforms you have to deal with

00:28:56   moving all of that into not only one unified API but a fairly simple one you know at least

00:29:04   the way it looks in the editor is simple but there's obviously a lot of depth there and

00:29:09   you know no one's perfect and we run into walls constantly but you know that's development

00:29:14   but to have that all be these now unified APIs that work across all the platforms that

00:29:19   are the same across all platforms that allow a certain degree of code sharing between the

00:29:22   platforms that's a huge advantage and that's something that's very very recent and it's

00:29:27   very appreciated.

00:29:28   Yeah thank you for saying that and I think you see us really embracing that in the newer

00:29:33   technologies that we've been developing and you know we want to enable developers to bring

00:29:38   their apps to you know the device that fits the users needs best right and that's not

00:29:44   always the same device for every user so making it easy for developers to create apps that

00:29:49   run on multiple of our platforms is really the best way for to enable our developers

00:29:54   to be successful with all the users and so that's why we are pursuing the strategy to

00:29:59   create APIs like SwiftUI that you know where you learn it once and then you can apply it

00:30:05   to every platform and often even reuse the same code the exact same way.

00:30:09   Yeah and I think it's I really I much appreciate the sense that a lot of the fact that the

00:30:13   way that you're able to do the same code running in a lot of places isn't is because you're

00:30:18   doing the hard work on the back end to make it appropriate that I can declare and say

00:30:24   this is conceptually what I want this control to mean and then you're doing the work of

00:30:29   well on a watch that will with that manifestation of that is going to be is very different to

00:30:34   what it's going to be if you're that you know that's running on a Mac or on a big iPad like

00:30:39   that I can I'm focused on what it should do and you're worrying about how to actually

00:30:43   make that happen or make it the most maximally appropriate.

00:30:47   You tell us how it should be and then it's our job to kind of find the best representation

00:30:51   of it on every platform.

00:30:52   Yeah and I think that I was fascinated too in it's SwiftCharts is it isn't a good manifestation

00:30:58   of that sort of that same concept of being able to I've done I've made charts on watch

00:31:04   OS I've made charts on iPad I've made charts on the Mac I made charts on iOS like all of

00:31:08   those different places and you do what you have to do in the way that that will manifest

00:31:13   itself is very different I feel like it's a different that you do the user expectations

00:31:19   and even the accessibility story and what you do there is very different depending on

00:31:23   which platform you're on and I think it's fascinating to see the declarative UI sort

00:31:29   of paradigm of SwiftUI applied to things that aren't its UI but it's in a different kind

00:31:33   of concept a different construct that SwiftCharts is very much about your it's almost your modeling

00:31:39   data in in in a declarative way and then what the how that will actually be rendered and

00:31:44   what that will look like is is something that then this the system is taken care of and

00:31:48   then for me as I think it's easy but the biggest benefit of that is then it has sort of immediately

00:31:53   and out of the box it has the full like the accessibility the audio graph you system and

00:32:01   all these things that are potentially it's not it's not it's not insurmountable but it's

00:32:05   certainly difficult as as a developer to have to if you want to make it just you I just

00:32:08   wanna make a bar chart that shows something the work that it would take to make that flexible

00:32:13   with dynamic type and have the audio have the audio graph API and all the all those things

00:32:18   in it is pretty substantial and it's not something that is just easy to throw together and to

00:32:22   be able to instead you know I can make it it's quite quite remarkable when I look at

00:32:27   the amount of the lightness is for you in five or six lines of code you can define a

00:32:31   chart that will do all of those things is just amazing and from a from a productivity

00:32:37   and from a creativity perspective yeah with the charts we saw this really great opportunity

00:32:43   to give developers a new API to enrich apps and actually make them come alive right the

00:32:48   word is so full of data and information nowadays and and really clearly visualizing that is

00:32:54   you know is just making it more accessible to so many users and and we found that the

00:32:59   the same principles we use to design all of switch to I apply themselves so nicely to

00:33:04   switch charts you know the declarative syntax is such a nice natural way to describe how

00:33:09   chart should look and and you know it resulted like you said in in you know this very compact

00:33:16   code to very very quickly put together some really appealing visual graphs and and at

00:33:22   the same time get the benefit of all the work that we put into it to make it highly accessible

00:33:27   you know to support animations and to make them run on all the platforms you know it's

00:33:32   just all of the the core principles of Swift UI applied again now to the to the domain

00:33:38   of charts and it can really make you know apps more interesting and more visual and

00:33:45   and just yeah more more appealing.

00:33:47   And that's so important you know in the in the area of you know in our show we know we're

00:33:51   two independent developers we don't have any other you know staff in our in our respective

00:33:55   companies and and a lot of our audience members are that way as well and and it's so important

00:34:00   as you know as indies these days you know that the world of tech is so big the world

00:34:04   of you know it used to be that one person could make a very simple app on iOS and and

00:34:09   you know it was it wasn't that much work these days you have so many expectations of being

00:34:14   in all these different places having the different platform application compatibility having

00:34:19   you know you got to have a watch app for your phone app and you have to have complications

00:34:22   and widgets and lock screen all this stuff now and you know areas that big companies

00:34:27   often will go their own way on like design you know they they'll make all their own custom

00:34:32   icons and everything and you know we've recently come to the religion of of SF symbols a lot

00:34:38   and you know taking advantage of like you know that Apple's a huge company with huge

00:34:41   design resources and huge engineering resources and so we can kind of you know amplify our

00:34:46   efforts by just using the stock pieces you provide on these different areas and something

00:34:51   like charts is a good example where like you know you I mean I don't think anybody had

00:34:54   that on their bingo card this year as a feature you were going to announce but but there it

00:34:57   is and there's like it turns out a lot of apps have charts and you just made it a lot

00:35:01   easier and yeah the big companies that have somehow thousands of people working on like

00:35:06   the simple iOS app I don't know how that works but somehow people do it and they are going

00:35:10   to keep having their own army of designers who's going to you know manually do every

00:35:15   single thing but for the rest of us who are much smaller shops we can just take these

00:35:19   building blocks and you know have that problem kind of checked off our list and move on to

00:35:23   more interesting stuff.

00:35:24   Yeah we think SwiftCharts is going to be you know very applicable to many many apps and

00:35:29   we think it's going to be very popular with our developers so we're looking forward to

00:35:32   seeing what they're doing with it.

00:35:33   Yeah and I think in another area that I feel like along the same way of like something

00:35:37   like SwiftCharts creating a productivity and just sort of short circuiting a lot of things

00:35:41   in Apple providing that help I see in things like WeatherKit and Xcode Cloud coming out

00:35:48   this year it's interesting to see Apple move into providing infrastructure I guess is the

00:35:53   best word I could think of it where it's rather than it just being Apple provides here's a

00:35:57   set of tools go and do what you want with them it's much more of an ongoing interactive

00:36:03   sort of relationship that Apple is directly involved in our you know our continuous integration

00:36:08   or directly involved in providing weather data to us and I think that seems like it's

00:36:12   not necessarily a new thing but I think it was certainly an interesting thing that I

00:36:15   saw that there's that partnership is expanding in terms of the the kind of offerings that

00:36:20   Apple is providing to developers.

00:36:22   Yeah absolutely I mean I think you said it really well right we develop and we offer

00:36:27   a certain set of tools and I like to look at this way it's very much another kind of

00:36:32   tool that we're offering right it's just a different sort and Andreas I feel like you

00:36:36   can talk a little bit more about Xcode Cloud and those since you're a little bit closer

00:36:39   to it.

00:36:40   Yeah we see a lot of opportunity in building services that make developers more successful

00:36:44   right these the the WeatherKit and and Xcode Cloud are just really powerful functionality

00:36:50   that that we are trying to make available to a really broad set of developers and with

00:36:55   weather it's it's an interesting data set that can enhance broad you know set of applications

00:37:01   make them come alive and and we make this really easy with WeatherKit and and at the

00:37:06   same time are delivering a great REST API you know for apps and websites outside of

00:37:11   the the Apple platform ecosystem and with Xcode Cloud we're looking at you know how

00:37:15   to help developers build apps faster and better and and also build better apps by by automating

00:37:22   things like testing and distributing their software and just saving them so much time

00:37:27   on the way and helping them in each stage of the development process so both of these

00:37:32   you know represent really powerful functionality that that help developers reach their goals

00:37:36   and and we are working to make them really accessible to the widest range of developers

00:37:41   possible.

00:37:42   I think it's just certainly very appreciated I think it's nice to see that partnership

00:37:47   continue to expand and to feel and maybe in some ways like some of the themes I have is

00:37:51   that it feels more like a bit more like a partnership in that way and in the same way

00:37:56   it's like start a start a server conversation talking about the developer center and talking

00:38:00   about things like that they it's just trying to provide like Apple continues to expand

00:38:05   the the ways in which they're that you're providing support to developers which is I

00:38:09   think wonderful to see and certainly appreciate it as someone who is one of those developers

00:38:13   being supported.

00:38:14   Yeah and often what you can do with these kind of services like Xcode Cloud is in a

00:38:18   sense formulate the best practices that we learned ourselves doing our own software development

00:38:24   when we watch our own app teams you know implement the apps you know we can learn from that and

00:38:29   we often bring the kind of experiences right to our our third party community you know

00:38:35   and and a service like Xcode Cloud is is a really great way to do that.

00:38:39   We're brought to you this week by Sourcegraph.

00:38:42   So you've hired a brilliant developer that's great but now you have to get them onboarded.

00:38:46   If your company is growing onboarding new developers will be a common occurrence but

00:38:50   it's a big undertaking each time.

00:38:52   One of the biggest challenges for new hires is to get up to speed with the project their

00:38:55   new team is working on.

00:38:57   This can be tricky if the code bases your developers are working in are already large.

00:39:00   Thankfully Sourcegraph makes it easy to move fast even in those big code bases.

00:39:05   Developers know that knowledge is most usable when it's findable.

00:39:09   Visualization helps but given that most companies are stored knowledge in at least two different

00:39:13   locations how do you make knowledge accessible to those that need it.

00:39:16   As a code intelligence platform Sourcegraph gives developers what they need to drive their

00:39:20   own learning over time and in different situations.

00:39:23   Teams without Sourcegraph need to rely on asking colleagues or reviewing added documentation

00:39:28   which is cumbersome and time consuming.

00:39:30   But with Sourcegraph every developer can search across millions of repositories to find specific

00:39:34   code saving time for themselves and everyone else.

00:39:37   So when questions do come up you know it's the big stuff that's worthy of the extra time.

00:39:42   Sourcegraph was created to make developers lives easier and today they work with leading

00:39:45   companies across every industry including three out of five of the top tech companies

00:39:50   plus Paypal, Uber, Plaid, GE, Reddit, Atlassian and more.

00:39:54   Visit about.sourcegraph.com to learn more.

00:39:58   That's about.sourcegraph.com to find out why some of the biggest tech companies in the

00:40:03   world use Sourcegraph and to see what it can do for yours.

00:40:07   Or just click the link in our show notes to let them know that you heard about them from

00:40:09   us.

00:40:10   Our thanks to Sourcegraph for the support of this show and Relay FM.

00:40:14   And so I think the place I want to wrap up is this we're recording on Tuesday and I think

00:40:19   it will hopefully have it come out and I think if you were talking to developers who are

00:40:24   going to have the rest of this week doing WWDC it's like what do you think are the things

00:40:28   that you'd want to say in terms of how they can maximally take advantage of the opportunities

00:40:32   that Apple has in terms of to set themselves up for success this summer.

00:40:37   I feel like WWDC is the fascinating part for me because it's always this is the start of

00:40:41   the developer year.

00:40:43   Like the year doesn't start in January, the year starts the first Monday in June essentially

00:40:46   in my mind.

00:40:47   It's the kickoff.

00:40:48   Yeah, this is it.

00:40:49   And it's like so what should we be doing, making sure that we're taking advantage of

00:40:52   all the opportunities to have a super successful summer.

00:40:55   Yeah, I mean labs and digital lounges are a huge opportunity, right?

00:41:00   This is hopefully not the only time during the year but it's definitely the most central

00:41:04   time during the year where you as a developer can have one-on-one contact and small group

00:41:09   contact with our engineers and with our designers and show them what you're working on, talk

00:41:14   about the questions that you have burning in the back of your mind whether it's new

00:41:18   things on WidgetKit or whether it's about SF symbols or whether it's about Swift charts.

00:41:23   Those lab appointments are amazing and I know it can be a little bit intimidating.

00:41:27   I remember the first time when I went to a lab as a designer and asking questions.

00:41:34   It feels a little bit scary.

00:41:37   But honestly, that's why the digital lounges are a great opportunity too because they provide

00:41:42   kind of that slow onboarding, right?

00:41:44   You can observe in a group.

00:41:46   You don't necessarily have to sit one-on-one with somebody if you don't necessarily feel

00:41:50   comfortable with it and then get yourself comfortability, get yourself a little bit

00:41:55   more familiar and then reach out, apply for a lab, have a conversation.

00:42:02   We have thousands of engineers and designers who really would love to talk with our developer

00:42:07   audience and our designer audience.

00:42:09   So we definitely take the absolute most advantage of that you can.

00:42:14   >>COREY Yeah.

00:42:15   I would say I was fascinated last year between digital lounges and labs was the lounges reminded

00:42:21   me a lot of in the old days of WWDC where you'd go to the lab for one question but you'd

00:42:26   end up hanging out there to hear other people's questions, to benefit from just you hear someone

00:42:32   else asking a question and it's like, "Oh, I hadn't thought of that.

00:42:35   That's an interesting question.

00:42:36   I want to hear the answer to this."

00:42:37   And you find yourself learning and benefiting from other people's interests, other people's

00:42:43   problems.

00:42:44   They've had time to potentially explore an API in a direction that you haven't had time

00:42:47   yet in that week.

00:42:48   And the digital lounges, that's what I see that them filling that same role of its being

00:42:53   able to benefit from other people's experience.

00:42:56   And then like the labs is the other side of that, of being able to benefit, take that

00:43:00   learning, find your own questions, and then dive into it.

00:43:03   >>STEPHANIE Yeah, absolutely.

00:43:04   I mean, when we talked about the digital lounges, it was really about how can we recreate kind

00:43:08   of those beautiful happenstance moments in the labs and bring that to a worldwide audience,

00:43:13   right?

00:43:14   And make that more accessible to folks and have a way for people to kind of see and also

00:43:20   get a lot of information that they may not have otherwise gotten, right?

00:43:24   In a one-to-one lab, you can ask one question that dives deep for 30 minutes, or you can

00:43:30   talk more generally about your app, but it's very focused on where you're coming from.

00:43:35   And the digital lounges are a huge opportunity to be able to learn from not only our Apple

00:43:39   engineers and our designers, but also other developers and the way that they're approaching

00:43:43   things.

00:43:44   I have our coding design challenges and lounges too, which I really love.

00:43:48   It's been fun watching the first of them go live today.

00:43:51   We've got a pixel icon challenge, and people have just been posting all day about the different

00:43:55   way that they're like approaching designing pixel-level art and those kinds of things,

00:44:00   like watching the way that designers approach it and watching the ways that engineers are

00:44:03   approaching like our Swift Playgrounds challenges.

00:44:07   It's really great.

00:44:08   It's really great to see it as a community level, and it's also really just cool.

00:44:12   I feel like I learn things from the way that people are asking questions, the way that

00:44:16   people are approaching things.

00:44:17   Well, thank you so much to our guests today.

00:44:20   Andreas Venker and Serenity Caldwell, thank you so much for joining us.

00:44:24   This has been wonderful.

00:44:25   I hope everybody out there has a wonderful conference.

00:44:28   Thank you all out there for listening, and half of us will talk to you in two weeks.

00:44:32   Bye.

00:44:33   [BLANK_AUDIO]