When teaching someone programming for the first time, is it better pedagogy for them to learn a lower level language or a higher level language first? Both in terms of understanding and motivating them to continue learning to code.
I was inspired to ask this question after listening to Casey Muratori talk in a podcast about his experience learning Basic and how it was closer to the actual control flow of assembly with goto <==> jmp (compared with a kid who grows up learning Python in the modern day and doesn’t gain an intuition), as well as Bryan Cantrill’s hatred of Logo and embrace of lower level programming after he found it more enjoyable. On the flip side, SICP famously uses Scheme and has been tremendously popular. Curious what people here think, anecdotes from your lives.