John Gruber:
It’s a goddamn privilege for anyone to bestow your article, story, or product page with their attention. The gall, to deliberately interrupt them while they are in the middle of actively reading, to present them with a dickover. It is no different from snatching a physical copy of a book or magazine out of a reader’s hands in order to badger them for something other than the attention they were already granting your work, except that the physical act of snatching a publication from a reader’s hands would subject you to being punched in the face.
John Gruber, quoting Walt Disney:
We don’t make movies to make money; we make money to make more movies.
Gruber’s version: don’t make software to make money, make money to make more software.
My version: don’t make websites to make money, make money to make more websites.
John Gruber:
Focused, discrete apps are the best proven way to manage complexity.
Honestly, this seems true of anything really.
Focused discrete { PRs | functions | meetings | tools } are the best way to manage complexity.
A thing that tries to do one thing succeeds or fails clearly.
A thing that tries to do many things can always partially succeed, which means it never fully fails.
John Gruber talking about how numbers may show that yucky tactics work, but that’s not the whole story. From his experiment opting in to a waterfall of SMS marketing messages:
the marketing team running this points to those sales as proof that it “works”. You can measure that. It shows up as a number. Some people in business only like arguments that can be backed by numbers. 3 is more than 2. That is indeed a fact.
But there are an infinite number of things in life that cannot be assigned numeric values.
I shall call this Gruber’s law:
It is difficult to get a company to see that certain of its core competencies are in severe decline when the company is making more money than ever.
John Gruber (reflecting on a post from Jason Fried):
smart switches might seem like an improvement because they make possible hard things that were previously impossible. Making possible the impossible is surely a win, right? But not necessarily. Making possible the heretofore impossible isn’t axiomatically a win. It’s a loss if it comes at the expense of keeping the easy things easy, consistent, reliable, and intuitive.
Spot on if you ask me (which no one did).
Related: John’s follow-up post quoting Fried again shows how “obvious / easy / possible” can be a good lens through which to critique a design.
You have to make tough calls about what needs to be obvious, what should be easy, and what should be possible […]
This isn’t the same as prioritizing things. High, medium, low priority doesn’t tell you enough about the problem. “What needs to be obvious?” is a better question to ask than “What’s high priority?”
John Gruber:
Daring Fireball has always been a fast website and has always had very good uptime. That’s not because the back end is cleverly architected, but rather because it’s so simply architected.
Keeping it simple will get you fast and reliable way more than any sophisticated, clever plan will.
John Gruber on Apple pulling the ICEBlock app:
What good is building the most privacy-focused, user-friendly platform in the world when Apple will disallow an app for which airtight privacy is essential?
F*ck apps, make websites.
John Gruber:
Color me skeptical about the idea that my web browser should be “working for me”, rather than serving as a tool for me to work with.
The future facing us:
automated agentic web browsers surf automated AI-generated websites
OpenAI’s goal is to become Google — “organize the world’s information and make it universally accessible and useful” — faster than Google can become OpenAI.
Warren Buffet:
if you start fooling your shareholders, you will soon...be fooling yourself as well.
Also, he acknowledges the structure of American society for facilitating their success:
However, as Charlie and I have always acknowledged, Berkshire would not have achieved its results in any locale except America whereas America would have been every bit the success it has been if Berkshire had never existed.
So many technology companies wouldn’t have their success without the free and open web and its unwritten social contract. But the web would be a success without them.
We need more acknowledgement of what the unwritten social contract of the web has done, rather than a continued exploitation of it.
John Gruber on Apple’s fiasco being late to ship the more personalized (i.e. AI) Siri:
Promoting what you hope to be able to someday ship is way easier and more exciting than promoting what you know is actually ready to ship.
Hope burns everlasting.
John Gruber (perhaps unknowingly?) weighing in on the definition and delineating between a web “site” and a web “app”:
Google Search is more of an app than it is a website. A website is a server where you can make requests over the HTTP protocol and get results in HTML format. A server that communicates with clients via executable JavaScript is not a website.
You shouldn’t be expected to carry around a bundle of software from your utility company in your pocket.
Yeah I agree. That’s ridiculous.
The art of hypertext is writing:
social media has largely kneecapped true hypertextual writing by not enabling it...(Instagram, by far the world’s most popular such social network, doesn’t even let you paste hyperlinked URLs into the text of posts.) The only links that work like web links, where readers can just tap them and “go there” are @username mentions. On social media you write in plain un-styled text and just paste URLs after you describe them. It’s more like texting in public than writing for the real web. A few years ago these social networks...started turning URLs into “preview cards”, which is much nicer than looking at an ugly raw URLs. But it’s not the web. It’s not writing — or reading — with the power of hyperlinks as an information-density multiplier. If anything, turning links into preview cards significantly decreases information density. That feels like a regression, not progress.
But at a certain point, a hammer needs to hammer whatever it strikes, and sometimes, alas, that’s the user’s thumb.
This is how I feel about HTTP imports. They were a hammer, however much people were striking themselves in the thumb.
Using whatever client software you want to access content published using open standards on the internet is the way the internet was designed to be. But it’s not the way it’s worked out, by and large. Streaming video is largely available only via proprietary apps from each individual service. Same with streaming music.
Sad.
But not so with podcasts. Podcasts, more than any other medium, exemplify the original spirit of the open internet.
Hopefully there’s still a future where people say something like, “Subscribe wherever you get your content.”.
I’m hoping Project Tapestry explores this space...
I really miss UI design that made controls obvious. Clear affordances. All buttons obviously buttons, all text input fields obviously text input fields...20 years ago we bent over backwards to make the purpose of every control as obvious as possible; the style today is to make everything look like flat static text.
Some on-point observations of where we are today in UI design.
Depth and texture in UI are good things. Our displays have never been better suited to displaying color and fine detail, but our UI themes today look like they were designed for output on a crummy old laser printer or something.
I’ll repeat this until I’m hoarse, but the apps that best support accessibility features for disabled people invariably are also the most usable for everyone.
Gruber on the App Store ad debacle:
“No ads in the App Store, period” would have been a powerful, appealing message…“We sell ads in the App Store, but they’re OK because they don’t track you” seems to be the message Apple is going for, but that’s neither powerful nor appealing.
Too many companies and brands today settle for mediocre, safe justifications in messaging. Commitment is more powerful than visual design caveats.
Apple is actually scrupulous about labeling paid placements as “ads”, and using different background colors for them. One can certainly argue that ads should be even more clearly demarcated, but if you look for it, it’s always clear. But people don’t look. If the message were clear — that there are no ads or paid placements in the App Store, period — people might learn. But if the message is that there are ads, but not many, but now there are more than there used to be, and but if you look closely you’ll see that the ads have a blue background and a small “ad” label — almost everyone is going to assume that anything that might be an ad is an ad and the whole App Store is pay-for-play all the way down.
Gruber quoting Louis Anslow:
Creativity loves constraints, but it doesn’t love rules.
A good thing to remember when working on a design system.
Good reminder from Gruber that email clients are, unfortunately, web browsers without all the protections of an actual browser:
Don’t get me started on how predictable this entire privacy disaster [regarding spy pixels] was, once we lost the war over whether email messages should be plain text only or could contain embedded HTML. Effectively all email clients are web browsers now, yet don’t have any of the privacy protection features actual browsers do.
Gruber notes this crucial distinction about the design of Growl’s notification system:
Growl...served the notifyee, not the notifier, and that made all the difference.
I loved Growl. It was the notification polyfill for OSX: designed to become obsolete.
Gruber gives a fitting commentary on algorithms:
Blaming [this mess] on “the algorithm” is such ridiculous bullshit. What is an algorithm? It’s a set of rules and heuristics, created and decided by people. Blaming this on “the algorithm” is a shameless attempt to insinuate that they just put everyone into a system and the mean old computer decided to put front-line residents at the end of the list, when in fact, what they mean is, the people at Stanford who created the rules decided to put them at the end of the list. That’s their algorithm.
Gruber’s review of the M1 MacBook Air has this nugget which feels so relevant to product and software:
What you need to understand is that the best aspects of these Macs aren’t benchmark-able. It’s about how nice they are. The cooling system never making any noise doesn’t show up in a benchmark. I suppose you could assign it a decibel value in an anechoic chamber, but silent operation, and a palm rest that remains cool to the touch even under heavy load, aren’t quantities. They’re qualities. They’re just nice.
We’re always trying to quantify things that we can measure in order to show, with objective data, that they improved. But insanely great human-to-computer interaction isn’t solely a science. It’s also an art, which means the qualities you can’t or don’t measure have a huge impact.
Concept designs (and worse, concept videos) are a sign of dysfunction and incompetence at a company. It’s playing make-believe while fooling yourself and your audience into thinking you’re doing something real. Concepts allow designers to ignore real-world constraints: engineering, pricing, manufacturing, legal regulations, sometimes even physics. But dealing with real-world constraints is the hard work of true design. Concepts don’t stem from a lack of confidence. They stem from a dereliction of the actual duties of design.
Later:
Designing at the limits of possibility is one thing; designing unbounded by reality is another.
Gruber’s commentary on Twitter’s apparent forway into creating an open source standard for social media. What I liked was John’s analysis of prescriptive vs. descriptive specs.
XHTML was a boil-the-ocean plan to create a new version of HTML, its creators’ ideal for how HTML should be used — a prescriptive spec. HTML5 took the approach of standardizing how HTML already was being used — a descriptive spec. We all use HTML5 today.