Late last year Google made this showcase microsite The Web Can Do What!?. It’s nicely done! I like how it talks about various somewhat-recently unlocked use cases, while itself being a showcase for other rather impressive things you can do on a website (cool usage of sticky sections, view transitions, etc).

Google invests a lot of money in evolving the web, and part of doing that needs to be marketing to developers just what kinds of things are possible thanks to that evolution. I’d love to live to see a day where the web is clearly the development platform of choice and any advantages the native apps currently have because of API access no longer exist. Godspeed.

To be fair though, it wouldn’t be hard to make an argument that Google sometimes wields the power it has irresponsibly. I mention that as sometimes the developer sentiment around fancy new technologies can shift. Google was an early adopter of Passkeys, for example. Myself, I actively tried to be excited about it, because of the more smooth login flow it seemed to afford. But they’ve had trouble delivering on that. Sometimes I find the Passkey login experience even more clumsy than passwords. Plus, unknowns linger in users minds like “what is the passkey reset flow? what happens when I lose devices?” which are things I’ve overheard discussed just today by fellow developers. You can feel the sentiment shift all the way in posts like William Brown’s Passkeys: A Shattered Dream:

I’m over it at this point, and I think it’s time to pour one out for Passkeys.

Missing technological bits are part of the problem, but broadly, another problem is that it encourages platform lock-in:

Passkeys are now seen as a way to capture users and audiences into a platform. What better way to encourage long term entrapment of users then by locking all their credentials into your platform, and even better, credentials that can’t be extracted or exported in any capacity.

William has a point there. Many of us have had enough of walled gardens.

Another thing Google highlights is the File System Access API. I’m certainly a fan of APIs like this, in that camp of making sure the web is able to complete with native apps. This latest take on the API is Chrome-only, for now, which has a faint whiff of jusssstt ussseeee chrommmme. The full story of file system APIs is… that it is extremely confusing and complicated. The 2nd paragraph of Scott’s article is lol-worthy:

There’s the File API, the File API (again), the File System Access API (which is marked as unofficial), the Filesystem & FileWriter API (also marked as unofficial), the FileReader API, the FileList API, the FileSystem API, the File API: name, the FileReader API (again), and the FileEntrySync API (marked as deprecated).

Anyway. I just don’t want to be too blindly excited about this, or too miserly. Right down the middle Coyier they call me. Baby bear porridge, as it were.

I love being impressed by a web app. There was a collective jaw drop when Adobe was like “oh yeah, Photoshop just entirely works as a website now, and we did it with Web Components”. That costs bucks though, so if the ol’ Adobe Suite isn’t on the company credit card for you, you might be interested in Photopea. Looks like a pretty nice photo editing tool (design tool really, much like Photoshop is for more than editing photos). What I find most impressive is the formats it allows you to open: .PSD, .AI, .XD, .FIG, .sketch, .PDF, etc. I feel like they probably read Jobs to be Done when they did that work. Yes, new tool I’ve never used before, I would very much like to design documents that I already have.

While I’m thinking about cool tools on the web, let me hit you with some more I find impressive:

  • unrot.link — “Using progressive enhancement, unrot∙link will check for link rot in real-time, and fall back to the Internet Archive to restore broken links.” I like the approach of the one-question survey on the homepage to get started using it.
  • ffmpeg.app — FFmpeg is a rather famous command line tool for manipulating video unlocking exotic video processing workflows. This app brings all that to a web service with a helpful fuzzy-search and GUI which I’d argue makes things much easier to use. Like check out how complex it is to do something like create a looping-friendly video at the command line.
  • clickwheeljs.com — Mostly just lolz but I love how well it works. Clearly it needs both jQuery and React.