00:00:05 ◼ ► And I'm David Smith. Under the Radar is never longer than 30 minutes, so let's get started.
00:00:09 ◼ ► So it has finally happened. I was a little nervous that today or this day would never come,
00:00:20 ◼ ► Which is very exciting. I was starting to get, I think the previous years it had been announced
00:00:25 ◼ ► in kind of early-ish March or mid-March and then late March, but like now this was announced
00:00:34 ◼ ► And so I'm very, A, I'm very glad that it was finally announced just because I don't know,
00:00:37 ◼ ► this is probably just the reality for being an iOS developer, but summer plans are always
00:00:46 ◼ ► I want to do things. I want to plan things. But until I know when WWDC is, I can't really
00:01:00 ◼ ► is it's a week that I'm dedicating to being an Apple developer first, you know, sort of
00:01:18 ◼ ► a pen out right on our paper calendar that this is WWDC week. I can set it aside. I can,
00:01:27 ◼ ► just that it exists and also, you know, the general form of what it will look like and so on.
00:01:47 ◼ ► they are doing. The watch party thing is interesting with that but otherwise, you know,
00:02:17 ◼ ► become a little bit easier and more responsible to hold. I still like this format better.
00:03:35 ◼ ► So basically a viewing party and presumably some kind of, you know, meet and greet with
00:04:39 ◼ ► is significant for both of us, but especially for you because you're much further away,
00:05:02 ◼ ► press invitation, I might consider it, but even that I think would be a tough sell just
00:05:08 ◼ ► because of the logistics involved and, you know, for the, you know, risk-reward calculation
00:05:38 ◼ ► online experience, around the experience that can scale both in terms of the number of people
00:05:47 ◼ ► that the last few years, W2C online has been really good. And that's coming from an experience
00:06:08 ◼ ► it's just been great. But I am also really kind of glad and excited to see that they're
00:06:13 ◼ ► starting to dip their toe into having it be a hybrid event, having it to be an event for
00:06:24 ◼ ► the same for the same reason that they have, you know, press coming on site for a press
00:06:31 ◼ ► event in previous years, that there is something different about being in person than just
00:06:37 ◼ ► watching a video online. That this is the same reason that it's different to, you know,
00:06:47 ◼ ► sitting at home and listening to their music. There is something different just about that
00:07:06 ◼ ► around you are interested in, that there's something unique about that. And what I don't
00:07:11 ◼ ► know if this is exactly where Apple is going with this, but what intrigued me about when
00:07:20 ◼ ► that some press goes on site in past years for Apple events, that I think there is something
00:07:26 ◼ ► potentially that Apple is doing here of trying to get developers there to talk to about what
00:07:43 ◼ ► newspapers, but I think about, you know, the communicators, people who are in our community
00:07:49 ◼ ► who talk about what they're doing, who talk about the thing I think about, you know, like
00:07:54 ◼ ► Paul Hudson or some of the other kind of people who are educators in this area, like getting
00:08:10 ◼ ► know, like what I'm doing right now in some ways is developer communication, I would be
00:08:35 ◼ ► if I was invited, I would absolutely go and I would be super excited to go. And I think
00:08:56 ◼ ► Like that's my career, you know, I've been doing this for a long time and it's something
00:09:05 ◼ ► developer with a little bit of watchOS in there whenever I can squeeze it in. And that's
00:09:10 ◼ ► what I do. And I'm all in on that as a career path. And so I want to sort of like, anything
00:09:16 ◼ ► Apple is offering on the developer side, I want to take advantage. I want to do anything
00:09:20 ◼ ► I can to educate myself, to motivate myself, honestly, which is a small part of it too,
00:09:25 ◼ ► that like, there was something super motivating about in person WWDC that as much as it was
00:09:30 ◼ ► lovely on the online years to get the videos, be able to scrub them back and forth, do all
00:09:34 ◼ ► the things, it is not the same energy as walking out of a keynote in the Presidio. And obviously
00:09:41 ◼ ► it is a different thing, you know, if we're watching a video and it's not quite the same,
00:09:45 ◼ ► it's not like there's Steve Jobs on the stage. Wow. It's a different thing. But I imagine
00:09:50 ◼ ► there's a different level of motivation and excitement. And I would love that if it was
00:09:54 ◼ ► possible. And I think it's like, because I'm all in on this platform, it's like, if they're
00:09:57 ◼ ► offering, I will say yes, and I will try. And if it doesn't work out, no problem. I'm perfectly
00:10:01 ◼ ► happy to do another year of online WWDC. But like, if there's an opportunity, I am going
00:10:11 ◼ ► That's, you know, I didn't think about that angle of it about, you know, the motivation
00:10:30 ◼ ► see the sessions, I'd see the, you know, the big State of the Union and everything, I'd
00:10:33 ◼ ► be like, Oh my God, I can't wait to jump in. And, you know, sometimes I would, you know,
00:10:41 ◼ ► during lunch as we're eating the box lunch and everything. So yeah, I guess in practice,
00:10:51 ◼ ► And I think it's definitely going to be a year that I think, well, you'd like the perspective
00:11:05 ◼ ► potentially WBC becomes one day in person, and the rest online, like over, if that sort
00:11:11 ◼ ► of expands in scope and style, like, I could see everyone's year having to sort of recalibrate
00:11:28 ◼ ► Yeah, maybe. Well, we are brought to you this time by Sourcegraph. These days, every company
00:11:39 ◼ ► have any kind of online presence or digital service without copious amounts of code. And
00:13:11 ◼ ► redesign, it had to make a call, I think it was to save the colors that they had set for their playlists or something.
00:13:21 ◼ ► out there was going to generate playlist colors and then have to sync those to the server.
00:13:26 ◼ ► And so I was very concerned with this new launch that as that update rolled out to everybody
00:13:56 ◼ ► on the verge that says, hey, there's this great new update and they go and download the update. You want to make sure that they
00:14:11 ◼ ► that's not something we actually have to worry about. And specifically, this was just, because
00:14:16 ◼ ► this is coming mostly from my experience with A/B testing recently, that I have a much deeper kind of understanding of the way
00:14:26 ◼ ► I shared something with you that I think was a surprise to you and so it seemed like a good place to share it on the show. And essentially
00:14:31 ◼ ► it's this, that in App Store Connect, when we do an app update and we choose to release it,
00:14:46 ◼ ► will be offered the app as an automatic update. And so this starts off super slow, it's like
00:14:51 ◼ ► 0.1% the first day and then half a percent the next day and maybe 1% and then it sort of
00:14:56 ◼ ► ramps up from there. But the thing that is sort of key to keep in your mind when you're thinking of this
00:15:11 ◼ ► That's sort of the ramp for that. A hundred percent of new users get the latest version
00:15:21 ◼ ► will get the new version. Right. And that's something that I didn't realize. That's the key differentiator right there.
00:15:31 ◼ ► for any kind of promotion you're doing. And then, so when you say automatic update, what that means is
00:15:36 ◼ ► that if anybody goes to the App Store app on their phone and goes to the updates tab, wherever it's buried this year,
00:15:46 ◼ ► update itself. So they could tap update in the list, it'll be there on day one, but it won't
00:15:56 ◼ ► And I think that difference changes a lot of the dynamics because A, like you were saying,
00:16:01 ◼ ► once you hit, you know, ready for sale in App Store Connect, you release it to the App Store,
00:16:11 ◼ ► again. So it's like you've created this clear dividing line. So like from that point on, any download
00:16:16 ◼ ► of that app that is happening is going to be the new version. So you don't need to worry from a press perspective or something that
00:16:21 ◼ ► anyone's ever going to get the old version. And so that's a good thing from a press perspective.
00:16:26 ◼ ► And it's a good thing from your server's perspective, because in this case, you would expect the vast
00:16:46 ◼ ► that spike is likely not going to overwhelm the size of the existing user base. And so it'll be
00:16:56 ◼ ► because I think I used to think of it in the same way that I think you were thinking of, that it's like if you did the phased
00:17:01 ◼ ► rollout, that you still could have people who were downloading the old version. But that is
00:17:06 ◼ ► in fact not the case, doesn't seem to be how it works. And so we're safe to, essentially, I do all my rollouts
00:17:11 ◼ ► as slow rollouts now, because there's very little downside to doing it that way. I think the only
00:17:31 ◼ ► it was a defensive thing, but as long as it's not that case, if it isn't the emergency bug fix,
00:17:46 ◼ ► And do I remember correctly, I did it once a long time ago, do I remember correctly that
00:17:51 ◼ ► if a few days in, you're like, you know what, everything's fine, there's a button you can hit that just releases it to everybody instantly?
00:17:56 ◼ ► Yes, and there are actually two buttons. So there's one that you can say just release it to everybody,
00:18:01 ◼ ► and from that point on, it'll sort of, at the usual rate that whatever it is, Apple offers
00:18:06 ◼ ► automatic updates, everyone will get it, and the other option you can do is to pause the rollout.
00:18:16 ◼ ► to. So if you say you're two days into it and it's gone, the percent for the release is
00:18:21 ◼ ► now at 2% of people will be offered automatic downloads, you hit pause, it'll just stay at 2%
00:18:26 ◼ ► indefinitely or up, I think it's not indefinitely indefinitely, it's maybe, oh, you can do that for up to two weeks or something
00:18:31 ◼ ► along those lines. And so you also have the option then, from a bug perspective, like, I've definitely pushed
00:18:36 ◼ ► that button once or twice where I release an update, I discover a little bug, it's something I want to
00:18:41 ◼ ► fix, it's not like this catastrophic thing, but I can pause the rollout in the meantime while I fix it, while it
00:18:51 ◼ ► nearly as far. It'll still be unfortunately shown to all my new users, and it will be shown to, in this case, you know, 2%
00:18:56 ◼ ► of existing users, but it will be much slower and lower than it would be if I'd sort of done a big rollout.
00:19:06 ◼ ► you're like, you know, in the middle of a rollout, whether it's paused or not, you can still upload new versions
00:19:11 ◼ ► and have them approved and everything and it works? Yep, it works totally fine. And it's essentially once you
00:19:21 ◼ ► rollout status is, and then you can just add new versions like you would typically. You can have them go through app
00:19:26 ◼ ► review and then you'll have the option to release the new version or, you know, hold it for pending
00:19:31 ◼ ► developer release, depending on what makes sense for you. That's really good to know. Now
00:19:36 ◼ ► that you tell me more about how this works, now I think I'm with you that like, that probably makes sense to do
00:19:41 ◼ ► for almost every update. There are very few soundlists. So at this point, the only downside
00:19:46 ◼ ► that I'm really aware of was, this relates to some of the A/B testing stuff we've talked about in the last few weeks,
00:20:21 ◼ ► numbers, you could potentially have this kind of skew. And so I would have these things where
00:20:31 ◼ ► amazingly." And it turns out paywalls perform better for new users than for existing users,
00:20:36 ◼ ► which is sort of, in some ways, notionally makes sense to me, that a new user is much more excited and much more likely to
00:20:46 ◼ ► much higher sort of conversion activity. And so I roll out this new paywall, the first few days it performs amazingly.
00:20:51 ◼ ► I'm like, "Yay, this is great! Everything's going to be awesome." And then it just sort of immediately plateaus
00:21:06 ◼ ► improvement, and it's just I'm observing this. And so if you are running any kind of testing behavior
00:21:11 ◼ ► or if you're seeing weird statistics, it's just something to keep in the back of your mind that if you're doing a slow rollout
00:21:26 ◼ ► That's really interesting. I am so happy that you exist and share your knowledge. This is
00:22:16 ◼ ► that's there for a reason. That's there to help users explore and understand how to use your
00:22:26 ◼ ► help whatsoever. It isn't something that we do, it isn't something we think about, it isn't
00:22:56 ◼ ► a way to do this, but anyway, it is something that I recently, like the next build of Widgetsmith,
00:23:06 ◼ ► it is going to have five, and the fifth one is going to be Help. And I'm kind of excited to
00:23:21 ◼ ► and having frequently asked questions, and in terms of instrumenting my frequently asked questions that I can see
00:23:26 ◼ ► which questions most people are having trouble with, in terms of which are in my frequently asked questions, when you tap to
00:23:36 ◼ ► questions are most interested. And it was kind of sad to me that the most popular questions were like
00:23:46 ◼ ► is fundamental, like that is all Widgetsmith is. If you don't know how to do those two things, the
00:23:51 ◼ ► app is completely useless to you. So I've completely failed you if you don't know how to do that.
00:24:01 ◼ ► in the sense of like a walkthrough, but I've restructured the main screen of Widgetsmith now so
00:24:06 ◼ ► that when you first install the app, until you've configured your first widget, there's this very
00:24:11 ◼ ► prominent banner at the top that says "Learn how to configure your widget." And so you tap that and it gives
00:24:16 ◼ ► you this animated walkthrough. And as soon as you've configured it, it goes away and is replaced by "How to
00:24:21 ◼ ► add widgets to your home screen." And once you've added it to your widget, I can detect that and I can make the banner go away.
00:24:36 ◼ ► this was probably about two weeks ago, I've seen a precipitous drop in A, the number of people who
00:24:41 ◼ ► are opening the frequently asked questions, so fewer people have questions, and then of the questions that people are asking
00:24:46 ◼ ► are now the questions that I kind of want them to be asking. The kind of more power user, nuanced
00:24:51 ◼ ► things where it's a bit complicated and there's nothing I can do, or it's a choice that I've made, or things like that.
00:24:56 ◼ ► Like, those are the questions that I understand to some degree are always going to be there.
00:25:01 ◼ ► But how to fundamentally use the application should not be a question that anyone has. And because that was so
00:25:16 ◼ ► if you have questions, there's an obvious place to go and get it, and I can surface this information
00:25:26 ◼ ► how it's going, but based on my experience with doing the sort of onboarding side, I have a suspicion
00:25:41 ◼ ► to use the app, and bounce off of it a lot less. Because the last thing I want is, if I've gotten you
00:25:46 ◼ ► all the way through the App Store process, through the marketing process, you've downloaded the app, you open
00:25:51 ◼ ► it, you don't know what to do, and you then close the app and delete it, that is a giant
00:26:01 ◼ ► try it. And if you try it and you don't use it, that's fine, but if you don't try it because you don't understand it, that's a big problem for me.
00:26:07 ◼ ► Yeah, that's, man, look at, here you are, making more work for the rest of us again, by making
00:26:12 ◼ ► sense and trying things that work, showing us like, oh, we should really be doing X, Y, Z.
00:26:22 ◼ ► see iOS apps with help. I mean, heck, you hardly ever see Mac apps with help anymore. You know, that's, almost anything
00:26:32 ◼ ► recent companies that, you know, they don't really care about this kind of stuff, you almost never see this anymore.
00:26:37 ◼ ► Because making good help, you know, it's a form of documentation, and making documentation is a
00:26:47 ◼ ► specialized skills, you need people who are good at technical writing, and it's a lot of work if you ever want to
00:26:52 ◼ ► integrate things like screenshots or any kind of like video even of little clips of how to do stuff.
00:27:07 ◼ ► And so, I've never even thought about it, and people have emailed me frequently, some, you know, I would
00:27:12 ◼ ► maybe not like, you know, I'm not talking like every day or every week, but maybe once a month or so,
00:27:17 ◼ ► I get an email from somebody saying, "Is there any help available on the app?" Or, you know, "Is there a guide
00:27:22 ◼ ► somewhere?" Or, you know, "Where can I find help?" And I've always thought those requests were
00:27:27 ◼ ► kind of odd, because, you know, in mobile that doesn't really seem to exist in a consistent way.
00:27:32 ◼ ► Or it's just like, you know, "Here's a link to our website knowledge base," which is usually not very helpful.
00:27:37 ◼ ► So, I've never even thought of doing this, but I think, now that you're saying, like, you know, I have had requests for that before,
00:27:45 ◼ ► and, you know, there's probably a lot of people out there who look for it and don't find it and who I don't hear from.
00:27:54 ◼ ► Well, and I think the thing that I would say, too, is I think I was intimidated in all the same reasons that you were just,
00:28:01 ◼ ► like, doing it well is difficult, and being comprehensive or updating it and those kinds of things can make it feel really big and scary.
00:28:09 ◼ ► But I think what I found from this experience was that I got a huge benefit from just spending a little time on the, like, the absolute core experience of the application,
00:28:20 ◼ ► and providing help for that, and not worrying necessarily too much about providing a lot of documentation or information for the more esoteric features.
00:28:28 ◼ ► So, like, in Widgets methods, configure a widget, add it to your home screen. If I can communicate that, I'm winning.
00:28:34 ◼ ► In Overcast, it would be like, find a podcast, play a podcast. Like, if you are using the app, like, if you open the app and you don't know how to do that, you're completely stuck.
00:28:45 ◼ ► And so, I think identifying some very core behaviors, some very core user paths, and making sure that there's sort of help information about those,
00:28:55 ◼ ► is going a long way. Because I think the nice thing is, users are, it's like, they're smart people. They can, once they have that basic path, starting to branch off of it,
00:29:05 ◼ ► and doing, you know, the more customizable options, or getting more advanced in their use, that's something they will naturally want to explore.
00:29:12 ◼ ► But the last thing I want is for someone to feel foolish, feel like they don't get it, this, you know, this app's too complicated for them to move on.