Uncategorized May 08, 2020

Jeff Johnson is my favorite kind of developer. He’s stubbornly pragmatic in solving the most infuriating types of problems that customers face: The myriad software paper-cuts forced upon us by large corporations trying to squeeze an extra penny of engagement out of every user and the skeezy, underhanded, web developers exploiting our every click.

This post is my next in the ongoing series I promised to write about my favorite apps in support of #IndieSupportWeeks. I’ve been meaning to write about Jeff’s apps for a few weeks now, and today’s blog post about his newest creation finally forced my hand into doing so. It’s just too deviously clever an app not to write about.

But first, let’s talk about his main app: StopTheMadness.

(Actually, first, just go buy it. Then come back here and listen to me tell you why you should be glad you did.)

StopTheMadness isn’t really an app. It’s a native, modern Safari extension.

Of course, these days, you can’t actually just make a browser extension for Safari. You have to bundle it inside an app – even if that app does nothing other than tell you “Hey, dummy. Go open Safari”.

Which is why the extension I use to display an RSS feed button in my browser toolbar comes with an app that doesn’t actually do anything.

(I think the whole extension app requirement comes from a good place, but not one that was ever fully vetted-out to consider how Pro users – the ones most likely to actually use browser extensions – want to use them. It reminds me of Apple’s early iPhone OS recommendation (requirement?) that third-party apps put their settings in a bundle inside I mean, I get it, I guess. But that’s sort of like opening a System Preferences pane to change the background color of your text editor. I’m glad the platform has moved away from that.)

I digress.

Anyway, StopTheMadness is a browser extension that stops all the dumb websites out there from doing all their dumb things.

Stuff like preventing you from copying and pasting – or pasting specifically into a password field for sEcUriTy reasons. Or disabling contextual menus. Or blocking text selection. The list goes on. All those user-hostile decisions that are typically dictated to a lowly web developer by middle management.

You can enable / disable features globally or on a per-website basis.

You can even configure Jeff’s extension to always open certain websites with a specific browser other than Safari. That’s excellent if you’re like me and prefer to do all of your Google apps in Chrome, while remaining logged out in Safari.

StopTheMadness is a veritable cornucopia smorgasbord of solutions for the web’s worst offenders.

I can hardly believe I’m saying this, but it’s a rare example of JavaScript being used for good. It’s a digital condom for your web browser. (I so, so hope Jeff uses this paragraph as a testimonial on his website ?)

It’s such a great, niche idea for an app aimed squarely at folks who care about their interaction with technology. It’s a perfect fit in line with Apple’s user-focused ethos at a time when so much software prioritizes profits over user experience.

It’s also a brilliant display of brute-force pragmatism to just fucking fix a problem at all costs that was likely bugging him personally, and then organically grew into a full product.

Which leads me to his other app that debuted last May. StopTheNews.

Have you ever been annoyed that Safari on macOS 10.14 Mojave wants to open Apple News articles in News app instead of in Safari? Well no more! I’ve just released a new, free, open source Mac app called StopTheNews that stops Safari from opening Apple News articles in News app. Instead, StopTheNews opens the original article URL in Safari.

I mean, come on. How can you not love an app that works around Cupertino’s pathological denial that the web is (at times) a valid medium for consuming content and uses their own system hooks to stop them from forcing you into an app that redisplays that same content also using web technologies?*

And now, today.


What began as a lone cry for help on the Nightmare Website, turned into a working solution eighteen days later.

I think my tweet-rant describes the problem well enough, but just in case you’re not convinced. Look at the magical user experience that happens now that Associated Domains have been brought to macOS. Here’s a video of me – right now – editing this blog post. I wanted to re-visit my tweet that I linked above, so, naturally, I clicked the link in my literal text editor and…

it bypasses my browser and opens the goddamn Twitter app instead.


Oh my goodness. I was very close to wrapping up this post just now when a developer friend messaged me:

That’s one of those bizarre bugs that are, in fact, so bizarre you can’t even tell if they’re really happening or if it’s just you the user (or you the developer) screwing something up. Even when you see it happen over and over again for months. You still don’t file a radar because you can’t reproduce it or even be sure it’s a legitimate issue. But, wow. Finally having confirmation that it’s not just you? That’s a great feeling.

Right. Ok.

The end of this post went off the rails and turned into an unintentional rant. That wasn’t my goal.

My point is go give Jeff’s apps a try. They’re clever. Well made. And solve a real experience problem that I know many of us face. He’s a solo developer doing good work for all the like-minded Apple customers out there.

I’m now going to go file that bug report.

If the Apple News apps are not actually complicated wrappers around a webview, I would love to be told otherwise and will gladly retract my snarky statement and post a correction. I know they’re Catalyst amalgamations, of course, but I still assumed WKWebView was underneath it all.