3 ms·
I agree that becoming a professional requires socialization and sustained practice. I intentionally left the scope of the question open, but am most interested
by cproctor 11y ago
I agree that becoming a professional requires socialization and sustained practice. I intentionally left the scope of the question open, but am most interested in approaches that help move people from being novice users to being literate: able to accomplish their own goals using programming (at a hobby level) and reason thoughtfully about programs.
There are a huge number of ed-tech apps and products being developed with the intention of "teaching X to code," but they mostly seem to fit into a taxonomy of approaches that was already in place 30 years ago. Approaches such as interfaces where syntax errors are impossible (Scratch), toy worlds that present puzzles to solve (Karel the Robot), or full-power programming languages that are fundamentally oriented toward teaching by providing graphical feedback on program execution state (Swift).
I'm curious about others' sense of what's really new, but am not very interested in saying novelty is good or bad as compared to working on a previously identified approach. I thought Bret Victor's DBX talk (http://worrydream.com/dbx/ http://worrydream.com/dbx/) was an interesting exploration of this space.