Skip to main content

Programming Languages: Scratch Coding

Programming Languages

 Programming Languages Paper: Exploring Scratch and Computational Thinking

Charla Miller

University of Arizona Global Campus

TEC101: Fundamentals of Information Technology & Literacy


Programming Languages Paper: Exploring Scratch and Computational Thinking

Introduction

In this assignment, I had the opportunity to research and explore the logic of

computational thinking through a drag-and-drop block programming language called Scratch.

This application gets you engaged through the platform and allows users to make interactive

stories, games and animations, by piecing together “code blocks”, such as Motion or control blocks visually, this can really help

beginners of any age. I created a short program, of 30 code blocks in Scratch, and it resulted in a

colorful animation that featured a cat in motion around Spaceship and Space City. This

paper will discuss my experience learning the programming language, as well as a comparison to

the languages introduced in our text this week.

Describe your experience building a program using Scratch.

Building my program was enlightening and frustrating rather than enjoyable. I spent

many hours watching tutorials to understand what kind of programming language was being

used, and how to use drag-and-drop block programming language. The interface was userfriendly

and allowed me to experiment with different blocks seamlessly, organizing them

according to motion, looks, sound, and control options. That was helpful. I utilized a little over

30 blocks to create a smooth and cohesive program that allowed my character to glide, fly,

speak, think, play sound effects, record and edit sounds, etc.

The visual representation of the code allows you to see how each block interacted with

the others. For example, I used blocks to make the character respond to user clicks, by

employing code block” when this sprite is clicked”, and paired it with a motion or sound. I began

learning how debugging is an important part of programming; by watching how the character

behaved in response to my code and made it where I was able to quickly identify errors and

improve the overall experience and get the result I wanted.

Insights I Gained While Programming in Scratch

This exercise provided valuable knowledge into the nature of programming and the

principles that are fundamental to computational thinking. One key takeaway was decomposition

or abstraction, I learned to break down tasks into smaller sections into manageable parts. It made

it so that each block represented a specific function or task within the overall program. It taught

me that programming requires logical thinking, it involves sequences of commands that can lead

to desired outcomes. It was almost like reading and recreating recipes by changing the things you

like a little more.

Constructing and editing code in the program I was creating taught me the importance of

experimenting and adapting code. If I compare this programming language, drag-and-drop block

programming to the programming concepts in the textbook, I feel that Scratch resembles

interpreted languages in that it runs immediately and allows for changes to the code.

Comparing Programming Languages

In our textbook, compiled, interpreted, assembly, and query languages, all were

discussed, as each of them have unique features and applications. Scratch reminded me of

interpreted languages, as the immediate feedback allowed me to see the results of my code in

real-time. Compiled languages differ from Scratch, because the code needs to be compiled first,

then executed, which can ultimately slow down debugging processes. Among the different

languages I found Scratch easy to use due to it immediate interactive interface, and doesn’t

require any previous experience in coding. The block-based approach clearly makes it seamless

and clearly highlights how different commands interact and promotes a strong understanding of

the fundamentals of programming.

Scenarios

1. Query Languages like SQL (Structured Query Languages) are ideal for managing and

retrieving data from databases, making them indispensable in data analysis and back-end

web development. They help you find specific data, show only what you are looking for,

or present information in helpful ways.

2. Compiled Languages, like C++ and Java, use a special tool called a compiler to change

the code into machine language. It is ideal for applications that need high-performance

like game development or software requiring complex computational tasks, where

execution speed is vital. (TestOut Corp., 2024)

3. Compiled and Interpreting Language (runtime code) A special type of compiled

languages is called runtime code or runtime engines, which mix the ideas of compiling

and interpreting to get the best of both worlds. Examples are C# (pronounced C-Sharp)

and Java. (TestOut Corp., 2024)

4. Interpreted Languages, such as Python, JavaScript, Ruby, Perl. These are best for web

development and rapid prototyping, and giving flexibility and easier testing because of

the immediate execution feedback.

5. Assembly Languages is most effective in system programming and situations where

hardware control is vital, such as embedded systems or performance-critical applications.

“It is a low-level language that interacts directly with the computer’s hardware”. (TestOut

Corp., 2024)

6. Drag-and-drop Languages, like Scratch, are excellent for educational purposes, teaching

programming concepts to beginners, or creating simple interactive applications,

providing a low barrier to entry for those that are new to coding like myself.


Syntax: HTML uses tags like <html>, <head>, and <body>.

Purpose: Structures content for web pages.

A programming language’s syntax defines a set of rules that a programmer must follow when

writing code. These rules dictate how the code must be structured, what characters can be

used, how statements must be terminated, and much more. In essence, syntax is the grammar

of a programming language. (Caldwell, 2023)

Conclusion

My experience from Scratch has opened my eyes to the basics of programming and the

importance of computational thinking and problem-solving.I have reflected on my experience in

using Scratch, and touched on some insights that I gained from the block programming

assignment. Building a program in Scratch not only strengthened my understanding of the basic

concepts of programming, but it showed me the potential for various programming languages to

address different challenges, I also compared it with programming concepts and scenarios for

different programming languages from our textbook. As technology continues to evolve, I look

forward to exploring more complex programming languages in coding and to further enhance my

proficiency in coding and programming languages.




1st Try in Scratch drag & drop block programming

Link: https://scratch.mit.edu/projects/1177731293 (I used 30+ blocks in this one)

Embed</>

<iframe src="https://scratch.mit.edu/projects/1177731293/embed" allowtransparency="true"

width="485" height="402" frameborder="0" scrolling="no" allowfullscreen></iframe>











2nd Try



Embed Code: <iframe src="https://scratch.mit.edu/projects/1177758156/embed" allowtransparency="true" width="485" height="402" frameborder="0" scrolling="no" allowfullscreen></iframe>





Comments

Popular posts from this blog

Mobile Web Application Critique

Critique of Google. com   Link:        Google   https://www.google.com Links to an external       Google website and app are one of the best tools that millions of people around the world use to get where they are going on the internet, a tool that acts as a doorway to Googles wide variety of other services too. It is available on both web and mobile app. This app has a user-friendly interface that has an integrated search functionality, personalized news feeds, and access to Google Assistant. This review evaluates the usability, functionality, and design of the Google app, and highlights its core features, and suggests areas of improvement.   Google Search Bar with results                                                                       ...

The Role of Computers and Artificial Intelligence (AI) in HealthCare

Week 4 Discussion1Blog post 5 TEC101   The Role of Computers in Healthcare   Computers play an important role in the day-to-day operations in healthcare . Computers a re indispensable in hospitals, doctors' offices and in medical research and medical billing. Everything from maintaining patient records, scheduling appointments, monitoring vital signs through pacemaker s that can be read 24/7, even having a surgery with a robotic arm con trolled by a computer. (Scott-Clark Med., 2022 ) Other uses a re telemedicine, and medical diagnostic tools, ( like the computer carts at the hospital), the integration of computers into healthcare has revolutionized the way practi ti oners deliver care to their patients. A prime example of healthcare providers managing patient data is through (EHRs) Electonic Health Records. IT allows providers to streamline administrative tasks and i mprove communication between different healthcare departments. EHRs reduce the risk of errors asso...