Provide students with App Inventor starter code they can modify and build on so they have an opportunity to play around in App Inventor without becoming overwhelmed by starting from scratch.
Have students create a digital story in Scratch about an interesting scientific phenomenon as a final project to teach them both computer programming and science literacy.
Model the software engineering process by having students design games or other projects for an audience. This helps students gain valuable, hands-on experience and make connections to real world applications.
Encourage students to identify their unique skills and perspectives explicitly, especially when working on projects, to build confidence in their ability to make meaningful contributions.
Ensure a meaningful introductory CS learning experience for each student by creating differentiated expansions for assignments while providing the same starting points.
Create hands-on, meaningful, and relevant projects where students produce artifacts that require rigorous CS content-knowledge and software engineering skills.
Connect class work to the CS industry by incorporating these five big picture professional skills in your class objectives.
When designing CS courses for total novices, integrate activities based on students’ pre-existing interests to engage them.
Allow students to make their own design decisions by providing problems that have multiple solutions.
Provide multiple equivalent project options, but keep the number of choices limited to ensure that students have enough time to complete an assignment.
Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze.
Don’t shortchange your students; believe they can do investigative problem solving and assign open-ended projects.
Allow students to choose from a list of possible projects, and have them pursue multiple research questions. This increases the chances that at least one project/question will emerge as feasible.
Give research students an initial set of papers to read to help them generate their own potential research questions.
Have students learn to make themselves a profile page with pop-ups using JavaScript for an exciting and relatively fast way to get students engaged and programming.
Ask students if the games they are designing are games they’d want to buy to keep students making progress toward your learning goals for them.