As I sat down to use the
MIT program, Scratch, I felt slightly overwhelmed. It wasn’t immediately
apparent to me how I would be able to create my own animated project and I was
uncertain. My first impression of the website was that it was colorful and had
pretty clearly defined sections to aid the user. There are sections where you
can see projects created by other users, as well as a section on tutorials, and
finally, a section to create. It was clear to me that I would need to spend
some time in the tutorials learning where to start.
I knew I needed to select a starting point, so I clicked
on Choose a Sprite to see what my options were. I was happy to see that they
had a lot of different figures that could be used in order to create a project
or story. I was amused by the dinosaur figure and decided he would be the star
of my project. Next, I noticed that there was a button to choose a backdrop, so
I selected that and chose a city background. I think I was likely inspired by
Jurassic Park but ended up deciding to have a dinosaur in the city looking for
something to dine on. Now that I had an idea for the project, I had to do the
hard part, execute.
I was pretty uncertain as to how to begin, so I watched
the tutorials that I thought would be pertinent. I found the Create a Story and
Animate a Sprite to be the most helpful. Both were helpful in the basic set-up,
with regard to how to start the story, switch between backdrops or costumes,
and animate your characters. What I thought was missing from the tutorials was
an explanation of the various codes to select. Some are self-explanatory, like
“move 10 steps”, but there are some others that I think need some explanation.
For example, I think most people are familiar with the concept of the x and y
axis, but it isn’t clear how it will relate to the project. If you use the
code, “set x to __”, is that a starting point for your sprite? Will that set x
for the whole project? I decided to handle the uncertainty through trial and
error. I broke up what I wanted to do into parts, and animated each part, then
joined them together. To start, I wanted my dinosaur to walk up, think about
his snack, and then move forward. So I played around with the coding with
moving the dinosaur character using “go to x” and then the “think” codes. I
realized that I wanted my human figure to interact first, so I learned to time
it out, and use show/hide and wait to make the characters appear when I wanted
them to. The costume animation was pretty easy to use, the only difficulty
having them move in the screen at the right locations. The key to that for me
was using the x and y coordinates to determine the locations. My completed
project can be found at https://scratch.mit.edu/projects/553311596/.
The take-away for me of this assignment was to learn how
to break down each movement in order to perform the animation. Even something
simple like a character talking or changing expression required a costume
change. I think it solidified the idea to me that programming is a series of
steps, and the sequence is very important. It seems to me that these sites are
very high level with regard to animating the projects, but with regard to
programming the concepts seem to be similar.
There is a good deal of similarity when comparing the
Scratch program with machine language programming. The inputs are different,
character directions as opposed to binary numbers, but both are instructions. It
is easier for the brain to process instructions like “_+_” than “11 111 101 110”,
but they are both methods of adding figures. Both require a series of commands
in a program, but the binary system requires some additional thought as you
determine the codes for each command. Python is bit more user friendly than the
binary system, because instead of a numerical code it uses a series of
instructions and variables in order to run a program. You would still have to
learn the language, “print” runs the computation for example, but it seems
easier to do for the average person than using the binary numbers for
instructions. I prefer a programming system with commands in the English
language as opposed to numerical, but I found the participation activities in
the programming sections of Chapter 2 (Vahid, 2017) to be fairly
straightforward. The only area where I was tripped up was with regard to adding
inputs sequentially. In the example of “y” equaling “x+x+x”, I wanted to add
all the x values at once instead of in sequence, so that will be something for
me to pay attention to in the future.
It seems that Python is a fairly popular programming
method, however I see Java all over the place. Most of my work applications are
based on a Java platform, and many of the applications I use personally do as
well. It will be interesting to learn more about the various types of
programming as the course progresses.
Comments
Post a Comment