Tag Archive

Choices are Bad: The Anti-Settings Principle

Thursday, July 30th, 2020
Choices are Bad: The Anti-Settings Principle

What’s the most absurdly provocative way I can put this? Never imagine what your users will want! Apps must only ever do one single thing! If-statements considered harmful! Yes, this is all pretty rich coming from the people who built a goal-tracking app with, if I’m doing this math right, multiplying out all the various settings… 73,728 types of... »

The Anti-Robustness Principle

Thursday, July 16th, 2020
The Anti-Robustness Principle

This is another tech nerd post. Normal humans seek cover!   Abstract: Fail loudly and immediately.   (I sure hope all the normal humans took cover already because that sentence sure would sound different to them than to us! I also hope this isn’t all too obvious... »

Announcement: The Yellow Brick Half-Plane Has Arrived

Tuesday, June 9th, 2020
Announcement: The Yellow Brick Half-Plane Has Arrived

Until today Beeminder had a fundamental design flaw that was baked in from literally day one. The first line of code for what would become Beeminder was to draw a line on a graph in Mathematica from a target weight to a goal... »

The Anti-Magic Principle

Wednesday, May 27th, 2020
The Anti-Magic Principle

Being a fan of overly provocative titles, I was tempted to title this “If-Statements Considered Harmful”. Meaning that it’s so tempting to add little bits of intelligence to your app to make it do the sensible thing in different circumstances. And that’s usually perfectly correct but the Anti-Magic Principle... »

X-Treme Nerd Interlude: Computing and Visualizing Level Curves of the Days-To-Derailment Function for the Upcoming Yellow Brick Half-Plane New World Order

Thursday, May 14th, 2020
X-Treme Nerd Interlude: Computing and Visualizing Level Curves of the Days-To-Derailment Function for the Upcoming Yellow Brick Half-Plane New World Order

For background on the Yellow Brick Half-Plane that a normal human could conceivably care about, see our previous post on how we’re killing the custom lane widths feature. This post is strictly for abnormal humans, and/or, more realistically, for ourselves, because math... »

How To Write Functional Specs

Thursday, March 12th, 2020
How To Write Functional Specs

We’re assuming here that you’re already conceptually on board with writing specs. If you’re skeptical, Joel Spolsky will set you straight! Here’s my own mini-pitch for specs: Writing... »

Beeminder ♥ Project Euler

Monday, November 4th, 2019
Beeminder ♥ Project Euler

We have a new official integration partner! Except arguably not official, nor a partner. Project Euler is philosophically opposed to any kind of commercialization. So much so that the founder and all volunteers who contribute to it have committed to never profit financially from doing so. Pretty... »

Redqueening, Inbox Zero, Backlogs, and Fluid Dynamics

Wednesday, October 23rd, 2019
Redqueening, Inbox Zero, Backlogs, and Fluid Dynamics

If you’re a fan of Mark Forster (as we certainly are) then this whole post amounts to giving a name — “redqueening” — to step 2 of his »

Pareto Dominating The Pledge Cap UI For Goal Creation

Friday, August 9th, 2019
Pareto Dominating The Pledge Cap UI For Goal Creation

This is part 3 of a 3-part blog series! Previously we defined Pareto dominance and what that means for software, and then we made our case for and committed to the »

The Pareto Dominance Principle for Apps and Websites

Tuesday, July 30th, 2019
The Pareto Dominance Principle for Apps and Websites

This is part 2 in a 3-part series. Part 1 defined Pareto dominance and Pareto-efficient software.   I have some advice that now feels (to me, subjectively) too... »