Skip to content
DevMeme
4585 of 7590
CS Fundamentals Post #5031 · source on Telegram

American Chopper yelling match about memoization versus plain old caching terminology

Description

Five-panel American Chopper meme: In panel 1, the tattooed father leans from his desk and yells, white text overlay reads, “WHY DO WE USE THE WORD MEMOIZE WHEN WE ALREADY HAVE CACHE?” Panel 2 shows the son seated beside a black computer tower retorting, “COMPUTER SCIENTISTS NEED THEIR OWN SPECIAL WORDS JUST LIKE MATHEMATICIANS.” Panel 3 returns to the father shouting, “IT’S CONFUSING AND UNNECESSARY.” Panel 4 depicts the father angrily throwing a chair while the son ducks; the caption says, “GO BE A MATHEMATICIAN THEN.” Panel 5 shows the father storming out, pointing, with text, “COMPUTER SCIENCE WAS ALWAYS JUST APPLIED MATHEMATICS.” The visual gag satirizes computer-science jargon, contrasting the algorithmic term “memoize” with the more general systems concept of “cache,” highlighting communication gaps and the mathematician roots of CS terminology

Comments

30
Anonymous ★ Top Pick Memoization: the only cache that lets you claim referential transparency while smuggling a global hash map into prod
  1. Anonymous ★ Top Pick

    Memoization: the only cache that lets you claim referential transparency while smuggling a global hash map into prod

  2. Anonymous

    After 20 years in the industry, I've realized the only difference between memoization and caching is whether you're trying to impress academics at a conference or get your PR approved before lunch

  3. Anonymous

    The irony is that both sides are right: memoization *is* just caching with extra steps (specifically, caching pure function results keyed by arguments), but we needed a fancy word to make our O(2^n) recursive Fibonacci implementations feel less embarrassing when we 'optimize' them to O(n). Meanwhile, the real veterans know the hardest problems in CS remain: cache invalidation, naming things, and explaining to stakeholders why 'just add caching' isn't always the answer

  4. Anonymous

    Memoize: cache's functional alter ego, because 'lookup table' wasn't recursive enough for tenure

  5. Anonymous

    Memoization: caching where the key is the argument tuple and the invalidation policy is “trust me, it’s pure” - the only time renaming pretends to fix cache invalidation

  6. Anonymous

    Memoization is just a cache with invariants; the moment someone slips in a TTL, your O(n) DP quietly balloons to exponential and on-call becomes metaphysics

  7. @karim_mahyari 3y

    It's not exactly caching, though. Memoization doesn't always work with a fixed size memory

    1. @RiedleroD 3y

      caching doesn't always work with fixed size memory either

      1. @karim_mahyari 3y

        Wait, how is that? That's new for me

        1. @RiedleroD 3y

          if you have variable data size and not caching something isn't an option, you also need variable cache size

  8. Deleted Account 3y

    > CS was always applied math The author of the meme hasn't heard of frontend dev I guess

    1. @rShadowhand 3y

      What is frontend dev if not a whole bunch of applied points in space while representing properties with numbers?

      1. Deleted Account 3y

        "What is frontend dev ... ?" The primary factor of climate change

        1. Deleted Account 3y

          What about a useless unit/integration test runs?)

          1. Deleted Account 3y

            I guess useless frontend test runs are the worst thing

    2. @neizvestnyi 3y

      > frontend > CS pick one

      1. Deleted Account 3y

        Why not frontend for CS ?

        1. @neizvestnyi 3y

          You mean LaTeX?

          1. Deleted Account 3y

            Idk what's frontend for CS written in but I doubt that it's latex

            1. @karim_mahyari 3y

              If not LaTeX, then good ol' markdown

              1. Deleted Account 3y

                What's the purpose of writing frontend for game (CS stands for counter strike) in markdown ?

                1. @sylfn 3y

                  CS - Computer science (probably)

                  1. Deleted Account 3y

                    I know I jokingly used CS as counter strike here https://t.me/dev_meme/5031?comment=71732

                  2. Deleted Account 3y

                    No, it's C# (C Sharp)

                2. @karim_mahyari 3y

                  Probably to flex?

                3. @ZgGPuo8dZef58K6hxxGVj3Z2 3y

                  CS stands for Celsius Hashtag but you may ask why not a H then? It was a typo that never got fixed

                  1. @callofvoid0 3y

                    reversed MicroSoft C your probably saying thats CSM but they deleted M for stealth things if you catch my drift

  9. @WatashiWaSeireidesu 3y

    Here you can see a bunch of backend devs which only fetch data from a DB to spit ot through an endpoint and viceversa talking shit about frontend thinking they only do CSS LOL

    1. Deleted Account 3y

      I wanted to joke about .tsx part of your name but it'd be dumb considering my own username

  10. @M4lenov 3y

    Baste

Use J and K for navigation