Our evilplans for progressive web apps - an update
- Summary:
- We're close to releasing our first PWA. Here's a preview of what we're doing and why. We think it's an important step forward for us on the road to content personalization.
I might well be shooting myself in the face and foot writing this story today but here goes.
Very late last year I hinted that we're working on a progressive web app (PWA), teasing folks with my #evilplans moniker. For those that don't know #evilplans is an idea I stole from Hugh McLeod many years ago to describe anything I think is really cool and interesting and that I plan to put into what we do. #evilplans don't always work but heh, we're all trying to suck less. Right?
How are we getting on and where are we at? Here's a preview but before going there it's worth briefly explaining what PWAs are and why they matter.
Analyst Donnie Berkholz includes a story about PWAs from Maximiliano Flirtman in his Nuzzel library. If you're into development topics then I encourage you to subscribe. Donnie is not only one of what I term the 'Good Guys' in the analyst market, he really, really knows his sh%t. As Berkholz says of development generally:
As always, adult content tends to push the boundaries of new technology. Lots more on recent changes in the PWA ecosystem as well.
Not that I'm taking direct cues from the porn industry or encouraging anyone to become a voyeur. That would be sucky (sic) although much of what they do is bleeding edge stuff from which we can all learn.
Flirtman's story has plenty of additional references and again, I encourage curious minds to click on the resources he provides. For now though, it's useful to repeat his definition of PWAs:
I’m defining in 2020 a PWA as a design pattern to develop app experiences using web technologies with different APIs, such as Service Workers for asset management, Web App Manifest for browser installation, Trusted Web Activities for Play Store distribution, among other.
For the less technically inclined, you can think of PWAs as providing a fresh way in which to show 'stuff' that might otherwise be accessed directly through a browser but with the bonus of extremely fast load times and which (can) work in both online and offline modes. This is especially useful in the mobile world, where PWAs have had the most attention. It is the load time issue that PWA (at least from my standpoint) addresses which makes the biggest difference. In our tests, page landing is almost instantaneous. But there is so much more potential.
Even if you've never heard of PWAs, it's worth getting to know what they are. In our case, it also provides an opportunity to try out new things without having to play around with our existing core landscape.
What are we doing?
Our first stab at this is what we call 'saved stories.' The idea is that when you arrive at diginomica, there will be an icon (see illustration at the top of this story) for each story which you can click, thus creating a personalized saved stories library. When you click on 'your saved stories' you'll see a list of the things in which you've expressed an interest. Simples - right?
You might ask - but heh - that's what an RSS feed reader is for isn't it? Well yes, that's possibly true. But as Jon Reed pointed out, the utility of RSS readers may be great for a certain class of user but the reality is that their use is fading. What's more, I don't believe that a general purpose RSS reader allows us to do the kinds of thing we should be doing for interested readers.
Could't we simply have aggregated using something like Flipboard or Nuzzel? I guess so and for some people that might be the right thing to do. But for us, not so much and for good personalization related and commercial reasons.
In our case, the saved stories functionality as it exists today allows you to do a few things we think are valuable. I'll list them:
- Collect stories of interest on your terms from the main site without having t read them first.
- Collect stories in the order you care about. Stories are saved in that order, not chronologically.
- Read stories whether connected to the internet or not. Great for those on spotty connections and those who have a lot of travel in their schedules.
- Once your interest has been satisfied, dump the story out of your library if you wish.
- Retain any story for future reference.
- Reach the main site from the PWA.
From our point of view, PWAs provide both an additional route to market with the opportunity to discover what people who have high value - i.e. those who are genuinely engaged in content - are interested in. This last point is important across several dimensions:
- We deliver a personalized experience.
- Readers give us a steer on editorial direction.
- Interest as expressed through story collections and reads allow us to think in terms of content patterns.
- Interest patterns allow us to focus on topics that matter to aggregated user cadres.
- Interest patterns allow us to help steer content partners who have their own agendas.
Does that sound horribly proprietary? Kind of but then the advantages for us as outlined above are things we struggle with when considering how to use other tools which, at the end of the day, are little more than aggregators designed to use network effects for either subscription billing or ad placement.
Where are we at?
Quite how this will look is still in discussion. What I'm showing today is ONLY a first draft. While there is always the temptation to mimic what others, like Flipboard, have done, I'm not convinced. My sense is that people who collect stories want a clean, minimal interface, something they can scroll through quickly, want the least amount of clutter and the least number of clicks to get to their interest area. So the images you see above might well be dumped.
The one big thing that's missing from my POV is the ability to categorize. I know from past endeavors that people's interests are both highly varied and change over time. That makes the holy grail of delivering personalized content experiences really, really hard. We can go some way towards that as we already do with recommendation services - an area where we still develop and have other ideas - but in the end, we cannot second guess story lines or topics for any individual in the same way that you can for products. Why is that?
The challenge of personalization
Content rarely deals with a single topic. That's why we use tags and categories. Here's a good example. Say you're a buyer who is looking to refactor your entire apps landscape. You'll likely be interested in anything ERP, CRM, HCM, SCM etc etc related. But the journey you take is only known to you. It might look like this:
- On one day you might be interested in a particular vendor.
- On another day you might be interested in the horizontal app.
- On yet another day you might be interested in case studies.
Other people might only be interested in a particular horizontal app area like - say - payroll but across any vendor and any case. I could go on but hope that you see how content differs from products and that interest is an infinitely variable issue. With products you're likely interested in a single product type to solve a specific problem but you'll start with Google which does an excellent job of helping you search.
FWIW, we did look at using ML as a way of delivering those personalized experiences but after three years, I've yet to find a way that looks sufficiently promising. I know others have worked on this problem with limited success, having sunk huge chunks of time and money into the problem. Someone suggested it is a solution looking for a problem. I disagree.
We think that PWA provides a better way to achieve (roughly) the same outcome because it puts you in direct control. And it's safe, or as safe as any web app is these days. Just to be clear - we won't be collecting your personal details. As we stand today, we don't need anyone to sign up to use the PWA but we will track usage in much the same way that we use Google Analytics. That's a fair trade in my view but if it's something that makes you go meh' then don't use the app.
Another effect will be to make sure that our excerpts are tightly drawn so that the essence of those stories is succinctly conveyed. Similarly, we will have to think carefully about how we categorize and tag. If we go the categorization route in a future iteration then that becomes important.
PWA is not a magic bullet
Despite being around for a few years, we think that PWAs are still in early stage. To get best use, it will mean adding an application icon on your smartphone homepage and that in itself implies barriers. I have over 130 apps on my phone. Do I use them all? No. Do I use a good number of them most fo the time? No. Do I pay attention to the ones that also provide notifications? Mostly. do I have the ones I care about on the first homepage? Yes. Do those apps change from time to time? Yes. I'm sure you get my point.
As Flirtman notes, there are numerous issues with PWAs, especially if you live in the Apple world:
While most browser vendors embraced the “Progressive Web App” term, there is one that is still fighting against it: Apple. And this is not new...
Yup. We've discovered issues with iOS/Safari. From what Flirtman says, most of those 'issues' stem from Apple's locked down AppStore view of the world. However, there are ways around the problems but workarounds add friction. I'm sure we'll all get there in the end but not today.
Quo vadis?
The minute I say this I'll be proven wrong, hence shooting myself in the face and foot. But I think we're very close to doing some serious beta testing with an MVP release in mind. If I'm right - and yes, there are a couple of things I'd like to see ironed out first - then we're happy to let some readers play with what we've got and provide feedback. If that's you then email me: den [at] diginomica [dot] com, message me on LinkedIn or ping me on WhatsApp - I'm not hard to find.
As I've hinted, this could all go horribly wrong where we hit a big snag, solve it and then discover that nobody cares anyway. Or that we've missed providing something blindingly obvious that needs to be in the initial iteration. That would be a great shame but heh, #evilplans are rarely slam dunks. Timing is my other big issue and the one that bothers me the most. I've been here before and know the price of having the right idea at the wrong time.
Anyhoo - that's where we're at. There are many things I'd like to talk about on this topic but it is way too premature and I don't want to be setting expectations about moonshots or totally whacked out things that might never happen. I'm sure some of those will be in the roadmap, but at the bottom.
What do you think? Does this make sense or is this too alien?