|
|
Give
Yourself the Real Power of Computers
s |
||
|
|
|
||
C O
N T E N T S |
|
Scratch Main Page Scratch is one of the most exciting languages meant for anyone who wants to learn CS concepts and computational thinking. It is designed and actively supported by MIT USA. To
learn about the activities of the vibrant worldwide Scratch community visit: http://scratch.mit.edu/. The
material provided below is ideal for upper elementary and middle school
children. |
|
|
|
Home Page |
|||
|
Power of Programming |
|||
|
Scratch Page |
|||
|
Snap! Page |
|
Books on Scratch Programming Learn CS Concepts
with Scratch is a perfect textbook for beginners. Combined with the
supplement below, you have all the material you need to run two back-to-back
courses for yourself or for your students. Practice CS Concepts with
Scratch is a supplement to the textbook above. It offers extra review
questions and practice programs on all the concepts covered in the textbook.
This is a free download. Advanced Scratch
Programming is for anyone who has the knowledge of Scratch and basic CS
concepts and wants to take up challenging projects. Pen Art in
Scratch Programming is for those who have basic knowledge of Scratch and
would like to become Pen Artists or so-called "Turtle Programmers". |
|
|
Python Page |
|||
|
Logo Page |
|||
|
|
Course Material These
courses are specially designed for anyone who is interested in learning CS
concepts and computational thinking. Contact me at abjoshi@yahoo.com if you are interested
in instructor-led learning. If you are a self-learner or a teacher who wishes
to conduct these courses, download all the files below. They are available
free of charge with no copyright restriction. Scratch-courses-learning-objectives.pdf:
This file describes the learning objectives and other background information
of the level 1 and level 2 courses. Scratch-Level-1-course-flow.pdf: This document describes the high level curriculum of the Level 1 course. It is presented in the form of how the day-to-day flow might look like while running this course. Scratch-Level-2-course-flow.pdf:
This document describes the high level curriculum of
the Level 2 course. It is presented in the form of how the day-to-day flow
might look like while running this course. Content.zip: This file contains all the
material referenced in the curriculum documents, such as, PowerPoint slides,
demo programs, etc. Additional Exciting Scratch Programs This
is a collection of articles: most of which describe the design of interesting
and challenging Scratch programs. Some articles also address advanced topics
about how to do something in Scratch. Library: Here, we list several
commonly used controls and procedures, which can be imported by any Scratch
program. We have used some of these controls and custom blocks in subsequent
projects. Tic-tac-toe: This program implements
the popular two-player game. You play against the computer. Show string: This short program takes
a word (string of alphabets) and simply displays it in a graphical format. Scramble: This is a two-player game in
which Player1 enters a word. The program then scrambles it up, and Player2
needs to rearrange the letters to unscramble the word. Solo chess: This program implements a
popular board game that purports to "train" young minds for the
game of chess. It uses a 4x4 chess board and only 10 chess pieces. What shape is that: This is a silly
little program that presents a quiz to preschoolers to recognize simple
geometric shapes. One can extend this easily to add more fun shapes to the
quiz. Shopping animation: This program
presents an animation of shopping activity. The main screen shows a shop with
items on display along with their prices. Customers walk in one after the other
to do their shopping. Missing digit: Leila is a math
detective; she can tell you (in "interactive" mode) or her friend
Sheila (in "animation" mode) the missing digit in your (or her)
number. Helicopter: This game is used as a
project assignment in the book "Learn CS Concepts with Scratch".
Read this article to understand how it can be designed. LCD Counter: This article shows how
to design a 4-digit LCD counter similar to the one
you see at petrol stations. Fern plant: To draw this beautiful
recursive design, you need "local variables" in your custom block –
which Scratch does not allow. This article describes how to overcome this
limitation. Bricks in "Auto" mode: I
took my earlier Bricks game and made it "automatic", i.e. now the computer moves the paddle. Number table: Several programs
require the display of numbers in a table format, i.e.
in rows and columns. This program allows you to create a square table big
enough to display natural numbers (i.e. > 0) up
to a max that you specify. For example, if you specify the max as 75, the
program will show a table with 9 rows and 9 columns, and display numbers 1 to
75 in this table. Sieve of Eratosthenes: This program
is basically an animation program that shows how the sieve of Eratosthenes
works. There is no user interactivity required once the program is started.
The animation initially shows a table of numbers 1 to N and then using the
technique of Eratosthenes starts dropping numbers until only prime numbers
are left in the table. Scrolling background: Several
programs and games require us to be able to scroll the background. There is
no straightforward way in Scratch to do this. This program shows one way. You
can also control the speed of scrolling. Script local variables: Scratch
(as of Version 3) does not allow you to have local variables for a custom
block or a script. In this program, we will see how to overcome this
shortcoming through a simple technique called "stack". We will also
see how to have a "return value". Once you understand this scheme,
you can use it easily for any custom block that requires local variables
and/or return values. Eight queen puzzle:
This program implements the famous eight queen puzzle in which you have to
arrange eight queens on an empty chessboard such that none of them checks any
other. The program has both "manual" and "auto" modes. Animal rescue puzzle game: The aim of
the game is to free all animals from prison (the 4x4 grid). To free these
animals from the prison make them exit from right (east) by clicking one at a
time. Each clicked animal lines up in a "freedom queue" below the
grid. Sudoku assistant: Load and solve
any Sudoku puzzle. Try to solve it yourself or at any time have the computer try
to solve it for you. It uses what is called the "brute force" or
"exhaustive search" approach. Hangman: This is a classic 2-player game
in which player 1 enters a secret word which player 2 tries to guess by
suggesting letters. S/he is allowed 5 bad guesses after which death by
hanging is the punishment! Slider puzzle: This is a game you
play with a grid with numbered blocks. One of the cells is empty, so that
neighboring blocks can slide to it. The goal of the game is to line up the
numbers left-to-right and top-to-bottom. This program implements a 3x3 grid containing
numbers 1 thru 8. Simulation of Bubble Sort: In this
program, we use the bubble sort algorithm to sort an array of numbers and
create a graphical simulation to demonstrate how it works. Practice addition using pictures:
This is a simple program that allows a preschooler practice adding single
digit numbers. It presents 2 numbers in countable picture form and asks how
much they add up to. Digital clock: The digital clock
shows hours, minutes and seconds as numbers, and it
uses a 24-hour time format. There is an additional indicator for AM/PM. The
clock shows a tick-tock animation synchronized with seconds. The user can set
the clock time by adding or subtracting minutes. Connect Four: This is an
updated/enhanced version of the same program I wrote for my book
"Advanced Scratch Programming". This new version uses clones and is able to detect a winner. Connect Four is a 2-player
game which consists of two sets of colored coins and a standing grid of rows
and columns. Each player takes one set of coins and then by turn drops coins
down any of the vertical columns (we will call them “tubes”). Base converter: This program allows
you to convert numbers from one base to another. We will allow bases 2
(binary), 8 (octal), 10 (decimal), and 16 (hexadecimal). It is a kind of
educational tool to further our understanding of these number systems. Snakes and ladders: This is a popular game in which players traverse a series of
numbers 1 thru 100 and work through snakes and ladders along the way. You get
to play with the computer! Snake: This is an old retro game
popularized by Nokia when they put it on their first smartphones. Move your
Snake around the screen eating apples and avoid edges, blue obstacles and bad cherries. Chessboard stretch: This is an
interesting optical illusion in which a chessboard-like layout appears as if
it has been stretched in the center, or it is being viewed from a lens of
some sort. |
||
|
||||
|
|
Please contact abjoshi@yahoo.com if you have any questions or comments. Last modified: 19 January 2022 |