Developing Perspective

#215: Insidious Features.


00:00:00   Hello and welcome to Developing Perspective.

00:00:02   Developing Perspective is a podcast discussing news of notes in iOS development, Apple, and

00:00:06   the like.

00:00:07   I'm your host, David Smith.

00:00:08   I'm an independent iOS developer based in Herndon, Virginia.

00:00:11   This is show number 215, and your date is Friday, April 17th.

00:00:15   Developing Perspective is never longer than 15 minutes, so let's get started.

00:00:19   All right, so I believe before the last episode, I was talking about preorders and all that

00:00:25   stuff with the Apple Watch, which I'm glad to report was successful for me, you know,

00:00:29   setting up a few minutes before 3am for me and sitting there with my phone trying to

00:00:35   get things ordered in the wee hours.

00:00:37   It worked.

00:00:38   I got two phones, one for myself, one for my wife.

00:00:41   My phone just seems to like to share this and people like to ask so I'm just going to

00:00:46   tell everybody I got both were sports, I got hers in the pink and I got mine in what I'm

00:00:52   going to start referring to as underscore blue because the blue shade that the sport

00:00:57   comes in is almost exactly like the branded color that I use all over the place.

00:01:01   You know, on the title bar for my website, in the teacup for the developing perspective,

00:01:07   it's very much in that same kind of blue. So it's underscore blue, and so that's when

00:01:10   I'm going to start calling it. And I hope it catches on.

00:01:13   But that's not what I'm going to be talking about for most of the day. I'm certainly excited

00:01:16   that in about a week I'll hopefully be having my own Apple Watch and can be starting to

00:01:19   use it and play with it in a more ongoing basis.

00:01:22   Today, what I wanted to talk about is what I'm going to call "insidious features."

00:01:28   And that's kind of a negative name, maybe, but for something that is really, really cool

00:01:33   and something that I've started to notice and put a name to myself and start to think

00:01:37   about how I can incorporate that more into what I do.

00:01:44   And so I'm going to start off by talking about two examples and then just kind of speak about

00:01:48   it more generally.

00:01:49   So when I say an insidious feature, what I'm going to be talking about is a feature of

00:01:54   something in a software application that kind of rewires your brain and creates this, changes

00:02:02   how you expect something to happen in such a fundamental way that anything else just

00:02:09   like feels wrong to you.

00:02:13   And the best example I have of this is smart speed, which is a feature that's most widely

00:02:21   known to exist in Marco Arment's Overcast podcast client.

00:02:26   It exists in a few other applications as well, but it's the concept of when you are playing

00:02:30   a podcast, the silences between words.

00:02:34   So if you're listening to this in Overcast, which the vast majority of you are, I just

00:02:39   paused for a minute.

00:02:40   You probably didn't actually notice as much.

00:02:42   I paused for about three seconds in between those two words and it probably compressed

00:02:46   it down if you have it turned on, which you probably should.

00:02:49   It compressed it down so it was a bit shorter, which is a really, really ingenious way of

00:02:55   compressing the time it takes to listen to a podcast in a way that doesn't have quite

00:03:00   as dramatic an effect on the sound of it.

00:03:07   I listen to podcasts very quickly.

00:03:09   For some reason, my brain is wired

00:03:11   to be able to process audio information extremely fast.

00:03:13   I often listen to full-on 2x plus smart speed kind of thing.

00:03:18   And I'm understanding everything they're saying.

00:03:20   I'm following along.

00:03:21   For some reason, I'm just wired that way.

00:03:22   I can't read very well.

00:03:24   Like, I'm a really, really, really slow reader.

00:03:26   But I can listen to things really quickly.

00:03:28   So that's just who I am.

00:03:32   But the funny thing about smart speed

00:03:34   is that if you ever start using it-- and this is, of course,

00:03:38   funny as someone who has a podcast client that I use primarily, you know, I have my

00:03:41   own called Pod Wrangler that I primarily use, but I do use Smart Speed. I'm a good friend

00:03:45   of Mark Armit and I beta tested his overcast for him. And so I started to use it. And the

00:03:51   more you start to use a feature like that, whenever you go back to something that doesn't

00:03:55   have it, it's like you have this weird lingering thing in the back of your mind that's been

00:03:59   like, I'm wasting time, I'm wasting time. I could be listening to this two times faster

00:04:04   or 10% faster, and it would sound just the same.

00:04:09   And it kind of breaks your head in that way.

00:04:11   Like, it has this incredible draw to it

00:04:16   that is really hard to shake.

00:04:18   That's what I mean by an insidious feature.

00:04:20   If you can think of something in your application

00:04:22   that once someone gets used to it,

00:04:25   they really can't-- they don't want to go somewhere else.

00:04:30   Another example of something like this is Tweetbot.

00:04:32   and its mute filters, and specifically its regular

00:04:36   expression-based muting, which is really, really clever

00:04:39   and really, really powerful.

00:04:41   And it's something that, if I ever

00:04:43   use something that isn't Tweetbot at this point--

00:04:46   so if I use like Twitterific or the official Twitter client

00:04:49   or something like that-- Twitter is totally broken for me

00:04:54   in a lot of ways, because a lot of what I do to try and pare

00:04:58   down the signal-- make the signal to noise ratio better

00:05:02   in for Twitter for me is a whole bunch of somewhat complicated and nuanced muting filters

00:05:08   that I try to have a bunch of things that try and prune down what it is I see to be

00:05:12   things that I really want to see and are interested in seeing.

00:05:17   And so now if I go to an application that doesn't have that, it feels like something's

00:05:21   broken.

00:05:22   Like Twitter feels broken to me if I can't do the things that Tweetbot does.

00:05:27   And so I think these are two examples of what I'm going to call insidious features.

00:05:32   that get in your brain and break, make every other application feel that don't have them

00:05:37   feel broken.

00:05:38   And while I know some of you are probably thinking, well, that's just lock-in, right?

00:05:42   That's like the classic thing in business where a lot of what businesses try and do

00:05:46   is lock their customers in to their particular platform, their service, their application,

00:05:51   whatever it is.

00:05:52   You know, it's part of the whole thing where, you know, like Microsoft Word document format

00:05:56   and how compatible that is with other things.

00:05:59   And if you get a lot of people who

00:06:00   are exchanging documents in Microsoft Doc, the .x format,

00:06:09   it becomes tricky if you don't have that software

00:06:11   to interact with those people.

00:06:13   And so it has this lock-in effect.

00:06:14   And if you want to move to something else,

00:06:16   but all your old documents are still in that, it's hard to.

00:06:19   That's like classic lock-in.

00:06:21   Or like a software as a service platform

00:06:23   that kind of holds your data hostage,

00:06:26   that you can't get your data out of it very easily,

00:06:28   So you have to keep paying for it if you want to be able to look at your historical data.

00:06:32   Things like that.

00:06:33   Very classic.

00:06:34   But that type of lock-in, I think, is like a strong-armed lock-in.

00:06:39   It's this thing where you're creating a situation where somebody, perhaps against their own

00:06:46   free will in some ways, has to keep using your product because you've architected things

00:06:51   in such a way that if they don't, something bad happens to them.

00:06:57   kind of slimy, right?

00:07:00   It might be effective.

00:07:01   There are certainly instances where it just happens naturally.

00:07:04   But those are the things, whenever you see them, that kind of feel shady, that aren't

00:07:08   great for customers, because it's kind of an adversarial situation.

00:07:18   Insidious features-- and this is the distinction that I've been trying to work on as I think

00:07:21   about planning features forward into my applications are things that are hopefully of slightly

00:07:28   more positive view on that, that still have the same kind of positive effects that when

00:07:34   I use Pod Wrangler right now to listen to a podcast, it feels weird to me because I'm

00:07:40   like, "Oh, I could have listened to 10% more."

00:07:43   This morning, I just got back, I went out for an hour-long walk.

00:07:46   I could have listened to six more minutes of podcasts, which maybe isn't that important,

00:07:50   maybe isn't that significant, but it's something that sticks in my head that I was missing

00:07:55   out on. And that feeling is really powerful. It creates a loyalty and an affinity for something

00:08:04   that is hard to beat. And so that's something that I really want to think about as striving

00:08:10   towards in my own products. You know, I think you can easily get trapped though in trying

00:08:16   to think of these same things as power user features.

00:08:21   It's like, well, I'm going to make these really complicated

00:08:23   things that you can arrange and set up that just add complexity

00:08:30   but aren't really actually improving your user's

00:08:32   experience with your application.

00:08:33   And that's the danger.

00:08:34   You don't want to go down that road.

00:08:36   I see this a little bit in something like--

00:08:38   I use OmniFocus as my to-do list manager.

00:08:41   And the reason I use OmniFocus as my to-do list manager

00:08:43   has nothing to do with all of the tremendously complicated

00:08:46   things that it can do. It does everything, and I don't want it to do everything. In fact,

00:08:51   I use it in such a way that I turn off almost all the parts of it. Except the thing that

00:08:56   it does that I love is if you copy/paste a collection of newline delimited sentences.

00:09:05   Someone sends me an email with like three, "Here are the three things that are broken

00:09:09   in this app." I can copy/paste that list, and I can paste it into OmniFocus, and each

00:09:13   new line separated thing gets its own task.

00:09:17   It's really, really simple.

00:09:18   It's a really subtle feature.

00:09:19   But most to-do list apps, when you paste something like that

00:09:21   in, it takes all of the text and puts it into one item.

00:09:25   But that one feature was enough to make it

00:09:27   that every other application feels broken to me,

00:09:30   because OmniFocus does it this way.

00:09:32   And those features are so powerful.

00:09:36   Like, it is something that-- now that I've

00:09:38   seen that OmniFocus can do that as another example,

00:09:41   I can't use anything else because it

00:09:43   would feel broken to me.

00:09:44   It would feel really weird that when I do this,

00:09:47   the unexpected thing happens.

00:09:50   And so I'm trying to think about my other applications.

00:09:54   What are things that I can do to do that?

00:09:57   And I don't have a great answer at this point.

00:09:59   Like, this isn't one of these, here's the problem

00:10:02   and here's my answer.

00:10:03   But it is something that I've started

00:10:04   to try and think more and more about because I think

00:10:08   the more insidious features, the more things

00:10:10   that you can do that kind of rewire your users' brains

00:10:13   to expect something delightful from you

00:10:16   and will notice it overtly when it isn't there

00:10:20   in another product or when they're not using your product.

00:10:23   That's probably the kind of thing

00:10:26   that is a good positive thing for your applications.

00:10:31   And in some ways, the closest things I have to this--

00:10:34   this is just based on the feedback I get--

00:10:36   is in my pedometer app, Pedometer++,

00:10:40   where I have a thing where when you hit 10,000 steps--

00:10:44   or your goal, actually.

00:10:45   For most, the default goal is 10,000.

00:10:46   But you can set the goal to whatever you want.

00:10:48   But when you hit your goal, and you open the application

00:10:51   for the first time after that, the app

00:10:54   will shower you with confetti.

00:10:56   Like confetti, digital confetti, pours out

00:10:59   of the nav bar of the application and comes down.

00:11:02   And that's really cool.

00:11:03   And I've heard from a lot of people that that silly,

00:11:06   simple thing is what is motivating them to be more active.

00:11:12   That there is this weird, you know, the reinforcement and reward of that little silly, like, kind

00:11:18   of, you know, very whimsical thing that I just decided one day, huh, I wonder what,

00:11:22   you know, if I could code it up so that, you know, these little particle system comes out

00:11:26   of the nav bar and confetti falls down, is enough that to really draw people in.

00:11:31   And so an application that doesn't

00:11:32   have that type of just silly, whimsical reinforcer

00:11:37   may not work for them.

00:11:39   And that's just kind of cool.

00:11:40   I like these types of touches in applications

00:11:43   that are relatively simple, or at least in concept,

00:11:46   not necessarily implementation, but relatively simple details

00:11:49   that just draw your users in and really make them want to use it.

00:11:53   And so I just wanted to mention that.

00:11:55   It was something I've been thinking about a lot this week.

00:11:57   As I'm doing a lot of feature planning,

00:11:59   now that the watch is out, I'm thinking about,

00:12:01   What am I going to do for the next basically two months

00:12:04   between now and WWDC, where I have a couple months to work

00:12:09   on a new project or some updates to old projects

00:12:11   and this kind of thing.

00:12:12   And so I've been thinking about what

00:12:13   are the kind of little insidious touches

00:12:16   that I can add to my applications

00:12:17   to make them really, really sticky,

00:12:19   really get in people's heads and make them want to use it.

00:12:22   And so that's what I'm thinking about.

00:12:26   And actually just mentioning about WWDC,

00:12:28   probably worth saying.

00:12:29   I of course put in my name for the WWDC raffle.

00:12:34   We'll see how that goes.

00:12:35   As I'm recording, I have applications

00:12:37   to be entered into the WWDC lottery.

00:12:40   It closes in a few hours.

00:12:42   So if you haven't and you're listening to this

00:12:44   and you somehow still have time, go for it.

00:12:47   Otherwise, you may be a bit out of time.

00:12:49   I'm really glad how they're doing it.

00:12:50   It seems to be very well thought out.

00:12:52   It's a lottery system again, and they're

00:12:53   charging your credit card right away,

00:12:55   so you can't enter in multiple times, which

00:12:58   It's a much better system than what they had last year where you could have entered as

00:13:02   many times as you wanted and then just choose which one if you happen to win.

00:13:05   I think that's a big thumbs up.

00:13:07   Either way, I'm going to be in San Francisco that week.

00:13:10   I've already booked my travel and everything.

00:13:12   I'll be there one way or the other, whether I have a ticket, if I don't.

00:13:16   And so if you are going to be in town, certainly something to keep in mind.

00:13:20   I'd love to meet you.

00:13:21   I'd love to say hi.

00:13:22   It's always interesting to talk to people who listen to the show.

00:13:25   But otherwise, I hope you have a great week.

00:13:28   and I will talk to you next week. Bye.