The SpoolCast with Jared Spool

The SpoolCast has been bringing UX learning to designers’ ears around the world since 2005. Dozens and dozens of hours of Jared Spool interviewing some of the greatest minds in design are available for you to explore.

Episode #252 Nate Schutta - Choosing Which Mobile Experience to Build Live!

November 14, 2014  ·  85 minutes

Listen Now

Download the MP3

By now, companies know they need to be “on mobile.” But should that experience be a native app, a mobile web app, or something in between? The answer rarely is such a simple choice. And if you’ve ever entered into mobile discussions with a series of stakeholders, it may seem impossible to reach consensus.

Show Notes

This is Nate's full presentation from the 2014 UX Immersion Conference 

By now, companies know they need to be “on mobile.” But should that experience be a native app, a mobile web app, or something in between? The answer rarely is such a simple choice. And if you’ve ever entered into mobile discussions with a series of stakeholders, it may seem impossible to reach consensus.

Fortunately, Nate knows the business questions to ask, device constraints to consider, and UX trends for mobile that will help your company find its way. In this talk, you’ll:

  • Find out why mobile is something your company can’t afford to ignore
  • Hear the pros and cons of various approaches, including the implications of each
  • Get key mobile stats that will give your team fuel to make better, faster UX choices
  • Learn which questions to ask stakeholders — ones they’ll actually be able to answer

Nate is an architect who specializes in coaching teams as they build mobile user experiences. He’s among our industry’s foremost thinkers and communicators, and he knows how to help people make decisions about mobile UX.

Full Transcript

Nate Schutta: So, I have to admit, this is an interesting audience for me because usually, I'm the lone developer at a developer conference trying to get other developers to care about design and usability and things like that. And so now, I have an opportunity to sit here in front of a whole bunch of designers, and hopefully, try to help you guys understand the coding side and help you care a little bit about that. So it's a little weird for me to be on the other side of that script.

But what I'll try to talk to you about this morning is some of the things that we think about when it comes to how to figure out what type of app to build, what technology to use to build that. And to sort of set the stage a little bit, I do want to throw out some stats at you, not because I think you guys need them. I mean, you guys decided to come spend a few days at a conference that's trying to immerse you in mobile, so I don't think it's for you so much as it is for the folks that you work with.

I work for a large company, and it's amazing to me how much resistance I run into when I talk to people about the need to do mobile stuff. So I'll try to paint a little bit of that story, you know, why is this an important thing? But I'll try to focus more on how do we choose between building a native app, building a mobile website, building something in between, what does that look like? What kind of questions do we go through in order to try to figure that out? And more importantly, to help you understand the tradeoffs here. Because that's the truth with software. That's the truth with engineering. It's all about trade-offs.

We'll start with a little bit of the backstory here, and again, I don't use this so much for your benefit as it is for all the other people out there in your companies. The growth here, to me, is just stunning. I haven't seen anything like this in my career, just this flat out explosion of devices.

And we live right now in a world where Android activations outpace baby births. There will be more Android devices activated today than there will be children born around the world. And it's not even close. For a while, it was kind of neck in neck. And now, I think it's almost a 2 and 1/2 to 1 ratio on the Android side. There's going to be more iPhones sold today than there are children born in the world. And again, this number's old, so we're way above that.

Now, eventually, there's a cap on this. Eventually, everyone will have one of these, and we start getting into the replacement cycle. But if your household's at all like mine, I've got three people and six iPhones and two iPads and four MacBook Pros lying around. So maybe I'm not normal, but at some point, everybody's going to have one of these things.

In a given year, now we're selling about a billion iPhones. I'm sorry, just a billion smartphones. And so think about that for a second. We've got about a billion PCs in the world. We've got a billion iPhones-- excuse me smartphones that will be sold today, or this year. That's crazy.

iOS is going to hit the billion mark sometime in 2014, maybe early 2015. We'll see. To give you a scale here, in 2011, Apple sold a lot of iOS devices. They sold more iOS devices in that one year than they had sold max in the preceding 28 combined.

So play that forward. And I'd be frightened to know what that ratio looks like today, given how much of their business relates to iOS. We got half a billion iTunes accounts out there. There's north of 700 million iOS devices floating around out there. We've hit the billion number in Android. That's a big deal. By the way, that doesn't even count about 300 millionish plus or minus phones that are floating around in China.

And so you look at how big that is. And just the scope of that. And how quickly that happened. This is a segment that did not exist five years ago. Or at least not in any appreciable numbers. And here, we're talking about billions. Billions are a big deal.

Now, to give you a sense of this, there are a billion Windows PCs in the world right now. There are 2.2 billion internet users. So we're sitting in a situation right now where there are as many mobile devices as there are PCs. And we're turning over those mobile devices a heck of a lot more rapidly than we are PCs.

People are not buying new computers at the rate they used to. Some of that has to do with just the fact these things are a little more durable. They're not getting as fast. And you guys probably remember era where you would by a new machine and then six months later your buddy would buy one. And it's twice as fast as the one you have. And 16 meg ought to be enough for anybody kind of a thing.

And now, we've got the gigs and gigs of everything. So will always be buying new machines. I think that's pretty much a given. But I think about your proverbial parents. The machine they bought two years ago, three years ago, they're not going to notice much of a difference when they upgrade.

So they're lasting longer. But people are finding they can do an awful lot of their computing on an iPads, on an iPhone, on things of that nature. Now, there are certain pundits who thought, well, as soon as Windows 8 comes out, that's going to fundamentally change things. Because everybody's just waiting for the new operating system because traditionally when a new operating systems is out, people rush out and buy new machines.

It turns out that hasn't been the case. In 2012, we had more Android devices sold that Windows devices. That's pretty stunning to me. Now, I love Ben Evans. I listen to him pretty devoutly. And this was just stunning to me. You look back at how quickly this set of devices has exploded.

We're selling more iPads in a quarter than PCs when Windows 95 came out. Just look at that explosive growth. That's amazing to me. You could make a pretty good argument that in 2008, Windows had a very dominant market share. It 95-ish% of the market. You had to target Windows because that's what everybody was doing.

You look at where we are now, though, it's probably a lot closer to 30% and at this point, maybe 25%. Who knows? But it's getting a lot less important than it used to be. I started referring to it as legacy desktop in my company. That usually gets me some scornful looks.

To give you another visual on this, I love this chart from Ben Evans. So we got the blue line as PCs. You can see it's pretty steady growth there. And then, all of a sudden, here comes Apple and Android smartphones. This is just smartphones. This doesn't even get to tablets. Doesn't exist. There is. And oop, now we're bigger. That gross to me is just insane.

Do you run into people anymore that don't have some kind of a smartphone on them? I actually did. I was in New York over the weekend. And we were in this bar somewhere. And I looked over. And I saw this woman pull flip phone out of her purse. And I almost thought I should take a picture of that because it's such a rare thing to see in the wild. It's like, oh, there's the last remaining one.

This is amazing to me. You take iOS and Android, combine them together, and it's bigger or will be bigger than the PCs, the PC install base. Right? That's what Ben said. Now, the interesting thing here is look at the date on that. I'm no math expert. But if he's talking six months out, I think we're probably there now.

We're probably sitting here right now in this room in a world where the combined iOS and Android install base is bigger than the global PC install base. What does that mean for the kind of solutions we have to start delivering? And so I'm pretty confident saying, we're there now if we haven't already passed it.

I'm sure at some point, Ben will come out with a nice chart that I can show you that will have those lines crossing. And again, this is just on the smartphone side. You start mixing tablets into it, and we get all sorts of interesting growth on top of that.

We strip out Android. We can see just in the iOS ecosystem, we have more iOS devices quarterly than we have Windows devices. We're selling an awful lot of these devices now, much more so than we ever did with PCs. Now a lot of folks want to tell you that, well, growth is over. It's all spiked. That's it. It's too late.

We're sitting here in a world where every week a half a million people are dumping their dumb phones. I took us a long time to get here. It took us about 16 years to get this kind of magical billion line. And so you have to think, well, what's going to happen with the next billion.

Because there's still a lot of people that haven't been served yet by this. Most likely, that next billion is going to take a whopping three years to get here. And we're already into that cycle. We may only be two years, a year and a half away from the next billion people coming online.

A couple years ago, we had about 3.2 billion mobile subscribers. In fact, we are sitting here now in a world where there is essentially a mobile connection for every human on Earth. That's not to imply every human actually has one. But there is a connection available.

And of this number, a billion showed up in the last four years alone. So you start playing that forward, and you think, my gosh, we still got four more billion people to come. And what's more likely? Are those folks going to rush out to buy some kind of a laptop, some kind of a beige box PC shaped thing? Or are they going to get a rectangle of glass?

I'm fairly confident they're going to skip this transitional state that most of us have spent a lot of our career in and go straight to that rectangle of glass. And what's that going to look like? There's a lot of chatter about this over the last couple years that we would be in a world where they'll be more smartphones than PCs.

And once again, Mr. Evans has beautiful chart to show us that here he strips out the tablet part of it. And you can see, that would add into that. We're going to cross over if we haven't already. Now, I'm pretty confident in saying that has happened. So it's just a matter of getting the numbers and putting it into a chart to prove it, so to speak.

But where we're sitting here already in a world where there's more mobile devices than humans. That's before even starting into that whole internet of things concept, where your car and your coffee maker and you refrigerator are all talking to the internet.

Now, from our standpoint, we think about apps. We think about sites. It's pretty clear. There's a strong appetite for downloading apps these days. Apple keeps coming out of numbers at quarterly releases. Last October, they told us they hit 60 billion downloads, billion with a B. Those are unique downloads that doesn't include people doing updates or transferring to new phone or something like that. 60 billion's a lot.

December, December alone, three billion downloads. Everybody gets a new iPhone, iOS device, whatever. They run out. They buy all sorts of games and whatnot. Well, actually, nobody buys games anymore, do they? They're all free. And then, you have In-App purchase everything.

This shows you the app store Google Play mixed into it. Took a little while for Google Play to take off. But they're at a point now where they're moving just about the same number of units in terms of apps as Apple is. This doesn't seem to maybe be quite the same economics, at least in terms of our standpoint from the development side.

But best guess right now is we've had 150 billion downloads total across both ecosystems. Ponder that for a second 150 billion downloads. Do we ever have anything even remotely close to that the PC world? That's just insane. I saw this stat in a presentation about multi-device sort of targeting. And this kind of gave me pause.

That in a given month, there are nine times as many apps downloaded as hamburgers sold at McDonald's. McDonald's sells a lot of hamburgers. Roughly every iOS device probably has 83 or so apps on it. Android devices have roughly 53 or so apps on it, plus or minus.

There's certainly money to be made here. Apple has paid out about $15 billion to date, maybe a little more than that now. Now, the economics of the app ecosystems are questionable. There's been this race to free. This race to, I would argue, kind of tricking our customers into giving us money.

Not a particularly big fan of that. I'd rather see an ecosystem where people would be willing to pay $5, $10, $15 for real software. I think that ship has sailed, unfortunately. And we need to figure out how to work in that world.

But it is clear there is money in this ecosystem. And when you look at Apple, in particular, they're a huge music retailer, dominant music retailer in the US at least. And you look at how long it took to reach certain milestones in terms of billions of units. And then, you compare that to apps.

It's really remarkable to me how much different that curve is. Now, some of that has to do with price. There's no getting around it. An average music price is going to be $0.99. Period. Full stop. Yes, some are a little cheaper, some are a little more expensive. But push comes to shove, that's going to be $0.99.

A lot of apps are free. I think average selling price is $0.19, $0.23, somewhere in that ballpark. And so clearly, that has something to do with this. And apps have become almost this social thing. You talk to somebody like, hey, you know, what cool new app do you have. And oh, that sounds like fun. Let me download that and play with it.

Or more likely, open it and then never play with it again because it doesn't look like that much fun. Delete it. My wife the other day was looking at her iPhone. And she was scrolling back and forth. And she said, what are all these apps. I said I'm not actually sure, honey. I don't know. Because I've downloaded a lot of things over the last few years.

Looking at that data little differently, you can see it's almost a two to one ratio In terms of apps to music. And then, that little gold line is books. So you can see, books are essentially a nonentity here. Again, that has to do with price to a certain extent. A book's going to be $10.

You're going to spend a lot more time with a book, too, especially compared to music or an app for that matter. But very, very clear appetite here for folks when it comes to apps. So about a two to one ratio right now.

You look at mobile web usage. I remember 10 years ago, the idea of getting online on your phone was this crazy concept. And now, I was sitting down here trying to check my email. I was getting really frustrated because it was slow.

You've just got to that point now where it's like, of course, I can get anywhere at any time. And I can check whatever fact I want and see whether I need a coat and all that kind of stuff. But mobile web usage is spiking incredibly in this country.

Marissa Mayer was quick to point out a little while ago that Yahoo is seeing 400 million monthly users, mobile. That a little surprising? Yahoo? 400 million? I'd be curious to know how much that is like Yahoo weather or services that are tying into Yahoo weather. I wonder if that's part of what counts on their number. Big number, though.

Facebook. Half their user base is mobile, at least when you look at it globally. So that's somewhere in that half a billion range, plus or minus. You look at the US, in particular, and it's huge here. About 80% of people that are using Facebook in the US are using it on mobile.

In fact, I don't think I've ever seen my wife use Facebook any other way than on her phone. That seems to be the default for her. Most iOS users have Facebook installed, a surprisingly fewer number of Android users. I'm sure that will catch up shortly.

Amazon does a lot of sales on mobile devices. That's for sure. There's some really interesting research that came out after the Christmas holiday season, seeming to indicate that the attachment affect takes over when you use your fingers. So that when it comes to touch on a tablet, in particular, people become more attached to that device because they've touched it, even though they have it physically touched it. So they actually end up buying more, spending more. Kind of fascinating.

Smartphone sales-- this shouldn't be too surprising. We sell more smartphones annually than we do PCs. And it has been that way for quite awhile now. Now, some that's natural. Again, most people are not going to get a new laptop every six months, every year, every two years.

We are probably slightly different in that regard, whereas almost everybody's getting a new phone every two years. Many of us are probably getting a new phone every year, maybe every six months. They're lot easier to drop. Got to go replace them. But clearly, we're seeing a lot more of people's attention moving towards these devices.

I have a golfing friend of mine. He's an older retired guy. And when the iPhone first came out, I very much tried to get him to buy one of those. And he's like, oh, no, no. I'm too old for that. That's nothing that would appeal to me. And the following year, I met him out on the first tee, beginning of a golf season. And we were chatting. And he looked at me. And he was very angry.

I said, I got a bone to pick with you. I said, John, what could I possibly have done? I haven't seen you in four months, man. And he pulls his iPhone out of his pocket. And he said, why didn't you make me get one of these earlier? I said, well, I tried. I tried.

And for him, the killer feature was the fact that the keypad is so big when he tries dial a telephone number. Plus, he can see someone's face when they call him. But then about a year or two later, he bought an iPad. And I got to admit, I was surprised by this. I love my iPad. That's a given travel aide. I can imagine being on an airplane without an iPad.

But the fact that he bought one kind of surprised me. And so three, four months after he bought it, I said, John how do you like your iPad? And he looked at me, and he said, Nate, I use it more than I've ever used my laptop. I can't even remember the last time I opened up my laptop. But on my iPad, it's constantly in my hand.

And I found myself, over the last year in particular, my laptop sits for longer and longer stretches, just sort of over there in the corner, pining, looking at me longingly. While my iPad is right there, next to me, in constant use. My son certainly knows what an iPad is.

In fact, my wife, this weekend, he came into our bedroom. And it was earlier than she wanted him to be there. And rather than being an engaged parent, she said, go downstairs and play on the iPad and leave Mommy alone. Worked out well for her.

So you sit there. And you look at this and say, all right, well, what happens when everybody has one of these devices. What does that do to kinds of experiences we need to create? And more importantly, when is that going to happen? Because we're there. Geez, we had better be prepared for that. We better have some answers.

And it's pretty clear, at least in the US, we are there. Globally, it's a little different. But at least in terms of the US, the EU, these things of that nature, we have hit that point where you can, more or less, expect you run into somebody on the street, they probably have a smartphone their pocket.

They may not know they have one though. One of the really interesting things when you dig into the data, there is a very-- there's a skew between the folks that are engaged in terms of using hot spots and things of that nature versus folks that clearly are using their phone like a phone.

And I think what we're seeing is there's a lot of people to walk into a Verizon store, and AT&T store, whatever. And they say, give me a free phone. And they walk out. And they just happen to get an Android device of some flavor. For them, it is just a phone and something that they text with. They don't realize they have a computer in their pocket, yet.

I am absolutely of the opinion they will at some point. And then, what happens when this huge mass of people figures out they can do all sorts of amazing things with this device that they're lugging with them, literally, everywhere. That's going to open up a whole new realm of possibilities for us.

I was actually surprised by that. I was at my chiropractor's office last summer. And I was talking to one of the PAs. And she was asking me questions about phones because she always sees me with my phone in my hand. So she assumes I have some knowledge. I guess I do.

And so she was looking-- she was showing me some phones she was researching. And every single one of them was running Android 2.1, Android 2.2. And I pointed that out to her. And I said, now, you realize all of these phones are running an outdated operating system. And she just looked at me and said, that's OK. I just want it to make phone calls and send text messages to my daughter.

I thought, I wonder how common that is? And as a geek, this surprised me. Because I'm like, why would you not want to be on the latest and greatest? I was chastising one of my friends this weekend because he still has an iPhone that's running iOS 6.

And it's not that his phone can't run it. He is choosing not to upgrade. He's making a statement. He says, I don't like the new operating system. I don't like the look and feel. They went too far. But I am very curious as to how much that is a common experience for folks who think, yeah, I'm just going to use it as a phone.

And then again, to me the really interesting bit of that is, what happens when they decide to start using it like we use our phones. What will that mean? The saturation's another way to look at this. So the idea of saturation is when a product is so entered mainstream that the idea of someone not having one is just bizarre to you. And so a refrigerator, air conditioning, the DVD player.

DVD player's the current reigning king of devices to get to saturation. We're going to get there much, much faster with smartphones. It will be the fastest innovation to get there.

We'll hit saturation in the US sometime in 2015, as well as the EU. So it's going to blow the DVD player out of a water. So we're not that far away from being able to very comfortably just expect that when you run into someone, of course, they will have a smartphone in their pocket.

There's been a lot of arguing over the last few years. Is an iPad or a tablet, is it a PC? Is it a post PC device? What does that mean? But if we do consider them separate items, we're already sitting here in a world where the tablet market is bigger than the PC market. So right now, today, tablets are bigger deal in terms of sales than PCs.

2013 was a horrible year for PC sales, just big decline every quarter. Some people have this belief, again, that now with Windows 8.1 coming out, everyone's going to rush out and buy new PCs. I don't expect that to happen. I am much more in line with this, the expectation that tablets are going to be at least half of the PC sales we see in 2014.

We'll be very curious to see, once we get to the end of this year, what do those numbers actually look like. I was really surprised by this number. But half of all American adults have either a tablet or an e-reader. That's kind of remarkable to me.

You start playing that forward, and what is that going to look like? And that becomes almost everybody. Huge amount of traffic for shopping sites is now coming from mobile. Now, some of that, undoubtedly, is people who are at a brick and mortar store, and they're price checking.

That drives brick and mortar stores crazy. In fact, you may have noticed this. But I know Best Buy-- I think it's Best Buy, Target, and Walmart all have their own custom SKUs now. So that you can't use your phone to scan the skew and see how much it costs on Amazon. It's part of that nice little retail battle that we're experiencing there.

You guys all know the answer this one, don't you? Most popular camera on Flickr, the site for people who like to share lots and lots of photos. It is, of course, not a camera at all. It's a phone. The top four or five are always different variants on a phone of some sort.

And considering how many people on Flickr are professional, enthusiastic, hardcore photography people. And yet, the majority of these photos are coming from a phone. Now, I have to admit, I can completely relate to this. I've taken so many photos, so many videos of my son using my phone, it's not even funny.

In fact, a year, two years ago, I guess it was now, my son broke our little point-and-shoot camera. And my wife and I had this conversation. It's like, do we replace it? And my stance was, well, why bother? Both of our phones have better cameras than almost any point-and-shoot we're going to buy.

She wanted one. So we ended up getting a point-and-shoot anyway. But we take far more photos on our phones than we do with that point-and-shoot camera. Shortly after my son was born, my in-laws got us an actual digital camera, video recorder kind of thing.

And I got to be honest with you, we have videos on there of the kid. I have no idea how to get them off. And I'm a software guy. So if I can't figure out how to get it off there, I don't know how normal people do it. But videos I've taken with my phone, it's a no-brainer. Just plug it in, and you're done.

My folks now have gotten to the assumption-- my son does swimming one day a week, whatever it is. --and if I don't send them at least one video from swimming, I get a nasty email. Where's my video of the kid swimming?

And think about that. That's a remarkable thing. Five years ago, the idea of being able to take a 10 second video of your kids splashing in a pool and sending it to your parents, that was like science fiction. And now, it's become an expectation. Of course, you'll do that.

I love this stat. How often do people look at their phones? 150 times a day. So you do the math on that. It's roughly, what, 10 times an hour, plus or minus. Anybody think that's low? If you have teenagers, you know it is. But think about how many things in your life have gone away because of it.

There's all this talk about wearables. There's going to be an iWatch and Samsung Galaxy gear, blah, blah, blah. Let's be honest. How many people stopped wearing a watch. It's a huge number of people because your phone always has the right time. If you happen to wonder into another time zone, knowingly or not, you're phone updates itself.

The last time the clocks-- what do we do? We spring forward? Of course, my phone has just reset themselves fine. And my computer resets itself fine. And I was walking into the kitchen. And I looked at the range. And I had this moment of pause. I'm like, why hasn't the oven updated itself?

And then, I had to stop myself and say, because I have to do it. And I thought, man, how Stone Age that my oven can't update its own clock. Oh, it isn't just here. I'm very US-centric in most of the things that I'm focused on. But you look across the world. And it's the same thing there. And China's seeing huge growth in their daily use on mobile. Huge.

And this is having an impact on those carriers. The era of, we're going to charge you lots and lots of money for something that costs us nothing, aka text messages, is going away. We've got ways around that now. This is stunning to me as well.

You think about how big that market is. So we're going to end up in a situation where there will probably be more smartphones sold in China this year than there are people in this country. That's a big market. That's a lot of devices. About a quarter of online sales in the UK are now mobile. A quarter. And some of this is actually cross-device sort of things.

I just did this last week. My wife wanted a new microwave. She didn't like the old one for some reason. So I began my research on my iPad. I found a microwave that I wanted. And O added that to my cart. And then, she wanted to get my son a wrist watch of some sort. So she was doing that research on one of the laptops.

And she like, well, what do you want me to do? Do you want me to send you this? And she looked in upper hand corner. And well, it's already there. My cart's there. Amazon knows how to make that all work magically, seamlessly. So I had this sort of multi-device purchasing experience that I had never thought I would do. And it was the most natural thing possible.

BBC and their iPlayer, lots more traffic coming from tablets than PCs. Now, that to me makes a lot of sense. The tablet just sort of begs you to lay back and sit back in a nice comfortable chair and settle in. Even a MacBook Air or something like that is not quite as comfortable for that sort of thing. That makes sense to me.

But still another indicator of how important this is for people. You go to the developing world. And mobile is how people pay for things. 60% of Kenyans are using mobile for money. Globally, mobile is a huge amount of internet traffic. It's a fifth of it, 20%. I believe the rest is all Netflix. My guess.

Now again, I'm not trying to give you these stats because I think I need to convince you. I'm trying to help arm you with little bits that you can sprinkle into conversations you're having with your customers, with your client, to help them understand why this is not something we can afford to ignore anymore.

Because people are using their devices all the time, everywhere. They use it at home while they're watching TV. They use it when they're bored, waiting in line somewhere. My kid has gotten to point where any time we get in the car, can I have my phone? Dude, we're running to get milk. We're going to be gone for five minutes. Well, can I have my phone anyway? No. You need to bored for a few minutes.

We use our devices that work. This is one of the things that amazes me. Now, like many companies, mine blocks most of the interesting parts of the internet. Which just means you reach into your pocket and pull out your phone and do the exact same thing you wanted to do. So what did we prevent? Not much.

So these are becoming a pretty constant part of our life. They're becoming the sort of thing that, my gosh, how would we even live without it? And I always feel this any time I travel internationally. And I get that wonderful text message when I land that says, by the way, if you dare to use your phone the way you're accustomed to, we will charge you a crap ton of money because we can.

Now, the most important thing for us and the hardest thing, frankly, is we have to take a step back and say, all right. Well, these experiences that we want to deliver folks, what does that look like when it's on a mobile device? What kind of capabilities can we take advantage of? How do we make it fit on the weird screen sizes we have to now?

And a lot of this is understanding this intersection. I love this. XKCD always has the answers. And so this is the proverbial college website. And you've got the reasons people come to the site. The actual things that are there. And gee, what's the intersection? The name of the school.

Now, ironically enough, a friend of mine was sitting in a variant of a talk I used the slide. And he works for the University of Texas school system. And he just started laughing. I said, what's so funny? He said, when we saw that, we took one look at our site went, oh, crap. That's us. And they completely redid their website. XKCD, a course for good.

Again, I think this is obvious. But getting folks in big companies understand it has been a real challenge. And we have a mantra right now on our organization, "If it's external, it is mobile." If it's outside our firewall, it is mobile. Full stop. And if you haven't looked at your logs lately, you will be shocked at how many people are coming to your site using a mobile device.

So the way we talk about this is, it's not about targeting a specific browser or anything like that. It's what our customers want, whenever they want it, on whatever device they want to use. That's also kind of scary because whatever device they want to use turns out to be an awful lot of devices.

And this should give you pause, because I thought developing websites was really painful back when we had to deal with IE and Netscape. And then you fast forward to now and it's like, is there something else I can do with my time? Maybe I can get into sales? There's got to be something.

Now a lot of folks, their first reaction, especially from the software side, is I want to build a native app, because native apps sound like fun, and that's something cool, and they're shiny new toys. But you've got to take a step back and ask yourself, is that really what we need to do?

Now there's an awful lot of folks who think they have to build a native app, but that's not necessarily the case. There's a pretty good chance you can build what you want in HTML5. Awful lot of power there, and there's an awful lot of phones that can run HTML5. And so somewhere in the neighborhood of three billion plus or minus.

So I'm going to pick a little bit on Delta. I spend an awful lot of time on their hardware. Living in Minnesota, I'm a hub, so I don't really have a choice. If I'm on an airplane, it's going to be their colors.

So just for fun, before I was building this deck, I went ahead and went to their site on my phone and sure enough, the first thing it says is, hey, dude. Go get the app. We built this nice, fancy app so go use that. I'm like, no, no, no, no, no. Come on, just leave me alone. Just let me play around here on your mobile site. Let me see what you'll let me do.

And frankly, it's not a lot. Now, I would argue, though, this is probably the core things that you need to do when you're on the move. Is my flight on time? If it's not, what are my options for other flights? And if I find a flight that's better, can I book it? Now it's really interesting to see how many people are actually going to buy a ticket on their phone, and my guess is it's very similar to-- if you guys can remember this era when the idea of buying a book online was crazy talk. I mean, who's going to trust a website with their credit card number?

And now, the idea of buying things any other way, to me, is just foreign. I mean, I'm pretty much of the opinion if I can't get it from Amazon it probably doesn't exist.

But you poke around a little bit and you see, again, pretty minimal. Not a whole lot here. But again, I would argue they've done a nice job of getting the core right. These are the things you're most likely to need in a mobile situation.

But you contrast that with their native app, which I use a lot, and you can see, all of a sudden, I can do a lot more things and it knows who I am. I'm already logged into it. It can tell me how many SkyMiles I have, all sorts of fun stuff. I get the same information. I can book a flight. I can check status.

It knows me, so it can tell me what my flights are coming up. I can go see details. If I'm within the 24-hour window, I can check into my flight. I can see my boarding pass.

Then we get all this other stuff. I can track my bags. Now I can see Traveling With Delta so I can figure out if there's a Sky Club nearby. So, much, much richer experience there, and partially related to personalization.

Now on the mobile device I can always say, you know what, please show me the full site where I can get access to everything. But that's pretty cramped, on a phone at least. That's going to require an awful lot of moving around, panning and zooming. It's not going to be a really fun experience.

Now, of course, it isn't easy to build that native experience. That requires a set of skills that some of us may not have. So if we're going to go down that path we need to ask some really hard questions. What operating systems do we want to target? Are we shooting for everything? Or can we narrow in on one or two?

We had a lot of debates a year or so ago about, do we need to support Windows Phone? Do we need to support BlackBerry? We've come down very hard on the fact that BlackBerry is dead. The only way we're going to support that is if somebody screams and hollers at us. And most of us have pretty much said goodbye to Windows Phone as well.

And then you've got to start arguing about versions. Can we draw a line in the sand and say we won't support anything beneath this? Maybe, maybe not. If we're talking about Android, that gets really hard to do. The latest versions of Android are barely out there, whereas the old versions are still, in some cases, 30% of the market, 40% of the market. Inevitably, in Android land, those updates come so late in the cycle that most people never bother. The only way they get a new version of Android is by getting a new phone.

So [? Chiquita ?] does a lot of advertising in this space. They know these numbers, at least in their ad network. Jelly Bean took two months to get to 1 and 1/2% 1 and 1/2. When iOS 6 came out it hit 15% in a day. 24 hours, it reached 15%. 48 hours later it was in that 35% adoption range. A week later and we're talking almost-- a huge chunk of traffic here, 60%, 40% of iPads have gotten updated. It's a 17% adoption, took iOS a day or so. Ice Cream Sandwich, it took 10 months.

For developers that's a real pain in the behind, to say the least. it's gotten even faster now. iOS 7 24 hours-- 18% of devices, 24 hours. Three days and it was already bigger than iOS 6. People were downloading this like crazy. At one point during this upgrade cycle, 2.2 terabytes of downloads were happening every second. Think about the hardware it takes to serve that up.

Now some of that's the fact that you could just set a button that says, yeah, go ahead, update this automatically for me. I don't want to think about it any more. Whether that's a good or bad idea depends on your point of view. But in the first weekend alone of iOS 7's life, 200 million devices updated to it-- in the first weekend. That's crazy.

So the uptake here is just ridiculous. Ben's got a great way of looking at this. iOS7 has a huge number of devices, and then-- still a pretty decent chunk on six, but you look at the Android devices and we still have this massive chunk of people that are still on very, very old versions of Android, versions that we-- at least as developers would rather ignore if possible.

So fragmentation's a real issue. Don't let anyone try to pretend it isn't. It's easier if you're Google, because they've now pushed their play APIs out there, and they have some control that they didn't have before. But for us as a development community, we don't get that luxury.

Now that's not it. One of the other real pain points here is the sheer volume of devices. I call it a deluge, because it sure is. And now we've got to ask ourselves, well man, which handsets do we target?

I love this picture. This is one company's version of the devices they test with. And this was just the set they could fit on the table. This wasn't even everything. Now, I'm no math whiz, but let's just assume, for the sake of argument, there's 40 devices. There are actually-- I think there's more than that. If it takes you an hour to test on each device, and you've got 40 devices, that's a pretty long regression cycle just for 40 devices.

And I'm guessing it's going to take you more than an hour, and I'm guessing you've got more than 40 devices. So man, what the heck do you do about that?

One developer, for his application, discovered there was almost 4,000 unique devices that had downloaded his application-- unique devices. Now, that heat map obviously gets into a long tail scenario where there's a lot of devices that, yeah, there's like one of them, who cares?

So really, our focus is typically going to be in that upper left hand quadrant. But if your really big, important customer happens to be in that lower right hand side of the chart, you don't have a choice. That's the world for me. If one of our big, important customers pounds the table and says, this doesn't work on my-- insert esoteric device here-- we can't say, sorry. We got to fix it and make it work.

OpenSignal has another way of looking at it. It's very similar. Again, long tail situation. A lot of devices in that Samsung Galaxy range-- big shock there. But there is a-- just tremendous amount of diversity here. A lot of people call this the matrix of pain.

And then we've got to argue about sizes. Used to be so simple-- they're three and a half. 9.7. And now we have everything, literally everything. It almost seems to be this game of one-upmanship, especially in the Android space. So a friend of mine had a Galaxy Note 3. And so we gave him just incessant crap about that-- that's not a moon, it's a planetoid kind of a thing.

And so he was the reigning king until this last weekend. Another one of our folks, they got one of the curved phones. I don't even know which manufacturer it was, but it made the Galaxy 3 Note look-- whatever this guy had-- look normal-sized. So it's remarkable to me to see how much diversity we have there.

And of course that's hard on us, because they don't always behave the way we expect them to. You really would hope, well sure, just target this, but not so much. Now here is Open Signal's visualization on that, and that just gives me the creeps. That's an awful lot of sizes to have to deal with and try to figure out, is it going to work? Is it going to look right? Are the targets going to be the right size?

Contrast that to iOS, and then people wonder, why do folks go iOS first? Because it's easier. It is a smaller target to cover. Now this may change, probably will. There's all these incessant rumors about a larger iPhone, and maybe even a larger iPad, we'll see.

But you look at the Android fragmentation, you think about these other legacy devices, and Windows Phone seems to have pretty much bottomed out in that third spot. And then people started arguing about the Surface. I've got people in my organization that think this is the greatest thing since sliced bread. And they're very, very actively pushing that. Now, they are in the minority.

But of course, I like to joke that, hey, we already had a Surface, isn't that cool? It's a table. It's great. It's going to take off, except nobody bought it. Actually, ironically enough, I know a guy that bought one of these out of his own money. It was like 10 or 15 grand when he bought it, because he thought that was going to be the wave of the future. Good luck with that. Of course, Microsoft had to reuse the name, because what else could you do? It's not like they have a marketing department.

Of course, now we've got what? We've got the Surface 2, and probably going to get rid of the RT at some point here. But it puts us into a scenario where, my gosh, we can't possibly test on all these devices. You know, heat death of the universe will happen first. So we have to go into that with open eyes.

And at least in our experience, you can pretty much count on about half of your development budget being spent on testing. And inevitably you run into bugs that only occur on that particular device. And it didn't show up when you're using a simulator, and it didn't show up when you were using a web kit browser, but sure enough, you get on the physical device and aw, crap. Now what?

So if that's what we're targeting, geez, do we want to build a native app? Does that sound like the way to go? It's expensive, no getting around that. Takes time. Of course, none of these devices use the same underlying technology stack, so you've got to have a very divergence set of skills. And just knowing one doesn't mean you're going to be an expert at the other.

So it puts us into a situation where we need to think about alternatives, and that's where HTML comes into the picture. Because luckily enough for us, these things have really good HTML5 browsers on them. So in most situations, most of our customers probably have a better browser in their pocket than they do on their desktop. That's not case for you. You guys are all running modern browsers, but there's a lot of folks who aren't.

So that does give us a relief valve. And I know a lot of folks think OK, great. Awesome. That's the way to go. We're going to build a web app. Now there are three answers in computer science that will work for any question, no matter what you're asked. Somebody asks you a question, my default answer is 42. Next step would be another layer of indirection.

My all-time favorite answer, of course, is it depends. That is the answer. Should we build a native app? It depends. Should we build a web app? It depends. Now I mean that. I know that sounds very glib-- and by the way, when someone does give you that as an answer, the next question out of your mouth should be, on what? What does it depend on? How do I make that decision?

Well here's the way we look at it. First question I want to know is, who are you targeting? Who's your audience for this? Are we going after employees? Are they captive? Or are we going after customers for whom we have absolutely no control? I was getting in this debate, actually, earlier this year with somebody. We were talking about building something for internal employees. And I said great. Let's target iOS. That's clearly the platform we prefer. It's easier for us to deploy that.

We're still struggling to deploy some kind of a corporate Android offering. We've got iPhones all over the place. We've got iPads all over the place. Let's target that. Now if it's customers we lose that luxury completely. You can narrow it down, and we've done that. I think we target about a dozen devices as sort of our core kit, and then we go up or down from there, depending on the application.

Next question to ask yourself is, what's the purpose of this? Why are we building this? Is the app we're building the product we're hoping to sell? Or is it just related to some other product? Is it just sort of helpful add-on to something? And very closely related to that, of course, is how are we going to monetize it? If I'm trying to sell the application, really hard to sell somebody a mobile website. Very, very difficult to monetize a web asset.

Now if you've already got an existing website that people are already paying you for, much simpler equation. But if I'm trying to convince you to-- here's my new weather website, you should pay for it. Good luck. And now, when the app ecosystems came out, a lot of people were just blown away that Apple and Amazon, everybody, could possibly be taking a cut of the action. How dare you?

But think about it from this perspective. Who's earned your trust? Apple and Amazon have a massive set of credit card numbers on file. They have made it incredibly easy for you to purchase from them, almost too easy. Now think about some random third-party developer. Are you likely to throw your credit card number into some random website asking for a credit card number? Probably not.

I know myself, I've purchased an awful lot of things through Apple and Amazon, in particular that I never would have purchased directly from the developer, from the retailer. But because it was through Amazon and Apple and I knew they were protecting the credit card information, we're good to go.

So that's a huge part of those ecosystems. They have made it ridiculously easy for people to give you money. Now we can argue about the economics of it, and like I said before, it pains me that we seem to have lost this market for people to actually pay for quality software. There seem to be a whole group of customers now who think software is free. We all know it's not.

Now the phone capabilities, the mobile capabilities-- this is one of the really interesting aspects of these ecosystems, the kinds of stuff, the sensors and what-not that these things have in them. This can make your decision really easy. If you're trying to take advantage of some aspect of the device itself, that may force you into the native aspect of things.

Because unfortunately, the browser does not support everything. Now, some things are surfaced, some things aren't. I believe that will change over time, although let's be honest. There are certain things you will not ever want your browser to have access to on your phone. You've got so much personal information there, you want to have some kind of a firewall between that.

Now there are some HTML5 device APIs they're starting to roll out, so that certainly is making that a little more of a level playing field, but it's certainly not as smooth as if it's a native app or a wrapper app. It's going to be hard to find this either way. Both apps stores, the major app stores, have a ton of apps in them. It can be very difficult to find your app. Even if you know exactly what you're searching for, you're not always getting to the exact thing you want.

But so is the web. How do you find a website these days? So I actually think it's harder to find things on the web, because there aren't the nice "related to", and people who bought this also bought, and recommendations, and what not.

Now again, if you have an established franchise, if you've already got customers, you've already got a relationship with them, some of that's easier in terms of monetization, discoverability, it kind of goes away. But it's still part of the equation. Some people have tried to convince you that building a mobile website is so much easier. And I would argue that's not always the case.

Now vendors in particular want to come to you and say, see, we have this magic shrink ray, we'll just go ahead and--
[VIDEO PLAYBACK]

I think you've mistaken me for a guy without a shrink ray.
[END VIDEO PLAYBACK]

By the way, that should be the expression on your face when a vendor says, I have a magic shrink ray for you. I would love it if that's what we could do, I really would. I would love it if we could just build what we've been building before and just press a button and out the other end comes this mobile optimized thing. That's now how it works.

Now I'd love to say it's the same thing we've been doing for the last 15, 20 years, but it's not. There are trade-offs here. A lot of the experience we have building websites in the past does not translate well to the current time. I've had this argument with some of my folks who think that all they need to do is get this grid to render on an iPad and they've succeeded.

You guys know better than that. You create a great that's designed for a keyboard mouse and then try to use it with these big fat things, good luck. That's not going to get the job done. The kinds of experiences that you can deliver to a laptop or a screen versus a 3 1/2 inch phone, pretty radically different. You have to deal with those constraints.

Now my stance on this is you've got to rethink the experience. Regardless of how you choose to surface it up, if you don't take the step of rethinking what that should look like on a mobile device, you will fail, regardless of how you actually choose to build it. The actual technology implementation to me is sort of a wash.

But it is a continuum between these options. And part of this, frankly, is understanding what your customers expect of you. If you are a major company today, if you are an airline, if you are a bank and someone goes to their app store and types in your company's name and comes up with nothing, what do they think about your company? And what does that make them think about the fact that, geez, this other bank has an app. This other airline has an app. Why don't you? What is that going to do for your customers?

It's pretty clear people like apps. We're talking billions and billions and billions of downloads, so there's something to that. I love this tweet from Ben. Everyone's always saying, oh no, it's all about the web, it's all about the web. The only people who disagree are the folks who actually use this stuff, the folks we're actually targeting.

There's at least some research that indicates people prefer a mobile app to a mobile website. And I very much agree with this. I do think apps are part of our landscape. And that's going to change, what that means. You start playing this forward a few years, and start integrating with some of this other technology. What's it going to mean if I send you a link from Yelp or something about a restaurant that we're meeting at?

It is entirely possible that the market will expect that you have an application if there is something for you in the app store. And if and if you're not there, again, that might say something about your company that may dissuade your customers a bit. Again, from my standpoint, the really important question here is not so much how we choose to build it, but getting our heads around what is it our folks are trying to do? What are they trying to accomplish with our mobile experience? What does that look like?

The really hard part for us, especially, is how do we cut it down? Because there's no way all the features that fit on your legacy application are going to fit on the phone. You're going to have to cut some stuff out, and that's a tough conversation. Because if you've been in this line of work for any length of time, you know that when you talk to customers, what do they want? They want everything. If there's a hundred features they want 120 features.

Now that's not going to work on the mobile device, so you have to have that conversation so much earlier in the cycle and get them to the essence so much faster and be ready to cut a few more things. And that's a hard conversation to have. We've had a lot of knock down, drag out fights.

It gets back to that XKCD thing, guys. We've got to get that intersection right. We get the intersection wrong and people delete our app. They never launch it again.

Of course, you can have both. I mean, look at Delta. There's a website. You want to go around the whole website, knock yourself out. You want to get the app? Great. Awesome. You can do more stuff. You're not required to use the app if you don't want to. You could still do most things on that website.

So we have sort of three major options here. We can build a website. Now, in fact, in my world we try very hard never to say the word web app, because as soon as we say the word "app", people's heads start exploding and they think all sorts of things that aren't true. And if you work in any kind of enterprise, you know how this game of enterprise operator works. And then you start hearing from, oh my god, did you hear that group is building an app. They're not supposed to do. That they don't have the authority to do that.

So we just try to call it, whenever humanly possible, a website. I usually bite my tongue every time I say it. So this is just the kind of stuff we've been doing for a long time. Whatever your current tech stack in, probably going to work these days. This is usually where we get into our responsive web design, throw a little HTML5 in there.

So this gives us a fairly straightforward way of doing it. Now some people will just build a mobile website. Some actually will throw in a little bit of OS device-specific kind of things. That feels to me like that's kind of going away a little bit. It's sort of a pseudo-hybridy kind of thing. It runs in the browser but has a little more of an app-like experience.

My favorite example of this comes from Amazon, at least a few years ago. If you went to their site on an iPad it detected the fact that you were on an iPad. And it said, hey, why don't you go to our iPad-optimized website? Sure, why not. I'd like to see what that looks like. I'm a curious geek. So I went over there and, oh, hey look-- we have a cleaner experience now. Now notice, the very first thing it's trying to do is tell me, hey, why don't you put this on your home screen?

That's the real challenge in this space. How do I get you to put this on your home screen? With an app, it's easy. It just appears there. With a website you have to take action, and that can be challenging for a lot of folks.

Now notice, this is very different than the stock Amazon experience. It was even more striking to me when I went to the home page on there and I saw, wow, they stripped away an awful lot of things. You can get a sense of the kind of stuff I read. Now just for comparison's sake, I went ahead and pointed my browser at just the full-on Amazon experience, literally 30 seconds later, and very, very different user experience here.

Even look at the recommendations, how quickly those have changed. Now I don't know if that's some metric they have that says, people on an iPad are more likely to do this, that and the other thing. I'm not really sure. But the very first thing that popped into my brain when I'm looking at this is, my god, are they actually using the same recommendation engine here or not? Because this is a very different set of you would like to me.

And now, from my standpoint, this is a great place. This is a good option if you do face this, oh my gosh, we have to hit every device humanly possible. We have no control over that at all. Our ability to get this app out there in the market trumps the fidelity to the operating system. There's no getting around it. Nobody's going to look at your mobile website and go, oh look. It's just like an iOS7 app.

If you don't need a capability that's only exposed to a native app, this works well. And there's actually more the browser than you might think. It's certainly gotten a lot better over the last few years. You can get a lot closer to that native-ish experience without having to go full bore into either building a native app or using one of the hybrids.

If I don't need to worry about making money on this, not a bad spot as well. And if I don't care whether or not people can install it-- this is an important part of it. Everyone in this room is capable of installing a website onto their home page, onto their springboard. A lot of our customers are not. They just haven't gotten there yet. They may, we'll see. But it certainly requires more steps than the idea of-- go to the app store, search, hit download, install.

The other really handy thing here is app review cycles go away. You want to push new code, you push new code, and you don't think twice about it. You don't have to worry about somebody getting in your way, saying hold on, wait a second. We want to review your stuff.

Now this is not a great answer if the experience you're trying to deliver isn't going to work in a browser. While I am amazed at how impressive some of these JavaScript engines have gotten, and the kinds of things you can build in the JavaScript engine are there and just kind of insane. If you're really trying to build a bleeding edge game kind of experience, that's going to be harder in the browser. So that's part of it.

Same thing with capabilities. If there's a capability that's not exposed in the browser, and it's key to you making a good experience, you're going to have to go native or go hybrid. There's other hardware features you need to get access to. That's the easiest way to get there.

If you have the luxury of targeting-- so you have a captive audience, you can say this is going to run on a Galaxy S4 and that's it, that's all I care about. Or this is going to run on a Nexus 7, this is great. And we don't often have that luxury. Although if you're talking about internal customer-type things, that does simplify life greatly.

Now, if there are things that we can't do with the web but we'd still like to kind of stay in that tech stack, we do have this happy medium. We have this sort of shell or hybrid app approach. So we call this a few different things in my world. Typically we refer to it as a hybrid app.

And so what we're trying to do there is, you've got your standard web content in a web view, but we use some kind of a technology to package that up so that we can get access to native device features. And typically that's through some kind of a JavaScript layer that lets us call these APIs and then under the covers there's an adapter layer that calls out to the actual operating system features.

So this is where we get into things like PhoneGap and Titanium. And Sencha Touch has, I think, Cordova built into it now, and all sorts of fun stuff there. And a lot of people think this is absolutely the perfect Goldilocks scenario. It's not too hot, it's not too cold.

Is it the best of both worlds or is it the worst of both worlds? There's a compelling argument on both sides of that coin. Now there are undoubtedly some positives here. In theory, this is a write once, run anywhere kind of approach. Although as somebody who's spent an awful lot of his career writing Java, which is supposed to be write once, run anywhere, I assure you that is rarely the case. But that's the idea.

It also gives us the ability, again, to get through that sort of app review process. At least once you get through the first one it's just a matter of pushing new web content, and now it appears in that web view.

From the development side, this is great, because we get to live in our same normal web stack that we've used for the last 20 years. But we now get access to those native features through some kind of an adapter layer that let's just call into that underlying operating system stuff.

Now it isn't perfect. Nothing is. In general, cross platform has not really won the day. I know when Java first came out that was its big claim to fame. Oh, we're going to write swing apps, and everybody's going to love swings. You can run the same thing everywhere, except for the fact that no swing app ever looked attractive to anyone, ever, anywhere. I don't think I know anybody who actually uses a swing app, other than a handful of developers here and there.

So that's certainly part of it, is the look and feel is never going to quite be right. My biggest concern as a developer, though, is I'm now stuck with one more time-life life cycle in my world. I have to worry about the framework updating to the next revolution of the operating system. So when iOS whatever comes out or Android version this comes out, if I'm building natively and I want to take advantage of that API, I just go take advantage of it. I don't have to wait around for my framework layer to catch up.

Now I've actually posed this at some of the folks that manufacture this, and their answer to me was, oh, no no. We're in the developer programs, and we're always right there. In fact, we're usually releasing our version, like, the same day the operating system's coming out. I'm very skeptical of that. Any time that you're putting a layer between you and that underlying operating system, you've now got another dependency that you have to deal with.

Performance is part of this equation too. Almost without exception, these hybrid apps do not perform as well as a native app. It's not always the case, but in a lot of instances you actually get better performance out of the browser than you will out of this hybrid web view.

Well, my biggest argument here is the uncanny valley, and I'll touch on in just a second. But the fact that it doesn't look quite right is off-putting to an awful lot of users.

Now it can be an advantage. And I'll be honest, this is our-- typically, that what we target. If we need to install it, it's almost always going to be a wrap, a hybrid app. And we're just starting to sniff around the edges of native development. We'll see where that leads us. But it certainly does help us with this problem. We write one code base that allows us to get access to a whole bunch of different devices.

Now, in our instances, we're not trying to push those devices to their absolute limit. We're not trying to take advantage of every single capability, but it certainly gives us access to an awful lot more than we get in a browser.

If you care more about speed, again, of development, as opposed to, it looks perfectly at home on iOS or Android, this is not a bad approach. Now it isn't perfect. If you can target, again, native becomes a very compelling option. If you're trying to deliver the richest user experience possible, you're not going to get that out of a hybrid app.

And you also need to be very aware of the hybrid trap. There's a lot of folks that start down this path because they think it'll be easy. Testing is still going to suck. Nothing gets you around that. You have to prepare yourself mentally for an awful lot of time spent testing.

You will get defects that show up on certain devices with certain operating systems. It's just the bane of our existence. And anybody who tries to tell you that hybrid is perfect and it's this magic sparkle pony, they're wrong. I'm very much of the opinion that for a lot of folks, they think this is the way to go, but they don't understand that, yeah, it started out easy, but you run into this wall.

There's a lot of folks that have shared experiences like this, on blogs and whatnot, saying how, man, it seemed like such a simple approach. And then we hit this stage of development and it all just came crashing down.

There's a really, really good presentation that Rich Hickey gave at a conference a couple years ago called Simple Made Easy. Talking about how often we make the wrong choice when we think about simple versus easy.

Now the one thing I've got to caution you on is as much as this seems like the Goldilocks pattern, it isn't. In this space, there are no silver bullets. There are no silver bullets period in software. But it's at least part of the argument.

Of course, that does leave native apps. And by the way, when you say "app," almost every one that's out there that isn't a geek is going to think of a native app. That's what they would think of. That you go to the App Store, you install it and what you're running is Objective-C or Dalvik or whatever it happens to be.

So if you're going after all of the device capabilities this is the easiest way to get there. We're native. It's great. So you can use anything that the underlying operating system exposes to.

So it's got the best hardware integration, it's got the best hardware acceleration, this is where you start getting into a lot of the games. Graphics programming here is very powerful. It, without exception, gives you the richest possible user experience.

And it absolutely looks right on that device. At least, assuming you didn't run off and create all your own custom thing. Which, surprisingly, a lot of people still do. Because it's fun, apparently.

From our standpoint, in terms of delivery, it's great. You just load it up in the App Store, get through the review process on Apple's side, and away you go. You've got a nice ecosystem that already allows you to get money from folks that's all built in.

However, if I need to target another operating system, that UI code is basically throw away. There's essentially no reuse at that level. And I don't really have any skill set reuse between the folks that are developing in Objective-C and the folks that are developing in the Android space.

And, of course, some operating system let you do things, other operating systems don't. That's always good times. So development testing times are often going to vary between the platforms as well.

Now this is a good approach though if what we are trying to do is sell the app. If that's our monetization strategy, if that's what the product is, this is the way to go. If I'm trying to provide the richest experience that I possibly can this becomes very compelling. If the only way my app makes any sense is taking advantage of all these deep device capabilities, again, native simplifies that greatly.

When it comes to the App Store installability, this is the easiest path bar-none. Folks understand this, it's easy, it's trivial. Now it's not a great approach if you're trying to target dozens and dozens of devices. At that point, this way lies madness.

If my app is simply an adjunct to something else, so it's an add-on to some other feature. I was talking to one developer where their company made jukeboxes that would be in restaurants and whatnot. So the product is the music machine. And people come up, they put their money in, and they play their songs.

However, they built a mobile website, a mobile web app, to allow a customer to interact with the jukebox from their table. So for them, they didn't have the luxury of saying, this only runs on iOS, this only runs on Android. They had to target anything and everything. So they went ahead and built that as a mobile website because it was not the product. It was ancillary to that product.

If you don't really need any device capabilities, why are you building native? That may not make a lot of sense at that point. You might be putting yourself in for an awful lot of development headaches that you don't need.

I don't know if I've answered this yet. I think the simple answer here is there's pros and cons to both of them. And there are some arguments to say that, you know what, it doesn't really matter. They're all web apps. Because at the end of the day, all of these things are interacting with some kind of web server somewhere that's kicking back JSON, almost without exception.

Now undoubtedly, an awful lot of the things that we've built as native apps could be written in HTML5. No doubt about it. You could easily take most of the features that Delta has in their native application, port that to their website, and that would work. There's nothing strategic there that would change that.

But the should is an interesting question. Should we expose this as a native app, should we expose this as a web experience? Again, it boils down to what you want to do. What are we trying to accomplish with this experience?

Now some people like to argue that publishers, they're not so fond of these app things. That doesn't work for them. You look at the rise of some things like the magazine and the loop and things like that, and maybe they just didn't quite know how to get there.

But I think the more interesting aspect of this to me is the uncanny valley. This is an idea that comes out of robotics. And basically what it says is if you make a robot that looks like a robot, it's not creepy. You make a robot that looks kind of like a human, not creepy. Make a robot that looks exactly like a human. It's a replicant. That's perfectly fine.

But there's some line we cross, around 94% lookalike, that, ooh, it's just wrong. It's just creepy. You're not quite there. So the best way I can do this to you is show you some pictures.

So this is an actual robot. This happens to be from the Army, as I recall. That's a robot. Is that creepy? Not really. It's industrial looking, but it should be. It's probably something that digs for IEDs and gets blown up.

Here is a classic artist's rendition of a robot. Also not creepy. Because we all realize, yeah, it's not a human. What about this? Creepy, isn't it? That's a robot. This is in the uncanny valley. I don't know what it is about this. I don't know what's creepy about it exactly.

I don't know if it's the hair, or if it's the eyes, if it's the lack of a soul. Something here isn't right. And that applies to the interfaces we build too.

You're never going to get a defect that says, I deleted your application because it violated the uncanny value of interface design. They're just going to stop using your app.

This is where we start getting into this debate about how do we handle cross-platform? What do we do about that? Because it should, whenever humanly possible, look native on those devices. And believe me, people know what's supposed to look right on their devices.

So I'm very much of the opinion that if we're going to build with our web stack, we need it to just look like a website. But if we try to make it look native, we're almost always going to fail at that. We're going to violate the uncanny valley and our customers are going to be unhappy with us.

All right? So quit trying to act like a native app if you're not building a native app. But I'm starting to wonder if the actual underlying coding technology of this is not be important question anymore. If what we're really struggling with is how do I get this on the homescreen?

That seems to be the really interesting question in this debate. So if I took my phone out of my pocket, you'd notice I have a folder called weather. And you'll notice that I have this thing called forecast. Looks like an app. If I go ahead and launch it, you'll see something kind of like this.

Oh who am I kidding, for most of the winter it's looked more like this. I come from Minnesota. Now my question to you, looking at that, is that an app? Is that a website? Right. Here is the exact same experience on my iPad. I'm only mildly offended that it says middle of nowhere. Minnesota is not the middle of nowhere. I believe that's in Kansas.

Same experience. I didn't have to install it, it's just there. Now to make this even more interesting, let's go ahead and I'm going to put this in an actual browser. See, there's Chrome or there's Safari. Same look and feel, same information. At the end the day, do our customers care? Is it important?

Now the guys behind this, this is forecast.io. They'll say it's an app you install from the web. I agree with that. I think they've done a brilliant job with it. This is the best one I've seen. They worked really hard to make that happen. That was not trivial, that was not easy, that was not a two day project. That was months, and months, and months of very hard effort to make that happen.

Now one of their big problems? Hey, I tried to download your app, but I couldn't find it in the App Store. So convincing customers to install this knowing that they can't just go tap. That's the challenge here. They've built a great experience. Beautiful experience.

How do you get your customers to actually work with it? Ben kicked this out recently. I thought it was very fascinating. Because, you know, when we think about native applications, we often think of Apple. Although, many of us remember that Apple didn't have native applications when they first launched the iPhone. There were bullish on web apps and then eventually figured out maybe not.

I think there's something to be said for that. I don't think we're done here. I think the evolution of this is just going to continue. Especially over the next two, or three, or four years. It's going to get even muddier in terms of well, is that a web thing? Is that an app thing? Do we care? Do our customers care, as long as we're giving them a good experience?

Now, I think this is a pretty exciting time to do what we do. It's tough. It's a brave new world. There's a lot of really hard questions that we need to figure out. It's kind of fun. No getting around that. I hate to say it, but there is an awful lot of options here. There's a lot of decisions.

And you may talk to one group and they say, this is the absolute right decision for them. And it might be. And it might be the complete wrong decision for you. In my world right now, we've got, I think, four mobile things in flight. One is hybrid. The other three are all variants on websites with all sorts of different underlying technology.

We're also starting to kick around, well, maybe we should build some native things. What would that look like? In fact, I just ran one of my apps through this review process and my VP basically said, hey, it looks great, why isn't this native? I went, oh, boy. Veep starts thinking native now. That could be interesting.

Now, again, I don't think this is a shock for you guys. We don't get the luxury of ignoring this anymore. I think the real core question that we need to understand, not so much the technology underlying it, as what do our customers need? What's important? And what kind of experience do we have to give them on these devices that they're starting to use all day, every day, for all sorts of things?

Questions, comments? Theories, queries? Do we have a microphone floating around? Yes, excellent. Thank you, ma'am.
Audience Member: Hi, hello.
Nate: Hi.
Audience Member: In the case of Delta, I work for an airline, as well, and I'm facing the same trouble that they are facing. So we decided to go with a native app for iOS and another one for Android, and a web app, as well.
Nate: Sure, very common.
Audience Member: Not the responsive one, but doing for that.
Nate: An optimized mobile website?
Audience Member: Yeah. Yup.

At the same time, our developers in house are working on responsive.
Nate: Sure, sure.
Audience Member: OK, so we were facing the trouble that what--
Nate: We have duplicate code bases now.
Audience Member: Yeah.
Nate: Yup.
Audience Member: But the thing is that if the user goes to a browser and sees our 25,000 pages we have right now, exactly the same thing on Delta. And if he gets the browser small, he will see the responsive site.
Nate: Yup.
Audience Member: He will face something that the web app in Delta. Sorry, I am explaining myself very bad. But the thing is if you're building a mobile experience that you are trying to give the same experience in a mobile app and in mobile web app independently from where it's come from, from behind.

Or it's better to give complete experience in some way and try to get the advantage of the native app in the other way? Does it make sense as a question? Or?
Nate: I think one of the things we get caught up in is trying to give people identical experiences. And I think we should shoot for consistent experiences. And I think it's fine that there are certain things you can't do in certain scenarios.

So I'll give you a perfect example. For a long time, with Delta's experience, you couldn't buy on the mobile site at all. There was no way to buy a ticket. You had to go to the full-on legacy site to do that. By the same token, if you look at their native app, hey, there's Track My Bag.

I don't know where that is on their web app. On their actual website. If you go to delta.com in your browser and try to find Track Your Bags, it may not even be there. Because part of it is just the reality of if you're at the airport, you probably can't whip out your laptop and get on Wi-Fi and search for your bag.

But, you know, you pull your phone out of your pocket and you type in the number, or more likely, you take a picture of the little sticker they give you and figure out where the heck your bag is.

So my standpoint it's very natural that that mobile experience is going to have different capabilities, do different things than the website and vice versa. To me, the key is are we delivering people the experience they need on the device they're going to use when they're going to use it?
Audience Member: Thank you.
Nate: You bet. It's fun to navigate these tables, isn't it?
Audience Member: A couple of years ago, there was a huge rush that everybody wanted a Facebook app.
Nate: Yeah.
Audience Member: Right? Do you still consider that an option? Or do they live permanently in that creepy valley you were talking about?
Nate: Yeah, we have never had a discussion a discussion about building something for Facebook. It wouldn't surprise me maybe if some of the marketing people have played there, but at least from our side, I've never heard that come up. I would very much put it in the, ooh that's creepy. And how much data is Facebook having about me now? And do I want them to have that?
Audience Member: Hi, so I work for a large healthcare company. We have about 9 million members, so you can imagine.
Nate: Wow.
Audience Member: And it'll probably grow with the Affordable Care Act.
Nate: Yup.
Audience Member: So basically we have a native iOS app, a native Android app, and a crappy M.dot that we're redoing now.
Nate: Sure.
Audience Member: Like, we're actually starting over and we're taking a lot of inspiration from our flagship apps. So is there like a gut reaction to the strategy we should take? We have a lot of content, like a large part of our website is still not responsive yet. And we have to do the whole content audit.

So I'm kind of curious what, I mean, do companies ever get rid of their native apps after a while? Maybe it's too soon for people to be doing that? I don't know.
Nate: Well, so I can speak a little bit about Delta in particular. I know they started with native apps that were written directly for each of the devices. They eventually replaced that with more of a hybrid like layer. I can't remember exactly what they're using under the covers, but they're not directly building native anymore.

Is that a good or a bad thing? I don't know. Honestly, their old experience I liked a little better than the new one. So from that standpoint, they did that because they didn't want to have multiple code bases. So that's really part of the trick, is like, can I maintain an iOS code base, and an Android code base, and my web content as well?

But the other question is can I afford not to? If I can't deliver the experience that people are looking for in a unified code base, then I just have to bite that as a cost of doing business. And if that means I've got to hire some extra people, then cost of doing business.

Now I do think responsive is great for content. I'm less bullish on that in terms of the input. I think it's too simplistic to say that if we just shrink it right it will work for fingers just because. Now you could do it, but it's harder, I think.
Audience Member: Yeah we're taking an approach where the experience is going to be very different on mobile, tablet, desktop. I mean, we have people sending emails, and refilling prescriptions, and looking at test results. And so there's a lot of different stuff going on in addition to reading content.
Nate: Yeah.
Audience Member: But I just didn't know if kind of now that we have launched our native apps, are we locked into them forever?
Nate: I wouldn't think so. I mean Flappy Birds went away, right? Maybe it's coming back. But it just depends on what you need to do to surface your needs. The key thing that I look at is we want it to be consistent.

We want our users, if they come to us, however they come to us, to not go, oh my god, that's a totally different company. They want to have that familiarity. And I give Delta a lot of credit for that. They've done a brilliant rebranding across all their platforms. You know you're on Delta's site. You know when you're at the airport.

They're not identical. And I don't think they need to be. I don't think they should be. I think that way lies pain. If you try to take every single feature you can do on Delta's website and put that on the mobile website, it would be overwhelming at best. If you try to take every single feature and put it into their native application, it would be even more overwhelming.

So to me, it's the key of figuring out, all right, what do people need in this context? And so the fact that Delta's mobile website allows you to do the bare minimum things, and I would argue those are probably the top three or four tasks.

Would not surprise me if they had data that said, 80-85%, 90%, whatever the magic number is of percent of people that are coming to our mobile website, this is what they're doing. And nobody's complaining about the three things that they can't do there.

And so to me, that's a big part of it, is what do they need to do here? What's useful for them to do there? You bet.
Audience Member: You mentioned that whole thing about if you want to take advantage of native functionality and the iOS functionality getting to use a native app, but I found one interesting antithesis to that is Amazon's app. Where you can browse books, you could look at books, but you can't actually buy the book on iOS.

They won't allow you to purchase because of their conflict with Apple. So you actually have to go to a web interface--
Nate: You're talking about Kindle, right? The Kindle side of it?
Audience Member: The Kindle app, yeah. So then you have to go to a web interface in order to purchase a book.
Nate: Right.
Audience Member: So in that case where you are forced by various legalities to have to go to a web interface, how close would you make that web interface match your app in order to keep that consistency?
Nate: That's a good question. You know, I don't think a lot about that because to me, it's so natural just to go to Amazon on my phone and just tap and I don't even think twice about sending it to my Kindle app. I don't even try anymore.

I think for Amazon, it's pretty clear that they're sticking with the "this is what it looks like on the website". That seems to be kind of the 80%, 90% case. I think that makes a lot of sense for them. Because that's where so much of their traffic is coming.

If they tried to make that experience look like the Kindle app, I think that would be more dangerous. I don't think that's useful to them. So the Kindle app's designed to make it easy to read a book.

Whereas that website, they've made that really good at buying product. Too good in some cases, But it's consistent. You're never sitting there going, oh, my gosh, what am I on? Is this Barnes and Noble? No, you know it's Amazon.
Audience Member: So if somebody decided to go the hybrid route and then for whatever reason down the road wanted to then focus on a native app for each of the platforms, would it be possible to then serve that native app as an upgrade to the hybrid app?
Nate: I think it would depend on the ecosystem. I'm not certain if that can just be installed as an update or if it has to be a separate app. That's a good question. And you're going to end up throwing away the hybrid app.

That's one of the things that I find really interesting about the space were in. The UIs have gotten a lot more ephemeral. I mean, you guys all remember we used to build apps and it's like, OK, good, we got that app now for 10 years. We don't need to worry much about it. We'll just kind of spiff it up a little bit here and there. But that's going to be the thing for 10 years.

We don't have that luxury anymore. We're going to build a UI now that's going to last a year, two years. Then it's going to get replaced. And if we architect that such that most of the business-y stuff is happening on the server and in JSON, RESTful Observers, all that fun stuff, then we can make this front end be what it needs to be.

And then especially as we start targeting whatever's coming next. That's the part, I mean, we just focused here on these little rectangles of glass. Take a step forward. What's it going to be in a year? In two years? I have no idea. I'll guarantee it's going to be different.

There's going to be something we're going to have to target in two years that we're not even pondering right now, if it's going to be your glasses or your watch or your car. That's where life is going to get even more interesting, when you start mixing that in with it.

So I'm not exactly sure what the underlying App stores would allow there. I mean they probably could be an update. Because from their standpoint, they're getting the proper wrapper anyway. They're getting what is it? An APK? And I can't remember what Objective-C compiles down to. But they're getting that unit. They don't necessarily care what's in it. Yeah?
Audience Member: I know we're talking about web here, but there is one other case that I've seen where you really have to go with an app. Is if your client, and if you know who your client is, and they're going to go to a place where they don't have web access.
Nate: Yeah.
Audience Member: Where they're going to a federal site or a secure site and they don't have web access, so that's another one of those decision points.
Nate: Good point.
Audience Member: If web access is not available, go to the full-on app.
Nate: You can do some offline with web. It's certainly not nearly as--
Audience Member: It depends what we need. If they're going somewhere where they need the latest and greatest.
Nate: Yeah.
Audience Member: You know, it's one of those things where it's just well, they have when they're going from your site to whatever service place they're going to, they need to download the latest.
Nate: That's a good point.
Audience Member: Before they get there.
Nate: Great point.
Audience Member: It doesn't happen a lot, but it does happen.
Nate: Nope. It's a good point. There we go.
Audience Member: You saw the weather site. You know, you saw the weather site. You saw the weather site which looks like another app.
Nate: Weather.io, yeah.
Audience Member: With their website. And I know how you do it in iOS, but it is actually available in Android or Window Phone.
Nate: My point with Forecast.io was the fact that that was not easy. There's a lot of folks who posit incorrectly that, well, if we build a website, it will be easy. It's not.

They put a lot of effort, and time, and energy into that. And it was months of development to get something that's smooth and that rich. And if you look at some of their blog entries, they talk about some of testing they would do. And they're really big on random testing.

Just do random stuff and see what happens. Try triple taps, try double taps with two fingers, try all sorts of strange things that are not normal. Like the happy path part, we all think of the happy path. That's easy. But it's all that oddball kind of things. So if you are trying to accomplish something like that, don't think that's a two month project just because it's on the web.
Audience Member: Hi, I just want to say it's been very interesting hearing you talk about all the it depends. Because I work for large enterprise company and we have been down this route. We started out exploring, we wanted cross platforms.
Nate: Yeah.
Audience Member: That's the way we wanted to go because even though our apps are for our employees, we have a mix of iOS and Android. And we started down the MIP route. And that was a whole experience.
Nate: I'll bet.
Audience Member: And never quite served our purposes. Then we went down the hybrid route and did several apps under Sencha Touch wrapped in PhoneGap. And it does work to a certain extent, but some of the things that you've explained about you do hit walls, you have access to the native APIs and you can go offline with the local storage, but you're limited on what you can get.

And we've hit a wall and now we're exploring. And now we're doing a native iOS app. Because it answers all those questions and we have noticed that the performance has increased. It's just the usability and the performance is greater, the ability for data storage, there are so many more things we can do that I have a feeling that we're going to push ourselves into native.

And go ahead and take the hit and add resources for both Android, for Java resources, and Objective-C resources to do those native apps. But we've kind of went this full circle--
Nate: Full circle, yup.
Audience Member: That you've been talking about.
Nate: Yeah, that's not uncommon. And it would not surprise me in the least if we do end up start sniffing around the native stuff. The conversations have been ongoing. We've actually got a guy who's doing some experimenting there.

Unfortunately, they're trying to experiment with a cross platform way of doing native. And it's like, why? If we're going to build native, let's build native. There's this notion that a developer can't learn Objective-C as a developer. I find that insulting. Right?

Anybody can learn a programming language. Anybody can learn a second programming language. That's not the hard part. And I think the interesting bits here, and this is where we struggle a lot is understanding that this is a different kind of architecture.

If you put these things in RESTful web services, that's where all your business logic lives, that's going to be reusable. The front end won't. And have we ever gotten reuse out of the front end? Honestly?

So if we do this right, if we have a proper separation of concerns, great. We build a native app. No problem. There's work there. I'm not trying to diminish that in any stretch. But it's not two years worth of work. Because we've got the web services already. And we'll reuse those in our new skin.
Audience Member: Right.
Nate: Considering that at some point in the next one year, two years, five years, we're going to have to target something else. To me, the idea of arguing about well, here, we got one code base that's going to cover it. There'll be something in two years that, oh, crap. We need another code base now.
Audience Member: Right. And, actually, when we did our hybrid apps, we found them not to be as cross platform as you might imagine. We ended up with two separate code bases, there are certain APIs that you'll incorporate from third party vendors that will be different for each of the platforms and it's just not as cross platform as you might imagine.
Nate: Yeah, you end up having to write some native anyway. Thank you for sharing.
Audience Member: One of the things that I always find when you have this discussion is you always have to think about what your customer is going to do. I mean, so often, we've seen this decision that we're going to go ahead and build an app, but that doesn't mean your customer's are going to do it. It's kind of this field of dreams. If you build it, they will come.
Nate: They will download.
Audience Member: But, I mean, using your Delta example, I fly Delta twice a year. And I happened to fly Delta here with my brother who flies Delta every week.
Nate: Sure.
Audience Member: Well, he has the app on his phone. I'm never going to put that app on my phone. There's no reason for me to put it. So how you pay attention to your customers and which ones are most likely to actually use the app.
Nate: Yeah.
Audience Member: And if you look at Delta's app, it actually looks like it's catered more towards their frequent flyers than it is for someone like me who there's no way I'm going to. And if I do download it, I'm going to uninstall it right after the trip anyway. So it makes sense to cater that more to your frequent flyers.
Nate: Well, and let's be honest, for Delta, where do they make their money? They make it on their frequent flyers. So they certainly have a little different way of looking at it.

Now if you're a bank, I don't know if you could be maybe quite that picky. You know, this experience has to work for somebody who uses it twice a year and somebody who uses it every week. So that's a great point.

Everybody's ready for lunch, aren't they? We good? All right. Well, guys, thank you so much for spending some time with me today. I appreciate it.