Saturday, September 29, 2007

Blog 4: Instructional Software

Whoops! It looks as though I mistook my blog on interesting software integration for blog 4! Well, here is the real blog 4 in all its majesty:

I was very interested in MIT's Scratch Project when we discussed it in class, so I decided to do my instructional software review on this great piece of software. Scratch is essentially a graphic-oriented programming language that makes programming accessible to youngsters and adults alike. Easy to understand booleans are placed in a logical order in order to make fun videos, games, tutorials, and just plain bizzare stuff!

Pros:
Structurally, the Scratch software seems very solid. Incessant button pushing and inane actions did not seem to have any adverse effect on the program itself. Most buttons are intuitive, and task flow is fairly fluid. However, while fairly straight-forward for a 22 year old engineer, I think this software may prove difficult for most students below the 9th grade.

Flexibility and creativity options are limitless! With this software students will have the opportunity to make almost any programming idea a reality. Lots of color/sounds/images make this ideal for nurturing the creative processes.

Students not only control everything about programming, but also the pace that they will program at. Several online tutorials will surely prove invaluable to any instructor desiring to get his/her class started with this software.

Because this software is essentially a "blank slate" instructors need not worry about screening for gender/race bias or the relevancy of content.

Every piece of the software seems to have purpose...no distracting images or videos. In order to have fun with Scratch, you have to make the game!

One thing that really surprised me about this software was its striking resemblance to National Instruments' LabView software. LabView is an extremely complex (and expensive) piece of software that lets the user construct software programs to aquire and analyze data from any number of sensors. The Scratch Project's software and LabView resemble one another is the drag-and-drop manner in which the program is written. Rather than learning all the confusing semantics and syntax invloved with a language like C++, Scratch and LabView allow the user to simply drag and drop their program to perfection!

Typical logic unit for a scratch program:















Typical logic flow chart for a LabView program:











Cons:
There is very little structure or guidance in the Scratch software. Some students may be confused by the overwhelming task of learning how to program.

The software is not set up to "teach" programming, but rather to provide an easy to use interface for the learner. Therefore, this is not so much a "teaching tool" as it is a "tool." Calculators can not teach someone how to do math, but they sure can make it easier!

The amazing amount of freedom provided by Scratch may lead some students to construct lude, inappropriate, or violent games/activities.

Learning curves may be drastically different for different students. It would be a shame for some students to have entire programs written and others to still be struggling with the meaning of booleans. Working in groups may help to alleviate this problem.

The Jist:
Scratch is an excellent piece of software to help students become aquainted with programming. Scratch is relatively easy-to-use, bulletproof, fun, and flexible. However, instructors must be aware that some students may not take easily to programming, steep learning curves, and that students may decide to create programs that are not school-appropriate.

No comments: