Punch card is an old storage device, starting the Information Age. There are organized spaces on the punch cards, where whether a hole is punched on the spaces or not and the combination of punched and unpunched holes represent the information, or the program. It is similar to how nowadays computers work binarily: presence and absence of electric signals. However, we program via programming languages rather than punching holes on the punch cards, a higher level language that better resonates human intuition, then it is translated to machine. This tells us that the programming language is a more efficient and direct paradigm for programming.
Different languages are optimized for different tasks: web development, app development, data processing… sql and python both are good to deal with data, but sql is to manage a database while python serves for data processing. And within one task, multiple languages could be used. For example, in web development, there are different languages for the web layout, visual features, and user interaction. There are also many different frameworks for different tasks.
When I had to develop an app for my high school project, I didn’t want to learn java and used python for backend to make the product for demo. And I faced several problems.
I think I should start with defining the tasks it focuses on and determine the audience. Then, a programming language needs syntax, interpreter or compiler.