Papercut – a small annoyance in a piece of software, a rough edge, something that shouldn’t be there, a little issue that makes you say “ugh” out loud or roll your eyes. It’s usually not a bug, since functionality is not impeded, but it is something that should be fixed.
Lately I’ve started to wonder: does it even matter whether piece of software has papercuts?
That question is kinda a big deal for me. For years, I’ve been firmly in team anti-papercut. At work, I’ve long been advocating against papercuts. When I run into one I try to fix it; I applaud others that remove them; in case a papercut is added I do my best to call it out; I even organized our ticketing software so we can track and remove papercuts together.
I always thought I’d slam the table and shout “you’re god damn right they do” when asked whether papercuts matter, but a few weeks back I had a lightbulb moment. It wasn’t one of those lightbulb moments where you’re basked in light and can hear the angels sing, but the other type: dark basement, noise in the pipes, lighbulb fizzling and close to going out.
The realisation: I keep paying for and using software even though it has papercuts.
Re-rendering glitches in GUIs, badly formatted output in CLIs, margins and paddings in web applications that are ever so slightly off, inconsistent formatting of text, missing loading indicators, having to hard-reload pages – I run into these constantly and yet I keep using the software. Why?
My current guess is this: because the software still solves my problems, it still provides value, despite the papercuts. Even though the credit card input form on the checkout page is glitchy, I can still buy something; I can also still run the command and do what I want to do, even though there’s needless blank lines between every actual line of output and you can feel a race condition behind the way the spinner is rendered; and even though the conversation view is always scrolled to the wrong position when I open it, I can still send a message to a friend.
Papercuts annoy, but they don’t stop me from reaching my goal.
Does that mean they don’t matter? Fuck it, leave ’em in?
I now think that they matter less than I once thought. Before my lightbulb moment I’d have said that it’s bad UX if I roll my eyes while using an application. Maybe I would’ve even gone so far as to say that great UX is the absence of papercuts. Now I think that might be wrong.
The current hypothesis I have is this: software with great UX is software that gives you a clear path to solving your problem, even if you have to walk on glass on that short path. That means the presence and absence of papercuts is not related to bad and good UX. And that too means that papercuts might not be related to, say, business success of a bit of software. If it still solves the problem and still provides value, I assume it can also earn money.
It doesn’t feel right, though, does it? Papercuts don’t matter - that’s shiver-inducing. Similar to saying that inefficiencies in software don’t matter, right? But that we know to be true. Whether we like it or not, we can’t deny that there’s a whole lot of resource hogs out there that could run on a quarter of the CPU and memory that they’re currently using and yet they’re still wildly successful.
Maybe it’s pride in the craft. Maybe papercuts rub me the wrong way (and cut me?) because they don’t let me sleep at night. Maybe it’s because sometimes they’re an indicator of sloppy work. Maybe it’s because my eyes are tired of rolling back.
Maybe. Who knows. But here’s something I’m starting to know on some level: in some sense it’s nice that software can still be successful even if there are rough edges, as long as it solves the users problem and provides value.
For me, the presence of papercuts affects my rating of a very useful app between 4 and 5 stars. Maybe 3 if there are really annoying glitches.
Will I still use it? Yes, if it solves my problems.
Will I be enthusiastic about it and recommend it? Way less likely.
Example: Upwork. I used it for years and hated it because of its random glitches (and the lack of ways to give feedback and feel heard). I even recommended it to others with a strong warning that "it's crap but I have no better idea".
I think if one just wants users then fixing papercuts might not matter that much, but if you also want a high NPS, it does matter.
There will always be obscure paper cuts or edgecases you can chase forever. Like the UI allows you to input Chinese characters but it errors trying to save them... But who cares?
You have to pick your battles with the paper cuts and edge cases. You definitely want it to work perfectly 95-99% of the time.
Congrats on this epiphany. Next you will also realize technical debt doesn't matter much. 😜