-
Notifications
You must be signed in to change notification settings - Fork 174
Add auto-run for playground (#466) #466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Pull Request Test Coverage Report for Build 1201
💛 - Coveralls |
|
@ccyccyccy can you take a look at the merge conflicts? |
|
The autorun functionality is only working for playground, and not working in the assessment workspace. Should I add it in before we actually merge? Also, I don't know if we should preserve the state of autorun after the user closes the browser or should we let it default to off? Currently it remembers the user's choice and sets it when they come back. |
ning-y
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
It's probably for the best that this feature is only available on the playground for now, so the students can catch bugs. We want to avoid bugs in the assessment workspace as far as possible, especially when the external libs are involved. Though, admittedly, I have not tested this feature out enough to judge how stable it is. You can track auto-run for assessments workspace as a todo in the issues, or projects (whichever the active development team prefers). This also gives time for discussion on if auto-run should be enabled for all assessments no matter what, or if some assessments should not have the auto-run feature. For example, perhaps in a particular assessment you want the students to practice visualising and predicting the output of their program as they write it. In this case, you may want to disable the option for auto-run to encourage the student to use their brains a little more.
Intuitively, I think that auto-run should default to off whenever a workspace is freshly rendered.
|
|
p.s. I also recommend the active dev team adopt these specifications for good commit messages. Since the 'Squash and merge' buttons on github PRs generate the squash commit message from the PR title, this also implies good PR titles. In this case, it would be something like "Add auto-run for playground (#466)". |
|
@ningyuansg that's an interesting discussion. You are saying that the auto-run feature may discourage students from visualizing (mentally) what happens when the program runs, and instead rely on their very eyes to do that "visualization". My hunch is that the opposite is true for beginners: I think that providing an immediate connection between the program as it is being edited and the outcome and effects of the program will facilitate the formation of mental models. I do not have evidence for this, but I would love to get some. I'm trying to push the Source Academy towards "immediate connection": Shortening the distance between the learner and the computational process that unfolds due to his actions. For a passionate case for "immediate connection", see Bret Victor's talk "Inventing on Principle", https://vimeo.com/36579366 I'm not 100% convinced that it will be beneficial, but I see an opportunity to move in this direction, and experiment. In the same vein, we will introduce an environment visualizer in the Source Academy, and a tool to visualize the substitution model. My objective at the moment is to develop these tools and get as much exposure as we can, in order to take a decision what to include and what not to include in the Source Academy. In the same spirit, I'm arguing for enabling the autorun-feature for missions. |
I suggest we merge this feature into master, so that we can get as much feedback as we can.