Although I do not have any formal programming experience, I found
Scratch to be a very user friendly
program. When first opening scratch I was a little overwhelmed as there seemed
to be an endless amount of options available to create a project. I spent a
significant amount of time playing around with the different options and blocks
available. I also found the different tutorials extremely helpful in deciding
on a project. Once I had a basic idea of how to get started, I began by picking
the sprites and backdrop I wanted, the rest was fairly easy as I was able to
start adding blocks and creating my animation.
As mentioned before, I
found Scratch to be very user friendly when creating projects, but there were
some difficulties experienced along the way. One issue I ran into was
sequencing. My animation includes two characters and I could not figure out how
to get their timing right. I finally discovered the block that can be used to
wait how ever many seconds you choose. This allowed me to easily time the
animations in sequence. Another difficulty I experienced was figuring out to
keep the characters from rotating once the animation was running. Again, I
located the set rotation block which allowed me set the character to a do not
rotate setting.
Although I have not had any formal programming experience, I found Scratch to be extremely insightful. Programming can be extremely challenging yet rewarding at the same time. I believe programming requires a large amount of patience. There were numerous times where I was far along in programming the animation when I would realized I had made a mistake, and had to deconstruct my blocks to fix the error. Along with patience I have also learned how much creativity is required for programming. The Scratch exercise required me to think of a concept among an endless amount of options and create something that may seem fairly basic when viewed yet required many complex steps to create. All of which required creativity.
When comparing the difference between Scratch and the learning activities, I found scratch a bit more enjoyable. Although I know I can create the same projects with the languages shown in the learning activities, I found the ease of use with the blocks in scratch to be more interesting to me. I was able to create an animation and watch it evolve. I found the learning activities to be interesting but at the same time not as exciting due to the examples being fairly basic. With that being said, I know much more can be created with the languages included in the learning activities versus a program like Scratch.
Although each language has the same concept of programming, there are some significant differences between each one. Machine language uses zeros and ones to program whereas Assembly language uses programming that can be understood by humans (Vahid & Lysecky, 2017, Sec.2.8-2.9). High level languages are much more complex and utilize higher level instructions which allows for more productivity. Some examples of high level language programs include C++ and Python (Vahid & Lysecky, 2017, Sec. 2.10). Scratch is another programming language that uses blocks that are dragged, dropped and connected to create a variety of different option such as animations or games. All of these options can be utilized for different programming purposes.
Among the different languages, I found Scratch the easiest to use. As mentioned before, Scratch was very user friendly for the most inexperienced programmer, The options are color coded in different sections and the drag and drop feature was very easy to use. Each block is very specific to the actions wanted and the blocks have the option to change upon the users request. For example, you can program a character to walk forward anywhere from one to ninety nine steps, then turn any direction and continue moving all while changing body positions to give the impression of walking.
All of the languages discussed have many possible uses. Scratch, for example seems to be more for entertainment purposes to program basic animations or games. Machine language is a basic programming using ones and zeros. Machine language would be more effective in a computers CPU as a computers processer needs to run very quickly (Wikipedia, Machine Code, n.d, para. 1). Assembly language, like machine language, is also a basic programming language that takes machine language and converts it to code that can be understood by humans and may be most beneficial in a scenario like debugging (Weiss, T. 2017).
Although all languages discussed can serve useful for many different scenarios, High level languages such as Python seem to be the most popular. These languages are much more complex and allow a programmer to do a lot more than basic programming languages. High level languages can be used for many purposes such as video games or computer programs. According to Vahid & Lysecky, Programming languages such as Python are easy to learn, easily accessible, and can preform high level oporations such as looping instructions allowing for programmers to save time (Vahid & Lysecky, 2017, Sec. 2.11).
Although I have not had any formal programming experience, I found Scratch to be extremely insightful. Programming can be extremely challenging yet rewarding at the same time. I believe programming requires a large amount of patience. There were numerous times where I was far along in programming the animation when I would realized I had made a mistake, and had to deconstruct my blocks to fix the error. Along with patience I have also learned how much creativity is required for programming. The Scratch exercise required me to think of a concept among an endless amount of options and create something that may seem fairly basic when viewed yet required many complex steps to create. All of which required creativity.
When comparing the difference between Scratch and the learning activities, I found scratch a bit more enjoyable. Although I know I can create the same projects with the languages shown in the learning activities, I found the ease of use with the blocks in scratch to be more interesting to me. I was able to create an animation and watch it evolve. I found the learning activities to be interesting but at the same time not as exciting due to the examples being fairly basic. With that being said, I know much more can be created with the languages included in the learning activities versus a program like Scratch.
Although each language has the same concept of programming, there are some significant differences between each one. Machine language uses zeros and ones to program whereas Assembly language uses programming that can be understood by humans (Vahid & Lysecky, 2017, Sec.2.8-2.9). High level languages are much more complex and utilize higher level instructions which allows for more productivity. Some examples of high level language programs include C++ and Python (Vahid & Lysecky, 2017, Sec. 2.10). Scratch is another programming language that uses blocks that are dragged, dropped and connected to create a variety of different option such as animations or games. All of these options can be utilized for different programming purposes.
Among the different languages, I found Scratch the easiest to use. As mentioned before, Scratch was very user friendly for the most inexperienced programmer, The options are color coded in different sections and the drag and drop feature was very easy to use. Each block is very specific to the actions wanted and the blocks have the option to change upon the users request. For example, you can program a character to walk forward anywhere from one to ninety nine steps, then turn any direction and continue moving all while changing body positions to give the impression of walking.
All of the languages discussed have many possible uses. Scratch, for example seems to be more for entertainment purposes to program basic animations or games. Machine language is a basic programming using ones and zeros. Machine language would be more effective in a computers CPU as a computers processer needs to run very quickly (Wikipedia, Machine Code, n.d, para. 1). Assembly language, like machine language, is also a basic programming language that takes machine language and converts it to code that can be understood by humans and may be most beneficial in a scenario like debugging (Weiss, T. 2017).
Although all languages discussed can serve useful for many different scenarios, High level languages such as Python seem to be the most popular. These languages are much more complex and allow a programmer to do a lot more than basic programming languages. High level languages can be used for many purposes such as video games or computer programs. According to Vahid & Lysecky, Programming languages such as Python are easy to learn, easily accessible, and can preform high level oporations such as looping instructions allowing for programmers to save time (Vahid & Lysecky, 2017, Sec. 2.11).
My animation can be found at https://scratch.mit.edu/projects/317998346/
References
Vahid, F., & Lysecky, S. (2017). Computing technology
for all. Retrieved from zybooks.zyante.com
Weiss, T. (2017). Why is Assembly
Language Used. Retrieved from https://www.quora.com/Why-is-Assembly-Language-used
Wikipedia. (N.d.). Machine Language.
Retrieved from https://en.wikipedia.org/wiki/Machine_code