I can't say much for the code/CS part of the "what to teach/what students should learn," but for soft skills there are some things I am always trying to improve. I'm a teacher assistant for a coding bootcamp, and primarily work with adults who are transitioning from a totally different career (usually) to a CS career. That being said, maybe my advice isn't too relevant.
My main focus is to aid the learning process, and with that in mind, here are the main things I work on during class:
Being overly specific. During the first few weeks of classes, I find myself repeating a lot of different things like, "Open your server, which is in your Terminal, and look for the params hash", "What do you think no method for nil:Nil class means?", or "In your Sublime text editor, you can find the controller folder under the app folder."
Also being overly specific when trying to understand their questions. I'll make them ask the question again but with more detail to make sure they understand what the problem is. While it helps me answer their question, I'd say 70% of the time they answer their own question.
Over-explaining a concept to make sure all gaps of knowledge are covered. I've had some questions where a student told me they understood xyz concept, but if I explained it anyway they would have an 'aha' moment like: "Oh! So ProductsController#index was pointing to the index method in the Products Controller!"
Those are some things I work on, and while I don't have that much experience teaching, I would hope that other teachers do simiar things.
Creativity is definitely key for learning. The more inspired students are to be creative, the more likely they will reach a solution to a problem or take ownership of their projects.
Also, definitely agree with project-oriented curriculum as opposed to testing.
Not sure how you currently manage the classroom and curriculum, but repl.it has a classroom management tool for students: repl.it/site/classrooms I'm always thinking about learning + CS and their tool caught my eye when I first saw it.
Anyway, hope you didn't mind reading this long comment. Thanks for doing the good work of furthering education!
I can't say much for the code/CS part of the "what to teach/what students should learn," but for soft skills there are some things I am always trying to improve. I'm a teacher assistant for a coding bootcamp, and primarily work with adults who are transitioning from a totally different career (usually) to a CS career. That being said, maybe my advice isn't too relevant.
My main focus is to aid the learning process, and with that in mind, here are the main things I work on during class:
params
hash", "What do you thinkno method for nil:Nil class
means?", or "In your Sublime text editor, you can find the controller folder under the app folder."xyz concept
, but if I explained it anyway they would have an 'aha' moment like: "Oh! SoProductsController#index
was pointing to theindex
method in the Products Controller!"Those are some things I work on, and while I don't have that much experience teaching, I would hope that other teachers do simiar things.
Creativity is definitely key for learning. The more inspired students are to be creative, the more likely they will reach a solution to a problem or take ownership of their projects.
Also, definitely agree with project-oriented curriculum as opposed to testing.
Not sure how you currently manage the classroom and curriculum, but repl.it has a classroom management tool for students: repl.it/site/classrooms I'm always thinking about learning + CS and their tool caught my eye when I first saw it.
Anyway, hope you didn't mind reading this long comment. Thanks for doing the good work of furthering education!
This looks great; thank you!