My Experience Using Scratch and Programming Languages

My Experience Using Scratch and Programming Languages

My Scratch Projec



Experience Using Scratch

Scratch is a super cool tool that helps kids learn about programming. It’s got a friendly interface that makes it easy for kids to create their own games and animations. I tried it out and made a golden cat that could move around the scene! It was my first time programming an animation, and I had a blast. You use different keys on your keyboard to control your characters. I chose a cat and programmed him to walk, cartwheel, jump, and flip. The only challenging part was adding sound to the command. I could not get the commands to sync with the sounds. I wanted the cat to move with the sound as soon as I pressed the key. So, I moved the sound box down one slot, but it didn’t work. Then I tried using an IF/THEN control, but his legs wouldn’t move. After a few tries, I finally figured out how to make it work. It turns out I didn’t need to add an IF/THEN statement. I just needed to move the box down one more slot, and everything worked perfectly!

Insights

A computer is only as smart as its programmers. A programmer needs to consider every possible nuance, or there will be a bug in a system's operation. Computers are incredibly particular; order and syntax play critical roles in programming. One small change to an application, such as adding a sound, could negatively affect the behavior of a program. Thus, learning how to program is a process of trial and error. However, it can still be a fun and fulfilling process. Scratch is a fun app for kids, but it also shows what you can do if you’re into programming. With Scratch, you can create an array of animations and bring them to life in the digital world. It’s a great way to introduce people to programming and unleash their creativity.

Scratch vs. Programming Languages


Scratch is a fun way to learn programming. It’s like an interpreted language because it works in real time. You build boxes with different functions and link them to the keys on your keyboard to make your characters do things. You can’t know if the prompt will work until you try it. It’s the same with interpreted languages like Python; if you don’t write the commands correctly, they won’t work (TestOut Corp, 2024). Pythons interpreter doesn’t catch errors until you try to run a command (TestOut Corp, 2024). Scratch and Python exemplify the dynamic nature of interpreted languages, where immediate feedback allows learners to experiment and understand programming concepts effectively. This hands-on approach fosters creativity and problem-solving skills, making them excellent tools for both beginners and experienced programmers.

Just like Google lets you type in any word and find information related to your search. Scratch is also like a query language because it organizes the boxes into categories so you can find what you need. It makes it easy to find the commands you need and shows you every command in the scratch language.


However, Scratch does not operate the same as every programming language. For instance, compiled languages need a compiler to execute commands (TestOut Corp, 2024). The compiler translates the developer’s code into a specific operating system’s machine language and saves it as a .exe file, which is downloaded directly into a computer's processor (TestOut, 2024). So, compiled languages are slower than Scratch to implement. In contrast, assembly languages do not need a translation tool because it's similar to machine languages (TestOut Corp, 2024). It’s analogous to two people speaking different dialects, so it’s fast to implement. However, its similarity to machine language makes it challenging to write. Assembly language is one of the first programming languages ever developed and, consequently, difficult to learn, unlike Scratch (TestOut, 2024). Scratch is easy to understand and fast to implement.

Easiest to Use

I think interpreted language might be the easiest to use because it's fast to implement and portable. Interpreted languages use an interpreter to convert source code into machine code for any operating system (TestOut Corp, 2024). So, once users debug their programs, there are no further steps. Likewise, it’s easy to find mistakes in the program since the program is converted one line at a time (TestOut Corp, 2024). However, the ladder also makes interpreted languages more challenging to maintain than other languages (Kwame et al., 2017). Developers only find bugs when they’re running the code, which can be a real pain when you’re dealing with a lot of code. It’s like when I tried to add sound to the cats’ walk. I thought I had it all figured out, but then I started getting all sorts of problems. Another downside is that interpreted languages take about twice as long to run as other languages (Kwame et al., 2017). So, they’re not really the best choice for coding systems that need to be super fast. Interpreted languages remind me of Scratch; it’s like playing with blocks, and you can make mistakes without worrying about them.

Programming System Strengths


Compiled languages are perfect for operating systems. When you buy a new computer, the first thing you usually think about is speed. Your computer’s speed is limited by its operating system and processor (TestOut Corp, 2024). The operating system is like the boss that manages all the information going into your computer’s processor and RAM (TestOut, 2024). So, it’s no surprise that operating systems need to run as fast as the processor. Here’s the cool part: compiled languages execute commands over twice as fast as interpreted languages. Why? Because the compiler translates the source code into a special language that the computer can understand (Kwame et al., 2017, p. 11). In simpler terms, the instructions are made just for your computer, so it doesn’t have to waste time processing unnecessary information. That’s why compiled languages are the best choice for making sure your operating system runs super fast and smoothly.

Interpreted languages are suitable for students who want to learn about coding. They’re similar to the Scratch program because the source code only works when it's written correctly. Working with interpreted languages teaches students how computers think and problem-solving skills. Since it’s easy to make syntax mistakes and create bugs within the code, professors can create complex homework assignments for students to debug. Students will receive plenty of practice and gain their practical knowledge of coding.

Programmers can use assembly language to tweak a computer’s performance. It can directly interact with the computer’s processor or RAM, changing how it works and making it more efficient (TestOut, 2024). But bad actors can use the same tricks to do the opposite. TestOut (2024) says assembly languages aren’t as common these days because “higher-level programming languages were created” (Chapter 10.1.5, para. 2). However, they might still be useful for hobbyists and cybersecurity professionals.

Query languages are helpful for building a database. The purpose of query languages is to find information. When students are doing research for a project, they type keywords into a database. The database then converts the keywords into a query language, such as SQL, to retrieve resources relating to them and display the results on the screen (TestOut, 2024). In essence, query languages help people find information quickly and efficiently.

My Opinion of What’s Most Popular

I think the most popular computer language is compiled language because it's used for operating systems, which make computers function. Everyone I know owns a few computers, whether a smartphone, smartwatch, or personal computer. So, there must be many devices on the plant. Each one uses an OS to function correctly because it manages data in the CPU. So, the other languages are somewhat useless without compiled languages because no one could access their software. Or our computers would run slower. Either way, we wouldn’t enjoy our devices as much without compiled languages.

  

References

Corp, T. (2024). CertMaster learn tech++. http://www.testout.com

Kwame, A. E., Martey, E. M., & Chris, A. G. (2017). Qualitative assessment of compiled, interpreted, and hybrid programming languages. Foundation of Computer Science FCS, 7(7), p. 8-13. https://www.caeaccess.org/archives/volume7/number7/764-2017652685/

Comments