Programming languages have been around since the beginning of technology. Growing from simple 1s and 0s, using an on/off switch, to high-level languages such as Python and even languages targeted at very early entry coders such as Scratch. After getting to experience each language, though just briefly, I have found that each language has its own unique benefits. As technology continues to grow, the number of languages has continued to grow with it, but even so, there will always be a need for programmers who have knowledge of the lowest levels of languages.
Scratch
Scratch’s drag-and-drop interface was very user-friendly. Initially, I started with just making a simple animation to get the hang of the software and then moved on to a more challenging project of making a user-interactive game. The tutorials provided a great template for making a pong game. I was able to add my own spin on things with sounds and a fun background, and instead of using a simple ball, I inserted my dog as the sprite. After using the guide for the basic program, I knew that I wanted to incorporate a life counter. This is where I began to run into challenges.
When there was a miss, I wanted the counter to go down by one until reaching zero and give a game-over message. I attempted to use an if/else control but found that it was not catching the bounce from the bottom line correctly. Once I used multiple if statements in the ‘forever’ loop, I was still having issues with my “pong ball” staying stuck on the line for an extended period of time, resulting in the counter not working correctly. After much trial and error, I realized that by using multiple if statements and duplicating the same turn and move motions, I was able to get my dog to move more fluidly and my life counter to change correctly.
I found that Scratch is just as sensitive as programming languages such as Python. One single overlooked block of code can result in a headache of constant debugging, no matter how user-friendly and appealing it may be to look at. Prior to this course, I did get to experience Python on a more in-depth level in my Fundamentals of Programming Languages course. There were many similarities with Scratch when it came to loops, variables, and operators. Though Scratch is much more straightforward than machine, assembly, and languages such as Python, there were moments, such as with the life counter, when I wished I was able to use my own line of code to resolve my bug.
Programming Languages
My experience with Scratch, machine, assembly, and high-level languages allowed me to see what goes into programming at varying levels of complexity. The visual experience of Scratch was definitely the best, and the plug-and-play functionality was the easiest. However, I still ran into challenges, as I would with any programming language. This week, even after exploring four languages, I have only scratched the surface, with hundreds still left to explore, each with unique capabilities and uses. With the increasing number of programming languages being introduced, having the knowledge and skills to use the lowest levels of programming languages will ensure a programmer is prepared for any challenges or job opportunities that may come their way.
Scratch Link:
References
Trang,
H. (2024, June 17). What is Machine Language? Applications of Machine Language.
Tokyo Tech Lab. https://tokyotechlab.com/blogs/ngon-ngu-may
No comments:
Post a Comment