PodSearch

Under the Radar

141: Implementing Search

 

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

00:00:04 ◼   ► I'm Marco Arment.

00:00:05 ◼   ► And I'm David Smith.

00:00:06 ◼   ► Under the Radar is never longer than 30 minutes, so let's get started.

00:00:10 ◼   ► So we both shipped.

00:00:11 ◼   ► Yay!

00:00:12 ◼   ► Most importantly, you shipped a massive update.

00:00:15 ◼   ► I shipped a smallish update.

00:00:17 ◼   ► Nice.

00:00:18 ◼   ► Your update huge and very awesome, so congratulations.

00:00:21 ◼   ► Thank you very much.

00:00:22 ◼   ► Yours is pretty good too, by the way.

00:00:24 ◼   ► We'll talk about that, I'm sure.

00:00:25 ◼   ► Sure.

00:00:26 ◼   ► But, yeah, don't downplay that too much.

00:00:28 ◼   ► But, yes, thank you very much.

00:00:30 ◼   ► Yeah, Overcast 5 is out.

00:00:32 ◼   ► We're not going to talk about all of it today because there was one area that I thought

00:00:36 ◼   ► was big enough for developers that I wanted to focus on just this one area today.

00:00:40 ◼   ► Search.

00:00:41 ◼   ► This has been a feature that people have asked for ever since 1.0, a way to search their

00:00:47 ◼   ► podcast on their device.

00:00:49 ◼   ► When you have a lot of podcasts, it's often just faster to type in rather than browse

00:00:54 ◼   ► through a huge long list.

00:00:55 ◼   ► And also, people often wanted to, when browsing a podcast's archive, they wanted to be able

00:01:01 ◼   ► to find a certain episode by search so that they wouldn't have to scroll through 500

00:01:06 ◼   ► episodes of a show with a huge back catalog to find the one where they talked about X.

00:01:10 ◼   ► Search is how you solve these problems.

00:01:12 ◼   ► And so I decided to go through basically how I implemented search, what about it makes

00:01:18 ◼   ► it difficult, and the problems you have to face in a way that hopefully this might help

00:01:24 ◼   ► at least be interesting because search is a kind of special area of software development

00:01:28 ◼   ► that I actually have some previous experience in before anybody knew my iOS stuff.

00:01:33 ◼   ► I used to work in the search business.

00:01:35 ◼   ► And it's really interesting programming challenges and interesting UI challenges that I think

00:01:39 ◼   ► are fun to talk about.

00:01:40 ◼   ► >> Steve

00:01:48 ◼   ► Right.

00:01:54 ◼   ► Exactly.

00:02:02 ◼   ► >> Right.

00:02:10 ◼   ► >> Right.

00:02:20 ◼   ► >> You know, I think

00:02:45 ◼   ► for

00:02:52 ◼   ► a lot of people, it's

00:03:13 ◼   ► a

00:03:32 ◼   ► very

00:03:46 ◼   ► hard

00:04:05 ◼   ► to

00:04:24 ◼   ► really

00:04:38 ◼   ► see

00:05:07 ◼   ► when

00:05:19 ◼   ► you

00:05:38 ◼   ► search

00:06:01 ◼   ► for

00:06:20 ◼   ► a

00:06:37 ◼   ► word

00:07:05 ◼   ► search

00:07:16 ◼   ► search

00:07:26 ◼   ► and

00:07:45 ◼   ► add

00:07:59 ◼   ► a

00:08:18 ◼   ► word

00:08:47 ◼   ► search

00:08:56 ◼   ► search

00:09:11 ◼   ► search

00:09:18 ◼   ► search

00:09:25 ◼   ► search

00:09:34 ◼   ► search

00:09:41 ◼   ► search

00:09:48 ◼   ► search

00:10:04 ◼   ► search

00:10:11 ◼   ► search

00:10:27 ◼   ► search

00:10:34 ◼   ► search

00:10:50 ◼   ► search

00:10:57 ◼   ► search

00:11:13 ◼   ► search

00:11:20 ◼   ► search

00:11:36 ◼   ► search

00:11:43 ◼   ► search

00:11:59 ◼   ► search

00:12:06 ◼   ► search

00:12:19 ◼   ► search

00:12:29 ◼   ► search

00:12:49 ◼   ► search

00:12:56 ◼   ► search

00:13:07 ◼   ► search

00:13:17 ◼   ► search

00:13:32 ◼   ► search

00:13:42 ◼   ► search

00:14:03 ◼   ► search

00:14:24 ◼   ► search

00:14:41 ◼   ► search

00:14:51 ◼   ► search

00:15:12 ◼   ► search

00:15:19 ◼   ► search

00:15:30 ◼   ► search

00:15:40 ◼   ► search

00:15:47 ◼   ► search

00:15:54 ◼   ► search

00:16:01 ◼   ► search

00:16:08 ◼   ► search

00:16:15 ◼   ► search

00:16:22 ◼   ► search

00:16:29 ◼   ► search

00:16:36 ◼   ► search

00:16:43 ◼   ► search

00:16:50 ◼   ► search

00:16:57 ◼   ► search

00:17:04 ◼   ► search

00:17:11 ◼   ► search

00:17:19 ◼   ► search

00:17:29 ◼   ► search

00:17:39 ◼   ► search

00:17:49 ◼   ► search

00:17:59 ◼   ► search

00:18:19 ◼   ► search

00:18:23 ◼   ► search

00:18:27 ◼   ► search

00:18:37 ◼   ► search

00:18:47 ◼   ► search

00:19:03 ◼   ► search

00:19:12 ◼   ► search

00:19:19 ◼   ► search

00:19:30 ◼   ► search

00:19:37 ◼   ► search

00:19:47 ◼   ► search

00:19:54 ◼   ► search

00:20:01 ◼   ► search

00:20:11 ◼   ► search

00:20:18 ◼   ► search

00:20:26 ◼   ► search

00:20:33 ◼   ► search

00:20:43 ◼   ► search

00:20:50 ◼   ► search

00:20:57 ◼   ► search

00:21:04 ◼   ► search

00:21:11 ◼   ► search

00:21:18 ◼   ► search

00:21:25 ◼   ► search

00:21:32 ◼   ► search

00:21:39 ◼   ► search

00:21:46 ◼   ► search

00:21:53 ◼   ► search

00:22:00 ◼   ► search

00:22:07 ◼   ► search

00:22:14 ◼   ► search

00:22:21 ◼   ► search

00:22:28 ◼   ► search

00:22:35 ◼   ► search

00:22:42 ◼   ► search

00:22:49 ◼   ► search

00:22:56 ◼   ► search

00:23:03 ◼   ► search

00:23:10 ◼   ► search

00:23:18 ◼   ► search

00:23:25 ◼   ► search

00:23:32 ◼   ► search

00:23:39 ◼   ► search

00:23:46 ◼   ► search

00:23:55 ◼   ► search

00:24:04 ◼   ► search

00:24:13 ◼   ► search

00:24:22 ◼   ► search

00:24:31 ◼   ► search

00:24:40 ◼   ► search

00:24:49 ◼   ► search

00:24:58 ◼   ► search

00:25:07 ◼   ► search

00:25:16 ◼   ► search

00:25:24 ◼   ► search

00:25:32 ◼   ► search

00:25:40 ◼   ► search

00:25:47 ◼   ► search

00:25:55 ◼   ► search

00:26:02 ◼   ► search

00:26:08 ◼   ► search

00:26:16 ◼   ► search

00:26:24 ◼   ► search

00:26:32 ◼   ► search

00:26:39 ◼   ► search

00:26:47 ◼   ► search

00:26:56 ◼   ► search

00:27:03 ◼   ► search

00:27:10 ◼   ► search

00:27:17 ◼   ► search

00:27:24 ◼   ► search

00:27:31 ◼   ► search

00:27:38 ◼   ► search

00:27:45 ◼   ► search

00:27:53 ◼   ► search

00:28:00 ◼   ► search

00:28:07 ◼   ► search

00:28:14 ◼   ► search

00:28:21 ◼   ► search

00:28:28 ◼   ► search

00:28:35 ◼   ► search

00:28:42 ◼   ► search

00:28:49 ◼   ► search

00:28:57 ◼   ► search

00:29:06 ◼   ► search

00:29:15 ◼   ► search

00:29:24 ◼   ► search

00:29:32 ◼   ► search

00:29:40 ◼   ► search

00:29:48 ◼   ► search