Scratch and Programming Languages


    
Studying programming languages can presumably take a number of different forms. While programming can be an intense and difficult to learn task, there are ways to immerse oneself in it without immediately jumping into the hardest languages. In this paper, I will attempt to accurately portray my experience using an easier immersion technique while also comparing it to participation activities in our study book, as well as a comparison overall to commonly used program languages.

    I was introduced to a program called Scratch, which is an online building program that enables users to build programs without having to learn complicated programming languages outright. While it is a straightforward program, there is a learning curve that must be overcome to create a cohesive project. When I initially began to use it, I struggled to understand how to place objects in it that, upon the program being run from the beginning, would go back to their beginning location on a background. Only after searching through each area of the program carefully was I able to locate a step that could be added to it that would move the character sprite back to the beginning when the program starts running. In addition, I had to search for a way to stop an active script upon an action being taken by someone running the program. Before being able to locate this, the initial script would continue to run and would make text appear on the screen that was not applicable to the story line of the project.

    Completing this exercise has helped me realize a couple of different things. The basics of programming must be understood to move forward with a project whether one is using a simple program or a complex language. If I have not yet learned that a prior script must have a “stop” statement, then I cannot have the next script run uninterrupted. I also came to realize that creating even simple actions within a script is a very complex process. This has given me a new respect for the programming profession, as I had not realized how intricate the process was overall.

    The complexity of machine language, assembly language, and high­level language was further emphasized to me throughout the participation activities in the textbook. While Scratch provided a visual way to assemble the coding, the examples in the textbook were text­-based and somewhat complicated. Machine language deals only with 1’s and 0’s, a combination of which will tell the CPU what to execute (Vahid et al., 2019). This language can be used for scenarios that require subtraction, multiplication, or division equations. Assembly language uses human readable language, converted by an assembler, to machine language. This gives humans an easier way to give commands to a CPU without using 1’s and 0’s exclusively. This language would be used for any easier task that does not require complex formulas. Finally, high­level programming languages give the user more intricate instructions to execute more complicated tasks (Vahid et al., 2019). Any task that requires the use of formulas, such as a Fahrenheit to Celsius converter, would utilize this language. After using each of these languages in the participation activities, I concluded that assembly language was the easiest for me to understand. Although the languages discussed have been widely used throughout recent history, much of the programming done today requires more complex instructions. Because of this, I believe that high ­level languages are the most popular today. Some of these languages include Python, C, C++ and Java.

    Programming today takes many forms. Online programs that give the user a way to program without the use of machine language instructions are very popular. However, older languages still have a place in technology. Knaggs (2016) says “Assembly language teaches how a computer works at the machine level. It is therefore necessary to teach assembly language to all those who might later be involved in computer architecture.” To understand modern programming languages and the way a computer works, the older languages must be studied and understood. We do not need to be an expert in the old languages to experience a form of programming, but to master programming, we must begin with them.


Link to Scratch Project Here


References

Knaggs, P. (2016, April 7). ARM Assembly Language Programming. Retrieved from Rigwit:

http://www.rigwit.co.uk/ARMBook/ARMBook.pdf

Vahid, F., Lysecky, S., Wheatland, N., & Siu, R. (2019). TEC 101: Fundamentals of Information

Technology & Literacy. Retrieved from Zybooks:

https://learn.zybooks.com/zybook/TEC101:_Fundamentals_of_Information_Technology_

&_Literacy_(TED2405A)

Comments