Programming Languages: For Newbs

    Programming languages are essential for digital forensics. Some enter the field never having used a programming language. Many beginner programs can help them familiarize themselves with the logical processes of languages. I trialed one program called Scratch.  

    I enjoyed using Scratch and found it intuitive. The color-coded commands assisted with the logical operations and concepts of order operations. They were written in English and easily translated. Each command, sound, or object was self-explanatory. 


  

Scratch Project: https://scratch.mit.edu/projects/1101551939

 

    This assignment had its challenges. One could put the code line in but would learn quickly that detaching one code line from another was difficult. Although lines of code could be inserted, they would not necessarily play for the desired timing. To overcome this issue, one could add code lines between actions, extending the time between them so they could be seen or heard.

    Scratch provided a good basic model of programming. Programming can be tedious, and writing the actions would be time-consuming, barring automated scripting and commands. There are two language levels: low and high. The low-level languages are machine code and assembly language, while the high-level languages usually include Python, Java, and SQL (Statler, 2024). 

    Machine code is made up of bits and bytes. Machines need these on/off instructions to send directly to the CPU for input (Geeks for Geeks, 2023). Machine code tells the CPU to load data or complete mathematical computations. 

    Assembly language is one step above machine code and one step below high-level programming. It is a more readable version of machine code (Vhaid, Lyseck, Whealand, 2019). It uses an assembler to compile the input and covert it to machine language (Statler, 2024). It is generally used to communicate with computer hardware, including the CPU. BIOS is an example of communication that checks the stratus of the different hardware parts and check in with the CPU. 

    High-level languages, like Python, use a complier to convert to lower languages, such as machine code or assembly language. Programmers most commonly use these as they are easier to read and create. In one such case, Python is used in mobile forensics to create "Python chains" to extract data from SQLite databases found on mobile devices.

    Ultimately, automated programming sites like Scratch can be very useful to users who want to learn programming concepts. Knowing the different levels of languages can guide users toward learning and using the best language for their programming work.

References

Statler, T. (Retrieved 2024, November 25). Programming Languages (Highest to Lowest). Comp Sci Central. https://compsciencecentral.com/programming-language-levels/

Geeks for Geeks. (2023, December 12). What is Machine Language? www.geeksforgeeks.org. https://www.geeksforgeeks.org/what-is-machine-language/ 

Vhaid, F., Lyseck.S, Whealand, N. (2019) TEC 101: Fundamentals of Information Technology & Literacy. https://learn.zybooks.com/zybook/TEC101:_Fundamentals_of_Information_Technology_&_Literacy_(TED2447A)


Comments