Ask HN: What made you improve your logical reasoning?
I'm a full-stack developer with 5 years of experience. Throughout my career, I always struggled with logical reasoning and especially more so the last few years as I am deep in development of complex systems.
I am a visual reasoner, I always try to imagine and visually organize any logical problem, by imagining a canvas of logic gates (My major is in EE). E.g. If A is 1 and B is 1 the output of and gate is 1 (visually).
The problem comes when these problems get a bit complex. Most people I know do it much easier. Or perhaps do it instinctively.
At times I can stare at an if statement and really struggle to focus. I try to organize it visually, lose focus and the entire circuit which I was building mentally falls apart. I really can't help it. It is part of why I'm bad at LeetCode problems as well. I always blame my past self for not learning math enough and engrave the logical problem solving instinct to my brain. I guess it is what it is...
Any advice?
For me, logic is easier to understand when each operand is either on a separate line with a trailing comment, or where each operand is stored in a well named variable.
Any expression with more than 3 operands I rewrite in this way.
I will also reconstruct the expression so that it reads like a line of prose, and where the chain of reasoning reads from left to right, with the most significant operands coming first.
I also use brackets liberally and never rely on the rules of precedence because that reduces the cognitive load.
Sometimes I will also break up the overall expression into named sub-expressions, each with their own comments.
[dead]