← Back to context

Comment by deepsun

6 days ago

My experience also shown that Python, being considered "simple", is actually harder for students to learn. Things I took as obvious are not for first time coders:

Ok, so spaces and indentation matter. How many spaces exactly there should be around `=`?

`a[1]` -- does it fetch something or does it modify something?

`for k, v in a.items():` or `for i in range(10):` -- waaa? How many spaces there should be?

What do you mean my Python script doesn't run, you see I clicked it and it runs. What do you mean "interpreter"?

And the main issue -- types. I'm 100% convinced now that the first language must be strictly-typed, like Java, and don't use `var`, always use explicit types. Otherwise students don't think in terms of types, but "what I put there" like it can hold anything.