Monday, April 18, 2022

Tech Topic Programing Languages

 


            Programming Languages are multiple puzzle pieces of the fundamentals of information technology. Programming languages are kind of like verbal languages. People communicate thoughts and actions to other people, and people communicate instructions for tasks and actions to computers. There are thousands of programming languages; however, some languages are more common than others, depending on the instructions needed to complete tasks and actions. According to Vahid (2017), without programming languages or instructions, information technology could not communicate to computer hardware components, routers, servers, and other devices that understand machine language (section 9). Humans can learn and understand programming language, and computers can use complier software to convert programming language to machine language to complete tasks over and over again correctly.

          Computer science and information technology, throughout history, have used some type of computer programming language for operation. From the use of punch hole cards fed into a machine to input data or a keyboard entering characters and converted to 0’s and 1’s to represent switches on or off, those machines and electronic devices operate. The instructions written by programmers are stored on storage devices for retrieval when instruction for operation is needed.

          Different programming languages are written for the major hardware components and functions of modern computer systems. Ahmed (2021) explains that programming languages like C, C++, Java, JavaScript, Python, and R are some of the main languages utilized for ease of use, reliability, and best conversion to machine language with the best results (para 3). Many languages are written mainly for humans to understand the language and the speed and accuracy of converting to machine language to complete a task or action in a fast and reliable way. There are many ways you could instruct a person to complete a task, and the same applies to telling a computer to do something. If the person and the computer complete the task precisely as instructed, the time and accuracy are dependent on the programming received. Some languages can convert to machine language fast and use functions to prevent repeating the same set of instructions which slows operation speed. For example, I could instruct you to take a step, take a step, take a step, take a step, take a step, take a step, take a step, take a step, take a step, and take a step or In a programming language; I could create a function called Step. When I instruct the computer to call the function Step 10 times less code is needed, and the speed of operation is faster.

          Modern programming languages and program execution methods are moving toward energy efficiency. Older hardware and systems used programming language focused on operating the hardware or application and not on how much power usage may be required to operate. Mahadevappa (2021) explains how modern devices use applications that drain battery life quickly. Programming languages written to complete tasks without unnecessary power will keep us operating longer and save energy resources. Some operating systems run applications fast but require too much power. Operating systems programmed with efficiency will be equal to or better in speed with less use of resources (para II). Programming language technics will use memory components, hardware, and software to maximize the performance needed for now and the future.

          Application software is developed to meet the needs and wants of consumers. Staniloiu (2021) explains consumers are demanding that applications have more security-focused and memory-safe programming languages rather than performance-based. Program libraries are needed to prevent memory leaks and refresh applications to prevent bugs or errors in operation (para I). Zhang (2021) studied significant programming languages to determine which worked best with bug resolution; some languages like Java took less time to resolve errors than others like Ruby (Para 9). Applications that are quick to fix and with protection-focused programming will ensure a safe and enjoyable environment.

          Database programming languages like SQL, C, C++, and others relate to the basic concepts of database and database management in different ways. Databases contain priceless amounts of information that must be protected and accessed by clients quickly and safely. Nitu (2021) explains that memory corruption and security holes are major issues and can be reduced by adequately written programing languages that eliminate possible errors or bugs that hackers try to exploit (Para I-V). Programmers are now focusing on efficiency, conciseness, and security.

Figure 1 Staniloiu (2021) shows a method for programmers to ensure information is secure and accessible to authorized users (Para II). Security is vital to provide a safe information technology environment.



          Network architecture, management, and security are changing the methods of programming languages. Bergmans (2021) shows that applications and operating systems programmed with conciseness and consistency are more manageable for programmers to update and control a clean structure and safe embedded platform (para VII). Programming languages are only as good as the programmers that use them. Eliasen (2018) talks about how programming languages are taught starting with the easy ideas first. He shows how students learn Java in his class. “The course is structured like so:

1.    Variables and types

2.    If/else statements

3.    Loops

4.    Arrays

5.    Methods

6.    Objects and classes

This structure is bottom-up(Eliasen, 2018).

He explains that the issue is students have trouble learning when they are learning new tool usage but do not understand why they exist. He shows, “Instead, programming should be taught top-down, like so:

1.    What is an object?

2.    What is state? What is behavior?

3.    How do we represent the state and behavior of an object?

There are two reasons this structure is superior. First of all, it puts the student in the object-oriented mindset from the start. This allows the student to tie every new thing they learn back to the idea of an object instead of being forced to cram a bunch of random things they have learned into an object. Psychology teaches us that we learn best when we are able to connect the ideas we are learning to something we are already familiar with“ (Eliasen, 2018). Understanding the best programming methods for operating systems, applications, and other essential operatives will result in the best output for our future.

 


 

References

Ahmed, Z., Kinjol, F. J., & Ananya, I. J. (2021). Comparative Analysis of Six Programming Languages Based on Readability, Writability, and Reliability. 2021 24th International Conference on Computer and Information Technology (ICCIT), Computer and Information Technology (ICCIT), 2021 24th International Conference On, 1–6. https://doi.org/10.1109/ICCIT54785.2021.9689813

Bergmans, L., Schrijen, X., Ouwehand, E., & Bruntink, M. (2021). Measuring source code conciseness across programming languages using compression. 2021 IEEE 21st International Working Conference on Source Code Analysis and Manipulation (SCAM), Source Code Analysis and Manipulation (SCAM), 2021 IEEE 21st International Working Conference on, SCAM, 47–57. https://doi.org/10.1109/SCAM52516.2021.00015

Eliasen, D. 2018 October 22) Programming Is Taught in Exactly the Wrong Way. Retrieved from https://medium.com/s/story/programming-is-taught-in-exactly-the-wrong-way-7c88181daa96

Limbüchler, T. (2020 December 11) Top in-demand programming languages to learn in 2021Retreived from https://www.wearedevelopers.com/magazine/top-programming-languages-to-learn

Mahadevappa, S., & Figueira, S. (2021). Energy-Efficient Programming Languages for Mobile Applications. 2021 IEEE Global Humanitarian Technology Conference (GHTC), Global Humanitarian Technology Conference (GHTC), 2021 IEEE, 33–38. https://doi.org/10.1109/GHTC53159.2021.9612479

Nitu, R., Staniloiu, E., Done, C., & Rughinis, R. (2021). Security Audit for the D Programming Language. 2021 20th RoEduNet Conference: Networking in Education and Research (RoEduNet), RoEduNet Conference: Networking in Education and Research (RoEduNet), 2021 20th, 1–6. https://doi.org/10.1109/RoEduNet54112.2021.9638292

Staniloiu, E., Nitu, R., Aron, R., & Rughinis, R. (2021). Extending Client-Server API Support for Memory Safe Programming Languages. 2021 20th RoEduNet Conference: Networking in Education and Research (RoEduNet), RoEduNet Conference: Networking in Education and Research (RoEduNet), 2021 20th, 1–5. https://doi.org/10.1109/RoEduNet54112.2021.9638294

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

Zhang, J. M., Li, F., Hao, D., Wang, M., Tang, H., Zhang, L., & Harman, M. (2021). A Study of Bug Resolution Characteristics in Popular Programming Languages. IEEE Transactions on Software Engineering, Software Engineering, IEEE Transactions on, IIEEE Trans. Software Eng47(12), 2684–2697. https://doi.org/10.1109/TSE.2019.2961897

CPT 307 Week 5 Newbie to Newbie

Applying algorithmic design and data structure techniques creating structured programs   https://www.prepbytes.com/summer-programs/master-...