Programming Languages
Programming
Languages
Have
you developed a program using Scratch? Scratch is a visual programming language
where I got the opportunity to build an animated program which has been the
best experience in my opinion. It is a great resource to help kids and adults
to learn how to create digital stories, games, and animations. Scratch promotes
computational thinking and problem-solving skills, and it is truly effective as
I was able to solve a problem with coming up with an idea on how my program
should run accurately when I ran into bugs creating my program. While learning
programming languages can be difficult at first, Scratch gives all individuals
the ability to code computer programs with a visual interface because
block-based coding prepares them to be able to code in other programming
languages like Python, it gives individuals the opportunities to learn to think
creatively, and reason systematically.
Experience Using Scratch
Building
a program using Scratch has been very beneficial for me with improving my
problem-solving skills. Before I started building my program, which can be
found here,
I watched tutorials that Scratch provides to learn how to add a sprite in my
program and how to run my code blocks that I add to each sprite. After watching
different Scratch tutorials, it helped me get creative to think on how I can
build an animated program. Scratch has a visual interface for programmers to
see their code in action, which it made it easier for me to visually see what
my program will do when I test my code to make sure that my code runs
accurately. Overall, I highly recommend for everyone to learn how to code using
Scratch.
No
matter what programming language I utilize, I will always encounter some
difficulties. During the implementation of my animated program, I was having
trouble with getting three letters “A”, “Z”, and “A” in Arizona to go back to
the original size which was 100. Seen in Figure 1 the code blocks are what I
had originally but every time I ran the code it kept increasing the letters by
40 rather resetting the size back to the original size.
Figure 1 When the
code is running with these code blocks, the sprite will keep increasing by 40
rather than resetting the size.
I
was able to solve this problem by adding a new code block above “wait 3
seconds” to set the size to 100% shown in Figure 2. This solved my issue that I
had with each of the three letters as I now have the ability to increase them every
time the code is ran but reset the size at the beginning of the code. For this
project, the understandings that I have gained about programming is that it
helps me unleash innovate ideas and work through problems quickly and
efficiently. Moreover, my experience
programming in Scratch compared with the participation activities in Sections
2.8, 2.9, 2.10, and 2.11 of the textbook that explored machine language,
assembly language, and high-level languages, such as Python is that Scratch
makes coding more fun and interactive compared to all the other languages
explained in Chapter 2 of the textbook. Machine language was a little difficult
to understand but assembly language made it easier to read compared to machine
language.
Figure 2 When the
code is running above, the sprite will set its size to 100% but increase by 40.
Every time the code is ran; the spire will go back to its original size.
Difference Between Different
Programming Languages
In the textbook
‘Computing Technology for All’, machine language is when a CPU executes a
program’s instruction consisting of 0’s and 1’s only (Vahid & Lysecky,
2017). It is a language that can be understood by a computer as it is the only
language a computer can work with. The textbook also explains that assembly language
is a textual human-understandable representation of a machine language's 0's
and 1's, as in: Add M[5] M[6] M[7]. The program will automatically convert an
assembly language into machine language. Lastly, high-level language is a
programming language having higher-level instructions than assembly language. Python
is a high-level language which is the language that I found to be the easiest
to use as I am very familiar with the language compared to the other languages
described in the textbook.
Machine language would be most effective for projects that involve predicting an output or uncovering trends. There is a documentation that I found on AWS that explains when to use machine learning and it states, “Use machine learning for the following situations:
- You cannot code the rules: Many human tasks (such as recognizing whether an email is spam or not spam) cannot be adequately solved using a simple (deterministic), rule-based solution. A large number of factors could influence the answer. When rules depend on too many factors and many of these rules overlap or need to be tuned very finely, it soon becomes difficult for a human to accurately code the rules. You can use ML to effectively solve this problem.
- You cannot scale: You might be able to manually recognize a few hundred emails and decide whether they are spam or not. However, this task becomes tedious for millions of emails. ML solutions are effective at handling large-scale problems.”
References
About Scratch.
Scratch. (n.d.). Retrieved December 18, 2021, from
https://scratch.mit.edu/about/
Mitchel Resnick, N. R.
(2020, November 1). Coding at a crossroads. ACM. Retrieved December 18,
2021, from
https://cacm.acm.org/magazines/2020/11/248219-coding-at-a-crossroads/fulltext
Eastwood, B. (2021, May
14). The 10 most popular programming languages to learn in 2021.
Northeastern University Graduate Programs. Retrieved December 18, 2021, from
https://www.northeastern.edu/graduate/blog/most-popular-programming-languages/
Vahid, F., & Lysecky,
S. (2017). Hardware and Software. In Computing Technology for All (pp.
2.1–2.11).
Mitchell, T. M. (2017). Machine
learning. Amazon. Retrieved December 19, 2021, from https://docs.aws.amazon.com/machine-learning/latest/dg/when-to-use-machine-learning.html
Why do we need assembly
language? Computer Science Stack Exchange. (1961, August 1). Retrieved
December 19, 2021, from
https://cs.stackexchange.com/questions/13287/why-do-we-need-assembly-language
Comments
Post a Comment