The LOGAF Scale
Have you ever gotten into a heated debate on a pull request, only to find out that the person critiquing your code didn’t really care that much whether their feedback made it into the PR? Or have you been upset when your strenuous objections to some design are going ignored by others?
In these cases, there’s a brilliant tool that a coworker (Justin Holmes) came up with that I’ve found to be very useful: logaf, or “level of give a fuck.” It’s a pretty simple concept: When you want to indicate how much you care about one of your opinions, you assign it a logaf rating.
It’s useful because logaf quickly and clearly communicates how much you care about something. A low logaf represents an idle thought that you aren’t going to spend much time defending, whereas a high logaf represents a desire to pump the brakes on the situation until resolved.
For example, I might say in a PR “I don’t think we need to lazy-load this variable because it’s not that expensive to construct, but my logaf is low.” Because I’ve indicated a low logaf, the author can take or leave my advice; either way, no further discussion is required because I already indicated it doesn’t matter much to me.
On the flip side, suppose there’s a new feature with a design choice some of us feel is highly detrimental to the app. If my coworkers and I get together and declare we’ve got a high logaf on this design, then we know it’s something we need to take back to the drawing board and rethink.
Logaf is great for written communication, where the emotional tone of text can be easily misconstrued. It also removes some ambiguity - what exactly constitutes an “important” or “serious” problem can vary from person to person, but a high logaf is crystal clear. Additionally, I find logaf effective for self-reflection: if I take stock of my logaf on a topic and it’s zero (or near to it), then I just opt not to comment at all.
We don’t have a well-defined scale for logaf - we usually just say low/medium/high. Nor is it something you should deploy all the time: just bring it up when you feel the need to communicate your level of care.
I think more teams should give logaf a shot. I’ve got a high logaf on that.