Great question! Todo lists are next to useless for me. For important stuff that I have to do and must not forget about, I set up alarm clock (without description, as such stuff is in the back of my mind anyway). The rest is kept in text files, notebooks, napkins, etc., which I re-visit periodically or remember about spontaneously.
The problem is not with code reviews but with how adversarial they have become. Instead of making the best attempt to comprehend and embrace the author's style and intention and finding compelling arguments for the question "why this code is probably fine and should be merged as-is?" people nit on all kinds of stuff, mostly highly subjective. Along the way they don't actually catch that many problems or bugs but instead new problems and bugs are introduced while implementing their nits. All surrounded by a lot of noise that has to be dealt with in an already stressful multitasking environment. I agree with other posters in this thread that most people can't code review for crap and have very perverted idea about code review aims and goals. Code reviews as they are practiced now only serve to destroy trust, velocity and team morale. As someone noted elsewhere in this thread, if it's me (directly or indirectly) who's going to be held accountable for a deficiency in my code, whether it has been reviewed or not, why do I have to adjust my code to someone's arbitrary criticism? Common sense tells me that not requiring to have my code reviewed at all times and, by doing so, stressing my personal responsibility for the things I do, would actually increase my sense of ownership and keep me on my toes, more likely leading to better coded/tested changes, wouldn't it? I.e. it is not about blindly trusting all code that I produce but rather trusting in my ability to judge and make final decisions: to request code reviews or not, to address comments or not, to do my job as I see fit or not.
> The problem is not with code reviews but with how ... they have become.
Perhaps "banal" is the word you are meant to use.
There's a saying about that a 10 line PR will get 10 comments, but a 1000 line PR will get a "looks good!".
Of course this is not really what is happening. A 10 line PR can be completely unintelligible and a 1000 line PR might be a joy to read.
Once the code base has become a ball of mud, no one really bothers to review anything properly - it's going to take as long as writing it yourself. So perhaps, we get picky about some worn out code style point (incorrect indent etc) just to show we are alive.
> Instead of making the best attempt to comprehend and embrace the author's style and intention and finding compelling arguments for the question "why this code is probably fine and should be merged as-is?" ...
I don't think we should take it as given that the goal should be to approve the code in the originally written form. In some sense, I think if you're in an environment where you're going to be doing PRs for every change anyway, if your code is consistently perfect when you cut the PR, then probably you've cut it too late?
What if instead we frame PRs as the basis for an artifact-based discussion about how to do something. The code needs to exist in a complete enough form to provide a concrete basis for discussion. But if you see your reviewer as a resource and collaborator, who might have ideas or insights that you didn't, then ask for those ideas or insights a bit earlier, before the code is polished.
The best PRs aren't the ones that catch a bug. The best PRs offer some criticism or question or suggestion that allows you to reframe an abstraction or refactor something to be simpler, more flexible, more testable, more readable, faster, whatever, and from which the original author learns something. Your code might not have had a bug before, but that doesn't mean it cannot and should not be improved.
Circling back to 'trust' though, this approach does require a degree of trust. The reviewer can't be focused on nits and gotchas; more minor things are inevitable if our colleagues pull us in sooner, but we have to trust that they'll get sorted out.
I worked in an environment that was like Raycast and later adopted gatekeeping code reviews. If the code reviewer wasn't happy you couldn't merge. This gives the reviewer power to have the author shape the code the way the reviewer prefers at little cost to the reviewer. And of course the authors often respond by doing likewise when asked to review code. My approach as a reviewer was to provide feedback without blocking merges, but this alone is not enough to incentivize reciprocal behavior.
There was a guy at work who would always complain about numbers that weren't given names as #defines regardless of whether it made sense or not (Magic Numbers!). My co-worker asked him why he was so picky about it. Apparently because someone did that to him.
It's like one of the most wide-known facts about Warren Buffet is that he likes fast food and coke and even bought himself a diner. Or that Bill Gates drinks (or drank at some point) at least one can of coke a day. So cute, so down to earth! See, they're just like us!
Yeah, not everybody has to work with networks or cryptography, but I would've imagined that people at least read libraries that they use (to figure out what's going on under the hood) and inspect/debug low-level stuff from time to time.
One more example: itch in one's throat and nasty suffocating cough that does not stop for an hour. Surprisingly, this might be caused by reflux (without the accompanying stomachache).
I imagine it would be pretty easy for someone not used to dealing with gastritis on a regular basis to attribute such a symptom to "COVID".
Yeah, all of these "long covid" symptoms overlap substantially with other, common things, or have otherwise been defined so liberally by these terrible, self-reported "studies" that anyone with a normal human immune system and a head cold would qualify. Just consider the three most common complaints (by far):
Cough & Shortness of breath: allergies, asthma, typical recovery process from any cold or flu
Fatigue: depression, anxiety, insomnia, recovery from most illness
Brain fog (whatever that is): depression, anxiety, insomnia, recovery from illness...
It's not that "long covid" isn't real...it's just that the scientific data for it at present are so vague that you can "have" it by being a normal person.
I can absolutely feel a kind of religious zeal and moral superiority from the pro-vax side. It will be hilariously stupid if long-term side effects turn out to be real.
“I am vaccinated. Look at this unvaccinated person. I am not like them. They are not like us. Lets go find more of them. Let’s throw stones at them. We’re not usually allowed to throw stones, but we can because they are bad. And I am now doing good, and it brings me satisfaction and purpose.”
Vaccinations, like masks, may have taken on a political identity. Therefore a persons decision to be vaccinated may be seen as others as a political statement.