Ask HN: What concepts have you never truly understood?
- How type theory can prove mathematical theorems. I can limp through the first exercises of Software Foundations, but eventually realize I&#x27;m just &quot;making it work&quot; instead of knowing how it works. Only made it halfway through My Little Typer and even implemented STLC and used it to prove simple propositions with implications. But I still couldn&#x27;t tell you how dependent types magically make it possible to prove real theorems.<p>- How opamps work and how they&#x27;re used to make a differentiator.<p>- How quantum computing works. I want understand it to understand why factoring and discrete log fall to QC but not the post-quantum algorithms. I never make it past the intro chapters.<p>- What exactly makes cryptographic hash functions have desirable properties like collision resistance? Bits go in, bits go out, why can&#x27;t full observation of the process not yield a method to construct inputs for a target output? Similar questions for block ciphers. It is much easier to &quot;see&quot; the impossibility in public key schemes because you can play and experiment with the math. In symmetric algorithms it looks like just a bunch of arbitrary bit operations.<p>EDIT:<p>- Relativity. I accept things like time dialation and nothing can go faster than the speed of light. But I have no idea why you would experience less time passing than me after a high speed rocket trip when, from your perspective, you saw me on a high speed planet trip. Or what prevents a rocket in space with 3m&#x2F;s^2 acceleration from reaching the speed of light after 100,000,000 seconds.