Episode #032: Ada Rose Cannon, Developer Advocate at Samsung and Co-Chair of the W3C Immersive Web Working Group
How much time have you spent educating yourself on what’s possible on the web in recent years? The web has changed tremendously over the past few years and we’re able to do so much more on it than ever before, but there is still a major knowledge gap that exists between what people think the web can do compared to all that it can actually do today. For instance, progressive web apps (PWAs) now enable mobile app-like experiences that happen to be delivered via the web. PWAs can cache offline, install to the homescreen, integrate with phone functionality such as the camera, push notifications, and more. Also, there is ongoing work to bring augmented reality (AR) and virtual reality (VR) to the web. And, these are just a few examples that showcase how much progress has been made on the web and why it’s so critical for all of us to truly understand what possible on the web today rather than relying on our historical knowledge. In this episode of Mobile Matters, we talk to the co-chair of the W3C Immersive Web Working Group and a Developer Advocate at Samsung, Ada Rose Cannon, about how we’re going to bring augmented reality (AR) and virtual reality (VR) to the web, why brands should be using progressive web apps (PWAs), and where she believes the future of the web is headed.
If you’re interested in learning more from Ada, check out her blog or follow her on Twitter.
Get the latest content and resources from Lumavate delivered to your inbox every week.
Stephanie Cox: I’m Stephanie Cox and this is Mobile Matters. Today, I'm joined by Ada Rose Cannon. She's the co-chair of the W3C Immersive Web Working Group and a Developer Advocate for Samsung. She's previously worked at the Financial Times and PlayStation. In this episode, Ada and I talked a lot about what it means to be a developer Advocate Samsung and a co-chair on W3C, why she's excited about bringing AR and VR to the web, and where she believes the future of the web is headed. And make sure you stick around until the end where I'll give my recap and top takeaways so that you can not only think about mobile differently but implemented effectively. Welcome to the show, Ada.
So, now you're at Samsung and you're a developer advocate. What does that mean, exactly? What are you charged with doing?
Ada Rose Cannon: So, as a developer advocate for Samsung, the very core goal of the role is: Samsung has a web browser that not a lot of people have heard of. It's called Samsung Internet and we have a surprisingly huge market share. We have 7 percent mobile usage worldwide, coming in behind Chrome and Safari. And in some European countries, we have up to 16 percent mobile market share, which is huge.
Stephanie Cox: Woah, that's huge!
Ada Rose Cannon: Yeah! On the scale of the web, these are millions of people using our web browser. But not a lot of developers have heard about us because they get their brand new phone and the first thing they do is install Chrome on it, which for us isn't that great. But lots of normal phone users out there still use Samsung Internet, which is really fantastic. And we try and implement enough features now that people on other non-Samsung devices–we're trying to get them to want to install our browser because we're a really good browser. So we're based on the Chromium project. So we're like Chrome-ish, but because we're a fork of Chrome, every time we have to upstream the browser to update, it takes a long time. So we’re usually lagging around six months behind Chrome, in terms of browser features. But if there's something that's really important, then we'll try and get it into the browser a bit earlier. But we have open beta, so developers can try out the next version. And yeah, we're really responsive to feedback and try to make our browser good as it can be. But that's just the core goal. Everything else I do around that probably takes the majority of my time. So, as well as raising awareness for the browser, we try and get feedback from developers and find out what they think is really important in the web and make sure that's something which we're covering, as well. We're also involved in lots of standardization work. I personally am co-chair of the immersive web working group, which looks to bring virtual reality and augmented reality to the web.
Stephanie Cox: Which I am excited about and cannot wait for.
Ada Rose Cannon: Yeah, it's hopefully it's going to be really good. The prototype WebVR API were incredibly popular and I'm hoping to see the same kind of uptake with browser manufacturers and developers with the WebXR device APIs than I was with the WebVR API. So, fingers crossed there. Hopefully there should be more information about stuff happening in the immersive web space soon.
Stephanie Cox: So, for those people who don't understand what WC3 is and how that works and what the goal is, can you just explain that for the audience if they're not familiar?
Ada Rose Cannon: So, the W3C is a standardization body for web APIs. They don't decide what gets into web browsers, because that's what web browser manufacturers do. What they do is they gather together all of the interested parties of people who are involved in the web. So, companies with big investment in web projects, like media organizations like the Financial Times or The Guardian or the BBC or companies that have a browser of their own, like Samsung, Mozilla, Google, Apple, Microsoft. These are all the companies that are involved in the W3C. And they contribute to standards to try and get agreement on what the web should look like, and whether or not browsers implement those features is up to the browser. So, in an ideal world, every web browser would implement every single feature they get standardized.
Stephanie Cox: Wouldn't that be wonderful?
Ada Rose Cannon: That would be really wonderful. But, building a browser is really, really difficult. So browsers often have to pick and choose which features get prioritized.
Stephanie Cox: Well, and then the other thing about it that I think a lot of people don't understand–because one of the things that I hear all the time around Apple is, why is their web browser not able to do the same things that Google is and things like that? And one of the things I say is, part of that is their investment in the web itself and whether or not they're putting enough resources to even be able to do some of the standardization or functionality that you guys might all agree on.
Ada Rose Cannon: Yeah, building a web browser is a humongous financial investment. Like huge! And so, not everyone has the resources Google does to focus on building a web browser. Because for Google, the web is one of their key markets. Like if there wasn't a web, there probably wouldn't be a Google, as we know it today. In addition, when you have these limited resources, companies have to pick and choose what they work on. So, there are features which Safari has, which are head and shoulders above that of any other browser or in WebKit, in general. Because that's the people in charge of what gets developed in the browser choose to focus on. And it's the same in all browsers like at Samsung, we have really invested in Progressive Web Apps and web payment and virtual reality. And other browser manufacturers might choose to be involved in some of the really cutting features that come out of CSS and making sure they get implemented really early. So I wouldn't say they're far behind, because there's definitely areas where Safari is ahead. But it would be really nice if they could get on board the PWA bandwagon a bit more and really get up to the same level, which some of the other parts manufacturers are at.
Stephanie Cox: Preach, preach.
Ada Rose Cannon: And yeah, saying that I hope that we see the same level uptake with the WebXR device API. That's what I really hope, as well.
Stephanie Cox: So, you mentioned PWAs, so Progressive Web Apps, one of my personal favorite topics. So how did you get started into PWAs? Like, what was your story around how you first heard about them, got involved with them?
Ada Rose Cannon: So, I started working on PWAs at the Financial Times. So, Financial Times were building like a web-only app before anyone else was that I'm aware of. So, this was before PWAs were even a sparkle in Alex Russell's eyes.
Stephanie Cox: I love that!
Ada Rose Cannon: So it all comes about due to an interesting point of contention with the marketplace of a particular mobile phone manufacturer, who wanted to take a cut of the Financial Times’ subscriptions, whereas the subscriptions were the majority of the income for the Financial Times, which wouldn't really work. So, what they figured instead is that, instead of releasing an app through a particular app store, they would release it through the web instead. And so, they did this by building a web page that did offline using app cache. So, app cache is an old API for making pages work offline. It is not a good API, it is horrible to use. And, if you make a mistake you can get your app into a state where it's impossible to update ever again and will just remain in a broken state.
Stephanie Cox: Oh, wow.
Ada Rose Cannon: Yeah it's a scary thing to do. So, we had to do lots of clever stuff to work around the fragility of the app cache API. But we used stuff like, we synced data to the device and we use app cache to like bootstrap the site, which we then put all the information, how to buy the local storage or for index DB and build a fully responsive app. Which, with one URL would work great on BlackBerry phones, back in the day. It worked great on the early iOS devices, on early Android devices. It was a Windows 8 application. It was also just like a desktop-optimized site. So, if you go to the web browser. And it really showed me the power of what you can do with the web. One distribution, we were hitting all of these platforms, all at the same time. And initially, I was like well, sure this is great but there's no way we're gonna get, like, businessmen to open up the menu, tap at the home screen to install this app to their device. But they were! Like, I'd be on the tube to London and I would see all these businessmen in suits around me using the Financial Times web app on their phones, and I would know that they installed that through the web browser.
Stephanie Cox: How cool is that to see in real life something that you've built being used?
Ada Rose Cannon: It was pretty amazing, especially when I see a feature, which I personally developed getting use, it would just be a real moment of pride. And, it was amazing to see because it was so performance. So, my background has always been in real-time performance. So, not just performance of loading a web app over the network, but the speed it runs at whilst it's running on the device. So seeing this web app running at great frame rates, on low powered BlackBerry devices was just beautiful to see. And I said, yes! This is really paying off!
Stephanie Cox: And then you had Progressive Web Apps come out, and what have you thought about the movement really since Google gave them a name and started promoting PWAs? What have you seen just from an industry perspective happen?
Ada Rose Cannon: So, because I was there at the start and watched Progressive Web Apps grow out of the work of Andrew Betts, who was my boss at the time, and Alex Russell and everyone else involved in the Progressive Web App conversation, it's been heartwarming to see it slowly gain traction. And when Samsung asked me to join them, to be a web developer advocate, one of the things that really struck me was that they were really interested in pushing Progressive Web Apps as part of their platform. And that's when I felt like, yes, it's not just a single browser pushing their vision, it's multiple browsers coming together is to build something that could enable developers to have this great experience that I'd been doing for years.
Stephanie Cox: That's where it feels like it's a movement, right? It's not just an initiative, it's a movement that's happening across so many different browsers, so many developers. To me, it's been really exciting to see the last three and a half, four years where I feel like it's the name has started to gain traction. But also, you mentioned slowly growing. Do you think there's a reason why PWAs haven't had that hockey stick growth, where literally there's thousands of brands using them?
Ada Rose Cannon: I think there's a few things that come into this. So, partly it's companies will initially, when they're looking to build their first app-like experience, they want to build an app so that the CEO can have it on his mobile phone and show it to his friends. And so, they wouldn't even think about other platforms. The CEO will have top of the line iPhone and will want to build an app for the Apple Store.
Stephanie Cox: I can't tell you how many conversations I've had with people, with senior leaders that are like we need an app. Why do we need an app? Well, so we can have it on your phone! But what would it do? Well, we need an app!!
Ada Rose Cannon: It's this kind of thinking, it's the thinking "We need an app" before they're thinking about what their requirements are. So, if we're lucky, they'll be like, oh yeah we're going to build an app that both works on iOS and Android. And then, they'll be like, oh yeah we should probably have a website or something for people looking on the desktop, I guess, which would then link to the App Store and for their respective platforms. So, web apps are definitely an afterthought. So, it seems to be that when companies have exhausted all other options, then they're like OK, let's give this web thing a go. We seem to have consistent engagement through our web, but they seem to drop off when they go to the App Store. Maybe we could do something and actually make the web the product. And that's when people start to start looking to the web is as a main platform. It also doesn't help that the companies that have had huge successes with web apps don't like to talk about it. Because suddenly it turns from, ah is an interesting experiment, too, this is now our edge over our competitors. So, we don't want to talk about it. So, it's definitely the thing where I wish more startups when they think of building something, think about that their target platform before they think about what's gonna look great to show to my friends in the pub.
Stephanie Cox: That's a really great point. One of the things that I have noticed when I talk to people, whether they're business leaders or developers unless you are a web developer, you have experience doing that. If you're just a traditional software engineer, that maybe is more focused on developing for iOS or Android or something like that, they don't necessarily always understand how much progress the web has made and how much more you can do on it today. How do you think about educating people on that?
Ada Rose Cannon: So, yeah educating people about the amazing new things the web can do is literally a cornerstone of my job.
Stephanie Cox: That's one of the things I love and why I wanted to have you on the show, is you write so much great content about different ways to think about different things or how you implemented something that to some extent–it's like a how-to for some amazing stuff on the web.
Ada Rose Cannon: Yeah, the web is so powerful. Like, the APIs, which I think a lot people wouldn't even think would be on the web. Like, the Web Bluetooth API is a low-level API for controlling Bluetooth devices through the Web. So, you can get a drone, go to a website, and then remotely control that drone from the web, which is amazingly cool. And that's just like one small feature like the web is getting incredibly performant. And it feels to me, there's also like an issue of, not just app developers have given up on the web and don't think it can do all that much. I think a lot of web developers feel the same way because it feels to me that, when I was–Here's a bit background on where I'm coming from here–So, when I was building web apps for the Financial Times, building for the web was incredibly difficult. Browser support was extremely flaky. There was a lot of APIs that had very patchy implementation across browsers. The rendering engines for the browsers behaved extremely differently. There was lots of edge cases in all kinds of browsers. And this made it, as a developer, this made it extremely difficult because you had to choose between, do I manually handle every edge case I encounter? Or do I just use a library that I assume will handle everything? But the web has come a long way in the past six years. And so now the rendering engines for the different browsers have much fewer differences. As in, they're still separate implementations, but there's much more robust testing and working together between the browsers to ensure a consistent experience. On top of that, a lot of the features which we used to rely on libraries for are now baked into the web itself. So, we used to include libraries for doing grid layouts. Well, CSS Grid has that framework built into the browser. We used to include a library for doing DOM manipulation like jQuery. That's all built into the DOM APIs these days. For stuff like detecting whether a certain element is on the screen, we don't need to live proof that anymore, that's the section observer. And then even on a higher level, so loads of developers really want to build suites of components, which they can use and combine together. So, the first thing they do is go to a component framework, like React or Angular. Whereas, web components have amazing support, across all major browsers these days. You don't have to build websites too, which still work exactly the same on IE 6. And I think we need to get developers to stop thinking about, look at the platform, see what's there. You don't have to build the same experience everywhere. So, at places where features aren't available, fallback or to assemble a feature, you don't have to deliver the same experience to every browser. So, Internet Explorer 6 can get to a fallback render of the content just using normal HTML and CSS. And then on an evergreen browser like new Chrome or new Firefox or Edge or Safari, you're going to see the latest greatest experience, using all of the new APIs the web has to offer. So, I really hope we start seeing more web developers taking advantage of what's there already. Because, if we start using these big frameworks, you end up shipping this huge package to the user, which doesn't work for a lot of people. Because when you're shipping four megabytes of JavaScript, all of that four megabytes has to load, and if a single byte fails on the wire, then you've lost it. The whole thing has failed. The user is going to get nothing. They're just going to see a white page. And this is unacceptable because this is the kind of thing that gives the web itself a bad experience and then stops people viewing the web as a viable platform for building their apps on. So it's like a negative spiral of developers building bad experiences because they've only had bad experiences and goes round and round.
Stephanie Cox: It's interesting that you say that. A lot of times when I talk to people, I feel the same way about native mobile apps. When they first came out, the ones that were built when the App Store launched in 2008 and there was only like 550. Some of them were actually helpful. But now, we've got millions in the App Store and there's so many bad examples of them, where people have delivered a bad user experience, done completely wrong things with the data that you give them. And now it's created from consumers, this kind of like backlash of, I don't want to go download an app anymore. Because there's a lot of friction to it, it takes up space on my phone but also half the time it's not helpful to me. It doesn't really help me do what I want to do. And it's the same point with the web is, a lot of times an entire platform can be impacted by people not making the right choices.
Ada Rose Cannon: And I think that's a real shame about apps, because one advantage apps have with them being inside the wall gardens of app stores is the app stores have the power to create apps that go on to their stores. And often, they'll just let anything go up there, whether they ripped off another app or they're doing something bad with user data. And it's these kind of bad experiences where no one is having the best situation they could. And, I think that's one definite advantage the web has, especially these days where its users are a lot more concerned about privacy. The web has a lot of privacy guarantees built in by default, because the web platform is user-first. Like, features are implemented so that they will benefit the user before and protect the user's privacy and security. So there are some features that apps have which isn't the web and which the web will never implement because they'll impact the privacy of users. So it's one of the things where apps have dropped the ball a little bit and I'm hoping the web can pick it up and run.
Stephanie Cox: I always say that with every new technology or an enhancement we have, we have an opportunity to do the right thing and create the best user experience and really think about things the way that we would want to be treated as consumers. Otherwise, what ends up happening is consumers hate it and then we end up getting regulated, which is a lot of the reason why GDPR existed is that a lot of companies made bad decisions with data. And so, the government said, we need to come in and put some regulations on it because you guys couldn't make it could make good choices.
Ada Rose Cannon: That's actually a really good point, and there's a very similar story in the web. So, I think one of the places where the web messed up a little bit is push notifications. Push notifications were a technology I was very excited about initially because it brought to the web a power which apps have had for a long time. And granted, we should have seen it then that apps weren't doing push notifications very well. And then we brought them to the web, with a warning of, hey, push notifications are really good, but if you do push notifications badly, then you're probably going to give users a bad taste for push notifications, not just for you, but for all websites. And, unfortunately, that's exactly what's happened. Push notifications had been abused by many website builders.
Stephanie Cox: Everyone!
Ada Rose Cannon: Yeah, they just got stuck on every website, asking for push notifications when you first land on the page and now everyone hates push notifications. And what could have been something that would have been really powerful and beneficial to everyone in the web has become something which, unfortunately, is now something which web browsers are, I don't want to say rolling back, but providing a lot more features to control them. For example, don't show me any more push notifications from this domain. Or just disable push notifications, entirely.
Stephanie Cox: Or just think, as a web site, think about even when you ask for it. One of the things I hate is, when I go to a website for the first time, it's like, would you like to opt in for notifications? I just went to your website, I don't even know if I like your company or if it's a media place, I don't know if I like the articles and the content you have. Why don't you wait a few minutes to see if I'm engaging with a couple of pages, spending time, and then ask me?
Ada Rose Cannon: Yeah. Or even ask the user in the page itself, like at the bottom of an article and it's just like “Oh, you might have read that entire article. If you want to read more, click here and we'll ask if you want push notifications”, rather than doing it on first load. Because it's all these kind of empty patterns where often users don't love your content enough to stick with it. Often, I will land on a page and then if I can't immediately decline the GDPR notification with a single button, I'm just gonna bounce. There's not a lot of things, which I'm going to let them waste my time. And so, I think it's this when you go to a website now and you've got OK. No, I don't want push notifications. I don't want to let you track me, yes ok. I see you have cookies and then by the time you close the popup advert, you've done four clicks before you even seen any content. And it's this kind of experience which is making the web worse, and it's taking value out of the web.
Stephanie Cox: I completely agree.
Ada Rose Cannon: And it's not just damaging the brands of the companies who are actually doing the bad practices, it damages the web as a whole, which is incredibly sad.
Stephanie Cox: Well, and hearing you talk about it, one of the things that popped into my mind was, how many companies still do an interstitial when you come to their page? And they're like go to the app store and download my app and I'm like, I'm on my desktop, I'm not going to go to the app store and download your app.
Ada Rose Cannon: Yeah.
Stephanie Cox: Why can't you just give me what I want now? And why can't you tell me what the app is going to do and look like, and why I should bother. Stop forcing me to go download an app, and I’m so thankful for Face ID because I never remember my app store password! So, it's just interesting. So, speaking of just the web in general, what do you see as the biggest opportunities the web has moving forward and what do you want to see happen?
Ada Rose Cannon: I really, really see immersive devices being the future of handsets. Like, being the future of how we're going to engage with web content. And I don't mean in the next two years, I mean in the next 7 to 10 years, like long term future. Immersive devices, like augmented reality devices, are getting better and better and smaller and smaller. And it's going to become a tipping point when they just enter our lives as a normal way to experience technology. And just like mobile phones haven't replaced the desktop, I don't think immersive devices are going to replace the handset, but I can definitely see them being engaged with our life a lot more. So that we can engage with the web, without actually looking at a screen and having stuff in our peripheral vision and on our wrists and through our web-connected devices. Like, I think the web is going to become part of our environment, rather than part of it all little black rectangles. So, I think by having the web ready to engage with virtual reality and artificial reality devices and with WebXR technologies. I think the web will still have a place in the future because nothing lasts forever and I don't think the web is going to be around for all eternity. I think all we can do is, make the web last longer. And I think by being prepared for the new ways we'll engage with content, the web will have a place in the future.
Stephanie Cox: So, now let's talk about what you would like to see brands do on the web? So, if you could wave a magic wand, what would you want some of the biggest brands in the world to be doing on the web?
Ada Rose Cannon: OK, so I have a few things here. So, just from a technical architecture thing, I would love to see a lot more brands weighing the weight of their products, so that instead of shipping multi-megabyte reactor apps that require the latest smartphones to use, I'd like to see brands start shipping apps which come in at under 100 kilobytes. Like extremely light, that run very well on low-end hardware, because the future of the web isn't English speaking and on high-end state of the iPhones. It's running on much lower power devices in non-English speaking countries. And I'd love to see brands engage with audiences they don't even know they have yet. So, doing a lot more internationalization of their products and making building websites that work for everyone. And there is one thing which I'd like to see happen culturally in the web, rather than as a technological thing. So, the web is having a large problem with hate speech at the moment. And I'd love to see a lot more active moderation to remove hate speech from social media platforms like YouTube and Twitter.
Stephanie Cox: That would be amazing.
Ada Rose Cannon: So yeah, there's some of the ways I'd love to see the web go in the future.
Stephanie Cox: I have to say thank you again to Alex Russell at Google for suggesting I speak with Ada. She has a wealth of knowledge about everything tied to the web and I honestly could spend hours reading the great content she's written about the web. I absolutely love chatting with her and there's so much more from our conversation that I literally couldn't fit into this episode, so stay tuned for an upcoming episode of From The Cutting Room Floor in a few weeks. I also have the privilege to speak with another Developer Advocate at Samsung that happens to be one of her colleagues and I'll be sharing my conversation with him in next week's episode. Now, let's get to my favorite part of the show where we talk about how to implement my top takeaways in your business.
So let's dive into my top three takeaways to my conversation with Ada and what you can expect to hear next week's episode when I chat with another Developer Advocate at Samsung. First, before Alex Russell unveiled Progressive Web Apps in 2015, The Financial Times team was already working on a web app that was honestly trying to achieve a lot of the same functionality that we know in PWAs today and as Ada mentioned, there's absolutely nothing like seeing people out in the world using the technology you built on the web. I loved her story of being on the tube in London and seeing businessmen actually using part of the product she built.
Next, we’ve got to stop this ongoing cycle of wanting to build a native app before we even know what we're trying to achieve with it. And spoiler alert, native apps are often not the right method to deliver the user experience to begin with. Progressive Web Apps are a great example of how you can deliver app-like functionality to users, allow them to save an icon to the home screen, while only developing it once and having at work across all operating systems.
Finally, the web has advanced so much and is so much more powerful today then a lot of people realize. With that, we all have this responsibility to create really delightful user experiences and being prompted to subscribe to notifications or opt-in to email the first time I hit your website isn't one of them. Let's all try and think about creating user experiences that we as consumers would actually enjoy. And just to make sure we're clear it's not by prompting me to give you a bunch of information and clicking on multiple consents or trying to redirect me to your native app when I hit your website for the first time, everyone. And make sure you check out next week’s episode where I chat with one of Ada's colleagues about his thoughts on where the web is headed, the importance of ethical principles, and so much more. If you've enjoyed this week's episode, then you're definitely going to watch check out the next too, I'll be sharing, even more about my conversation with Ada in a couple of weeks.
I'm Stephanie Cox and you've been listening to Mobile Matters. If you haven't yet, be sure to subscribe, rate, and review this podcast. Until then be sure to visit Lumavate.com and subscribe to get more access to thought leaders, best practices, and all things mobile.