• Square Singer
    link
    fedilink
    2
    edit-2
    1 year ago

    But how often, as a coder, are you going low-level?

    If I want to sort a list, I don’t invent a sorting algo.

    I don’t even code out a known sorting algo.

    I just type .sort(), and I don’t even care which algo is used.

    Same with most other things. Thinking about different kinds of lists/maps/sets is something you do in university.

    In reality, many languages (like e.g. Python) don’t even give you the choice. There are List(), Map(), Set() and that’s it. And even on languages like Java, everybody just goes for ArrayList, HashMap and HashSet. Can’t remember a single time since university where I was like “You know what I’d fancy now? A LinkedList.”

    I honestly don’t even know if Java offers any Map/Set implementations that don’t use hash buckets.

    And even of boolean logic we only use a fraction. We use and, or, not and equals. We don’t use nand, nor, identity, xor, both material conditional variants, material biconditional or their negations.