Post 1 - Programming Languages

     I have zero experience with Scratch, so this assignment was tough to start but was a fun experience. My program was built around a cat who sees a balloon at the beach, but it floats away and pops before he can get to it. The drag-and-drop blocks made building this program run smoothly once I figured out how to piece the blocks together.  It was cool to see everything come together and be able to use the different motions, sounds, and speech bubbles without even having to write a single line of code.

I learned a lot about programming during this assignment. One insight was that having clear instructions to give to a computer makes things happen seamlessly if you have a step-by-step process. Even though Scratch looks simple and easy to use, I still found myself writing notes on when to move the cat, how fast to make the balloon float, and the timing of when to place the sounds and how long they need to play. A more significant challenge was making everything reset back to their places because I had to write down each starting point on the x and y axis for each object and letter and then again on where I wanted them to stop. Breaking problems into smaller steps makes programming an easier task to tackle.

I only know of programming languages through this course so far, besides having only heard of them. Section 10.1 of our book discusses them, including compiled, interpreted, assembly, and query languages. Again, having little work experience with any programming, Scratch was beginner and kid-friendly, and its popularity and userbase make it one of the predominant ITC tools to start teaching computational thinking (CT) to students from a young age (Montiel & Gomez-Zermeño, 2021). For this assignment, simple programming environments like Scratch encourage users to think creatively, reason systematically, and work collaboratively, all of which are key skills in computer science (Resnick et al., 2009). Since this is a visual language, I did not have to worry about typing errors. Using C++ would be more complex to run since it requires writing and compiling code to tun. JavaScript and Python are more flexible as they are interpreted languages but also require typing and understanding syntax. Since it is so low level, assembly language would be the most complex for me to fully understand since it is close to how computer hardware works. Scratch is the easiest since we worked with it for this assignment. As a beginner in this field, it can show how programming logic works without writing or using confusing code. Scratch allowed me to focus on programming logic without worrying about technical errors, so it is recommended as an entry-level platform for new programmers (Resnick et al., 2009).

To summarize how each type of language might be used:

Scratch is the perfect program for beginners to learn the basics and for those who want to build games or animations.

Compiled language is better for building powerful programs like video games. Examples of these are C++ and Java.

Interpreted language speed and flexibility override performance here for data analysis using Python.

Assembly language is used when building a desktop, for example, when complete computer hardware control is required.

Query language – mainly used for database queries, no pun intended, SQL being one of the most common.

I created an animation using Scratch that tells a short story about a cat and a balloon at the beach. You can view the project here: https://scratch.mit.edu/projects/1161029317

References:

Montiel, H., & Gomez-Zermeño, M. G. (2021). Educational Challenges for Computational Thinking in K–12 Education: A Systematic Literature Review of “Scratch” as an Innovative Programming Tool. Computers10(6), 69. https://doi.org/10.3390/computers10060069

Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A., Rosenbaum, E., Silver, J., Silverman, B., & Kafai, Y. (2009). Scratch: Programming for all. Communications of the ACM, 52(11), 60–67. https://doi.org/10.1145/1592761.1592779

 

 

No comments:

Post a Comment