Is programming a dream technology or a tool for analysis and design?

In this blog post, we will explore whether programming is truly a dream technology that makes everything possible or a tool that requires thorough analysis and design.

 

Have you ever imagined the future when you were young? You may have once imagined “future technology” such as walking around while watching TV, talking or having meetings with people in real time through a screen, or operating home appliances with a smartphone while you are away from home. These technologies, which seemed to be possible only in science fiction movies in the past, are gradually becoming a reality in the 21st century under the name of IT. In fact, various technologies such as smartphones, smart home systems, and artificial intelligence assistants have already deeply penetrated our daily lives. Furthermore, people are creating new experiences by breaking down the boundaries between online and offline through virtual reality (VR) and augmented reality (AR) technologies. In this age when so many companies are paying attention to IT technology, society now prefers professionals who know how to use IT technology, especially those who are skilled at programming, over those who simply work with their hands. Moreover, programming is recognized as a “dream job” and is attracting attention because it can be done remotely and with high profits regardless of location, as long as you have the skills. If so, you may be curious about what this “programming” technology is all about.
To understand programming in depth, it is necessary to first take a brief look at what a computer and a program are. The word “computer” originally came from the word for a simple calculator or the person who operates the calculator. Modern computers are no different. They are simply machines that perform given calculations according to a set sequence and do not perform any activities on their own. However, computers have the unique characteristic of being able to perform calculations differently depending on their state. Just as a light switch determines whether the light will turn on or off depending on the state, the next calculation to be performed on a computer depends on the previous calculation result. However, computers do not perform any actions by themselves and simply follow the given commands, so a set of these commands, called a “program,” is necessary. This program can be described as a kind of manual that lists the tasks to be performed in a specific order. The process of writing a program is called “programming.”
The process of programming is quite similar to writing. Just as we write in a specific language, such as Korean or English, programs are also written in various languages. Programming languages include C, Java, and Python, and each language has a different philosophy and characteristics. A programmer chooses and writes the appropriate language according to the characteristics of the problem he or she wants to solve. For example, a language like Python may be suitable for tasks that analyze and process large amounts of data, while the C language may be suitable when the system’s performance must be maximized. In this way, the language used can be said to represent the person’s disposition or the direction of the problem to be solved.
After deciding on the language, the next step is to design the structure and logic of the program. Just as you select words that fit the topic and place them in context to create the flow of a piece of writing, selecting and placing data structures and algorithms is important in programming. Data structures are the methods for determining how data is stored and handled, and algorithms are the procedures or methods for processing data and solving problems. The performance of a program is largely determined by the choice of data structure and algorithm, so careful design is an important factor in determining the quality of the program.
Finally, the process of translating the program into a form that the computer can understand, i.e. compiling, is necessary. Programming languages are designed to be easy for humans to understand, so it is essential to convert them into machine language that computers can interpret. The compilation process creates a program in the form of machine language that computers can recognize, and it functions as software that we can actually use.
Today, programming is often introduced as if it were a universal tool through the Internet and various media. In fact, programming is used to control robots, operate smartphones, and even build artificial intelligence. These technologies are certainly powerful tools that can turn our imagination into reality. However, programming is not a “magic” that solves everything. As mentioned earlier, programs operate according to a thoroughly pre-written manual, so they cannot implement the desired functions without sophisticated analysis and design. For example, if you want to make a robot that walks like a human, you need to accurately analyze the structure and movement of human legs. It is difficult to simply implement a walking gait without analyzing how the muscles of a human should move in which direction at any given moment and how they should be corrected to maintain balance. Therefore, programming is only a basic tool and manual for solving problems, and it loses its meaning without accurate understanding and analysis.
Since ancient times, people have had the desire to live more conveniently, and this desire has evolved over time into tools, machines, and computers. And now, with the addition of artificial intelligence and programming technology, it has become a world where the role of humans is being replaced or supplemented in more and more areas. In the 21st century, programming is becoming an essential life skill beyond a simple technology, and most universities are teaching programming as a required course in various academic fields as well as computer-related majors. In addition, the elementary and secondary education curriculum is also including the basics of programming, so it is expected that many people will understand the basic programming language in the future. Ultimately, I expect that in the future, everyone will understand programming to some extent and be able to use it.

 

About the author

EuroCreon

I collect, refine, and share content that sparks curiosity and supports meaningful learning. My goal is to create a space where ideas flow freely and everyone feels encouraged to grow. Let’s continue to learn, share, and enjoy the process – together.