Programming Languages:

I poked around "Scratch" for this week’s assignment to see what it was all about.  I was delighted to find that scratch uses the same block-building interface as the VEXcode software used for programming VEX robots.  We use the block interface to interface with C++ or Java to create run commands for custom-built robots.  Because of my experience, block programming was a comfortable working environment.

 I found the graphic editor to be jumpy and not very accurate, and I had difficulty creating or modifying costumes.  I overcame this issue by taking my time and adjusting the brush sizes to minimize drawing errors.  If this were a real-world scenario, I would most likely outsource the graphic design portion of the programming, as that is not my forte.  Please find my version of the dancing crab here:  https://scratch.mit.edu/projects/563069204

The programming exercises in our textbook were a great learning tool. However, I do not ever see myself memorizing ones and zeros or writing entirely in assembly language. The first would be too difficult to remember and the second too repetitive and time-consuming to be productive in today's complex computing environments.  This progression brings us to high-level programming languages. The high-level programming exercises gave me the insight that programming becomes easier if you know the lower-level functions that occur because of the commands that you choose.  This knowledge will help with efficiency and accuracy. 

On top of that, block programing language interfaces are by far the easiest to use as they deliver a graphical hierarchy of pieces that interact by dragging and dropping and assigning variables to the blocks giving a very intuitive literal building block to work with.

Machine language is the base used to communicate to the switches in a computer to tell them what position to be in and to translate what the position means on a base level.  It is made up entirely of ones and zeros and processed the basic instructions that a processor can understand.  Assembly language is the human interface to machine language.  It allows us to use English commands to tell the computer what to do with the ones and zeros and bits and bytes.  To bridge the communication gap between human and machine, we have "a program called an assembler automatically converts an assembly language program into machine language” (Vahid & Lysecky 2017).  higher level.

Of the higher-level programming languages, there are several popular programs.  Although C is ranked as the most used, Python comes in a close second, and Java is just a step behind the TIOBE Index (TIOBE, 2021).  C is the older of the languages and has a more significant foothold, and is a very fast and efficient language.  It is good for scenarios where response time is critical.  Java is much easier and powerful to work with, so it was number two for the longest time due to its ease of use and multi-platform capabilities.   Python is surging and has taken over Java due to recent increases in the realm of AI and big data analytics, where it excels.  In conclusion, C is most prevalent, Python is most preferred, and Java the most liked.

References

 Bicknell, A. (2021). Scratchy the Crab. Retrieved from https://scratch.mit.edu/projects/563069204

TIOBE. (2021). TIOBE Index Retrieved from https://www.tiobe.com/tiobe-index//

Vahid, F., & Lysecky, S. (2017). Computing technology for all. Retrieved from zybooks.zyante.com/

Comments

Popular posts from this blog

CPT304: Week 5 Final Project: Blog Post