When writing Meld’s new documentation, I added a section that I wish every software project had: “Things that Meld doesn’t do”.

Everyone’s had the experience of spending hours trying to figure out how to do <insert task here> with <tool of choice>, because obviously <tool of choice> must be able to do <insert task here>. Many years ago I remember trying to figure out how to create a histogram with Excel—ludicrously obvious functionality for a spreadsheet—but at the time it was all-but-impossible without a third-party commercial add-on.

If ‘stuff we don’t do’ is documented at all, it’s often relegated to a point in the FAQ (e.g., Gnumeric and pivot tables), which is okay as long as it shows up in a simple search. Ideally though, I feel like software should do a better job of telling you both what it can do, and what it can’t.

Spending time only to find out that a tool can’t solve your problem is an incredibly frustrating experience.

Exposing your limitations might feel like bad marketing, but ultimately you’ll end up with fewer unhappy users.