LearningForward

Kent Chesnut's technology in education blog.

July 11, 2009

Scratch Class - Resources

Filed under: informal learning, Papert, Scratch — kchesnut @ 10:14 pm

I’ve been preparing to lead a 4 day (~2 hrs / day) Scratch class in conjunction with my Church’s Summer Fun Days.  The class will be about 12 - 15 kids going into the 3rd - 5th grade (about 8 - 10 years old).  I’ll probably post more about this later, but today I’d like to discuss the resources I’ll be using.

  • How to Use Scratch Intro video - link.  Note it’s the right video on the first row of videos.  I’ll use the largest TV I can get my hands on to show this to the kids.
  • Scratch cards - link here.  These pdfs can be printed and used by the class students.  Each card illustrates a specific example, like “Moving Animation” and “Follow the Mouse”.  I plan to have several sets of these sitting on a table for the kids to look through and try out
  • Scratch 1.2.1.  I used the older version because the old Windows 98 computers we have in our lab didn’t run Scratch 1.3. 
  • Simple projects.  To extend / combine the Scratch card examples.

Instructional Strategy 

I’m not planning on “teaching” much at all.  I’ll give an overview of some key concepts.  I’ll walk through an example card activity.  Then turn the kids loose.  I’ll encourage them to try a card activity that looks interesting and then get them to work on projects of their own choosing.  My helper (my daughter Brittany) and I will try to serve mainly as collaborators / colearners to support the kids when they decide they need help.  Kids will be encouraged to work together, seek advice from each other, and have fun.

Challenges and Solutions

  • Intrinsic Motivation / Identifying projects of personal interest
    I’m not going to make project assignments.  The goal is for the students to work on projects that are personally relevant and interesting.  I think that providing the Scratch Cards and a few example programs geared toward this age kids should help them identify personal projects quickly.  Some brainstorming with my daughter led to the following as possible projects of interest:

    •  drive a car
    • fly a plane
    • take care of a pet or baby
    • virtual pet
    • decorate a room
    • have a party
    • dress up
    • video game
    • blow up stuff
  • Saving / Accessing files:
    The computers are networked with a shared folder for the Computer Camp on each.  Instead of teaching the kids to navigate to the Computer Camp folder, I put an empty project (read-only) into the Computer Camp folder.  We’ll teach the kids to start Scratch by opening the empty project.  Then they will save to the desired folder by default.
  • Share and Tell:
    I certainly hope the kids will create projects they wish to show off to the others in the class.  If saving files to the Computer Camp folder works as hoped, I’ll be able to pull up any of the kids projects from the laptop connected to the TV and use the large TV for share and tell.

Educational Goals

Read Seymour Papert’s Mindstorms - Children, Computers, and Powerful Ideas for a good explanation of how such creative activities can help students connect with powerful ideas in Mathematics and other “school” type subjects (highly recommended).  However, the goals for this class are affective and motivational.  Specifically, I want the students:

  • to feel satisfaction in a creative endeavor
  • to experience joy in learning something new
  • to feel capable of learning to use a computer programming language

If this positive affect spills over into other areas of their lives - like school - that’ll be ok too.

I plan to report back on how the class goes.

May 26, 2009

Scratch on XO Update

Filed under: XO Laptop, One Laptop Per Child, Scratch — kchesnut @ 8:37 pm

While I was trying the new version of Runtime Revolution on the XO this weekend, I also did a Software Update for the XO.  A new version of Scratch was downloaded and installed.

 The new Scratch is version 1.3.1 - just like for the PC and Mac!  I decided to give it a try.  In an earlier post, I tried Scratch on the XO - and couldn’t recommend it!  See the article here.  For completeness sake, I’m running build 767 on a standard G1G1 XO.

My impressions were somewhat improved this time:

  • Performance when dragging programming elements was good.  In my previous test, I noted that the dragging was so jerky that it was almost impossible to place the programming elements.
  • The screen elements are still very small.  This is probably just an old man problem… and it didn’t seem as bad without the jerkiness when placing programming elements.
  • I tried a pretty challenging (processing wise) flight simulator game from the Scratch website, see here.  This has several scripts running in parallel in forever loops with short delays (I think they are at about .1 second).  This game was very sluggish - but it did play!
  • The flight simulator game sound played for a while and then stopped.

Although I would still choose a full powered computer over the XO to work with Scratch, it is clear that the Scratch Team is working to make the XO a viable Scratch development platform.  And, for simpler projects, I think the XO would be fine with this current version of Scratch.

A few additional notes:

  • I don’t know if it is a Scratch or XO issue, I could not download the Scratch projects from the MIT website and open them in Scratch.  Although the files would appear in the Journal, they were not associated with Scratch.  I was able to move files to the XO using a Flash drive and the Terminal activity.
  • Suspend / Resume does work now.
  • I didn’t note during my original review that the version of Scratch for the XO doesn’t include all of the backgrounds, sprites, … available in the Windows version.  Some are included - but not all.

May 26, 2008

Scratch - It’s Elementary #2

Filed under: Scratch, Programming, K12 — kchesnut @ 2:50 pm

In my last post, I discussed a project that I feel would be appropriate for upper elementary students.  I noted, however, that I thought it (the car driving simulation) would probably appeal much more to boys than girls.  In this second post about Scratch as a constructive learning environment for upper elementary students, I’ve selected a project that I thought may appeal more to girls - a virtual pet simulation.

 Virtual Pet Screenshot

A screenshot of the project is shown to the right.  Run the project here.  Download the project file here.  As it is now, the project is not very interactive.  All you have to do is click on the egg and make sure the food doesn’t run out.

So what can an upper elementary student learn from making such a project?

  • Scratch programming constructs and modular programming.  The project uses loops, conditionals, broadcasts, and sprite / edge detection.  
  • Debugging and troubleshooting techniques. 
  • And hopefully she will have some fun!

One of the things I like best about the project is that there are so many ways to enhance and improve it.  A student could choose to:

  • make the project with any kind of pet - either from the wide array of art provided with Scrath or by drawing his own.
  • If he wanted the butterfly, he could have it metamorph from a caterpillar instead of hatch from an egg - luckily, we’re not talking science here ;-)
  • Keep track of the pet’s age.
  • Add variables to keep track of the pet’s happiness and provide a way for the user to play with the pet to increase its happiness.
  • Add the capacity for the pet to “poop” and provide an interesting way for the user to clean up after it.
  • Allow the pet to start smaller and grow to full size as it ages / eats.
  • Make a cage on the screen for their pet to live in.  When they are finished playing, allow the pet to escape by opening the pen and allowing the pet to find his way out and return to the wild.
  • Fix the bugs in the program… where the butterfly gets caught along an edge for a while occasionally.

Would an upper elementary student find such a project engaging?  Any comments? 

On reflection, the motion in this project may make it a little too advanced for an upper elementary student.  If a student chose to attempt a project such as this, it might be better to encourage her to do it without the motion at first.  As a second step she could add very simple motion… glide to the food when the pet gets hungry.  Finally, she could add some sort of randomness to the motion.

May 19, 2008

Scratch - It’s Elementary

Filed under: Papert, Scratch, Programming — kchesnut @ 8:44 pm

I’ve blogged about Scratch being a good learning environment for kids.  But my examples have tended to be at the Junior High level (or possibly higher).  For the next few posts, I’ll be looking at projects that I think could be generated by an upper elementary student.

This week we’ll look at a simple car game.Car Game Screenshot  A screenshot of the game screen is shown below.  The objective is simple, drive on the road.  The referee will complain if you drive in the grass.  Run the program here.  Download the project file here.

So what can an upper elementary student learn from making such a project?

  • Scratch programming constructs and modular programming.  The project uses loops, conditionals, broadcasts, and sprite / background detection.
  • Concepts such as scaling (see below).
  • Debugging and troubleshooting techniques. 
  • And hopefully he will have some fun!

The hardest part of this game is trying to connect the car angle to the steering wheel angle.  If you think about how a car works, the car angle keeps changing as you hold the steering wheel in a fixed place (as long as you’re not going straight).  The student can use his body to do the Turtle Walk (see Papert’s Mindstorms Chapter 3 for a good explanation of this) to help troubleshoot this functionality.  Additionally, a program like this allows the student to progress as far as he wants.  He could make a lot of improvements, including…

  • Improve the steering to make the car easier to drive.
  • Add a lap counter.  A lap timer.
  • Add sound effects.
  • Add a second car and make a 2 player racing game?

Would an upper elementary student find such a project interesting and motivating?  I think many boys would… but I’m not sure that this would appeal as much to girls.  Any comments?

April 13, 2008

XO Laptop Review

Filed under: XO Laptop, One Laptop Per Child, Scratch — kchesnut @ 3:47 pm

I know, I know, the XO laptop was designed as a constructive platform for kids in the developing world.  And I’m not one!  When OLPC anounced the Give 1 Get 1 program near the end of 2007, I wanted to find out what this little computer was like.  But… I didn’t have the money to spare at the time.  But I was able to get one of these G1G1 machines a couple of weeks ago on eBay.   

I believe a laptop computer with appropriate constructive software could be the most important piece of technology a student can have.  But I do have some issues with standard laptops for education:

  1. They are bulky and heavy (you would need to replace stuff from the heavy kids’ backpack, not just add to it).
  2. They are fragile.
  3. They are pretty expensive.

The XO appears to address all of these concerns. 

I’ve been evaluating the platform for 3 possible purposes:
(BTW - I recognize that none of these are the specific design goals of the XO.)

  1. A platform for learning Scratch
  2. A school laptop for my younger kids
  3. A backup business laptop

I’ll discuss my general perceptions before looking into these 3 specific purposes.

  • It’s small!  Much smaller than I expected.  The small screen is fine for young eyes - and even for me (when I get to the right spot on my bifocals ;-)  The keyboard is a little more problematic.  It is both small (see dimensions below) and covered with a rubber cover that makes the feel a little strange.  I don’t have large hands and I am getting used to typing on it (not touch typing yet).  The size is OK for my teenage daughter (rather petite) - but she hasn’t used it enough to be touch-typing yet.  The size and feel would be fine for smaller kids - especially for those not yet touch typing.  
    The picture at right shows the XO up against a Dell 1505.
    I’ve done a few measurements on other computers.  
    From the left edge of the A to the right edge of the semicolon: XO / Dell 1505

    • Standard keyboard - 7.25″
    • Dell 1505 laptop keyboard - 7.25″
    • XO laptop keyboard - 5.125″
  • It’s a little slow.  The XO takes about 2 minutes to boot up.  Activities (programs) take about 20 seconds to start.  Inserting a picture into the word processor takes about 10 seconds to open the file dialog.  Internet browsing seems sluggish.  Scrolling through large PDF files also seems sluggish.  However, switching between activities is fast.  See Wesley Fryer’s blog entry about the XO’s performance here.
  • The software is still in work.  A big missing feature is suspend and resume (which would obviate the slowness of booting).  Some activities aren’t quite finished.  The good news is that the software is operational, pretty robust, and development is ongoing.  Also note that shortcomings and problems are documented in the OLPC wiki.
  • As I only have access to 1 XO, I wasn’t able to evaluate the collaborative capabilities of the XO.  Too bad, they appear to be some of the most interesting and innovative aspects of the laptop.  For the same reason, I can’t say much about the mesh networking.

On with the evaluation!

XO as a platform for learning Scratch

  • Positive
    • There is a Scratch activity version for the XO laptop.  It is very easy to install (just navigate to the activities web page and download the Scratch-1.xo file using the Browse activity).
    • The Scratch activity launches quickly.
    • Scratch on the XO looks / acts just like on other platforms.
    • Unlike on other Linux platforms, the Presentation Mode works (see my earlier post here about Scratch on Puppy Linux and Ubuntu).
  • Negative
    • The standard Scratch screen has been scaled to fit on the XO.  This creates a real challenge for the eyes.  Buttons (especially on the dialogs) are very small.
    • MIDI sounds don’t work (same as on the other Linux platforms).
    • It is a little sluggish.  Dragging script components can be a little jerky making it hard to place them.
  • Overall
    • I would not recommend using the XO as a platform for learning Scratch at this time.  The screen is just too small to support the standard Scratch user interface (in my opinion).  According to the Scratch website, there is a plan to adapt Scratch for the XO (see here).  I’ll be happy to give it another try at that time!

XO as a school laptop for kids

  • Positive
    • The XO is small, light, and tough.
    • The XO has long battery life.  If I remember correctly (sorry, I couldn’t find a link), the OLPC web site estimates between 3 hours (backlight on) and 5 hours (backlight off).
    • The XO is usable both inside (with backlight) and outside (reflective screen mode).
    • Good range of constructive activities installed on the computer.
    • Many additional activities available on the OLPC website activities page
    • All the activities (and the Operating System as well) are Open Source and available at no cost.
  • Negative
    • Slow bootup and activity start times.  No suspend and resume (at this point in time).
    • It’s not fast enough for gaming (such as flash games on the internet) and videos (like You-Tube).  Although these activities are not typically considered to be “school work”, most U.S. students will expect a computer to accommodate such uses.
  • Overall
    • I think the XO will prove to be a very good school laptop. 

XO as a backup business computer (way outside the scope of the OLPC project)

  • Positive
    • The XO has long battery life. 
  • Negative
    • I haven’t been able to get it to connect to my corporate network (WPA, Leap, hidden SSID).   I bet this is possible (or will be in a future system build) but it’s not automatic.
    •  Slow bootup and activity start times.
    • Screen size is pretty small.
    • Keypad size too small for many men. 
  • Overall
    • I got quite a bit of ribbing for having the XO at work… it’s small size and color scheme attracts quite a bit of attention.  Not really a positive or a negative - just an observation.
    • I probably won’t be using the XO much as a backup business laptop.

In conclusion, the XO is optimized as a very low cost platform for constructive student activities - particularly in developing countries.  As such, it’s not really optimized for the uses I’ve evaluated.   

  • I consider the XO to be a good platform for a school laptop for kids - provided they understand its limitations in games and videos.  It will be an even better school laptop once suspend and resume are implemented.  I’ll know more on this as my daughter uses the XO for school work (assuming she’s able to wrestle it away from me ;-).
  • I think the XO may well be a good platform for learning Scratch once Scratch has been optimized for the XO’s screen. 
  • The XO is probably not a good platform for a backup business laptop.

April 1, 2008

Scratch in the foreign language classroom

Filed under: Foreign Language, Constructivism, Scratch, K12 — kchesnut @ 8:21 pm

I’ve been investigating the use of Scratch as a constructive environment for students to demonstrate their understanding of various concepts in the classroom.  In this post I’ll be making a bit of a stretch… Can students use Scratch in a constructive way to help them learn a foreign language?

So what do you do in a foreign language class?  It’s been a lot of years for me… but if I remember correctly;

  • learn vocabulary and conjugation
  • practice listening, speaking, reading, and writing in the language to be learned

It appears to me that one of the deficiencies in learning a foreign language in the classroom is a lack of context - a real-world situation in which to use and practice the language being learned.  I began wondering if students could use Scratch to construct simple contexts for practicing listening and reading a foreign language.  To investigate this question, I constructed a simple Scratch program to provide a context for listening and reading in a foreign language.

The assignment would be something like…

  • Create a Scratch project that creates a context for the use of this week’s vocabulary words.  Use the words in phrases that make sense within the context.  Phrases should be both visible and oral.
  • This could be done individually, but I think it might be more appropriate to do the exercise in small groups of 3 or 4 students.
  • Students could use all the projects to practice their vocabulary words - hopefully in a realistic context (as opposed to flashcards).

Scratch Project for Foreign Language

The stage of the project is shown to the right.  Once the program is running (by clicking the green flag above the stage in the web browser), the student simply clicks the “Say Something!” button.  A text box appears and the student hears the short phrase in Spanish.

The student(s) creating the project get the opportunity to use the vocabulary words in a real-world context, in contextually correct phrases, and pronunciation.

Students viewing the different projects get to see and hear the vocabulary words used in a number of (hopefully) disparate contexts.

Run the project by clicking here.  The project file is available here.

This is a very simple project.  I believe a 4th or 5th grader (9 or 10 years old) familiar with Scratch could easily create such a project.

Could a constructive use of Scratch in building such projects in the context of a foreign language classroom improve student learning?  Would students be engaged by such activities?  Could such projects allow the teacher to better diagnose student learning problems?  What would be the roadblocks to such projects in the foreign language classroom?

 P.S. My 15 year old daughter in Spanish 2 has informed me that my translations and pronunciation are pretty bad.  She was particulary amused with the question about coming to play on top of my house.  “Real” students should be able to do much better!

March 20, 2008

Scratch - Limitations

Filed under: Constructivism, Scratch, Programming, K12 — kchesnut @ 7:40 pm

While I’m still a big advocate of Scratch as a constructive environment for children to learn programming along with powerful ideas in mathematics and science, I have run across several limitations.

Limitations are common in engineering.  Limitations - often referred to as trade-offs - are a part of every project.  I had one coworker (Electrical Engineer) who used to say - “I can do it fast, good, cheap; pick 2 out of 3.” 

In a classroom situation using Scratch to demonstrate a concept, I suspect students will run across these limitations occasionally.  Usually, all that is needed is a creative trade-off.  I can’t figure out how to make _____, but this other idea I can do is pretty good.

In my efforts to think through ways in which Scratch could be used by kids in a classroom situation to demonstrate their knowledge of a scientific concept, I started thinking about Radiocarbon dating (OK, so I have odd thought patterns!).  Suppose the class has 20 - 25 kids and 5 computers.  What could a teacher do to make a constructive use of Scratch to help kids understand Radiocarbon dating.  The following came to mind.

  • Break kids into 5 small groups.
  • Break out the basic concepts of Radiocarbon dating… I break them down as
    • How is Carbon 14 created?
    • How does Carbon 14 break down?
    • What is half-life?
    • How does the concentration of Carbon 14 change over time?
    • How does Radiocarbon dating work?
  • Allow the groups to choose one of the questions to study.  Each group studies their question (with the teacher acting as a collaborator / consultant as needed) and creates a Scratch project to demonstrate the concept.
  • The groups present their projects to the class and answers questions from the rest of the class.

I think such projects could let the kids assume multiple roles; researcher, designer, programmer, teacher, and mathematician (at least in 1 or 2 of the projects).  Do you think the students’ understanding of Radiocarbon dating would be enhanced by such an assignment?

OK, back to limitations.  The most mathematically complex of the questions has to do with the concentration of Carbon 14 over time, so I started thinking about how one might construct a Scratch project to demonstrate his knowledge of this concept (and teach the other classmembers).  Several ideas came to mind - and met with the limitations of Scratch.  Ideas and limitations included:

  • Given a starting number of Carbon 14 atoms, calculate the number of C-14 atoms at times in the distant future.  But Scratch has limited math capabilities.  The concentration decreases as an exponential function.  Scratch has no provision for trig, logarithmic, or exponential functions. 
    Trade-off?  Increase time by half-lifes and hard code in the number of C-14 atoms at each time.
  • Somehow graphically represent the  number of C-14 atoms remaining.  Well, we could draw a sprite for each C-14 atom and have them disappear or change colors as time increases.  But Radiocarbon dating is good to about 60,000 years or 11 half-lifes.  To have even 1 C-14 atom left after 11 half-lifes, we have to start with 2048 sprites.  But Scratch has limited sprite capabilities.  To manually create and place the 2048 sprites would be a tremendous amount of work. 
    Trade-off?  Maybe draw a graph of the number of atoms over time manually and have a pointer sprite move along the curve as time changes to illustrate the passage of time.  (I used Excel to do the calculations and draw the curve).

Radiocarbon dating project

 My project looks like the picture to the right.  This project does illustrate the concept pretty good.

  • Students can see that the number of C-14 atoms drops off over time.
  • The concept of half-life can be explained from the project.
  • Students can see why radiocarbon dating wouldn’t be good for really long periods of time (sensitivity of detection / measuring equipment becomes extremely critical).

Run the project here.  Download the project file here.

The biggest problem I have with the project is the graph… for several reasons:

  • Students probably don’t learn about exponential curves until their upper High School years (anyway, my Sophomore daughter in Algebra II hasn’t yet encountered them in any meaningful way).  It’s also not clear at what age a student would have sufficient experience with both the math (exponential functions) and Excel (creating data sets and charts) to be able to create the graph.
  •  Given the curve, a 6th or 7th grade student (11-12 years old) could probably create the project.  However, I doubt that the graph (with C-14 atoms / 10’s of thousands of years) will really convey the information to a student of this age.  Some sort of interaction allowing them to change the half-life or time scale interactively may be better - but beyond Scratch’s capability.
  • It is likely possible to let Scratch draw the graph as a series of lines (a sprite moving between points with its pen down) at half-life intervals.  Then the student could play with several variables (starting C-14 atoms, half-life, total time, …) and get a better feel for the concept.  In my experience with other development environments, this isn’t so hard to do for a particular data set.  But if one wants to be able to change things to see what happens, one must implement some sort of auto-scaling - which would likely make the project too complex for students younger than high school.

So what can I conclude???  Scratch is a powerful environment for constructive learning.  However, it has limitations, some of which I’ve mentioned above.  As project complexity increases and knocks on the door of Scratch’s limitations, one needs to design clever trade-offs or consider moving to a constructive environment with more capability (such as NetLogo, MicroWorlds, and probably Squeak).  As always, I’d certainly appreciate any comments and suggestions.

P.S. Another limitation is that Scratch does not allow for string variables - nor does it support the methods normally available in Logo to manipulate string variables.

March 9, 2008

Scratch Adventures in Linux

Filed under: Edubuntu, PuppyLinux, Linux, Scratch — kchesnut @ 9:35 pm

A perfect storm of circumstances has arisen over the last couple of weeks to send me on an investigation of Linux.

  • A project came up that might be feasible if a really cheap embedded computer could be found that would run the flash player. A low cost Linux platform might allow the project to be feasible.
  • Over the years I’ve considered the perfect kids’ computer platform.  I’ve come to believe that Scratch must be a requirement.  The OLPC (One Laptop Per Child) computer may be the perfect kids’ platform, if it’ll run Scratch well enough. Until a native Linux version is available, the chatter on the internet is that there are some limitations. I’ve looked at the (current) limitations of Scratch on the Linux platform in conjunction with my Linux investigations above.
  • My daughter’s XP computer caught a pretty persistent virus. Cleaning using instructions / utilities I found on the internet seems effective, but the virus keeps coming back. I’m wondering if a Linux platform would be a good fit for most of her needs (if only iTunes was available for Linux).

This post will examine what I found out about Scratch on the Linux platform. I’ll also include other interesting tidbits I learned about Linux along the way. I ran these tests on dell laptops. I looked at 2 Linux builds, Puppy Linux and Edubuntu 7.1.

Puppy Linux

Puppy Linux is a compact Linux build. I learned about it while looking for a really cheap platform (as I mentioned above). In my investigations, I found a $100 PC listed as a Mini Linux PC. Pupply Linux is available as a <100MByte LiveCD that allows you to save your work (and configuration, …) to a USB flash stick. The standard build comes with the SeaMonkey browser with the flash player pre-installed. Whether you can run the browser and flash on the $100 platform is not yet determined, but I did try out Scratch on a laptop running Puppy Linux.   Note that you only click desktop icons once in PuppyLinux.  I don’t know how many times I ended up with 2 copies of stuff running!

  • Scratch runs on top of Squeak. I downloaded the Squeak Virtual Machine for Linux from squeak.org, opened it with the default application, and extracted it to /.  I downloaded the standard Image, opened it with the default application, and extracted only the image file (not the Mac version) to /Squeak-3.9-8. I navigated to th e/Squeak-3.9-8 folder and installed by typing “sh INSTALL i686-pc-linux-gnu”. I renamed the Squeak image file (had the revision embedded into the name) to squeak.image in the /Squeak-3.9-8 folder. You can run squeak by navigating to the /Squeak-3.9-8 folder and typing squeak squeak.image. I do get an error about the source files, but that’s all I needed to get Scratch to run on top of Squeak.
  • I downloaded the files only PC version of Scratch (WinScratch.zip) from the Scratch website, opened it with the default application, and extracted all the files to /Scratch. (I should have extracted them to / as the Scratch folder was included in the archive). You can run Scratch by navigating to the /Scratch/Scratch folder and typing squeak Scratch.image.
  • Scratch works fine, if a little slow. This might be due to a lack of memory since Puppy is running totally out of RAM on the LiveCD. Things that don’t work include:
    • MIDI sounds (like drum) don’t work.
    • Presentation mode doesn’t work.
    • Want Help? button doesn’t do anything.
    • Can’t play Scratch projects on the Scratch website as I didn’t work real hard to get Java working.
    • I’m sure you can make a launcher to click on and start Scratch from the desktop; I just didn’t bother to figure that out.

Edubuntu

Edubuntu is a full fledged Linux. It’s LiveCD takes a full 700MBytes. It comes with the Mozilla Firefox web browser. The flash player is not pre-installed and is only a little tricky to get installed and working.

  • Edubuntu has a cool Add/Remove Programs application that makes adding applications easy.  And there are hundreds of applications in the list!  Unfortunately, it didn’t work with Squeak.  After some browsing, I found links to a rebuild of Squeak that would work with Edubuntu.  The virtual machine is available at http://quatur.net/~jens/impara/ubuntu/squeak-vm_3.9.8-6_i386.deb and the image is available at http://quatur.net/~jens/impara/ubuntu/squeakland_3.8-6u_all.deb.  Once downloaded, these are installed automatically and Squeak can be executed by selecting Squeakland from the Education tab under Applications.

  • Download the WinScratch.zip file from the scratch web site and extract it into /Scratch.  You can execute Scratch from the terminal by going to the /Scratch/Scratch folder and typing squeak Scratch.image.

  • Create a launcher on the desktop and set its command to /usr/bin/squeak /Scratch/Scratch/Scratch.image.  (Yep, I screwed up and got 2 levels of scratch folders on this try, too!)  Double-click on the launcher icon to start Scratch.

  • Scratch had exactly the same limitations as when it was running on the PuppyLinux platform.

Notes

  • Both PuppyLinux and Edubuntu worked with wireless internet connections available on the laptops I used to test.
  • PuppyLinux even worked with a Belkin USB-802.11b adaptor on one computer! 
  • Edubuntu requires more computer horsepower, but… the add / remove programs utility and automatic installations make it a much better platform for normal use (provided, of course, you have the horsepower).
  • Edubuntu didn’t properly handle the WideScreen (1280 x 800) on one of the laptops.  It displayed at 1024 x 768, yielding a somewhat distorted screen.  If I remember correctly, PuppyLinux did the same thing.

Conclusions

  • Scratch works sufficiently well on Linux to be a reasonable constructive platform.  Assuming it works as well on the OLPC XO laptop, the XO may be the best kids’ platform available.  If I understand correctly, the MIT people are planning on making a version of Scratch for the XO, so I suspect the limitations will be eliminated soon.
  • Other low cost Linux platforms may also provide good PuppyLinux platforms on which to learn Scratch.

February 8, 2008

Scratch - Cell Biology

Filed under: Constructivism, Scratch, Programming — kchesnut @ 8:27 pm

My daughter’s high school biology class is studying cell biology, specifically the names and functions of the organelles.  She said they were simply memorizing all this stuff, and wanted to know if there was a better way to learn it.  I assured her that since rote memorization is probably the worst method possible, I was positive that there were better ways.

I suggested she try to organize the organelles by functionality and hierarchy (some are a part of, or in other organelles) and learn that way.  Unfortunately, I didn’t see a constructive approach to this task (simply learning the names and functions of the organelles).  But I did see see this as an opportunity to see if something could be done in Scratch that was in line with my idea of kids building tools and simulations as part of their understanding of school concepts.  Ideas that came to mind include:

  • simple 2 player review game (not really as constructive as I would like, but something I believe a high school student could do)
  • simulation of the cell (sounds pretty tough to me!)

I picked the simpler, the game.  See the project here.  Download the project file here.

Cell Game

Play the game as follows:

  • Click the green flag (not shown in picture) to initialize the game. 
  • Clicking the cat generates a question and fills in the organelle the question is about.
  • A team representative presses the A key (team 1) or the L key (team 2).  The question is reshown for the team who pressed first and displayed for “Host’s Answer Time” seconds (defaults to 5 but can be changed by the players).
  • After the time has expired, the teams are asked if the selected team answered the question correctly.  If they answered correctly, they are given a point.
  • Click the cat to generate another question and continue as above.

Implementation notes:

  • Starting with a cell picture with the organelles numbered was very convenient.  Background picture is from http://en.wikibooks.org/wiki/Image:Biological_cell.svg and licensed as Gnu Free Documentation License (GFDL) and Creative Commons Attribution Share-Alike license.
  • I simply used random to decide the organelle to choose and the type of question (name the organelle or tell the function of the organelle).
  • To simplify the program and also make it better for reviewing, I included both the name and function of the organelle in the answer feedback.

Some of the things I want to consider for these projects was mentioned in a previous post…

  • Estimate the grade level of students who I believe could generate a comparable program.
    • I think Junior High level kids could generate a comparable project.  I think a 6th grader could create most of the project with a little help here and there.
  • Estimate the grade level of students who I believe could understand the program, discuss the strengths and weaknesses of the program, and possibly improve it.
    • I think 5th and 6th graders (10 - 12 year olds) could understand the scripts and discuss the project.  Those with some Scratch experience could probably improve the game.
  • Estimate the amount of time I spent putting the demo together.
    • I spent about 2 -3 hours playing with this.  Additional time was spent reading / learning about the organelles.
  • Provide sample discussion questions.
    • What would make the game more fun?  Can you change the project to implement your ideas?
    • Are there bugs in the game?  Can you find a way to exploit the bugs for your advantage?  Better yet, can you fix the bugs?

In conclusion, the cell game is not the kind of constructive project I want to examine in this series.  But since I had put it together, I thought it made sense to discuss and reflect on it in this post.

January 25, 2008

Scratch - Phases of the Moon

Filed under: Scratch, Logo, Programming, Edtech, K12 — kchesnut @ 10:00 pm

As I mentioned in my last post, I’ll be creating some Scratch projects similar to what kids might when using Scratch as a constructive tool.

I’ll repeat the ground rules from my last post…

  • I’m not trying to create a program to teach the kids anything (I’ll have a hard time remembering this!).  I’m building a demonstration program similar to what the kids could build as part of a constructive activity as part of an inquiry into a subject.
  • These demonstrations will be created using the simplest constructs.  If there’s a clever, sophisticated way to do something and a brute force simple method, I’ll try to resist my normal inclinations and use the simple method.  This will better allow me to appraise the age of kids who could make such a program or understand and discuss such a program.
  • Recognizing that kids will do a program and then be ready to move on, I’ll try to restrain my tendencies to go back and optimize the projects.  (I know I’ll do some… it’s just too much in my nature. )

 Now, on with the phases of the moon.  The 5 requirements for the project are:

  1. Consist of the Sun, Moon, and Earth.Moon Script
  2. The Moon will orbit the earth.
  3. The side of the moon facing the Sun will always be lit.
  4. A mechanism will help the observer know what portion of the Moon is visible from the Earth.
  5. A separate picture will show the Moon as observed from the Earth.

 View the project here, or download the project file here.   The script for the Moon orbiting the Earth is shown in the image to the right.

Implementation notes:

  • The drawing tools in Scratch made it very easy to create the Moon and Earth.  Motion of the Moon around the Earth is a simple circle with the Moon stopping each day to allow us to see where it would be and how it would look.
  • Scratch allows you to select whether a sprite rotates as it changes direction.  The Earth is set to rotate.  The Moon circling the Earth is set to not rotate.
  • The red line that marks the area of the Moon that is visible from Earth is a simple line sprite that has the same motion as the Moon.
  • The view from Earth Moon image is simply 28 different costumes for the sprite.  The costume changes each time the Moon moves.

Some of the things I want to consider for these projects was mentioned in my previous post…

  • Estimate the grade level of students who I believe could generate a comparable program.
    • I think Junior High level kids could generate a comparable project.  I think a 6th grader could create most of the project with a little help here and there (may be within Vygotsky’s Zone of Proximal Development).  I’d really like input on this!  Any readers want to provide feedback on my estimates???
  • Estimate the grade level of students who I believe could understand the program, discuss the strengths and weaknesses of the program, and possibly improve it.
    • I think 5th and 6th graders (10 - 12 year olds) could understand the scripts and discuss the project.  Those with some Scratch experience could probably improve the simulation.
  • Estimate the amount of time I spent putting the demo together.
    • I spent about 2 -3 hours playing with this.  Much of that time was trying to figure out if there was a better way to show the view from Earth.  I settled on a costume for each day - there’s probably a more elegant way to do this… but using the costumes is well within the ability of the kids I mentioned above.
  • Provide sample discussion questions.
    • What’s wrong with this simulation?  (The fact that the Moon moves around the Earth in the wrong direction is one of the things wrong.)
    • Can you modify the simulation to make the Moon orbit the Earth in the correct direction?
    • How do the real phases of the Moon look different from those shown in the View from Earth?
    • Why do the real phases of the Moon appear to be crescents?  Why does the simulation always have the light / dark separation as a vertical line?  (besides the laziness of the author, think in terms of a 3 dimensional sphere lit from one side verses a 2 dimensional circle)

Well, what do you think?  Suppose you have a class of 6th graders in Science studying the Moon.  Suppose you come up with 4 - 5 concepts, break the class into small groups, and let them “Scratch” out a simulation to demonstrate their concept.  (This would include investigating the concept, coming up with simple requirements for the simulation, designing and implementing the simulation.)  Then allow the groups to show their projects to the class and discuss questions such as those I included above. 

Would the students learn the concepts better?  Would they be more (intrinsically) motivated?  Is this practical?  Why or why not?  I’d really like to know.

« Previous PageNext Page »

Powered by WordPress