Programming Languages

Introduction:

In this reflection, I will discuss my firsthand experience of creating a program using Scratch which is an introduction programming language. I will delve into the challenges I faced during the process, detail the strategies I employed to overcome them, and share the valuable insights I gained about programming through this exercise. Furthermore, I will draw a comparison between my personal experience with Scratch and the interactive tasks presented in Chapter 2 of the book, which explored the various types of programming languages. Furthermore, I will outline the distinctions between the programming languages, classify the most user-friendly option, discuss scenarios where each language excels, and conclude with an analysis of the most widely adopted programming language.

My Experience Using Scratch:

Building a program using Scratch was a great, interesting, and engaging experience. I learned that Scratch is a block-based coding language that is made for beginners like me to learn about the various languages that people who work in the technology environment could potentially encounter. Using Scratch in the beginning was challenging because it was something new to learn and I did not know where to start. The tutorials that were accompanied within Scratch were helpful to know the basics on where to navigate tools and how to create a program. To overcome the challenges I faced using Scratch, I watched YouTube videos where individuals demonstrated live learning programming sessions.  This was effective for me as it enhanced my understanding of the material by presenting it visually. After practicing and exploring around a few times it became much easier to navigate around with the different tools within Scratch such as adding sound, rotation, including a sprite or backdrop, etc. The biggest perceptions that I gained about programming when doing this exercise is that Scratch allowed me to understand that problem-solving skills are required when creating effective programs. Also, Scratch allowed me to take complex tasks and break it down into smaller components to make a designed and structured program.

From doing this assignment I now understand that coding is not only about numbers but rather it is about figuring out how to code and knowing the concepts. Reading Chapter two and using Scratch, I learned that there are significant differences in assembly, machine, high-level languages, and Scratch. Both assembly and machine language are considered on the lower level of language and programming. Both are low level due to them operating on a level that is close to the hardware of the computer system.  Machine language consists of numbers 0 and 1. Assembly language functions as a form of machine language that is more accessible to humans, providing programmers with enhanced ease of understanding and comprehension. For example, input M[5] translates in the system as 01 100 000 000. High-level language, such as Python is a more intuitive version of assembly language.

Among the programming languages, I think that Scratch is the easiest to use, especially to individuals who are new to programming. With Scratch being a block-based programming and simplified and user-friendly, more people can catch on to the basics of what programming consists of. Each programming language has advantages and can be categorized in scenarios that would be most effective. For instance, machine language and assembly language are used in operating systems, high-level such as Python are used for data analysis. Regarding what programming is the most popular, I believe that to be Python because it is discussed a lot in the tech industry. Also, I think it is the most well-known due to the wide range of applications it supports.

Building a program using Scratch provided me with valuable insight in programming. I am appreciative of the fact that Scratch was developed so that the information can be digested in more understandable ways. Moving forward, I would like to learn all the programming languages and have a sense of confidence even though discussed in the textbook and outside sources, experienced professionals have some difficulty with programming.  Programming is challenging but also rewarding task that is beneficial to know and learn especially today due to all technological advancements. Here is the link for the Scratch project that I created. https://scratch.mit.edu/projects/941514196

 

 References

Cass, S., & Goldstein, H. (2023). How Python Swallowed the World: Lessons from Compiling Top    Programming Languages. IEEE Spectrum, Spectrum, IEEE, IEEE Spectr, 60(9), 2.                            https://doi.org/10.1109/MSPEC.2023.10234196

 Ibne Amin, M. F., Rahman, M. M., Watanobe, Y., & Daniel, M. M. (2022). Impact of Programming Language Skills in Programming Learning. 2022 IEEE 15th International Symposium on Embedded  Multicore/Many-Core Systems-on-Chip (MCSoC), Embedded Multicore/Many-Core Systems-on-       Chip (MCSoC), 2022 IEEE 15th International Symposium on, MCSOC, 271–277.                                https://doi.org/10.1109/MCSoC57363.2022.00050

Comments