Podcast Search

Under the Radar

244: WWDC 2022 Special

Select a time to play from there. The line being spoken is highlighted as the audio plays.

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

0:00:03I'm Marco Arment.

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

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

0:00:11in so many different ways.

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

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

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

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

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

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

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

0:00:48hearing all the announcements.

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

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

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

0:00:58I can tell.

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

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

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

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

0:01:14Absolutely.

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

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

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

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

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

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

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

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

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

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

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

0:02:06with them.

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

0:02:13I will.

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

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

0:02:21center.

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

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

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

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

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

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

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

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

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

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

0:03:03maiden voyage to developers.

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

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

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

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

0:03:24going to an Apple campus.

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

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

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

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

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

0:03:45be able to see that.

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

0:03:50on Apple.

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

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

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

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

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

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

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

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

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

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

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

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

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

0:04:39surrounded by another builder.

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

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

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

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

0:04:57very secure.

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

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

0:05:05like employees.

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

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

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

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

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

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

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

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

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

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

0:05:45Right?

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

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

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

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

0:06:02to attend.

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

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

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

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

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

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

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

0:06:31folks.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:07:30have this great experience.

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

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

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

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

0:07:42Have you thought about this?

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

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

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

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

0:07:53That's great.

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

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

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

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

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

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

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

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

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

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

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

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

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

0:08:45that were announced this week.

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

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

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

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

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

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

0:09:10the platforms moving forward.

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

0:09:15all together for developers.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:10:55think about it this year.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:12:06That's right.

0:12:07I feel seen.

0:12:08Yeah, sure.

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

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

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

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

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

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

0:12:39and better apps.

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

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

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

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

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

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

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

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

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

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

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

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

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

0:13:36out of it.

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

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

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

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

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

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

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

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

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

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

0:14:33our approach to SwiftUI.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:16:42continue doing that.

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

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

0:16:54the long run.

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

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

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

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

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

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

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

0:17:24that felt amazing.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:19:45It's just ready.

0:19:46Yeah.

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

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

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

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

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

0:20:13area for communication.

0:20:14Yeah.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:22:32or underrepresented communities rather.

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

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

0:22:43a conversation.

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

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

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

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

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

0:23:02helping.

0:23:03Yeah.

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

0:23:08in a new direction.

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

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

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

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

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

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

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

0:23:43on that Friday afternoon.

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

0:23:48way street for us right.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:25:21Spoiler we loved it.

0:25:22Yeah loved it.

0:25:23Love to hear it.

0:25:24Yeah.

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

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

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

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

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

0:25:49as well.

0:25:50Yeah that's great.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:29:27very appreciated.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:30:51of it on every platform.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:35:23more interesting stuff.

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

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

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

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

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

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

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

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

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

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

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

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

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

0:36:20Apple is providing to developers.

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

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

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

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

0:36:39to it.

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

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

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

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

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

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

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

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

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

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

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

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

0:37:41possible.

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

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

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

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

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

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

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

0:38:13being supported.

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

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

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

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

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

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

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

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

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

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

0:38:55new team is working on.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:40:09us.

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

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

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

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

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

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

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

0:40:41the developer year.

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

0:40:46in my mind.

0:40:47It's the kickoff.

0:40:48Yeah, this is it.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

0:42:07audience and our designer audience.

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

0:42:14>>COREY Yeah.

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

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

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

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

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

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

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

0:42:43problems.

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

0:42:47yet in that week.

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

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

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

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

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

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

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

0:43:13right?

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

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

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

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

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

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

0:43:43things.

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

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

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

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

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

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

0:44:07It's really great.

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

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

0:44:16people are approaching things.

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

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

0:44:24This has been wonderful.

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

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

0:44:32Bye.

0:44:33[BLANK_AUDIO]