Computers: What Have They Done for you Lately? RET Educator: Jill Snyder Mentor: Dr. Cindy Hood Summer 2006 Table of Contents Lesson 1: How do you make a peanut butter and jelly sandwich?............1 Lesson 2-3: Computers: What have they done for you lately?........................8 Link to Power Point...........35 Lesson 4: Go Ask Alice!!................36 How do you make a peanut butter and jelly sandwich? 1 How do You Make a Peanut Butter and Jelly Sandwich? :A model for teaching an introduction to computer programming or how to write inquiry based lab reports Teacher Background Information: The question, "How do you make a peanut butter and jelly (PB&J) sandwich?" is a question that teachers and professors alike have been asking students for years. It takes process back to its basic form, and is used to teach students how to document step-by-step instructions. It can illustrate the importance of specificity and completeness when giving direction. These are two very important concepts in computer/software programming. The exercise of writing instructions for a peanut butter and jelly sandwich can be used to show what happens when you are not specific enough or when instructions is not complete, or just plain forgotten! So, what is the basic process for making a PB&J sandwich? Take two slices of bread out of the bag. Place peanut butter on one slice of bread. Place jelly on the other slice of bread. Place the slice of bread with peanut butter on top of the slice of bread with jelly - condiment sides together. Eat the sandwich. Of course, those are literally just the basics. If you were writing this at a level where you assume the reader of the instructions has no familiarity with what you are intending, you would need many more details. Where do you get the bread and jelly from? How do you get the bread out of the bag? How do you get the jelly out of the jar? What utensils do you use? And so on. These are the details that would need to be included, and more, to have detailed and complete set of directions. This is what is necessary when writing a set of instructions for a computer in programming. How do you make a peanut butter and jelly sandwich? 2 In the context of software, a program is a list of instructions to the computer. Computers were designed to carry out instructions, pretty much one at a time. An instruction in most computer languages is a name for a list of procedures associated with a certain instruction. But for now, your students will be writing instructions, or lists of procedures to make a peanut butter and jelly sandwich in a similar fashion to the way you would write it in a computer language; meaning, specific and complete. Since we’ve brought up the term ‘language,’ as it pertains to computers, let’s take a moment to define what we are talking about. In programming there are many different ‘languages’ that are used to ‘speak’ to the computer to tell it what to do. Some languages you may have heard of, such as: BASIC, C++, DOS and many others. Thousands of different programming languages have been created and more continue to be developed every year. Programming language is similar to human language in the respect that it has a certain rules, like grammar and syntax that determine how things are understood. However, it differs from human language in the level of precision that is required to achieve the desired result. In human communication you can be vague or make small mistakes and chances are your listener will still understand what you are getting at. This is not so in computer language. Computers do EXACTLY as they are told. So if you skip a step or make a mistake, so will the computer. The computer is not equipped to figure out the intended meaning of the author. This is where our exercise comes in. The students need to write their instructions as if they are writing them for a robot that has no experience with making a peanut butter and jelly sandwich. They need to be detailed in instruction and as complete as they can be. It will be up to you to show them later where they left ‘holes’ in their procedures. So, let the fun begin! How do you make a peanut butter and jelly sandwich? 3 Outline of Instruction 1. Objectives: Students will demonstrate their understanding of computer programming as it relates to specificity and completeness by writing a successful procedure for making a peanut butter and jelly sandwich. Success of the procedure will be determined by the outcome of the peanut butter and jelly sandwich after the instructions are performed by the teacher or another student. 2. Standards: STATE GOAL 13: Understand the relationships among science, technology and society in historical and contemporary contexts. A. Know and apply the accepted practices of science. 13.A.2b Explain why similar investigations may not produce similar results. 13.A.2c Explain why keeping accurate and detailed records is important. 3. Anticipatory Set: Pass out the “Directions Test” to students face down on their desk. Tell them they have 5 minutes and 5 minutes only to complete the test. Once everyone has the test tell them that you will time them and once you say, ‘start’ they are to read the directions and then begin. This is a timed test and is meant to show them the importance of following directions. In the second sentence of the test it says, ‘Carefully read all the parts of the test before doing anything.’ You will find that most students do not actually follow this direction and begin taking the test right away. If the students did read all of the parts of the test first they would find that the only thing they need to do to complete the test is write their name and date in the top right hand corner of their test paper. Once time has run out go over the test with the students. Show them how the test should have been done. Read the directions with them and then follow the instructions by reading all of the parts of the test first. Once you get to part 13 they will realize that they did not need to complete the whole test. Use this as an introduction to discuss the importance of following directions. Also make the connection to the process of inquiry and how different scientists/people can come up with different results even with the same set of instructions, as they did with their test. Finally, make the connection to computer programming and the importance of directions that are clear, complete, and followed exactly as written. How do you make a peanut butter and jelly sandwich? 4 4. Teaching: A. Input: Here is where you have an opportunity to share with the students what you’ve learned about programming and computer language from the ‘Teacher Background’ section. Here is where you explain computer programming being a detailed and complete set of instructions given to the computer in its own language. Then explain that there are different types of computer languages and that there are rules to programming language just as there are in English and other languages. It is important at this point to also make a connection to science and inquiry in particular. It is another area where specificity is important in instruction. They will need to remember this later when they are writing up their labs for their work with the ALICE program. For now, they will be writing instructions to make a peanut butter and jelly sandwich. They will need to be detailed and complete instructions. Though it seems like a simple task, they will find out that it may not be as simple as it sounds! *Additional Resources: To aid in your explanation, depending on the age group, you can show the video, ‘The Magic School Bus, Gets Programmed.’ B. Modeling: In this part of the instruction you want to show students some examples of what you have been talking about. You may want to show them a page of actual instructions from a computer program, and maybe a sample of the way you want science labs to be written in class. C. Checking for Understanding: Have students write a first draft of a set of instructions on how to make a peanut butter and jelly sandwich. Make sure they keep in mind that they should not leave room for interpretation of the instructions and that if it is not written, it will not be done! Finally, they need to know that their instructions may be chosen to be modeled in front of the class by you or another student! Once the students complete their instructions randomly pick one student’s instructions to model in front of the class. Perform the instructions exactly as they are written. Make sure to be overly dramatic in the performance to illustrate gaps in the instructions. If it does not say to use a knife, use your hands. If it does not say to spread the condiment on one side of the bread, then spread it ALL over the bread!! This should be fun! Once you have demonstrated how to follow the instructions put the How do you make a peanut butter and jelly sandwich? 5 students in pairs, each with materials to perform each other’s instructions. The students should observe how someone else would perform their instructions looking for where they can improve on them for their final assessment. 5. Guided Practice: Here is where you give them the opportunity to show you what they’ve learned! They are to re-write their instructions for making a peanut butter and jelly sandwich to incorporate what they learned from the demonstration of their first draft of instructions. Their assessment will be based on the final outcome of their instructions! A rubric will be passed out to the class to grade each sandwich that is made. The student will then receive the completed rubrics from his/her classmates with a composite grade(calculated by you) from the class. 6. Closure: Review the objective of the lesson with the students, then let students go over their rubrics and host a quick discussion about what they learned from the activity as it relates to computer programming. Ask them how they would do things differently in the future if they were to do this again. Ask them to make any connections to the real world where writing directions this specifically and completely might be useful. How do you make a peanut butter and jelly sandwich? 6 Directions: You have a 5 minute time limit to complete the parts of this test. Carefully read all of the parts of the test before doing anything. In order to ensure the accuracy of this exam, you should not use more than the allotted time of 5 minutes. Good Luck!! 1. Write the name of the month that begins with the letter ‘D’ in the top left hand corner of your test paper. 2. Write the answer to the following multiplication problem directly underneath the date on your test paper--6 X 5 = ? 3. Write your name and today’s date—month-day-year in the top right hand corner of your test paper. 4. Add 15 to the answer you got in part #2, and write this new total directly underneath your answer for part #3. 5. In the lower left hand corner of your test paper, write the names of your favorite singer and your favorite group 6. .Just above your answer to part #5, write "This test is very easy." 7. In the lower right hand corner of your test paper, draw a rectangle and inside the rectangle draw a five pointed star. The size of these drawings is not important. 8. Directly above your answer to part #7, draw a row of three small circles. Once again, size is not important. 9. Write the name of the first president of the United States on the back of your test paper anywhere you choose. If you don't know who this is, write your own name instead. 10. Write the name of any country that begins with the letter "I" directly underneath you answer to part #2. 11. Take the number of dwarfs in the Snow White story and add it to the number of bears in the Goldilocks story. Divide by 2. Write this total in the approximate center of your test paper. 12. Think of a number between 1 and 50. Double that number. Add 20. Add 6. Subtract 17. Subtract 9. Divide by 2. Write this number on your test paper directly underneath your answer to part #11. 13. Now that you have carefully read all of the parts so far, and you have not carried out any of the actual work, skip the next 2 parts and go back and only complete part #3. 14. The name of the first president of the United States is George Washington. He was president from 1789 until 1797. Add the 2 dates together to see if the total is less than 5000. 15. You should not be reading the end of the exam before the beginning of the exam, but now that you are here, you have just wasted some of the time you may need to complete the test. How do you make a peanut butter and jelly sandwich? 7 Building A Peanut Butter and Jelly Sandwich Teacher Name: ___________________ Student Name: __________________ CATEGORY Materials 4 All materials needed were listed and appropriate to the needs of the lab. 3 All materials needed were listed and most were appropriate to the needs of the lab. 2 Most materials need for the lab were listed and all/most were appropriate to the needs of the lab. 1 Many materials were not listed or inappropriate, which contributed to a poor product . Procedure Procedure is neat with clear and complete instructions, including measurements and labeling for all components. Sandwich is neat, includes all required ingredients and can be held without getting condiments on your hands. Procedure is neat with clear and complete instructions, including measurements and labeling for most components. Sandwich is somewhat neat, includes all required ingredients and can be held without getting condiments on your hands. Clear evidence of troubleshooting, testing and refinements but still shows some flaws from trial run. Procedure is not clear and has incomplete instructions but includes measurements and labeling for all components. Sandwich is somewhat neat, includes most required ingredients and can be held without getting condiments on your hands. Some evidence of troubleshooting, testing and refinements. Procedure is not clear and has incomplete instructions and only includes measurements and labeling for most components. Sandwich is messy, inludes most required ingredients and cannot be held without getting condiments on your hands. Little evidence of troubleshooting, testing or refinement. Sandwich Construction Modification/Testing Clear evidence of troubleshooting, testing, and refinements based on data trial run. Total score on this rubric: ___/16 A= 15-16 B= 13-14 C= 12 D= 10-11 F= 9 and below Composite score from class: ___/___ Comments: Computers: What Have They Done for You Lately? Computers: What Have They Done for You Lately? Abstract: This is a basic introduction to how a computer ‘thinks.’ Students will act out a program being run on a computer by you giving them a set of directions that they will act out with students working as the parts of the computer. This is taught in two lessons. The first lesson will consists of basic terminology and understanding of parts of the computer. Lesson 2 focuses on how the parts work together to run a program. Lesson 1 Teacher Background information: A computer program basically is a set of instructions that tell a computer what to do. Computer programs can be used for a variety of purposes, including, play video games, organize data, write letters and browse the internet. Programs can be installed on your computers hard drive or run from a CD, floppy disk, internet website and flash drive, among other places. The computer reads the instructions from the program on the hard drive or other site and then the processor begins to carry out the instructions. Computer programs are written by programmers who create programs from computer languages. These languages are made up of a series of 1’s and 0’s which the computer understands. Some programs will taken commands written in plain English and then ‘decode’ them for the computer by translating those words into 1’s and 0’s so the computer can carry out the command. The data that is put into the 8 Computers: What Have They Done for You Lately? program is called ‘input’ and the result of the function the computer carries out is the ‘output.’ For instance, with a calculator you might type in ‘3+3=.’ This would be the input. The calculator would then give you the result, ‘6,’ that is the output. Since calculators are very simple computers this may be a good way to illustrate the concept of input and output to your students. For a higher level example graphing calculators work well, with these calculators students are essentially writing programs that calculator carries out when they graph the input The programs that are written for computers are called software. This term was originally used in the 60’s to denote the difference between programs written for the computer, which were usually stored on some sort of soft media like magnetic tape(a good example would be the tape in a tape cassette), or a magnetic disc(you may want to show the inside of a ‘floppy’ disk where the magnetic disc is housed), and the hardware, or fixed components of the computer. This of course was prior to the CD’s we know now, but the term software is still applied. Hardware, on the other hand, is the term used to acknowledge the ‘hard’ components of the computer, such as; CPU, keyboard, monitor, modem and all the parts inside of the CPU (memory, motherboard unit). If you had an old computer to take apart and let students explore it would be a great way for them to become familiar with the parts of the computer. If that is not available to you, you can always print pictures from the internet or buy poster sets from you local teacher store. 9 Computers: What Have They Done for You Lately? 10 Hardware—Outside of the computer: Tower case: This is the heart of your computer. This is where all the components of your computer are housed or hooked up to. It may include a floppy disc drive, a CD/DVD drive or CD/DVD burner. Your computer may not have a tower case and instead have a desktop case which lies flat on the top of your desk. Output devices: Monitor: This is the screen where you see output from the computer programs you are running. Printer: This is another output device for the computer where you can get hard copy results from your programs. **Other output devices you are probably familiar with are speakers. They allow data from the computer to be transmitted out to you through sound. Computers: What Have They Done for You Lately? 11 Input Devices: Scanner: This is an input device that allows you to copy images to your computers memory. Digital Camera: This can be another input device for your computer. You can plug your digital camera into the computer to transfer picture from your camera to your computer’s hard drive. **Other input devices that you are familiar with are your keyboard and mouse. They allow you to put information or data into the computer. Hardware – Inside of the computer: Circuits: Motherboard- The motherboard is the largest of all the circuits and is the ‘mother’ to all the others! It holds all of the most important parts to the computer including other circuits. The sound card and video card -are circuits housed on the motherboard. These circuits help your computer process sounds and images to help run your programs. The motherboard also has the circuitry for the modem.- This is something that helps one computer ‘talk’ to another usually through your phone or cable line. This allows you to share programs and information with others directly. Also on the motherboard is the central processing unit. or CPU-You can compare the CPU to a brain. Computers: What Have They Done for You Lately? 12 It knows what to do and tells the other parts of the computers how to do it. This is the part of the computer that helps determine how fast your computer will run. Just like when you ‘run’ you can get overheated, so can a CPU, therefore, you will usually find a fan very near the CPU to help keep it cool and running comfortably. Chips: A BIOS chip- or Basic Input Output System alerts your system upon booting up the in put devices and output devices connected to it and what they do. RAM and ROM- are two types of chips that you have in your computer. RAM is Random Access Memory, it is a short term memory available to you while you are working on the computer. You randomly access as you are working to remember things that you are working on at the moment. However, once you turn off the computer it is all forgotten. An example of this might be when you change the settings on a document, like the margins or font and as long as you are working in the program it will remember those settings. Once the computer is rebooted though, everything goes back to the default settings. This is why it is important to save your work onto the hard drive! ROM is Read-Only Memory, is the memory where all of your programs settings and functions are stored. This is memory you can ‘read only’ but cannot change. Using the example above, it would be where your defaults are stored for your programs. You cannot change the things saved in this memory because you did not write it, it is inherent in the hardware or software. Computers: What Have They Done for You Lately? 13 Disk Drives: Disk drives- are another important piece of hardware inside your computer. You may have a compact disk(CD) drive, a floppy disk drive, a digital video disk(DVD) drive and all computers have a hard disk drive, usually referred to as the hard drive. Disk drives are forms of storage on your computer. Kind of like a filing cabinet it stores things away in folders and is organized to find things easily once you need them. The floppy, CD and DVD drives allow you insert saved data from a removable disk, into your computer for your computer to read. They also allow you save information onto your media or disks. The hard drive, though, is hidden inside your computer and data is saved on a disk that is not removable. Computers: What Have They Done for You Lately? 14 Outline of Instruction: 1. Objectives: Students will learn the basic components of a computer and how they work together to run a program. Students should be able to name and recognize components of a computer and understand what each part does. Students will be able to recognize different uses that computers have in society. 2. Standards: STATE GOAL 13: Understand the relationships among science, technology and society in historical and contemporary contexts. B. Know and apply concepts that describe the interaction between science, technology and society. 3. Anticipatory Set: Start by using a computer set up in your classroom or at your computer lab. Point to the monitor and ask them what it is, then the printer, a scanner or whatever external components you have available. Do the same with a CD-ROM, a floppy disk and a jump drive or flash memory if available. Then…… If you have your school them to the are and ask computer chips available to you, either from or from taking a computer apart yourself, show students without explaining to them what they them what they think they are. OR Find pictures of parts of the inside of the computer from the internet. Find pictures of the motherboard, the CPU, RAM, ROM, and other chips and circuits inside the computer and do the same as above. OR If none of these options are available to you, simply ask them what they think is in a computer and brainstorm ideas. Write them all down somewhere so you can come back to them later to compare what they thought prior to the lesson vs. what they learned from the lesson. Computers: What Have They Done for You Lately? 15 4. Teaching: A. Input: Here is where you share what you learned in the background knowledge section with your students. You can have the students learn the parts of the computer by making flashcards, using overheads, showing them the actual parts in a broken computer, a Power Point presentation or any number of ways that you think suits your class best. Included in this lesson plan is --a Power Point presentation that follows the information given in the teacher background information section is included with this lesson. B. Modeling: Pass a handout (pages 3-5 of this lesson) to the students that will have the information they will be expected to know. They will use the information in this hand out to help them play a game of memory included in this lesson. The memory game is there to help the students learn the parts of the computer and what they do. You should make enough copies of the game for students to play in pairs. First, do a demonstration game in front of the class if they are unfamiliar with how to play memory. If you are unfamiliar here is a quick run through of the rules: Memory 1. Cut out all the cards. 2. Place all the cards face down spread out in front of you. 3. Each player takes a turn to flip over two cards. If the cards match (ie. if the bold word on one card matches the definition on the other card you have a match.) the player keeps the cards and it is the next players turn. If the cards do not match, they are flipped back over and are left in play. All players should try to remember where cards that have already been chosen but do not match are, so they have a better chance of getting a match on their next turn. 4. The game ends when all matches have been made. 5. The winner is determined by who found the most matches. Computers: What Have They Done for You Lately? 16 **Modifications: If you would like to make this game a bit simpler have the students make two separate spreads of cards. One spread of all the vocabulary and one spread of all the definitions. On each turn the students would then flip one card from each spread. This way they have a better chance of making a match because they are flipping a vocabulary word and a definition on each turn; whereas before they could have flipped over two vocabulary or two definitions on a turn. Also, it is easier to remember where a card is if the students set up the spreads in an array as shown below: as opposed to a mess: 5. Guided Practice: Let the students practice playing the game on their own with you walking around the room to monitor and help if necessary. 6. Closure: Discuss what things might be considered ‘computers’ based on the components they learned about in this lesson (ie. calculators, microwaves, vending machines, VCR’s…….). Discuss how computers are used at home and at work. --Assessment: Use the multiple choice quiz at the end of the lesson to assess if students understood the concepts taught. Wrap up the lesson with a short discussion of what they’ve learned and review their quiz. Computers: What Have They Done for You Lately? 17 Lesson 2 Teacher Background Information: So, now that we have a basic understanding of the parts of a computer, let’s discuss how a computer uses these parts to run a program. Most programs are distributed in the form of CD, though, once it was floppy disks, and sometimes they are downloadable from the internet. Once the computer knows where to find your program, whether it is a CD, disk, or the hard drive, it can get started. As discussed in the last lesson, programs are complicated series of instructions that a computer follows. Many programs, due to their large size, are only partially installed on your computer’s hard drive, and the rest of the program is read from the disk. This may slow the running of the program a bit, but it keeps more storage available on your computer for other things. When a computer is running a program it reads and performs one instruction at a time. When a computer is running several programs at a time it may let each program perform one instruction at a time taking turns. This is why your computer may run a little slower if you are performing several different operations with different programs on your computer at the same time. When a computer begins to run a program it is the CPU that is doing all the ‘running.’ It opens the contents of the programs folder and puts it into RAM, your short term memory. The reason for dumping the contents of the programs folder into RAM is so that it will be close at hand so that the program can run more quickly. Now the CPU only has to go to RAM to get what it needs instead of to the hard drive each time or to a CD-ROM. However, some programs are too large to put everything into RAM or there are too many programs open and there is not enough RAM to have all of the contents of all of the folders put into RAM. In this case, some of the program’s folder contents are opened into RAM and some are left on the disk or on the hard drive. This way most things needed to run the program are easy to access and only some things are located further away so that the program can run as quickly and efficiently as possible. Computers: What Have They Done for You Lately? 18 Now that the program is open and the materials necessary are at hand, the program can begin to carry out the instructions you input or the instructions embedded in the program to run. The computer begins to carry out the instructions from the program one at time, as discussed earlier. Each instruction requires the CPU to get something from RAM so that the program can utilize it. Now, there may come a time when you are running multiple programs and they all have instructions that they need the CPU to carry out. How does the CPU determine which programs needs are more important? It doesn’t. Each program is treated equally. Each program will get a turn to give the CPU an instruction. When the CPU is done with that it goes to the next program and that program gets to carry out one instruction and so on for each program open. That is why you may find your programs run a little more slowly when you have many different applications open and running, because each program has to wait its turn for the CPU to perform an instruction. This may take even longer if the CPU has to all the way to a disk or the hard drive for something to complete the instruction. Another reason why the program my run a little more slowly is because one of your programs may need something that another program is already using. In this instance the latter program would have to skip its turn for the CPU to run an instruction and wait until the former computer is done using whatever the latter computer needs. The program CANNOT skip an instruction it has to go IN ORDER, that is why it must skip its turn and wait. Once you are done with a program and you close it the CPU puts all the ‘materials’ from that programs folder back , which clears room in RAM for other programs to run. This helps other programs run more efficiently because RAM is cluttered up with so many things. An alternative way to make your computer run more smoothly, but still have all of the programs you’d like to use open is to either increase the speed of your processor(CPU), or increase the size of your RAM. If you increase the speed of your processor the CPU will run faster and get to each of the instructions from each program more quickly and execute them more quickly. On the other hand if you increase the amount of RAM you have there is more room to store the contents of each program, then the CPU will run quicker by virtue of the fact that all the contents of the program are closer at hand. Computers: What Have They Done for You Lately? 19 Now to make this all a little more clear….. Outline of Instruction: 1. Objective: Students will understand and act out the concepts behind how computer runs a program. Students will demonstrate an understanding of how the speed of the CPU and the size of RAM affects the speed at which a computer program can run. Students will explain how technology as it pertains to computers has influenced society. 2. Standards:. STATE GOAL 13: Understand the relationships among science, technology and society in historical and contemporary contexts. B. Know and apply concepts that describe the interaction between science, technology and society. 3. Anticipatory Set: The anticipatory set is meant to get the students thinking about procedure and process. You will give them a series of instructions to complete a task; however, the instructions will be all jumbled up. Each direction should be on a separate piece of paper and without a number to indicate the order for the direction to be performed in. The easiest way to do this is to print the directions on a sheet of paper with enough room in between each step to allow for cutting them apart later. In the activity provided with this lesson entitled, ‘Mind Reader’, there are clues in the steps that allude to the order they should be put in. This is so the students are thinking about order and can make progress without getting so frustrated that they give up. Put students into small groups and pass out the directions, they should already be cut and you may want to put them in envelopes so they cannot start looking at the procedure Computers: What Have They Done for You Lately? 20 until you tell them to. Tell them they have a certain amount of time (determined by you) to perform the instructions. Be sure to give them enough time to think about what they are doing or to get frustrated, before moving on. Once the students have had sufficient time to work on the instructions have them all stop and put their materials down. Now go through the series of instructions one by one in order and complete the task as it was meant to be done so they can see what the desired result is. This should then lead into a discussion about how computers work, one step at a time, methodically and in order!! Below is a series of instructions for the students. They should be cut so that each instruction is on it’s on its own strip. These instructions will only work if they are done in the correct order. Make sure the connection is made that computers can only run a program’s instructions in order, just as this activity must be in order to work properly. *Modifications: If you have a lower group that you think would struggle with the provided activity you may want to substitute a quick craft. Again, cut up the directions and put them into an envelope and hand them out with a bag full of the needed materials. Let them see if they can figure out how the craft is constructed. When time is up, show them a model (made by you) of how the completed item should look. This activity is good for lower students because it is visual and they can easily see the difference between what they have made and what you have made. At the end of this lesson is a series of instructions for the students. They should be cut so that each instruction is on it’s on its own strip of paper. These instructions will only work if they are done in the correct order, just as a computer program can only run if the instructions are performed in order. 4. Teaching A. Input: Here is where you share all that you’ve learned in the Teacher Background Information with your students. Only a short discussion is necessary as things will make more sense to them as you go through the lesson and perform the activity in guided practice. B. Modeling; You are going to have students act out roles of a computer to simulate how a computer runs Computers: What Have They Done for You Lately? 21 a program using some of the parts that they learned about in the previous lesson. You will need 2 students, a table, and some materials required to complete a small craft, and instructions to complete the craft. Tell students that they are going to act out how a computer runs a program. Ask for volunteers to play the roles of the CPU and a computer program. Once you have your volunteers Tell the CPU where the materials are stored for the program in the hard drive (explain that the hard drive would be your storage closet or somewhere else predetermined by you to store the materials for the craft to be performed). Have the CPU bring the crafts to the table (explain that the table is RAM). Have the student who is your computer program sit at a desk near the RAM table and have the CPU bring them the instructions for making the craft. Now explain to the students that the CPU runs all the errands for the program so it can complete its instructions. So have the CPU ask the program what it needs to complete its first instruction, then have the CPU go to the RAM table and get the necessary materials and bring it to the program. Then the program should complete its task and the CPU returns the leftover materials to RAM and asks the program what it needs for its next instruction. They should go back and forth like this until the program is complete, at which point the CPU will gather up all the materials and put them back into storage where they were found. When this is all done guide a discussion with the class about how the computer ran the program and what questions they have. Answer them Computers: What Have They Done for You Lately? 22 as best you can using the knowledge you gained in the Teacher Background Information and if you don’t know the answer write the question down for either you or them to research on their own or during their next visit to the computer lab. 5. Guided Practice: Now the class is going to practice running multiple programs on the computer. You will need volunteers to act as: The User, CPU, Hard Drive, CD-ROM, and the programs. You will also need a RAM table set up near the desks of the students who will be acting as the programs and a spot somewhere outside the classroom to be where the CD-ROM is. The rest of the class will observe and act as ‘tech support.’ Finally, you will need some instructions and materials for several small crafts for the programs to perform. These can be anything that you deem as appropriate or utilize materials you already have available to you at school. Some ideas are included for you at the end of this lesson. You may also decide to use recipes and have the students make things for the class to eat and enjoy when the exercise is over. This exercise will run similarly to the first one. Only this time there will be 3-5 programs running, depending on how you decide to set up this activity. The CPU will start with program 1 and gather the materials from either the CD-ROM or hard drive (whichever you’ve designated for this program) and bring them to the RAM table. Then the CPU will do the same for the second program and so on. Once this process is complete, as you learned, each program will get to execute one instruction by the CPU at a time. The CPU will start at program 1, then go on to program 2 and so on. Have the CPU continue through the process until each program is complete. As each program finishes its crafts have the CPU gather and return the materials from that program and put them away. If the students encounter a problem with running the programs use the ‘tech support’ to help brainstorm ideas on how to solve it. Try to guide them without answering the questions right away. **Modifications: You may want to incorporate some scenarios into your activity to facilitate some more discussion in your class. You can do this by making sure that some of your programs need to share some of the same materials. This way they will need to figure out what Computers: What Have They Done for You Lately? 23 happens when one program has a material when the next program needs it (the second program has to skip its turn!). You can also make sure that you use a small table for RAM so that not all of the materials for every program fit. This should then create a discussion about how to handle that problem (materials that don’t fit have to be left on the hard drive or CD-ROM for the latter programs, or each program only gets to have a certain amount of materials on the table and the rest of the materials stay on the hard drive or CD-ROM to be fair to each program—this is what actually happens). You can also discuss at this point to solve that problem within the computer, ie. get more RAM (a bigger table). Discuss why the programs are running so slowly and also talk about how to make them run faster, ie. get a faster CPU or get more RAM. 6. Closure: Discuss what they learned from this activity compared to the first one. You should guide the discussion to include that this time the programs ran slower, the CPU worked harder, why did it take longer? (more programs, some things had to come from farther away), and any other topics that they bring up. End with a discussion on how they use computers or how their parents use computers and what they would do to improve them based on what they’ve learned. Assessment: Give a short quiz on the concepts of how a computer runs a program. Computers: What Have They Done for You Lately? This is the heart of your computer, where all of the components of your computer are housed or hooked up to. It may be tall and stand up next to your computer or lay flat on top of your computer 24 This is the screen where you see output from the computer programs you are running. This is an output device hooked up to your computer where you get hard copy results, or prints from your programs. These are output devices from your computer that allow you to hear sounds that your computer generates. This is an input device that allows you to copy images to your computers memory. You can copy things like photographs, pages from a book or anything else that can lie flat. This is an input device for your computer that allows you to put digital pictures into your computer’s memory. This is an input device for your computer that allows you to type messages into the computer. This is an input device for your computer that allows you to move a cursor to choose items on a menu without having to use a keyboard. Computers: What Have They Done for You Lately? 25 This is the largest of all circuits in your computer and tells all the other circuits what to do. It also holds the most important parts of the computer. These are cards that are on the motherboard that allow your computer to process sounds and images. This is something helps one computer ‘talk’ to another usually using a phone line or cable connection. You can share programs and information directly with another computer using this. This is the brain of your computer. It knows what to do and tells other parts of the computer how to do it. This is the part of the computer that determines how fast your computer will run. This is the chip in your computer that lets it know when it boots up what devices are connected to it and what they do. This is a chip in your computer that gives your computer short-term memory of what it is working on while the computer is still on. This is a chip in your computer that gives your computer long-term memory of what it has to work with even after your computer has been turned off. These are parts of your computer that can hold disks. These allow your computers to run programs that are saved on disk. Computers: What Have They Done for You Lately? 26 Motherboard Sound/Video Card Modem CPU Central Processing Unit BIOS Chip RAM Random Access Memory ROM Read Only Memory Disk Drive Computers: What Have They Done for You Lately? 27 Computer Case Monitor Printer Speakers Scanner Digital Camera Keyboard Mouse Computers: What Have They Done for You Lately? 28 Parts of a Computer Quiz Name______________________________ Date________________ Directions: Match the names of the parts with what they do. 1. _____ motherboard a)These are parts of your computer that can hold disks. These allow your computers to run programs that are saved on disk. 2. _____ RAM b)This is the screen where you see output from the computer programs you are running. 3. _____ CPU c)These are cards that are on the motherboard that allow your computer to process sounds and images. 4. _____ disk drive d)This is the brain of your computer. It knows what to do and tells other parts of the computer how to do it. This is the part of the computer that determines how fast your computer will run. 5. _____ monitor e)This is a chip in your computer that gives your computer short-term memory of what it is working on while the computer is still on. 6. _____ keyboard f)This is a chip in your computer that gives your computer long-term memory of what it has to work with even after your computer has been turned off. 7. _____ ROM g)This is an input device for your computer that allows you to type messages into the computer. Computers: What Have They Done for You Lately? 29 Mind Reader Wish you could read someone’s mind? The directions here won’t be able to teach you to do that, but they can make someone else believe that you can!! All you have to do is follow the simple steps provided here and you can have people believing that you can read minds!! Ask someone to think of a number between 1 and 10. Make sure they don’t tell you what it is!! They need to complete each step from here on out in their head or on a sheet of paper where you can’t see!! Ask the person to multiply their number by 9. Ask the person to add the two digits of their answer together to get one number. If their answer was only one digit already they can skip this step. Ask the person to subtract 5 from the number in their head. Now it starts to get tricky!! They need to think of the letter in the alphabet that correlates with their number. For example: A=1 B=2 C=3. We’re almost there!! Ask the person to think of a state or country that begins with their letter. They can look at a map if one is available!! Ask the person to take the second letter in that state and think of an animal that begins with that letter. Finally, ask the person to think a color that you most associate with that animal. Here is your chance to blow them away!! Tell them that the color they are thinking of is: GRAY!!! Can you explain why this works? Computers: What Have They Done for You Lately? 30 Stand-Alone Star Craft This 3-dimensional star decoration is made from 2 paper stars that are interlaced. These stars stand by themselves on a table, More Christmas and make a great decoration. Crafts Supplies: Stiff paper (like card stock, oaktag or thin cardboard) or styrofoam meat trays Scissors Crayons or markers Two paper stars are needed to make one 3dimensional star. Draw two identical stars on a piece of stiff paper. Decorate the two stars on both sides, then cut them out. Make one slit in each star. On one star, the slit goes from an inner corner to the center point of the star; on the other star, the slit goes from an outer corner to the center point. Computers: What Have They Done for You Lately? 31 Slip the two stars together through the slits you just cut. For stability, you may have to tape the stars a bit where they meet at the slits. You now have a great three-dimensional star decoration that stands by itself on a table Computers: What Have They Done for You Lately? Good Luck Hand (Khamsa) Craft The khamsa is a symbol of good luck from Morocco, Africa.This good luck hand has been used as an amulet in northern Africa forcenturies - it is often made from precious metal, like silver. You can make this simple version out of paper or aluminum foil. Khamsa means "five" in Arabic. Supplies needed: Construction paper Scissors Glue Crayons, markers, or paint Trace around your hand on a piece of construction paper. Cut the tracing out and glue it to a piece of construction paper. Decorate the hand with crayons, markers. 32 Computers: What Have They Done for You Lately? 33 Chinese Lantern Make a lantern for Chinese New Year. Supplies: Construction paper Scissors Glue, tape, or a stapler Fold a rectangular piece of paper in half, making a long, thin rectangle. Make a series of cuts (about a dozen or more) along the fold line. Don't cut all the way to the edge of the paper. Unfold the paper. Glue or staple the short edges of the paper together. Cut a strip of paper 6 inches long and 1/2 inch wide. Glue or staple this strip of paper across one end of the lantern - this will be the handle of the lantern. Computers: What Have They Done for You Lately? 34 How a Computer Works Quiz Name: _______________ Date: _______________ 1. Can a computer run a program’s instructions out of order or skip steps? 2. What is a program? 3. How does the size of RAM effect how a computer runs? 4. How does the speed of the CPU effect how the computer runs? 5. Name 3 ways that computers affect our lives. Computers: What Have They Done for You Lately? 35 Link to “Computers: What’s in there and how does it work?” presentation. Go Ask Alice!! 36 Go Ask Alice!! www.alice.org Teacher Background Information: What is Alice and What is it Good For? What is Alice? (wordy) What is Alice? (Abbreviated) Although computer programming has existed in its modern form for half a century, it still eludes all but a small fraction of society. While programming is an inherently difficult activity, there are Learning to program a computer is hard. currently many barriers, both mechanical and sociological, that prevent large portions of the population from learning to program a computer. Alice address both the mechanical and sociological barriers that currently prevent many students from successfully learning to program a computer. Alice addresses the mechanical barriers to programming by making it much easier for students to create programs. Rather than having to correctly Alice makes learning to program easier. type commands according to obscure rules And it's fun. of syntax, students drag-and-drop words in a direct manipulation interface. This user interface ensures that programs are always well-formed. In addition, Alice reifies object-based programming by providing animated, on-screen 3D virtual objects. Sociological barriers are far more complex. Alice addresses the specific needs of the subpopulation of middle school girls. By Alice makes programming more accessible supporting storytelling, an intrinsically to girls as well as boys. motivating activity for middle school girls, Alice will make programming a means to an exciting end. Alice is made freely available as a public service. Alice v2.0 © 1999-2003, Carnegie Mellon University. All rights reserved. We gratefully acknowledge the University of Virginia, where the Alice project originated. We gratefully acknowledge the financial support of DARPA, Intel, Microsoft, NSF, and ONR. Go Ask Alice!! 37 What is and what can I do with Alice? Alice is a modern programming environment designed to be a student's first exposure to object-oriented programming. It allows students to learn basic computer science while creating animated movies, simple video games, where students control the behavior of 3D objects and characters in a virtual world. What have people built with Alice? Lots of things! There are several examples of student worlds on our forums and we will be posting several projects that students created in classrooms teaching with Alice. Do I need to be a programmer to use Alice? Absolutely not! The interface is designed to provide an easy, intuitive interface for novice, experienced, and non-programmers alike. Is Alice supported? We have a small but hard-working staff working on providing Alice support, improving Alice, and managing our web pages. The best way to reach us is to post your inquiry or comment on the forums. The team and the Alice community will be glad to help! You can also Contact Us directly. How do I save an object that I am working on? In Alice, right-click on the object tile in the object tree. Select "save object..." from the drop-down list and click ok. How fast a machine do I need? Operating system requirements: Windows ME, Windows 2000, or Windows XP Macintosh OS 10.3 or 10.4 Minimum PC hardware requirements: A Pentium running at 500 MHz or better a VGA graphics card capable of high (16 bit) color 128 MB of RAM video resolution of 1024x768 A sound card Recommended PC hardware requirements: A Pentium running at 1.0 GHz or better 16 MB 3D video card (TNT, i810, Rage 128, GeForce, Radeon equivalent or better) 256 MB of RAM Will Alice run on a Mac? Yes, Alice now runs on a Mac using OS 10.3 or higher. Download it here. Go Ask Alice!! If you have any other further questions or additional comments, visit our Feedback Page. Alice is made freely available as a public service. Alice v2.0 © 1999-2006, Carnegie Mellon University. All rights reserved. We gratefully acknowledge the University of Virginia, where the Alice project originated. We gratefully acknowledge the financial support of Electronic Arts, DARPA, Intel, Microsoft, NSF, and ONR. Below, you will find a list of published Alice textbooks and where to find more information about them. Learning to Program with Alice by Wanda Dann, Steve Cooper and Randy Pausch Prentice Hall, 2006 Visit www.aliceprogramming.net for more information. An Introduction to Programming Using Alice by Charles W. Herbert ISBN: 1-4188-3625-7 Thompson Course Technology, 2007 Publish Date: March 30. 2006 Publisher's Website Alice 2.0: Introudctory Concepts and Techniques by Gary B. Shelly, Thomas J. Cashman, Charles W. Herbert ISBN: 1-4188-5934-6 Thompson Course Technology, 2006 Publish Date: September 27, 2006 Publisher's Website 38 Go Ask Alice!! 39 Outline of Instruction: Materials: This lesson requires several hours of computer lab time with the students. The ALICE program, freely available at www.alice.org, will need to be installed on each of the computers that the students will be working on. Step One: Introduce students to the ALICE program. Explain to students what the program is and that now that they have learned the parts of a computer, what a program is and how the computer runs programs that now they are going to do some programming themselves. Walk the students through each of the 4 tutorials allowing to time to play and explore after each one. Step Two: Go back to the first tutorial with the ice skater. Explain to students that they are going to be designing a routine for the skater that will be judged by you or the class(if the capability is there to show the whole class each students routine via LCD projector or some other method). Each routine will have to follow certain requirements. Each routine will have to be at least 30 seconds in duration and should include at least 3 jumps, 2 spins, and one new method created by the student, and at no time should the skater leave the screen(move out of sight). Go Ask Alice!! 40 Step Three: Have students first write a plan as to what they would like their routine to include. They should write this in steps or as a series of instructions that the computer would follow, ie. 1. Skate 3 steps, 2. Jump, 3. Skate backwards 2 steps, etc. Then, give students time to create and modify their routine. They should print out a final draft of the set of instructions that they created for their routine. Step Four: Have students play their routine for you or the class for judging. Judge the routines using a rubric designed with the requirements set for the routine. Step Five: Wrap-up: Students will report to each other in the format of a class discussion how they think the design of their routine went. What was difficult, what was easy, how close did they come to what they actually planned to do. Discuss ethics as it pertains to truth in reporting, ie. puffing up results to look good, and also discuss ethics as it pertains to how the routines were judged. Was it fair? Should it have been done in a different way? Where is this pertinent in real life? Finally . . . . This program is capable of a lot of things and can be taken to as far of a level as you or your students are comfortable with. Have fun with it!! Go Ask Alice!! 41 Digital Storytelling : Ice Skating Routine Teacher Name: Student Name: ________________________________________ CATEGORY Duration of Routine 4 Length of presentation was 30 seconds. Jumps 3 Length of presentation was 25-29 seconds. 2 Length of presentation was 20-24 seconds. 1 Presentation was less than 20 seconds. 0 Routine included 3 or more jumps. Routine included 2 jumps. Routine included 1 jump. Routine included 0 jumps. Routine included 2 or more spins. Routine included 1 spin. Routine included 0 spins. The skater left the screen twice. The skater left the screen three times. The skater left the screen more than three times. The routine included one or more movements that were created by the programmer. The routine included no new movements created by the programmer. Spins View Creativity The skater remained on the screen during the whole routine. The skater left the screen once.