Ask questions about what parts of a program change to help students identify times when a variable is needed. Share Ask questions about what parts of a program change to help students identify times when a variable is needed. with FacebookShare Ask questions about what parts of a program change to help students identify times when a variable is needed. with Twitter
Teach Processing first and then transition students to Java so they have a transition to a professional level programming language in a relatively seamless manner. Share Teach Processing first and then transition students to Java so they have a transition to a professional level programming language in a relatively seamless manner. with FacebookShare Teach Processing first and then transition students to Java so they have a transition to a professional level programming language in a relatively seamless manner. with Twitter
Ask your students what they need to know about dice to have enough information about the three aspects of a class to create dice objects building off a common game tool to help students get comfortable with making objects. Share Ask your students what they need to know about dice to have enough information about the three aspects of a class to create dice objects building off a common game tool to help students get comfortable with making objects. with FacebookShare Ask your students what they need to know about dice to have enough information about the three aspects of a class to create dice objects building off a common game tool to help students get comfortable with making objects. with Twitter
Discuss how we need ways to interpret sets of 0s and 1s to motivate the declaration of types. Share Discuss how we need ways to interpret sets of 0s and 1s to motivate the declaration of types. with FacebookShare Discuss how we need ways to interpret sets of 0s and 1s to motivate the declaration of types. with Twitter
Use Snap! as a more advanced alternative to Scratch in an introductory programming course. Share Use Snap! as a more advanced alternative to Scratch in an introductory programming course. with FacebookShare Use Snap! as a more advanced alternative to Scratch in an introductory programming course. with Twitter
Use Practice-It as supplementary Java problems for an introductory programming course to give students more practice. Share Use Practice-It as supplementary Java problems for an introductory programming course to give students more practice. with FacebookShare Use Practice-It as supplementary Java problems for an introductory programming course to give students more practice. with Twitter
Teach students how to debug with print statements before teaching them to use a debugger. Share Teach students how to debug with print statements before teaching them to use a debugger. with FacebookShare Teach students how to debug with print statements before teaching them to use a debugger. with Twitter
Help students build intuition about recursion in Python by comparing each recursive call to a function call, which may be more intuitive for students in introductory classes. Share Help students build intuition about recursion in Python by comparing each recursive call to a function call, which may be more intuitive for students in introductory classes. with FacebookShare Help students build intuition about recursion in Python by comparing each recursive call to a function call, which may be more intuitive for students in introductory classes. with Twitter
Ask students "do you know in advance how many times you'll need to go through the loop?" when deciding between using a for or a while loop, because this is a good rule of thumb for them to use. Share Ask students "do you know in advance how many times you'll need to go through the loop?" when deciding between using a for or a while loop, because this is a good rule of thumb for them to use. with FacebookShare Ask students "do you know in advance how many times you'll need to go through the loop?" when deciding between using a for or a while loop, because this is a good rule of thumb for them to use. with Twitter
Use Python as an introductory language rather than Java or C to allow students to focus on problem-solving more than syntax. Share Use Python as an introductory language rather than Java or C to allow students to focus on problem-solving more than syntax. with FacebookShare Use Python as an introductory language rather than Java or C to allow students to focus on problem-solving more than syntax. with Twitter
Have students who are transitioning from Python to Java explore the “From Python to Java” website to show them the differences between the two languages. Share Have students who are transitioning from Python to Java explore the “From Python to Java” website to show them the differences between the two languages. with FacebookShare Have students who are transitioning from Python to Java explore the “From Python to Java” website to show them the differences between the two languages. with Twitter
Use visual depictions of programmatic concepts, such as recursion, to improve students’ understanding of the concept and reinforce students’ intuition about the concept. Share Use visual depictions of programmatic concepts, such as recursion, to improve students’ understanding of the concept and reinforce students’ intuition about the concept. with FacebookShare Use visual depictions of programmatic concepts, such as recursion, to improve students’ understanding of the concept and reinforce students’ intuition about the concept. with Twitter
Use Python’s map function to introduce students to loops early on, because the map function is an provides an easy transition to loops. Share Use Python’s map function to introduce students to loops early on, because the map function is an provides an easy transition to loops. with FacebookShare Use Python’s map function to introduce students to loops early on, because the map function is an provides an easy transition to loops. with Twitter
When explaining code to the class, project your code and use a tablet to draw on top of it. Ask students for debugging suggestions to make them more comfortable finding bugs and to show them that all programmers, even you, make mistakes. Share When explaining code to the class, project your code and use a tablet to draw on top of it. Ask students for debugging suggestions to make them more comfortable finding bugs and to show them that all programmers, even you, make mistakes. with FacebookShare When explaining code to the class, project your code and use a tablet to draw on top of it. Ask students for debugging suggestions to make them more comfortable finding bugs and to show them that all programmers, even you, make mistakes. with Twitter
Tell your students that they should assume their code has bugs to help decrease their frustration when writing code. Share Tell your students that they should assume their code has bugs to help decrease their frustration when writing code. with FacebookShare Tell your students that they should assume their code has bugs to help decrease their frustration when writing code. with Twitter
Misconception: students think that when you assign a = b, there is no longer anything assigned to b because b empties its contents into a. Share Misconception: students think that when you assign a = b, there is no longer anything assigned to b because b empties its contents into a. with FacebookShare Misconception: students think that when you assign a = b, there is no longer anything assigned to b because b empties its contents into a. with Twitter
Emphasize that Scratch is REAL coding; this lets students know that programming in educational languages like Scratch or Python is valuable even though these languages aren’t commonly used in industry. Share Emphasize that Scratch is REAL coding; this lets students know that programming in educational languages like Scratch or Python is valuable even though these languages aren’t commonly used in industry. with FacebookShare Emphasize that Scratch is REAL coding; this lets students know that programming in educational languages like Scratch or Python is valuable even though these languages aren’t commonly used in industry. with Twitter
Suggest that students use the “when green flag clicked” block when creating clones in Scratch to avoid exponential cloning. Share Suggest that students use the “when green flag clicked” block when creating clones in Scratch to avoid exponential cloning. with FacebookShare Suggest that students use the “when green flag clicked” block when creating clones in Scratch to avoid exponential cloning. with Twitter
Encourage students to use Create Your Own Block to store procedures in Scratch to help ease debugging. Share Encourage students to use Create Your Own Block to store procedures in Scratch to help ease debugging. with FacebookShare Encourage students to use Create Your Own Block to store procedures in Scratch to help ease debugging. with Twitter
Allow students to resubmit their first few assignments for the course so they can master basic concepts and be rewarded for their persistence. Share Allow students to resubmit their first few assignments for the course so they can master basic concepts and be rewarded for their persistence. with FacebookShare Allow students to resubmit their first few assignments for the course so they can master basic concepts and be rewarded for their persistence. with Twitter