Things we take for granted are often quite complex for beginners . Take counting for example. It's supposed to be really simple and easy, right?
WRONG. Counting is one of the biggest source of programming errors. Consider this question:
@neeldhara
@3blue1brown
it's only after writing code for years that I understood the name for these errors -- "off by one" and "open/closed intervals"
it's also why as kids we'd all argue about whether you were 13 years old or "12 years old, but 13 running" etc
@vikasgorur
@3blue1brown
Yep! To top that, different languages having different conventions for what they mean by the “range from i to j” in various contexts just adds to the fun :|
@neeldhara
@3blue1brown
As a student, I often find that teachers gloss over things, so they give us a formula or a rule but don’t explain what is actually happening under the hood, and asking about what’s actually going on, I just get; “it’s far to complicated to explain right now”. This is a real pain.
@neeldhara
@3blue1brown
It's often called a fencepost error. If you want to put up a fence that's 30 feet long with fenceposts every 10 feet, how many fenceposts do you need? You need fenceposts at 0, 10, 20 and 30 feet - FOUR fenceposts! Don't "just" do the math, LOOK at what you're doing!