There’s a reason people start with YouTube tutorials (which, let’s face it, are responsible for many of us passing undergrad CS classes). They give a broad, approachable explanation of the topic.
> without understanding for loops and basic programming concepts
Depending on what you mean by “understand” I would guess most software engineers don’t “understand” for loops either. For loops are an abstraction built on the CPU instruction set provided by each programming language. We use them with the knowledge of how they behave, which is the correct level of abstraction nearly 100% of the time.
And in CS undergrads, we don’t throw people into a course on assembly first. First they learn something like Java or Python, and only later dig deeper into more fundamental concepts. That’s not an accident.
> without understanding for loops and basic programming concepts
Depending on what you mean by “understand” I would guess most software engineers don’t “understand” for loops either. For loops are an abstraction built on the CPU instruction set provided by each programming language. We use them with the knowledge of how they behave, which is the correct level of abstraction nearly 100% of the time.
And in CS undergrads, we don’t throw people into a course on assembly first. First they learn something like Java or Python, and only later dig deeper into more fundamental concepts. That’s not an accident.