Tag Archive

How To Write Functional Specs II: The Spec-List

Friday, September 4th, 2020
How To Write Functional Specs II: The Spec-List

Writing software involves a lot of backing yourself into corners. For even the simplest-seeming program, you find yourself adding duct tape and chewing gum to satisfy different requirements and logic bugs that come up. Then you gradually whittle it back down and end up with a few simple lines and it’s... »

Blog-Post-Driven Development

Monday, August 24th, 2020
Blog-Post-Driven Development

It seems like every time I talk about principles of software engineering to you all I get jaw-droppingly insightful replies. No pressure. Ok, if you google “documentation-driven development”, it seems to be a lot of people saying that documentation is so important that you should write it first blah blah blah. But I think there’s a... »

Beeminder ♥ Boss as a Service

Sunday, August 9th, 2020
Beeminder ♥ Boss as a Service

We’re so excited to announce Beeminder’s Even More Official partnership with Boss as a Service, of which we are big fans! Some of us on the Beeminder team use it every day, in fact. In the past, Beeminder actually attempted to... »

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... »

Announcing TaskRatchet: Like Beeminder for Your Todo List

Monday, June 22nd, 2020
Announcing TaskRatchet: Like Beeminder for Your Todo List

Nathan Arthur (narthur) has been beeminding for over two years now, brilliantly and prolifically. He’s also no small part of what makes the Beeminder forum the wonderful place that it is. And now he’s built an app of his own that complements Beeminder beautifully, which he’s about to tell you about... »

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... »

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... »

The Startup Egg-Basket Principle

Friday, February 28th, 2020
The Startup Egg-Basket Principle

The startup egg-basket principle is: put all your eggs in one basket. Be laser-focused on the one thing you’re best at. If you’re scrambling for survival, focus only on the one most promising thing for making the startup sustainable. For example, most startups should focus exclusively on their premium plans and not have a free plan. So much... »

Dogfood Binge

Thursday, October 10th, 2019
Dogfood Binge

nomnomnom Imagine how good a manufacturer of dogfood would have to think their dogfood is to eat it themselves! When a company uses the thing they make, especially as part of running the company, it’s called dogfooding. We’ve been dogfooding Beeminder like maniacs for years, and paying users when we derail... »