Let’s look at stats for our ﬁrst coding challenge, where students have to write three commands to draw three rectangles to form an H, and they need to ﬁgure out the right syntax (no copy/paste) and appropriate numbers.
give their age Wednesday, March 12, 14 We have a lot more stats for our ﬁrst challenge, because many students did Hour of Code, which included that ﬁrst challenge, but this logic challenge is outside of that.
for younger children OR 1) Programming requires patience 2) JS programming requires typing skills 3) ProcessingJS requires spatial reasoning and temporal-spatial reasoning Wednesday, March 12, 14 There are only a few reasons now why we might see greater disparity across the ages - it may be too conceptually difficult. It could also be the particular way that WE are using conditionals, in ProcessingJS, is too difficult. We’d have to have a non-ProcessingJS curriculum to compare to, to know that for sure.
Practice with personal projects - Feel comfortable with programming - Use Programming to explore other topics Major in CS Use CS skills/theory with other major Go off into world, understand it better 8th grade Wednesday, March 12, 14 We could teach any sort of syntactic programming language. Maybe it’ll be Python or Go or a new language that’s invented tomorrow. Or maybe Quorum, a language that’s speciﬁcally been designed for teaching, based on usability studies. As long as it’s a language that empowers the students to create new things and solve problems, it ﬁts the bill.
101 - Practice with personal projects - Feel comfortable with programming - Use Programming to explore other topics Major in CS Use CS skills/theory with other major Go off into world, understand it better 8th grade 3rd grade - Block-based programming - HTML (Markup) programming 5th grade 1st grade - “Unplugged” programming Wednesday, March 12, 14 Okay, but that’s not the only sort of “programming” we could teach. We could teach programming that doesn’t involve any computers-- just ordering each other around like robots with commands. We could teach block-based programming, where they don’t need typing skills but still learn the concepts. We could teach HTML, where there are less concepts to grasp. We could teach different types of languages at different ages, and maybe we could see less age disparity for different types of programming.