Using Scratch & Understanding Programming Languages


Recently, I have been using Scratch to practice programming. The program that I built using Scratch is a game called “Ken’s Dream Date!” I have two daughters and wanted to try to come up with a game that they would enjoy playing. It seemed like a simple concept; we would follow Ken while getting ready for his date with Barbie. I wanted the user to be able to choose his clothing and the location of the date. However, this was not as simple as it sounds once it came to programming it! 



Check out my Scratch project! https://scratch.mit.edu/projects/641200777 

The one major difficulty that I ran into was when it came to allowing the user to choose a background, or “date location.” At first, I thought that the user could click directly on the background to change it to another background. However, I found that it was easier to use a sprite to command the change rather than having to program on the background itself. This discovery led me to create a heart sprite for the user to click on to change the background. The next step would have been simple if I was able to use the “next backdrop” block. However, I was not able to use that block because I did not want the first two backdrops (the heart and the bedroom) to be able to be chosen as date locations, and I could not figure out how to block them from the list. I ended up solving the issue by creating a separate sprite heart for each backdrop and programming it to switch to the next backdrop.

There are many different programming languages out there, including machine language, assembly language, high-level languages, and Python specifically. Machine language is a low-level language which can be understood by the computer but it is difficult for me, and probably most humans, to understand. Assembly language is a middle level which seems to be an attempt to create a more understandable, human friendly, version of machine language using text. Third, are high-level languages, such as C, C++, Java, Python, and JavaScript. These languages have higher-level instructions which allow programmers to interact with the computers at a higher level.

Of all the programming languages, the one that I found the easiest to understand and use is Python. I think it was easiest for me because I really enjoyed using Scratch and I found it the most like Scratch. I like that it uses variables to relate the code to the English language, rather than simply relying on numerical values. 

Per the website, Free Code Camp, different kinds of jobs use different kinds of programming languages. For example, the article advises that game developers often use C++, web developers use HTML, CSS, and JavaScript, and data scientists use Python (Lagutin, 2021). The different languages can also meet different needs and goals such as speed and ease of use. 

When researching which computer programming language is the most popular, it seems that there may not be a consensus. It seems to be very fluid and ever-changing. However, according to an article titled “11 Most In-Demand Programming Languages” from Berkeley, a 2020 survey had JavaScript as the most used language at 69.7%, followed by HTML/CSS at 62.4% (2023). The article reasons that JavaScript comes in first due to most web browsers utilizing it and it being one of the easiest to learn. 

Using scratch has been one of my first experiences with coding. I have to say, while my game is rudimentary and still incomplete, I enjoyed it very much and look forward to finishing my program. I would like to learn more about the high-level languages described in the textbook to see what each is capable of and where they can take me on my tech journey. 


References:

11 most in-demand programming languages in 2023. Berkeley Boot Camps. (2023, January 5). Retrieved March 7, 2023, from https://bootcamp.berkeley.edu/blog/most-in-demand-programming-languages/ 

Lagutin, V. (2021, September 14). Why are there so many programming languages? freeCodeCamp.org. Retrieved March 7, 2023, from https://www.freecodecamp.org/news/why-are-there-so-many-programming-languages/ 

Vahid, F., & Lysecky, S. (2019). Computing technology for all. zyBooks.


Comments

Popular Posts