Teaching "boring" syntax #785
Replies: 1 comment 1 reply
-
Would it be an option to modify design goal 4 and exclude colons from it, i.e. allow them earlier than at "the latest moment possible"? While in natural language, colons might be a punctuation mark taught, learned and acquired somewhat late, my impression is (Please correct me, if I'm wrong.) that Hedy assumes that learners are already sufficiently progressed in natural language writing to use colons naturally and intuitively where they belong. So when introducing syntax, we can maybe (where appropriate) build upon learners' knowledge of natural language grammar. Level-7 code like
feels kinda awkward to me. Not because of its difference to Python or other programming languages, but because of its difference to (written) natural language: I'd really expect some punctuation mark between "times" and "print". (Well, not just any punctuation mark, but either a comma or a colon.)
feels much closer to how I'd express that in natural English. So maybe this (and other) control structures can be introduced not just with their keyword(s), but also with (a bit) more syntax, including (at least some of) the colons. |
Beta Was this translation helpful? Give feedback.
-
@MarleenGilsing and I just had a wonderful conversation about teaching syntax. We are struggling with the issue that some of the higher levels are pretty boring and only teach syntax. That violates design goal DG6, because the changes in syntax then do not really add new meaningful programs.
An example of a meaningful addition is the current level 3. Adding quotation marks in level 3 enables new types of programs. An example of a less meaningful addition is the current level 9, which adds the colon. The colon does not make programs more fun or even allow for new types of programs.
How to approach this? We have a few directions in mind:
elif
with the colon (forelif
and forif
) That has as a downside that we might detract attention from students, but does help with making cool programs.Relevant design goals for this discussion are below. Or consult the full design.
Beta Was this translation helpful? Give feedback.
All reactions