Our vision for our modular approach to creating lessons was to enable teachers to pick and choose what lessons to use in building a curriculum to fit their needs.  Depending on the amount of time available, goals of the curriculum, previous knowledge of the students the educator can craft a curriculum to match. The lessons are provided in shareable google doc format to allow further customization by creating local copies and editing the presentations to fit the educators needs adding and removing as needed.

We have annotated 4 different types of lessons that are found on Alice.org.  This is not meant as a judgement on the value of the lessons but to highlight a critical path through Alice that covers all functionality and enables core design lessons with minimal time and complexity versus a full extensive curriculum that covers all potential lessons in Alice.

Core Lessons – These lessons cover major component of the Alice system.  Covering these will provide the base understanding of scene building, programming, using control structures, and events.  Following this path with give students the basic competencies needed to complete any of the design lesson projects.
Extending Lessons – These lessons include deeper details of concepts in the core lessons.  Some of the more detailed lessons may require that advanced topic lessons have been covered.  They can be added to the core lesson or covered as a lesson of their own.
Advanced Lessons – The lessons introduce more advanced programming concepts and patterns.  They vary in terms of complexity so review to determine if they are right for your class level.
Supplemental Lessons – These are short micro lessons that can be used to expand on concepts or vocabulary included in other lessons.  Depending on your students previous experience they may or may not be needed.

Core, Extending, and Advanced lesson are all intended to contain the following materials: lesson presentation, facilitation guide, tutorial exercise, assessment materials and ideas, and helpful how to videos.   We are continuing to work with a group of teachers to fill out all of this content.  If you have materials you think would complement a lesson please share them with us.  Supporting lessons generally only contain a presentation that can be used to go present the concept.

The following is a suggested progression of the lessons provided on Alice.org.  The design lessons are addressed at the with suggestions about where they can be interjected in the progression.

• Building A Scene 

• Programming in Alice

▪ Comments

▪ Making Procedural Methods
▪ Parameters

▪ Data Types

• Using Functions
▪ Arithmetic Expressions

• Control Structures Overview

◦ Control Structures Loops

▪ Arrays

▪ Relational Expressions

• Using Variables (earliest inclusion in support of advanced lesson)

◦ Control Structures Conditionals

▪ Making Functional Methods

• Introduction to Events

◦ Events Collision and Proximity

◦ Events Mouse (under Development)

◦ Events Keypress (under Development)

◦ Events Scene Activated (under Development)

These design lessons are at the heart of an Alice project based creative curriculum.  While you can definitely create creative exercises to accompany any of the Alice lessons these are intentionally teaching the creative iterative design process in a way that we feel makes Alice special.  The lessons include references to different Alice skills and functions that informs our recommendations for the earliest you might want to introduce them into a curriculum. They can be combined and mixed and matched if the goal is to give students all of these options for a final project.  We do make use of the design process in the tutorials so that students can see this approach applied in our example projects.

• Design Process Introduction – The minimal requirement to run this lesson is Building a Scene and Programming in Alice.  You can choose to incorporate as many of the core, extending, and support lessons as you would like before introducing this.  The more you have covered the more complexity you can expect students to implement in their project.

• Design Interactive Narrative – This design lesson can be implemented after control structures overview if conditionals are understood and usable by students to create branching outcomes.  It requires introduction to events if open world design are desired.  This lesson does not require the use of variables so moving that lesson to the end of your curriculum would allow you to run this design lesson before introducing variables and then the game design lesson.  

• Design Games – This design lesson assumes that variables, control structures and events have been covered to take full advantage of the programming patterns described

These lessons extend the core functionality of the Alice platform or create other discipline tie ins.  They can be used to teach other art and design skills as desired. 

• Importing Models (under Development) – can be used to integrate Alice into a 3D model or art course

• Designing for VR (under Development) – can be used to teach design concepts for VR spaces

The linked spreadsheet lists out all of the lessons with descriptions of the programming concepts, Alice skills, and Design learning objectives and recommended prerequisites.  We are working to map standards to each of the lessons to help you evaluate what standards (CSTA, ISTE and more) would be met depending on the lessons included in your curriculum.