November 5, 2019

How Web Apps Finally Won

Apps in a browser weren't enough. Collaboration and cross-platform development made the difference.

by @maguay

Writer. Amateur photographer. Information architect. Frm. founding editor @racket and @capiche, senior writer @zapier, Mac and Web editor @AppStorm. Personal blog: @techinch.
maguay's avatar

When Google launched their online office suite with Docs and Sheets in 2006, feature parity with Microsoft Office wasn't the focus. Neither was a price tag of free, or cross-platform support by virtue of being a web app. Instead, Google focused on the pain of emailing documents back and forth to collaborate, then trying to merge everyone's edits.

"We made a deliberate bet that users would want speed, convenience and collaborative features enough that we could ignore richer functionality like rich formatting, margins, pagination, etc," Google Docs née Writely creator Sam Schillace told The Verge in 2013. Google Docs wasn’t better than Word, and users were perhaps not be thrilled that it only ran in their browser—but better collaboration features and being able to open your documents anywhere would more than make up for it, or so bet the Google team.

The story played out over and again as apps became the new leaders in their fields, or created entirely new categories. Often they were web apps, the easiest way to ship software that works on every platform from day one. But web apps were a means, not an end—as was their often low entry price of free.

What mattered were better features.

Web Apps for a Reason

Gartner Hype Cycle, via Wikipedia
‌Great expectations. Too great, perhaps.

For a brief window in the late 2000's, everything would be a web app, or so it seemed. Aviary and Pixlr aimed to replace Photoshop in the browser, CodeIDE and Cloud9 moved software development online, and apps like Jolicloud and Nvivo tried to recreate the desktop as a web app (the former as a new app, the latter as real Windows, but online). Microsoft even got in on the action with Windows Live Desktop, complete with a start menu. Web apps were built simply to have apps in the browser.

Customers shrugged, and went on using Photoshop, Sublime Text, and the desktop that came with their computer.

At the end of the decade that brought us Gmail, Google Docs, GitHub, Facebook, and Twitter, enough of our lives had moved into the browser that it seemed everything would. The increasing popularity of Macs in the workplace along with early mobile devices meant that being cross-platform should give web apps a strong advantage. And in the rush to go online, web apps hit the peak of inflated expectations in Gartner’s hype cycle—only to quickly hit the trough of disillusionment.

Web apps didn’t work when you were offline. They loaded slower than native apps, and often had fewer features. Free was nice, but working consistently was nicer. And the then-new mobile app stores made native apps all the more appealing.

Technology often starts out as an exciting new idea that's quickly iterated upon, enough to produce a bubble of exciting new things that use the new tech for tech’s sake. That’s a recipe for disappointment. Customers may get caught up in the buzz of new features, but in the long term they won’t buy tech simply because it’s new (sorry, 3D TVs). They don’t care that apps are coded in today’s fanciest frameworks, that they’re web apps or native apps or Electron in-betweens. They care, solely, that the app works, that it does what they need effectively and better than anything else. And they won’t switch to something new unless it is better at something they need.

In Gartner’s telling, it takes a “slope of enlightenment” of what new tech can uniquely do and how to use that to build better products, before new tech finally reaches a plateau of productivity.

For web apps, that enlightenment was collaboration and cross-platform apps.

Apps for Collaboration

In the rush to build early web apps, the critical yet often overlooked question was why. Free isn’t necessarily a reason to use a web app; after all, GIMP and OpenOffice have for decades been free alternatives to some of the best selling desktop software. Neither was simply being a cross-platform app enough on its own, when many desktop applications also had Mac and Windows editions. It takes something more to convince people to use a product that often, especially at launch, has fewer features than its legacy competitors.

The secret was hidden in plain view all along. Google Docs’ launch post accepted that their product wouldn’t include everything Word offered. Instead, Google Docs would add "collaboration ... to the productivity options people already enjoy."

Better for one specific need, one thing the platform was uniquely better at—and not better at everything. Even today, if you need advanced page layout tools or want to crunch millions of values in a detailed spreadsheet, you'd likely reach for Microsoft's desktop Office apps instead. But for real-time collaboration—even on text that doesn't exactly fit Google Docs' page design, such as a blog post or speech script—you'll likely reach for Google Docs with its superior versioning and commenting system.

The same inspiration fueled Figma, the design app that is quickly replacing the combination of Sketch or InDesign plus InVision. Their original plan to simply build “Photoshop in the browser” was quickly scuttled. Their app needed a reason, a purpose.

"Even though design is inherently collaborative, popular design tools were single-player and offline at the time," said founder Dylan Field in an interview last year. That was the reason: Make it easier to collaborate on designs, and you wouldn't care if the app only worked online and didn't have feature parity with other design apps. Design and photo editing in the browser wasn’t interesting if it didn’t bring anything new to the game. Collaboration itself made Figma better.

So it goes for Slack making team chat more fun and fluid, for Airtable helping the ghost of Microsoft Access escape the desktop, for Soundtrap finally providing an alternative to GarageBand. They were all built for community, with collaboration as the default. They were designed around the web’s always-on assumption where software can do things while you sleep. That gave us a reason to switch, even to pay for something that replaced a tool we'd already owned.

New web apps were better than what came before, specifically at collaboration. It wasn’t where the apps ran that mattered, it’s what they enabled. You didn’t care if a feature was missing, when the app let your team work together in ways you never could before.

The Right Platform for the Job

For software developers, perhaps the greatest appeal of web apps was building software for every platform with the same code. Write once, run anywhere. But web apps, by virtue of being in the browser, often were slower especially on congested internet connections. That made them feel unreliable; what would happen if your internet went down? And by being simply another browser tab, they were far more forgettable than software in the dock or taskbar every time you opened your computer.

Then in 2013 the GitHub team released Electron, a framework to turn HTML, CSS, and other web technologies into native-seeming Windows, Mac, and Linux apps, and changed that equation. Instead of web apps feeling out of place among other installed apps on your computer, Electron promised the code once, run anywhere dream—and delivered. You could code an app using web technology once, and turn it into a cross-platform app that felt equally at home on all computers. Electron apps ran offline, but could still include web components to keep data synced.

“Building native apps for multiple platforms doesn’t scale,” wrote the GitHub team on launching their Electron-powered desktop app. “The web isn’t a perfect platform, but native apps aren’t built on perfect platforms either.” At the very least, though, web technologies run everywhere, and fit well into the continuous development model where new features and bug fixes are released in near real time.

Electron helped bring apps to the desktop that might have otherwise stayed in the browser. It’s the main reason that new apps today tend to support Mac and Windows from day one. From new apps like Slack, Notion, Airtable, Superhuman, MeisterTask, and Abstract to new versions of legacy software such as QuickBooks, Electron powered apps are everywhere today. They’re built with web code—the same HTML, CSS, and JavaScript that power web apps in your browser—even when they require a download to run.

Even still, everything doesn't work better as a web app. Google Hangouts is perhaps the best thing to come from the search giant’s attempt to build a social network, yet if anything it feels held back by being a web app. Hangouts only supports Chrome, and has a maddening tendency to burn through your laptop battery and drop calls when the internet’s less than perfect.

Zoom met the challenge with desktop and mobile apps, paired with a lower quality web app if needed. It was a seemingly backwards step from the web-first Hangouts. And yet, Zoom’s native apps did so much better at streaming video calls, at keeping you connected despite your connection quality, that people switched to Zoom en masse.

"I often met with customers, and in my conversations with them learned they weren’t happy with the current collaboration solutions, including WebEx. I firmly believed I could develop a platform that would make customers happy," said founder Eric Yuan. Him, included, after experiencing the pain of spotty video calls during a long-distance relationship. "So how do we win? We care," Yuan told Inc. Magazine.

Caring about the little things means picking the platform and app style that delivers those things best. Web tech might make development better; platform-native features make users happy. For the popular new email app Superhuman, nailing both meant throwing away some of the default assumptions about web apps.

“Everyone assumed you’re in a browser tab, so clearly the service should store the email, the service should do the search, and the service should work like Gmail,” founder Rahul Vohra told TechCrunch. Instead, they designed their app to store emails locally, and be as fast as possible—two things typically seen as desktop app advantages.

“We decided it would be blazingly fast; it would be visually gorgeous; the whole thing would work offline; you wouldn’t need a multitude of browser extensions to get things done; and people would be materially faster at doing their email," said Vohra.

Vohra’s previous app, Rapportive (now LinkedIn Sales Navigator), was an email add-on to surface new info about your contacts. As such, its ideal platform was as a Chrome add-on so it could work inside Gmail. A pure web app wouldn’t have worked. Now with Superhuman, a new take on a web app along with native mobile apps makes the most sense—enough that people are willing to pay far above the market average for a better email experience. It’s a web native hybrid that’s increasingly how newer apps are built.

Yesterday’s Constraints are Today’s Opportunities

Everything still isn’t a web app, even a hybrid one—nor could all software reasonably be replaced by one. Survey people about their critical software on or check the App Store top downloads section, and you’ll find hundreds of reasons why we still need Macs and PCs to get work done.

Most obvious are utilities that tie into your system and help you across all your apps. Terminals, text expanders, backup utilities, file managers, automation tools, and more all fit here. They can’t be isolated in a browser window and need to work closer to your operating system—and are both the best argument against switching to a Chromebook or iPad for work and the best example of apps that are unlikely to become web apps.

Things that rely on your device’s hardware are another broad category best for native apps. Camera and motion-sensing apps on mobile, design tools that rely on external drawing pads, virtual machines to run other operating systems and test or isolate applications, and video games that use video cards to generate realistic graphics are all things built around the best of your device. You want those to use your device’s local power, something web apps are generally designed to avoid.

Bandwidth constraints have eased over the years as our internet connections have become progressively faster—but still, local hard drives are still far faster than your internet connection, much less newer solid state drives. When you’re cataloging photos, editing video into a movie, compiling code into a new app, and more, you want fast storage and a faster machine to cut through your work.

The apps that keep many of us attached to our Macs and PCs are often those that work better without being a web app, from utilities like text expander, file managers, and terminals to advanced video editing and CAD software. Perhaps they don’t need to be.

Or perhaps, someone will rethink those things with the best of the web, with its collaborative foundation in mind, and reinvent what we think software can be. Web apps today—as Progressive Web Apps—can work offline, use your device’s sensors, store as much data as needed locally, send push notifications, and hide the browser UI to feel more like a native device. And thanks to faster internet, make things like streaming video games and remote desktops feel nearly as smooth as running them locally.

The discarded web app ideas of yesterday suddenly might make sense. Replacing Illustrator with a web app might have seemed preposterous even a decade ago, or building a faster email app than Gmail. Figma and Superhuman proved otherwise, proved we’d line up and pay to switch to a web app if it actually did things better—while Zoom and every new native app in the App Store proves again that the best apps are designed around their platform’s best strengths, and that even today everything isn’t quite meant to be a web app.

Click here to Tweet this article.

Image Credits: Gartner Hype Cycle graph via Wikipedia.

NBNite's avatar
@NBNite (replying to maguay )
almost 4 years ago

Another great read Matthew - thanks for sharing!

3 points
qthdh's avatar
@qthdh (replying to maguay )
3 years ago

> Free isn’t necessarily a reason to use a web app; after all, GIMP and OpenOffice have for decades been free alternatives to some of the best selling desktop software

I've tried both. The UX was OK at best. The UI wasn't poor.
The problem with free software, most o the time is that, for some reason, makes aren't too concerned with design and usability.

> So how do we win? We care," Yuan told Inc. Magazine.

True but in Zoom's case, they might have cared a little too much 😆

2 points
maguay's avatar
@maguay (replying to @qthdh )
3 years ago

You’ve got a great point on design—which carries over to compatibility. OpenOffice messes with document formatting just enough to make anything you create look slightly off on others’ computers, and that in turn gives a poor impression of your work.

If anything, modern web apps often have fewer features than free open-source software, but at least the modern web apps tend to have far better designed interfaces.

To Zoom’s credit, they seem to have made incredibly fast progress on improvements this year, though it’s funny—some of those may come at the expense of the older simplicity that made Zoom popular. The other day I had to install a Zoom update before joining a meeting, something that brought back GoToMeeting memories, and one of those annoyances that, if it were common, would make people start looking for an alternative again.

1 point
What's the best way to get feedback about a design or product?

Do you have a favorite survey or poll tool to get feedback, or a unique process to get actionable insights from your users about your design, product features, pricing, and more? There was an inte...

What's the best tool for building a customized API documentation?

Let's say you have an API you want to document and you want to: - Let your users test their calls to the API thanks to a "playground" like the one on the Figma API - Be able to customize it to matc...

The community for power users.