Tech Topic Connection

 


Programming Languages and Fundamental IT Concepts

Welcome again to my blog!

Today, I am reflecting on how programming languages intersect with fundamental IT concepts.  Learning programming languages can be complex for a new student, as with any new human language. The terminology and syntax of programming languages are different from human languages. Due to this difference, learners can get discouraged when they need help understanding the underlying fundamental principles of programming. Traditionally, programming instruction, also known as Educational Programming Language (EPL), consisted of classroom learning where the terminology and syntax are taught through teaching the rules or instructions of the program. However, since computer operation is not instinctual and does not follow organic thinking patterns, this resulted in many students giving up and dropping out of the courses. To combat and correct this, some learning institutions experimented with different strategies to try and overcome this. Some of these strategies include: 

·       Adding programming languages to the courses to be taught in grade school since research has shown that developing brains learn best and 

·       Using coding games to teach fundamental and advanced tenets of programming.

 

Scratch

Scratch is a coding language developed by MIT that uses blocks in a game setting to teach programming visually. Putting different blocks together helps to create animations and games that draw in the user's attention. According to the scratch site, this game is designed for youth ages 8-16. However, having personally used this program, I find the simplicity engaging and encourages the user to keep going and figure out how to create more game scenarios. 

 

CodeCombat

CodeCombat is an open-source program developed to make learning Python, JavaScript, and C++ easier. According to their website, learning coding through gaming is equivalent to "having a conversation instead of reading a manual" (CodeCombat, About, n.d., para 2). While it seems tailored for classroom learning, a quick internet search shows that adult learners have gained essential skills and understanding from playing the games. 

In a recent study, Kroustalli noted some definite, although inconclusive, evidence of improvement in the student's knowledge of programming concepts, especially variables, and loops. Kroustalli argues that serious games motivate and engage students, whereas traditional learning does not (Kroustalli, 2021). 

 

Application Software:

Python and C++ are general-purpose languages that can be used to develop application software, including mobile applications. 

 

Database and Database Management

SQL (structured Query Language) is the most commonly used program for databases because of its ability to extract and analyze data. Python, the most commonly used program for all programming and easiest to learn, is also used for databases and database management. However, SQL is considered superior due to its analysis capabilities.

 

Network Architecture, Management, and Security

Once again, Python is widely used due to its simplicity. Java and C++ are also optimal for network architecture and security because of their complexity, allowing them to be ideal for developing secure software. 

One thing I have come to understand regarding network security is that it is only as effective as the people who use it. The end-users must remain cognizant that the security system can only capture some, not all, threats. With this knowledge, it is paramount that they do not divulge sensitive information like passwords or click on email links and attachments they are unsure of. 

 

Conclusion:

This course taught me that Python is an excellent general-purpose language for applications, databases, and their management, network architecture, and security. Also, because it is often touted as the most straightforward programming language, once a user masters Python, it is easier to learn and understand other programming languages. 

Programs like SQL, C++, and Javascript can be used for applications but are considered excellent for specific purposes like data analysis, creating interactive web applications, and network security.


I'm eager to hear your thoughts! Do you have any programming experience? How did you like the process of learning?


REFERENCES:

CodeCombat (n.d.) https://codecombat.com/about

Kroustalli, C., & Xinogalos, S. (2021). Studying the effects of teaching programming to lower secondary school students with a serious game: a case study with Python and CodeCombat. Education & Information Technologies, 26(5), 6069–6095. https://doi.org/10.1007/s10639-021-10596-y

Prasad, A., Chaudhary, K., & Sharma, B. (2022). Programming skills: Visualization, interaction, home language and problem solving. Education and Information Technologies, 27(3), 3197. https://doi.org/10.1007/s10639-021-10692-z

Yoon, I., Kim, J., & Lee, W. (2016). The analysis and application of an educational programming language (RUR-PLE) for a pre-introductory computer science course. Cluster Computing, 19(1), 529–546. https://doi.org/10.1007/s10586-016-0540-6


Comments

Popular Posts