Under the Radar

269: Preparing for WWDC 2023


00:00:00   - Welcome to Under the Radar, a show about independent

00:00:02   iOS app development.

00:00:04   I'm Mark Warmnt.

00:00:05   - And I'm David Smith.

00:00:06   Under the Radar is usually not longer than 30 minutes,

00:00:08   so let's get started.

00:00:09   - So here it is, the pre WWDC episode.

00:00:13   Next time we talk on this show, it will be after

00:00:16   the WWDC Monday.

00:00:18   And so, it'll be like, we'll know everything.

00:00:21   All the secrets will be revealed.

00:00:23   Maybe we might have even had a chance to like,

00:00:25   touch a headset.

00:00:27   Every year before WWDC, we do our last minute predictions

00:00:31   and kind of advice to people who are either going

00:00:33   or planning on watching it online.

00:00:35   What to expect and what to do and what we're looking

00:00:37   forward to.

00:00:38   First of all, you're going, right?

00:00:40   - Yes, I believe in and so are you.

00:00:42   We will both be in Cupertino for the event.

00:00:45   Exactly where we will be throughout the week

00:00:47   is an ever moving complicated thing,

00:00:49   but we will definitely both be there and be there

00:00:50   on Monday for the keynote.

00:00:52   - Yeah, and I'm so looking forward to this.

00:00:55   I'm so happy that we're both able to go.

00:00:58   We both were there last year and so we both have

00:01:00   a pretty clear idea, I think, of what it will probably

00:01:03   be like because I think it will probably be,

00:01:06   in many ways, very similar to last year,

00:01:08   to their event last year, which I think went very well.

00:01:10   The only potential asterisk on it is that it is

00:01:13   fairly brief in the sense that it isn't this whole

00:01:16   week of sessions anymore in person.

00:01:18   It's Monday as one big event and then the rest of the week

00:01:23   you're kind of, it's mostly virtual and honestly,

00:01:25   again, I'm very happy with that format.

00:01:27   I think that format is very good and is actually better

00:01:29   than the old format for more people more of the time.

00:01:32   - Absolutely.

00:01:33   - So, what should people expect?

00:01:35   What are you expecting?

00:01:36   How is this week gonna go?

00:01:39   - Sure, so I think the first thing I would want to

00:01:41   sort of just talk about too is I think we're gonna talk

00:01:43   a bit about being on site, but I don't think this is,

00:01:45   it's probably good to just sort of clarify that most

00:01:47   of the advice that we're gonna give applies to everyone

00:01:51   because most of the conference, most of the week

00:01:53   is still online, that the sessions and the labs

00:01:57   and activities and all the things that are happening

00:02:00   other than there's a few things that are actually

00:02:02   in Cupertino on site, the majority of this will apply

00:02:05   to everyone, it's just generally good advice.

00:02:07   And secondary to that, I would also encourage anyone

00:02:10   who isn't going to be there on site to go to,

00:02:13   Apple has put together a page called Beyond WWDC,

00:02:16   which includes events that are in person events

00:02:18   like all over the world.

00:02:19   So if you're in Finland, there's a meetup or an event

00:02:22   that's gonna be happening during WWDC week,

00:02:25   some of them are like keynote watch parties,

00:02:27   some of them are later in the week,

00:02:28   there's a wide variety of things in there

00:02:30   and I would just encourage you to not feel like,

00:02:32   oh, I'm not on person, I couldn't go in person,

00:02:35   so there's nothing for me to do.

00:02:37   It's like there might be something that could be

00:02:39   convenient and close, it could be a nice way

00:02:41   to meet some local developers who you don't know otherwise.

00:02:44   So I would encourage you, if you aren't on site,

00:02:46   to explore your options about that,

00:02:48   because it's just a great week, I feel like,

00:02:50   to celebrate being part of this community

00:02:53   and that can be in person in Cupertino at Apple Park,

00:02:57   or that could just as easily be at home in your,

00:02:59   whatever country you are, you are in

00:03:01   and you can celebrate sort of that community

00:03:04   that's a part there.

00:03:05   And then I think changing sort of to the,

00:03:08   if you are on site, I think there's some advice and things,

00:03:10   I think this will be my 15th WWDC, something like that.

00:03:15   I think the first time I went in, it was in 2009.

00:03:17   - Yep, me too.

00:03:18   - So it's like 15 WWDCs, I think I've learned a few things

00:03:22   about this process and so I think hopefully

00:03:25   I can give some advice for especially if this is

00:03:27   your first time coming out to one of these,

00:03:29   to kind of what to expect, how to make the most of it,

00:03:32   how to not be completely overwhelmed,

00:03:34   how to navigate some of the more complicated interpersonal

00:03:37   things that can come up as a result of being there.

00:03:41   But in general, like starting off thinking about

00:03:43   like the actual, some on-site logistics.

00:03:46   So one is get your badge the day before if you can.

00:03:50   I think you can register on the Monday morning

00:03:53   but I always find they have a thing on the Sunday afternoon,

00:03:56   I believe it's at Infinite Loop this year,

00:03:59   where you can get your badge ahead of time,

00:04:00   which is both good so that you just have it

00:04:02   and you know if there's gonna be any issues or problems.

00:04:04   Like I think you have to bring a government issued ID

00:04:06   and so if you didn't have that with you,

00:04:08   you have time to go and get it.

00:04:10   But also it's just nice to just have that sorted out

00:04:13   so Monday morning you can just show up for the event

00:04:15   and enjoy it.

00:04:16   At the event itself, I would say especially having learned

00:04:18   this from last year, it's like it is going to likely,

00:04:21   and most of all I think Apple is very much banking on it,

00:04:23   going to be sunny and hot.

00:04:25   And so have sunscreen, wear a hat, you're gonna need

00:04:29   to hydrate, make sure you rest in the shade if you can.

00:04:31   Just like take care of yourself because it can be

00:04:33   a very long day if you're just like baking in the sun

00:04:36   for hours and so just something I would say

00:04:39   to kind of be aware of that you need to take care

00:04:42   of yourself early so that you can enjoy it to its fullest

00:04:46   because I think it goes through 8 p.m. this year

00:04:49   and it's like that's gonna be a long day if you don't

00:04:52   take care of yourself from the beginning.

00:04:53   So just be aware of yourself, wear a hat,

00:04:56   put some sunscreen on, drink lots of water

00:04:58   and you'll be fine but just be aware of that going into it.

00:05:02   - Apple knows that nobody prepares for this.

00:05:03   Like last year they gave everyone little like goodie bags

00:05:07   and one of the things in the goodie bags

00:05:08   was a little bottle of sunscreen.

00:05:10   And still most people ignored it and got sunburned.

00:05:13   So really they're doing their best, listen to them,

00:05:18   they know, they live there, they know how to do California.

00:05:22   But yeah it's, the one thing I would suggest

00:05:26   if you, especially if you are there in person,

00:05:29   do everything, like find every single event

00:05:33   or time slot that can be filled with something,

00:05:36   put something in it and do it because it's such

00:05:38   a short event, it's so compressed.

00:05:40   When you had like a week long conference in the past,

00:05:43   it was easy to say oh you could take a slot here

00:05:45   and there off and take a break or download the betas

00:05:48   or whatever, like don't do that here.

00:05:51   When you only have like one day or maybe a day

00:05:53   and a half of events, do everything.

00:05:56   Fill every time slot, go to bed over the night before

00:05:59   so you can wake up in time to do all the morning stuff,

00:06:01   like everything, do everything.

00:06:03   Especially because this year this is a potential

00:06:06   platform launch, this is, we might see the headset

00:06:09   this year, it sure seems like a all but sure thing

00:06:13   that there's gonna be some kind of new hardware platform.

00:06:16   The headset is pretty hard to demo virtually.

00:06:19   And so if you are there in person, take advantage,

00:06:23   go to everything because you never know which

00:06:26   of those time slots of whatever event Apple says

00:06:28   it's gonna be, might include the opportunity

00:06:31   for you to try a headset.

00:06:34   So do everything, be present for everything.

00:06:37   Schedule every single time slot, every event Apple

00:06:40   has a time slot for, plan to be there because

00:06:43   you never know what it'll be.

00:06:44   - Yeah, I think I would agree with that,

00:06:46   with the small caveat of just making sure that you,

00:06:48   if you feel at any point that you're overwhelmed,

00:06:51   you're tired, you just need a rest, take a rest, it's fine.

00:06:53   Like it's fine to have balance but don't feel like

00:06:56   oh whatever, I'll just, do it because you need a rest

00:07:00   and I need a break, that's fine.

00:07:03   But don't just be, just sort of doing something

00:07:05   that you could be doing otherwise.

00:07:07   Like this is not, especially on that Monday,

00:07:09   it's not the day to be like just checking your work email

00:07:13   and in your work slack unless you absolutely

00:07:15   have to be there.

00:07:16   Just say I'm gone for this day, I'm busy,

00:07:19   I'm in here, I'm present in this place,

00:07:21   I'm doing this thing and that should be your focus

00:07:24   is something that I would definitely encourage you

00:07:26   to clear your schedule as much as you can

00:07:29   to take the maximum advantage of this that you can

00:07:33   and then sort of enjoy it from there.

00:07:35   - Yeah, so how many test devices you bring in?

00:07:39   - So testing devices, I think first is every year

00:07:43   there's always the like oh should I install

00:07:44   the beta on my phone?

00:07:46   It's like well, it's like okay, if you want to be

00:07:48   that person, by all means be that person.

00:07:49   That's up to you.

00:07:51   In 15 years of doing this I would say don't be that person.

00:07:55   They're like if you want to do that,

00:07:56   that's more power to you but maybe plan ahead,

00:07:58   take a testing phone, clear it ahead,

00:08:00   make sure that it's ready to go,

00:08:02   it's logged into your testing Apple ID,

00:08:04   it's ready to go.

00:08:05   If you do any Apple Watch development,

00:08:07   pair your Apple Watch to that testing phone ahead of time

00:08:10   so that the pairing process doesn't take an hour and a half

00:08:13   and you're annoyed and frustrated that it doesn't work.

00:08:15   If you're doing Apple Watch development,

00:08:17   I would say also start wearing that Apple Watch

00:08:20   at least a week early.

00:08:21   I'm in a two watch club all summer

00:08:24   where I wear at least two watches from,

00:08:27   I guess it would be next Monday till the end of September.

00:08:30   I usually wear two Apple Watches with me

00:08:32   and that's just what I do because I want to have one of them

00:08:34   with the beta, one of them with my main data

00:08:37   but I'm saying wear it ahead of time

00:08:39   because if you do anything with health,

00:08:40   like having an empty health database

00:08:42   will make your development process much less helpful

00:08:45   than if you have a week's worth of data

00:08:46   that you can start referencing from and looking through.

00:08:49   So I would say ideally have a testing watch,

00:08:52   have a testing phone, bring them with you,

00:08:54   make sure you have everything with you

00:08:55   if you are going somewhere,

00:08:57   if you're traveling to Cupertino

00:08:58   or you're traveling somewhere else domestically for an event

00:09:01   that you were able to develop, that you have your laptop.

00:09:06   I always travel with a laptop stand, a keyboard and a mouse

00:09:10   so that I can ergonomically work in a hotel room.

00:09:12   Don't try and have like this big deep work

00:09:16   at a tiny little hotel desk in an awkward chair.

00:09:19   You're just gonna wreck your body in my experience.

00:09:22   And so like I always have to bring the stuff that I need

00:09:24   to make that environment ergonomic.

00:09:26   And if you do that, I can have a very productive week.

00:09:29   I think especially the way that I'm doing it is I'll,

00:09:32   I'm going out to help Cupertino for the whole week

00:09:35   with the expectation that the latter part of the week,

00:09:37   once all the events kind of die down,

00:09:39   I'm just gonna be almost having like a coding retreat

00:09:42   for the last, for Thursday and Friday.

00:09:44   Mostly I'm just gonna be in my hotel room doing work.

00:09:47   And so I wanna have things with me to be able to do that

00:09:50   and take advantage of the,

00:09:51   I can almost like build in a staycation

00:09:54   working retreat situation there.

00:09:56   And so that's just something that you have to plan ahead

00:09:59   if you're gonna have the ergonomics

00:10:01   to be able to successfully do that.

00:10:03   - Yeah, one more thing on the test devices too

00:10:04   before we leave that topic.

00:10:06   'Cause this, again, this applies to everyone,

00:10:07   whether you're there or not.

00:10:08   You're gonna wanna download those betas

00:10:09   and put them on a test device.

00:10:11   I strongly suggest two little things

00:10:14   that have bit me in the past.

00:10:14   Number one, have the test devices be signed in

00:10:17   to a test Apple ID, not your real Apple ID.

00:10:21   Because there are server side and sync components

00:10:24   to a lot of these beta features that will be announced.

00:10:27   And a lot of times if you use your real Apple ID

00:10:30   in the beta environment,

00:10:31   then it might do a migration of the data

00:10:33   to some new schema or some new format

00:10:36   that you can't move back from.

00:10:37   And then now your actual good Apple ID data

00:10:41   is up to the whims of beta conditions.

00:10:44   You don't really want that.

00:10:46   Secondly, keep in mind, and this could change at any time,

00:10:49   but so far to date, you've been able to undo a beta

00:10:54   and go back to the release version

00:10:56   on every kind of hardware Apple makes,

00:10:58   except the Apple Watch.

00:11:00   You can restore a phone back to the non-beta.

00:11:03   You can restore a Mac back to the non-beta, I think.

00:11:06   But you can definitely do it with phones and iPads.

00:11:08   I don't care about Apple TV.

00:11:09   I don't know what the deal is over there.

00:11:11   But the Apple Watch, you can't restore back

00:11:14   to the non-beta version.

00:11:16   So whatever you install,

00:11:17   and also the Apple Watch has to be paired

00:11:19   to a phone, obviously.

00:11:20   So whatever phone and watch that you decide

00:11:23   to devote to beta use for watch OS,

00:11:25   that watch is now gonna be on that version

00:11:27   or later forever.

00:11:28   Make sure that you're using an extra watch if you can.

00:11:31   Otherwise, you're stuck with running that beta

00:11:33   even if it gets really bad either during that week

00:11:36   or halfway through the summer

00:11:37   if there's some really bad beta.

00:11:39   You're just stuck with that.

00:11:40   And so you might lose reasonable practical access

00:11:43   to your watch for a while or whatever the case may be.

00:11:45   Or you might not be able to pair it back to your phone

00:11:47   if you move your phone back to the release version.

00:11:49   So have a spare watch if possible.

00:11:52   Other devices you can kind of fudge here or there.

00:11:54   The watch you really need, the dedicated one.

00:11:56   Also, if you need hardware for this purpose,

00:11:58   if you don't have an old watch lying around

00:12:00   that'll run the new OS,

00:12:02   I can strongly recommend Amazon Refurbs.

00:12:04   They're really inexpensive, especially for Apple Watches.

00:12:08   Keep in mind the Apple Watches have the same SOC

00:12:11   in Series 6, 7, and 8.

00:12:13   So if you can pick up a used Series 7,

00:12:17   it's probably gonna have totally fine compatibility

00:12:20   with the next version of WatchOS, if I had to guess.

00:12:22   So it's not that expensive

00:12:25   to get a used refurbished Apple Watch for testing.

00:12:28   You can do the same thing with iPhones.

00:12:30   It's a little bit more expensive for phones

00:12:32   but not that much more,

00:12:33   especially if you look at the SE models

00:12:35   that are made to be inexpensive to begin with.

00:12:36   You can get really inexpensive iPhone SEs

00:12:39   and low-end versions of iPhones.

00:12:40   So definitely worth checking out if you need extra hardware.

00:12:43   - Exactly, yep, and I think I would just continue

00:12:46   to put in my vote for find a way, if you can,

00:12:48   to use a test device.

00:12:50   Your future self will thank you.

00:12:51   - Yeah.

00:12:52   We are brought to you this episode by Indeed.

00:12:55   No successful entrepreneur is an island.

00:12:57   It takes a core team of trusted advisors

00:12:59   to help build a business from the ground up.

00:13:01   When it comes to hiring, leave it to the experts.

00:13:03   You need Indeed.

00:13:05   Indeed is a hiring partner

00:13:06   that gets you what you really want,

00:13:08   a short list of quality candidates as fast as possible.

00:13:11   Simply because you can do it all,

00:13:13   attract, interview, and hire, all at Indeed.

00:13:16   You don't wanna struggle on your own

00:13:17   to find quality candidates and you don't have to.

00:13:19   Indeed can help you hire the right people right now.

00:13:22   Indeed partners with you on every step of the hiring process

00:13:25   so you can find talent with the skills you need

00:13:27   through tools like Indeed Instant Match,

00:13:29   assessments, and virtual interviews.

00:13:31   With Instant Match, as soon as you sponsor a post,

00:13:33   you get a short list of quality candidates

00:13:35   whose resumes match your job description

00:13:37   and you can even invite them to apply right away.

00:13:39   Indeed really does make the hiring process so easy.

00:13:43   By having all the tools in one place,

00:13:45   it takes away so much of what can otherwise

00:13:47   be a daunting process.

00:13:48   Indeed's data shows that with Instant Match,

00:13:50   90% of employers get quality candidates

00:13:53   as soon as they sponsor their job post.

00:13:56   And candidates are three times more likely to apply

00:13:58   than those who just see it in search.

00:14:00   So get started right now with a $75 sponsored job credit

00:14:04   to upgrade your job post at indeed.com/undertheradar.

00:14:09   That's a $75 credit at indeed.com/undertheradar.

00:14:13   One last time, indeed.com/undertheradar.

00:14:17   Offer valid through December 31st,

00:14:19   terms and conditions apply.

00:14:21   Need to hire?

00:14:21   You need Indeed.

00:14:22   Our thanks to Indeed for their support of this show.

00:14:25   - So on the actual coding side of things,

00:14:28   now that we've got our devices squared away,

00:14:30   couple of tips or things to think about,

00:14:31   I would encourage everyone to try as best they can

00:14:34   to just sort of like establish a clean baseline

00:14:37   in the next week in terms of what your starting point

00:14:39   is gonna be and then expect that you're likely

00:14:41   gonna have these two parallel branches going on all summer

00:14:44   where you have your version that you expect to launch

00:14:48   in September and then you have your actual

00:14:50   like main shipping version that you will likely

00:14:53   be updating to some degree over the summer.

00:14:55   So just be aware of that and kind of plan for that.

00:14:57   - Yeah, don't do all your iOS 17 work in Maine.

00:15:00   - No, don't do that.

00:15:01   You're just asking for trouble.

00:15:04   And then I would say something that I've also found

00:15:05   in terms of is also do a lot of your actual,

00:15:08   the week of WWDC, I get way more mileage often

00:15:12   out of just making little prototype projects

00:15:15   to try out a new feature, to explore it,

00:15:18   to generate kind of the questions I might have

00:15:20   for a lab or a sort of the Slack Q&As.

00:15:24   A great way to do that is just rather than trying

00:15:25   to like make your, 'cause very often you upgrade

00:15:29   your developer tools, you open your main big project

00:15:33   and there's gonna be issues.

00:15:34   There'll be things that don't compile right,

00:15:36   deprecation warnings, like all kinds of things

00:15:38   that kind of make it messy.

00:15:39   And so instead, do like file a new project

00:15:41   and do some exploration and maybe copy paste some code

00:15:43   from your main project into it if you need to

00:15:45   for some data model stuff or whatever you need to do.

00:15:48   But I find trying to minimize the surface area

00:15:51   that you are working on the new stuff,

00:15:53   especially during that first week can be super helpful

00:15:55   'cause it allows you to kind of get,

00:15:58   like in many ways the goal for the first week

00:15:59   is not to build the features that you are going

00:16:01   to ultimately be shipping in September.

00:16:04   The goal for that first week is to understand

00:16:06   the new stuff well enough to ask good questions

00:16:09   that will help accelerate your process over the summer.

00:16:13   So do lots of these targeted deep dives into the new stuff.

00:16:16   See if, okay, for my app I would probably be using

00:16:19   this new feature in this way.

00:16:21   Try and build that way.

00:16:22   You don't need to build it all.

00:16:23   For me, say I'm building a widget in Widgetsmith,

00:16:27   it isn't necessarily that I would start to build out

00:16:29   like 10 different widget types.

00:16:30   I would build like one, this last year

00:16:32   with lock screen widgets, it was like my goal

00:16:34   was to make sure that I could get a lock screen widget

00:16:37   displaying correctly on each of the lock screen

00:16:41   widget type families.

00:16:42   That was my goal.

00:16:43   That was really what I wanted to have happen

00:16:45   and that was, so rather than trying to worry about,

00:16:48   oh, what if it's a weather widget?

00:16:49   What if it's this kind of widget?

00:16:50   It's like, nope, just one thing deep dive

00:16:52   and then I had a bunch of questions that I could then ask

00:16:54   in a lab or in a Slack Q&A and get those questions asked

00:17:00   because Friday, the end of day on Friday rolls around

00:17:03   and much of that just kind of turns off

00:17:05   and this access that is so useful and can be so helpful

00:17:09   that we get during W2C goes away.

00:17:11   So your main goal with the code is to just find the issues,

00:17:15   find the questions, find the problems as quickly as you can

00:17:18   and then you can ask those questions

00:17:19   and you can get help with them

00:17:20   and you can explore what those things are

00:17:22   and then you have all the rest of the summer

00:17:24   to actually build out the features,

00:17:25   to actually be turning this into a product

00:17:27   that you can ship to the world in September.

00:17:30   But that for those first few days,

00:17:32   it's all about understanding.

00:17:33   It's less about sort of really creating things

00:17:36   that are gonna last.

00:17:36   Most of that work I do, I throw away

00:17:38   and that is the purpose of that work.

00:17:40   It is, that is a feature, not a bug of that situation.

00:17:43   - Also, take advantage of the time window that you have

00:17:48   to actually get changes made in the APIs and frameworks.

00:17:51   So you have much of the summer to get bugs fixed

00:17:56   but you only have maybe until July, I would say.

00:18:00   I think you have June to get the APIs changed.

00:18:04   So if they release some new API and you're like,

00:18:07   man, this is actually, this is missing

00:18:10   some really important flag or option

00:18:12   or if they just restructure this very slightly,

00:18:16   it would be a lot more useful.

00:18:18   That's the kind of change that they can,

00:18:19   they actually will do that kind of change

00:18:21   within the month of June usually.

00:18:23   After June, it's much harder to get that kind of thing done

00:18:26   and you might have to wait until the entire next year

00:18:29   and the next year's OSs.

00:18:31   So June is the time to file reports and make blog posts

00:18:35   and make a stink and reach out to people

00:18:36   and go to the labs and everything else

00:18:38   if you want the APIs to be adjusted.

00:18:41   And then you have a little bit more time in the summer

00:18:43   to get the actual bugs fixed.

00:18:45   So that's, take advantage.

00:18:47   That's one of the main advantages

00:18:48   of what Dave was just saying about making

00:18:50   like kind of prototypes and playing around with new APIs.

00:18:53   A lot of the time, you don't know if the new API

00:18:55   is gonna have some kind of weird shortcoming or bug for you

00:18:58   until you try to use it for something.

00:19:00   And if you wait to integrate it into your main app

00:19:03   or your main apps, you might be waiting until July or August

00:19:06   before you really run into those problems.

00:19:07   And by then, it might be too late to get things changed.

00:19:09   So play with the new stuff as soon as you can.

00:19:12   This doesn't mean Monday, but necessarily,

00:19:16   'cause Monday's gonna be full of events and sessions

00:19:17   and everything else, but as soon as you reasonably can,

00:19:20   play with those things, especially, as Dave said,

00:19:22   if you take advantage of the Slack kind of labs

00:19:26   and activity format that they have,

00:19:28   that's a really great opportunity,

00:19:29   and that's only for that week.

00:19:31   - Yeah, I will say, like talking about that,

00:19:32   those, I think Apple calls them the activities

00:19:35   in their, like on the developer portal website.

00:19:38   In the last couple of years they've been doing these,

00:19:41   I would say they are starting to become

00:19:42   like the real star of the show for me.

00:19:45   Like I get so much out of these.

00:19:46   And so essentially what this will be is you sign up,

00:19:48   they have usually have a couple of kind of topic areas

00:19:51   that you can kind of check boxes for, I found.

00:19:53   Check all the boxes.

00:19:54   All it means is that which rooms in Slack

00:19:57   are you going to be sort of admitted into?

00:19:59   Like it's not this, you're not committing

00:20:01   to anything deep or rich.

00:20:03   It's just which rooms would you like to be in?

00:20:05   And so I've typically just say basically all the rooms,

00:20:08   I'll rather have access to things and be able to read,

00:20:10   read things if I want rather than missing out.

00:20:14   And then what's great about this format is they,

00:20:16   very often they'll have a few kind of event events,

00:20:18   which are just kind of more, I don't know,

00:20:21   like a chat room discussion kind of thing

00:20:23   or a watch-along thing.

00:20:24   But the real thing that where it's been super helpful

00:20:27   is they have Q&As where imagine, you know,

00:20:31   like a WWDC lab, but it's with like 50 to 100 to 1000,

00:20:35   who knows how many people are there.

00:20:36   And you can ask small questions that you can, you know,

00:20:40   that they're able to answer that, you know,

00:20:42   would sometimes potentially feel a bit silly

00:20:44   to like try and schedule a 30 minute lab slot

00:20:47   to ask this one little question,

00:20:49   this one little thing that's been bugging you,

00:20:52   but it's a great opportunity to ask it.

00:20:53   And you ask it in a public way in so far as anyone can

00:20:57   benefit from that question.

00:20:58   And so I've just learned so much from those sessions,

00:21:01   even if I don't have any questions,

00:21:03   go and read the sort of transcript of the Q&As afterwards.

00:21:06   And then also just, I mean,

00:21:08   I'll probably understand that not every question

00:21:09   can be answered, both in terms of from a time perspective,

00:21:13   but also like just every now and then I feel like

00:21:16   there are these people who are asking questions that like,

00:21:18   if you ask a question about something in the future,

00:21:21   they won't answer it.

00:21:22   That is just not the way it works.

00:21:23   And asking that question isn't, you know,

00:21:25   doing anyone any favors.

00:21:26   Don't try and be like, does this mean that, you know,

00:21:28   this falls iPhone is gonna have this thing?

00:21:30   (laughing)

00:21:31   They're not gonna answer that.

00:21:32   That is completely not what that is for.

00:21:35   Is if you have a question about like, well, does this,

00:21:37   you know, if this was applied in this way,

00:21:39   what does that mean?

00:21:40   Like they might be able to get you a little bit more

00:21:43   kind of help in that, but it's a super important thing,

00:21:46   I think, to take advantage of those.

00:21:49   And also it's a way to kind of understand

00:21:51   if there are bigger issues,

00:21:52   if they aren't small questions that are good

00:21:54   in that Q&A format, that's when you take it to a lab.

00:21:57   That's when you schedule a lab and you know, with a lab,

00:22:00   have questions, be prepared for those.

00:22:02   I think it's like the amount of benefits you can get

00:22:04   from a lab is so directly proportional

00:22:06   to the amount of preparation that you put into it

00:22:08   to some degree.

00:22:09   Like if you have something that some bug

00:22:11   that you wanna show, like have your Xcode project,

00:22:14   good to be ready to go, you know,

00:22:15   make sure that you've run through it as though

00:22:17   like you were showing someone else

00:22:18   so that if you're reproducing a bug,

00:22:20   show, you know, you know how to reproduce it every time,

00:22:22   'cause you can just, it's a limited thing.

00:22:24   And when the time, you know, when you get to the end of,

00:22:25   you know, whatever, you have a 30 minute slot,

00:22:27   you get to 300, they really have to go

00:22:29   because they're going to someone else's slot.

00:22:31   And so be prepared for those, take advantage of them.

00:22:35   And then just like pay attention to that.

00:22:37   You know, it's like understand that there's gonna be

00:22:39   a schedule posted of those kinds of labs

00:22:41   and of those things.

00:22:42   And if you don't sign up at the right time,

00:22:44   you're gonna miss out.

00:22:45   And so just pay attention to the schedule.

00:22:47   Like I think it's usually released Monday afternoon,

00:22:49   Monday evening.

00:22:50   And so usually what I'll do is like Monday,

00:22:52   I get home from everything,

00:22:53   I'm a little bit kind of drained from the day

00:22:55   and then I'll just kind of casually just browse the schedule

00:22:58   and kind of circle the things that I want to pay attention

00:23:00   to later in the week so that I don't miss out.

00:23:02   So that if there's something that's happening

00:23:04   Tuesday morning, I'm aware of that.

00:23:06   And I would just encourage you to kind of be aware

00:23:08   of those things because as with all these things,

00:23:10   the nice thing, the Slack thing, the nice thing is

00:23:12   you can always go back and read the transcript

00:23:14   if you were in the room.

00:23:15   But for the labs, if there was a, you know,

00:23:17   the labs for the technology that you are most interested in

00:23:20   is having their labs on Tuesday morning

00:23:22   and you need to sign up for it Monday night,

00:23:24   pay attention to that.

00:23:25   Otherwise you will miss out and it, you know,

00:23:27   the opportunity will not present itself

00:23:29   potentially for a whole other year.

00:23:31   - Yeah, the labs are such a great resource

00:23:33   and you know, much of the review you see,

00:23:36   you know, the session videos, like you know,

00:23:38   a lot of the sample stuff and access,

00:23:40   much of that is available whenever you want.

00:23:43   So you don't necessarily have to rush to watch

00:23:45   every session if that will cause you to miss a lab

00:23:49   or you know, an activity, Q and A kind of thing.

00:23:52   So you know, sessions are, obviously,

00:23:54   sessions will give you content to ask questions about.

00:23:58   So you know, it's obviously a balance to be struck.

00:24:00   You can't just save all your session watching

00:24:01   for the plane ride home or you know, the following week.

00:24:04   But you, if push comes to shove

00:24:07   and you have to give on something,

00:24:09   like you can save this session for later or tomorrow

00:24:12   or you can play it at 1.5x later, you know.

00:24:14   And meanwhile, then you can go back and attend that lab

00:24:17   or attend that activity.

00:24:18   - Yeah, exactly.

00:24:19   And just, I mean, and I think on the sessions,

00:24:21   it's like understand that I very often

00:24:24   will skim sessions during the week

00:24:26   and with the expectation that I will watch those sessions

00:24:29   properly, like with you know, like a mindset

00:24:32   that I'm really trying to learn much later on.

00:24:34   Like over the summer, I will come back,

00:24:36   there are several videos like for key technologies

00:24:38   that I have probably watched seven or eight times.

00:24:40   Like the initial widgets video,

00:24:42   I probably watched seven or eight times.

00:24:43   And it's just, that's useful that it exists in a format

00:24:46   that I can do that with.

00:24:47   But the first watch, I'm just kind of skimming through,

00:24:49   oh, this isn't for me, I'll just skip forward.

00:24:51   30 seconds, 30 seconds, okay, what's,

00:24:52   you know, here's a new chapter.

00:24:54   Like just going through with the set of,

00:24:56   I'm just trying to let it wash over me so that I'm aware.

00:24:59   Like I'm building awareness

00:25:00   and then as the summer progresses,

00:25:02   I'm building like expertise and knowledge.

00:25:05   But that first, the first few weeks,

00:25:06   it's just about awareness.

00:25:07   Like what are the new things?

00:25:08   What are the things I need to explore?

00:25:10   What captures my attention?

00:25:11   What, you know, prompts questions that I might wanna ask?

00:25:14   It's all about that kind of higher level thing

00:25:16   to start with and then you have all summer

00:25:18   to rewatch it a thousand times

00:25:20   and understand how you can really use it

00:25:22   and exact syntax of what you would do

00:25:24   where the esoteric edge case feature,

00:25:26   you know, you have plenty of time for that later.

00:25:29   - And definitely like, you know,

00:25:30   watch the sessions in complexity order.

00:25:33   So, you know, start out with the what's new in blah, blah,

00:25:37   blah, you know, like I said,

00:25:38   the high level sessions that are kind of overviews

00:25:40   of what's new or different in core technologies.

00:25:43   You know, what's new in UIKit, what's new in SwiftUI,

00:25:45   what's new in the platform, State of the Union obviously.

00:25:48   You know, watch those, like start with those

00:25:50   because you might learn from those

00:25:53   that there is some other topic area

00:25:55   that you wouldn't have necessarily watched

00:25:56   the dedicated video on otherwise,

00:25:59   but you learn the overview from the overview session.

00:26:01   Oh, wait a minute, that's a pretty big change

00:26:04   in, you know, the debugger or instruments or something.

00:26:07   Like, you know, something that like you might have like

00:26:09   waited till later or skipped entirely,

00:26:12   like for the detail video on that,

00:26:14   but the overview session will tell you like,

00:26:17   here's an area that you might wanna pay attention to.

00:26:19   Also, you know, Apple for all their wonderfulness

00:26:22   is not super great at documentation all the time.

00:26:26   A lot of times, the little remarks that the presenter makes

00:26:30   in the sessions during those overviews

00:26:32   or during, you know, during the more detailed ones

00:26:33   of course also, but those overview sessions

00:26:35   also contain little remarks or little comments

00:26:39   that reveal important details about how something works

00:26:43   or important changes that are being made under the hood

00:26:46   that oh, all of a sudden now, you know,

00:26:47   this network call is going to have this other behavior

00:26:50   that it didn't have before.

00:26:51   That could just be a remark in the overview video.

00:26:54   So watch all of those because that's,

00:26:56   there's so much value there and yeah, you know,

00:26:59   if you're like, you know, not a game developer,

00:27:00   you can skip over the game section probably,

00:27:02   but like there's usually enough density in there.

00:27:05   Those, every one of those overview videos is worth watching.

00:27:08   - Yeah, and I think on that, I would also say that

00:27:10   even in the areas, it isn't necessarily

00:27:11   that some things aren't documented,

00:27:13   but it's the, in the session, you will often get the why

00:27:17   of why something is done in a particular way

00:27:20   in a way that is hard to capture in the documentation.

00:27:22   Like when they're documenting something

00:27:24   or if you're looking at the API,

00:27:26   you'll see like what they did and how to use it,

00:27:29   but you don't get why they did it that way.

00:27:31   And often you'll have a few sentences

00:27:33   at the beginning of a section where they explain

00:27:34   kind of what their intent is,

00:27:36   why it's structured in a particular way.

00:27:38   And that can be super helpful to make sure

00:27:39   that you're using it kind of in the direction

00:27:41   that they're expecting rather than swimming

00:27:43   against the current of it because you're expecting,

00:27:47   oh, this is built this way because of this

00:27:49   and it may actually be going

00:27:50   in a completely different direction

00:27:51   and you're misusing it as a result.

00:27:52   - So I'm ready.

00:27:54   You ready to do this thing?

00:27:56   - I think so.

00:27:57   I mean, I think now it's like the last thing I can think of

00:27:59   is the weird, like, it is a wonderful week,

00:28:02   especially if you're gonna be there in town.

00:28:04   Like it is, I love being around the people of this community.

00:28:07   I've been a community, part of this community

00:28:08   for a long time.

00:28:10   It's also kind of a weird week sometimes

00:28:11   in terms of interpersonally.

00:28:12   I find I'm not the most like gregarious, outgoing person,

00:28:16   but it's a week where suddenly like many people know

00:28:18   who I am and wanna say hi.

00:28:20   And that is wonderful and special.

00:28:21   And I think it's like super cool to, you know,

00:28:24   be recognized in public.

00:28:26   Like, I don't even, it's still weird,

00:28:27   but it's a thing that happens only at WWDC,

00:28:30   but that's where it happens.

00:28:31   And I would just say on that score,

00:28:33   it's like understand that it's a weird week for us all.

00:28:35   Like maybe this isn't our most comfortable thing,

00:28:37   but like be patient with people, be kind, be respectful.

00:28:40   Don't be too shy though.

00:28:41   Like I think some of my early years,

00:28:43   I just would kind of keep to myself

00:28:44   and wouldn't say anything to anyone.

00:28:45   And I was missing out on making new friends.

00:28:48   I mean, I think you and I have been

00:28:49   for the first time at WWDC.

00:28:51   Like it's very much an opportunity to just meet people

00:28:54   and to reach out, understand that sometimes people

00:28:57   have places to go and you can't, you know,

00:28:58   sort of, you can't get into a detailed discussion,

00:29:00   but generally it's great to say hi.

00:29:02   If you admire someone's work, like I do this all the time

00:29:04   as I try and take it as an opportunity

00:29:06   to say thank you to people who are doing things

00:29:08   that I admire, that I've been inspired by.

00:29:10   You know, this is gonna be other developers.

00:29:12   These are people within Apple

00:29:13   who are working on technologies.

00:29:14   And it's like, this is the one, you know,

00:29:16   the one day a year with that they can come out

00:29:18   and you can say thank you for making this amazing thing.

00:29:21   Like it's a wonderful opportunity for that.

00:29:22   So take advantage of it if you happen to be there in person.

00:29:24   And I'll be wearing a bright blue t-shirt most of the week.

00:29:27   So if you see me, say hi.

00:29:29   - Yeah, keep in mind, we're all a bunch of nerds.

00:29:31   Come up and say hi.

00:29:33   We're as awkward as you, don't worry about it.

00:29:36   We'll get through it together.

00:29:37   - Exactly.

00:29:37   - All right, thank you so much for listening everybody.

00:29:39   Good luck through WWDC and we will talk to you

00:29:42   shortly after the, or during the week in two weeks.

00:29:46   - Bye.

00:29:47   >> Thank you.