This collection features resources about computational thinking. It also has numerous resources to help develop computational thinking skills in your students.
In this lesson, learners get an introductory experience with computer science and …
In this lesson, learners get an introductory experience with computer science and create a game using basic block code.This lesson has been designed for learners in the middle grades, ages 10-16, but can be adapted for younger or older learners using the differentiation suggestions provided.
In this lesson, learners get an introductory experience with computer science and …
In this lesson, learners get an introductory experience with computer science and create a game using basic block code.This lesson has been designed for learners in the middle grades, ages 10-16, but can be adapted for younger or older learners using the differentiation suggestions provided.
In this lesson, learners of all ages get an introductory experience with …
In this lesson, learners of all ages get an introductory experience with coding and computer science in a safe, supportive environment. This lesson has two versions.
**Option 1: Blocks**
The first option uses drag-drop blocks. This version works best for:
- Students on mobile devices without keyboards - Younger students (6+ because the tutorial requires reading) - International students
We recommend this for international students because JavaScript syntax is not translated and for the first Hour of Code, the translated blocks provide a better introduction.
**Option 2: JavaScript**
This option teaches the same basic concepts, but because it uses both drag-drop blocks and JavaScript, the students need to be able to type on a keyboard. For older students on computers, learning JavaScript can be fun and provide an additional challenge. This version of the tutorial is also great if you have some students in your class who have already learned some coding. It is recommended for ages 11+.
In this lesson, learners of all ages get an introductory experience with …
In this lesson, learners of all ages get an introductory experience with coding and computer science in a safe, supportive environment. This lesson works well for any students old enough to read (ages 6+). Younger learners will probably not finish the tutorial, but will have lots of fun working through the puzzles for an hour. High school students will mostly finish the tutorial and have some time to play on the free play level at the end.
**Tutorial Summary:** This tutorial is designed to quickly introduce the App Lab …
**Tutorial Summary:** This tutorial is designed to quickly introduce the App Lab programming environment as a powerful tool for building and sharing apps. The tutorial itself teaches students to create and control buttons, text, images, sounds, and screens in JavaScript using either blocks or text. At the end of the tutorial students are given time to either extend a project they started building into a "Choose Your Own Adventure", "Greeting Card", or "Personality Quiz" app. They can also continue on to build more projects featured on the code.org/applab page.
**Age Appropriateness:** The tutorial is designed for students over 13. Because it allows students to upload custom sounds and images, young students should not use this without supervision. To protect students privacy, if your students are under 13, they will not be able to use this tutorial unless you first set up accounts for them in a section you manage.
**Checking Correctness:** This tutorial will not tell students whether they completed the level correctly. Encourage students to use the target images and directions provided in every level to know if they are on the right track. If students want to move on past a particularly tricky level they can simply click "Finish" and continue on.
Have fun completing your Hour of Code with App Lab!
In this lesson, learners of all ages get an introductory experience with …
In this lesson, learners of all ages get an introductory experience with coding and computer science in a safe, supportive environment. This lesson has been designed for learners of all ages but does require reading. This activity requires sound as the tool was built to respond to music.
This activity will begin with a short review of "My Robotic Friends," …
This activity will begin with a short review of "My Robotic Friends," then will quickly move to a race against the clock, as students break into teams and work together to write a program one instruction at a time.
At some point we reach a physical limit of how fast we …
At some point we reach a physical limit of how fast we can send bits and if we want to send a large amount of information faster, we have to find a way to represent the same information with fewer bits - we must **compress** the data. In this lesson, students will use the Text Compression Widget to compress segments of English text by looking for patterns and substituting symbols for larger patterns of text.
In this lesson, students are introduced to the need for encryption and …
In this lesson, students are introduced to the need for encryption and simple techniques for breaking (or cracking) secret messages. Students try their own hand at cracking a message encoded with the classic Caesar cipher and also a Random Substitution Cipher. Students should become well-acquainted with idea that in an age of powerful computational tools, techniques of encryption will need to be more sophisticated. The most important aspect of this lesson is to understand how and why encryption plays a role in all of our lives every day on the Internet, and that making good encryption is not trivial. Students will get their feet wet with understanding the considerations that must go into making strong encryption in the face of powerful computational tools that can be used to crack it. The need for secrecy when sending bits over the Internet is important for anyone using the Internet.
Students will learn that events are a useful way to control when …
Students will learn that events are a useful way to control when an action happens, and can even be used to make make multiple things act in sync. In programming, you can use events to respond to a user controlling it (like pressing buttons or clicking the mouse). Events can make your program more interesting and interactive.
Python is a fun and extremely easy-to-use programming language that has steadily …
Python is a fun and extremely easy-to-use programming language that has steadily gained in popularity over the last few years. Developed over ten years ago by Guido van Rossum, Python's simple syntax and overall feel is largely derived from ABC, a teaching language that was developed in the 1980's. However, Python was also created to solve real problems and it borrows a wide variety of features from programming languages such as C++, Java, Modula-3, and Scheme. Because of this, one of Python's most remarkable features is its broad appeal to professional software developers, scientists, researchers, artists, and educators. 278 page pdf file.
This resource provides ideas and supports for infusing 21st Century Skills into …
This resource provides ideas and supports for infusing 21st Century Skills into your classroom. The following 21st Century Skills are addressed:CharacterCollaborationCommunicationCreativitiyCritical ThinkingDigital & Computer TechnologiesCultural & Ethical CitizenshipLife Skills
Integrating Computational Thinking and Coding in a Middle Years Classroom. A look …
Integrating Computational Thinking and Coding in a Middle Years Classroom. A look at some resources and activities used in the classroom of Clint Hayes, a teacher in Eaton School in Eatonia.
JavaScript is the programming language of HTML and the Web. Programming makes …
JavaScript is the programming language of HTML and the Web. Programming makes computers do what you want them to do. JavaScript is easy to learn. This tutorial will teach you JavaScript from basic to advanced.
SFUSD's creative computing curriculum introduces computer science as a creative, collaborative, and …
SFUSD's creative computing curriculum introduces computer science as a creative, collaborative, and engaging discipline to children in kindergarten through second grade.
Across 4 units and 15-20 lessons, students will learn about algorithms and programming, computing systems, the Internet, and impacts of computing, while developing strong practices and dispositions. Lessons are designed to be implemented in 45 to 60-minute periods approximately once per week.
There are three levels available and a flow chart to help you decide where your students should start!
Just because students are young doesn't mean they can't code! Get them started today.
In this 45-minute broadcast, students will explore the computational thinking skill of …
In this 45-minute broadcast, students will explore the computational thinking skill of decomposition - the breaking down of a problem into smaller parts to make the problem easier to solve. Students will also begin to explore the computational concepts of sequences and loops.
Includes a teacher's guide.
Should you encounter any technical difficulties, please e-mail Network Services at the Saskatchewan Ministry of Education at stans@gov.sk.ca or call 1-866-933-8333.
Decomposition: Kindergarten to Grade 3 Series: LIVE Code with Let’s Talk Science …
Decomposition: Kindergarten to Grade 3 Series: LIVE Code with Let’s Talk Science
In this 30-minute broadcast, students will explore the computational thinking skill of decomposition - the breaking down of a problem into smaller parts to make the problem easier to solve. Students will also begin to explore the computational concepts of sequences and loops.
Includes a teacher's guide.
Should you encounter any technical difficulties, please e-mail Network Services at the Saskatchewan Ministry of Education at stans@gov.sk.ca.ca or call 1-866-933-8333.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.